diff --git a/distrib/sets/lists/minix/mi b/distrib/sets/lists/minix/mi index 2d54ff35b..4790ead89 100644 --- a/distrib/sets/lists/minix/mi +++ b/distrib/sets/lists/minix/mi @@ -84,6 +84,9 @@ ./etc/devmand/scripts/singlechar minix-sys ./etc/devmand/usb_hub.cfg minix-sys ./etc/devmand/usb_storage.cfg minix-sys +./etc/fonts minix-sys xorg +./etc/fonts/conf.avail minix-sys xorg +./etc/fonts/conf.d minix-sys xorg ./etc/gettytab minix-sys ./etc/group minix-sys ./etc/hostname.file minix-sys @@ -122,6 +125,19 @@ ./etc/termcap minix-sys ./etc/ttys minix-sys ./etc/utmp minix-sys +./etc/X11 minix-sys xorg +./etc/X11/fs minix-sys xorg +./etc/X11/lbxproxy minix-sys xorg +./etc/X11/proxymngr minix-sys xorg +./etc/X11/rstart minix-sys xorg +./etc/X11/rstart/commands minix-sys xorg +./etc/X11/rstart/commands/x11r6 minix-sys xorg +./etc/X11/rstart/contexts minix-sys xorg +./etc/X11/twm minix-sys xorg +./etc/X11/xdm minix-sys xorg +./etc/X11/xinit minix-sys xorg +./etc/X11/xserver minix-sys xorg +./etc/X11/xsm minix-sys xorg ./home minix-sys ./home/ast minix-sys obsolete ./home/ast/.exrc minix-sys obsolete diff --git a/distrib/sets/lists/xbase/mi b/distrib/sets/lists/xbase/mi index 62d09e3f9..be653e6b0 100644 --- a/distrib/sets/lists/xbase/mi +++ b/distrib/sets/lists/xbase/mi @@ -1421,7 +1421,7 @@ ./usr/X11R7/bin/xconsole -unknown- xorg ./usr/X11R7/bin/xcutsel -unknown- xorg ./usr/X11R7/bin/xditview -unknown- xorg -./usr/X11R7/bin/xdm -unknown- xorg +./usr/X11R7/bin/xdm -unknown- xorg,minix-false ./usr/X11R7/bin/xdpyinfo -unknown- xorg ./usr/X11R7/bin/xdriinfo -unknown- xorg ./usr/X11R7/bin/xedit -unknown- xorg @@ -1448,7 +1448,7 @@ ./usr/X11R7/bin/xload -unknown- xorg ./usr/X11R7/bin/xlogo -unknown- xorg ./usr/X11R7/bin/xlsatoms -unknown- xorg -./usr/X11R7/bin/xlsclients -unknown- xorg +./usr/X11R7/bin/xlsclients -unknown- xorg,minix-false ./usr/X11R7/bin/xlsfonts -unknown- xorg ./usr/X11R7/bin/xmag -unknown- xorg ./usr/X11R7/bin/xman -unknown- xorg @@ -1508,14 +1508,14 @@ ./usr/X11R7/include/X11/extensions base-x11-root xorg ./usr/X11R7/include/X11/fonts base-x11-root xorg ./usr/X11R7/include/X11/pixmaps base-x11-root xorg -./usr/X11R7/include/X11/pixmaps/NetBSD-bw.xpm -unknown- xorg -./usr/X11R7/include/X11/pixmaps/NetBSD-flag.png -unknown- xorg -./usr/X11R7/include/X11/pixmaps/NetBSD-flag1.xpm -unknown- xorg -./usr/X11R7/include/X11/pixmaps/NetBSD-flag2.xpm -unknown- xorg -./usr/X11R7/include/X11/pixmaps/NetBSD-inv.xpm -unknown- xorg -./usr/X11R7/include/X11/pixmaps/NetBSD.xpm -unknown- xorg -./usr/X11R7/include/X11/pixmaps/xorg-bw.xpm -unknown- xorg -./usr/X11R7/include/X11/pixmaps/xorg.xpm -unknown- xorg +./usr/X11R7/include/X11/pixmaps/NetBSD-bw.xpm -unknown- xorg,minix-false +./usr/X11R7/include/X11/pixmaps/NetBSD-flag.png -unknown- xorg,minix-false +./usr/X11R7/include/X11/pixmaps/NetBSD-flag1.xpm -unknown- xorg,minix-false +./usr/X11R7/include/X11/pixmaps/NetBSD-flag2.xpm -unknown- xorg,minix-false +./usr/X11R7/include/X11/pixmaps/NetBSD-inv.xpm -unknown- xorg,minix-false +./usr/X11R7/include/X11/pixmaps/NetBSD.xpm -unknown- xorg,minix-false +./usr/X11R7/include/X11/pixmaps/xorg-bw.xpm -unknown- xorg,minix-false +./usr/X11R7/include/X11/pixmaps/xorg.xpm -unknown- xorg,minix-false ./usr/X11R7/include/drm base-x11-root obsolete ./usr/X11R7/include/fontconfig base-x11-root xorg ./usr/X11R7/include/freetype2 base-x11-root xorg @@ -1538,7 +1538,7 @@ ./usr/X11R7/lib/X11/app-defaults/Beforelight -unknown- xorg ./usr/X11R7/lib/X11/app-defaults/Bitmap -unknown- xorg ./usr/X11R7/lib/X11/app-defaults/Bitmap-color -unknown- xorg -./usr/X11R7/lib/X11/app-defaults/Chooser -unknown- xorg +./usr/X11R7/lib/X11/app-defaults/Chooser -unknown- xorg,minix-false ./usr/X11R7/lib/X11/app-defaults/Clock-color -unknown- xorg ./usr/X11R7/lib/X11/app-defaults/Editres -unknown- xorg ./usr/X11R7/lib/X11/app-defaults/Editres-color -unknown- xorg @@ -2478,7 +2478,7 @@ ./usr/X11R7/lib/xorg base-x11-root xorg ./usr/X11R7/lib/xorg/protocol.txt -unknown- xorg ./usr/X11R7/libexec base-x11-root xorg -./usr/X11R7/libexec/chooser -unknown- xorg +./usr/X11R7/libexec/chooser -unknown- xorg,minix-false ./usr/X11R7/man base-x11-root xorg ./usr/X11R7/man/cat1 base-x11-root xorg ./usr/X11R7/man/cat1/appres.0 -unknown- .cat,xorg @@ -2824,7 +2824,7 @@ ./usr/X11R7/man/man1/xconsole.1 -unknown- .man,xorg ./usr/X11R7/man/man1/xcutsel.1 -unknown- .man,xorg ./usr/X11R7/man/man1/xditview.1 -unknown- .man,xorg -./usr/X11R7/man/man1/xdm.1 -unknown- .man,xorg +./usr/X11R7/man/man1/xdm.1 -unknown- .man,xorg,minix-false ./usr/X11R7/man/man1/xdpyinfo.1 -unknown- .man,xorg ./usr/X11R7/man/man1/xdriinfo.1 -unknown- .man,xorg ./usr/X11R7/man/man1/xedit.1 -unknown- .man,xorg @@ -2851,7 +2851,7 @@ ./usr/X11R7/man/man1/xload.1 -unknown- .man,xorg ./usr/X11R7/man/man1/xlogo.1 -unknown- .man,xorg ./usr/X11R7/man/man1/xlsatoms.1 -unknown- .man,xorg -./usr/X11R7/man/man1/xlsclients.1 -unknown- .man,xorg +./usr/X11R7/man/man1/xlsclients.1 -unknown- .man,xorg,minix-false ./usr/X11R7/man/man1/xlsfonts.1 -unknown- .man,xorg ./usr/X11R7/man/man1/xmag.1 -unknown- .man,xorg ./usr/X11R7/man/man1/xman.1 -unknown- .man,xorg diff --git a/distrib/sets/lists/xbase/shl.mi b/distrib/sets/lists/xbase/shl.mi index 26b02e9cd..9befb7ea6 100644 --- a/distrib/sets/lists/xbase/shl.mi +++ b/distrib/sets/lists/xbase/shl.mi @@ -333,12 +333,12 @@ ./usr/X11R7/lib/libpixman-1.so -unknown- xorg ./usr/X11R7/lib/libpixman-1.so.2 -unknown- xorg ./usr/X11R7/lib/libpixman-1.so.2.2 -unknown- xorg -./usr/X11R7/lib/libxcb-atom.so -unknown- xorg -./usr/X11R7/lib/libxcb-atom.so.1 -unknown- xorg -./usr/X11R7/lib/libxcb-atom.so.1.0 -unknown- xorg -./usr/X11R7/lib/libxcb-aux.so -unknown- xorg -./usr/X11R7/lib/libxcb-aux.so.0 -unknown- xorg -./usr/X11R7/lib/libxcb-aux.so.0.0 -unknown- xorg +./usr/X11R7/lib/libxcb-atom.so -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-atom.so.1 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-atom.so.1.0 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-aux.so -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-aux.so.0 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-aux.so.0.0 -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-composite.so -unknown- xorg ./usr/X11R7/lib/libxcb-composite.so.0 -unknown- xorg ./usr/X11R7/lib/libxcb-composite.so.0.1 -unknown- xorg @@ -351,39 +351,39 @@ ./usr/X11R7/lib/libxcb-dri2.so -unknown- xorg ./usr/X11R7/lib/libxcb-dri2.so.0 -unknown- xorg ./usr/X11R7/lib/libxcb-dri2.so.0.1 -unknown- xorg -./usr/X11R7/lib/libxcb-event.so -unknown- xorg -./usr/X11R7/lib/libxcb-event.so.1 -unknown- xorg -./usr/X11R7/lib/libxcb-event.so.1.0 -unknown- xorg +./usr/X11R7/lib/libxcb-event.so -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-event.so.1 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-event.so.1.0 -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-glx.so -unknown- xorg ./usr/X11R7/lib/libxcb-glx.so.0 -unknown- xorg ./usr/X11R7/lib/libxcb-glx.so.0.1 -unknown- xorg -./usr/X11R7/lib/libxcb-icccm.so -unknown- xorg -./usr/X11R7/lib/libxcb-icccm.so.1 -unknown- xorg -./usr/X11R7/lib/libxcb-icccm.so.1.0 -unknown- xorg -./usr/X11R7/lib/libxcb-image.so -unknown- xorg -./usr/X11R7/lib/libxcb-image.so.0 -unknown- xorg -./usr/X11R7/lib/libxcb-image.so.0.0 -unknown- xorg -./usr/X11R7/lib/libxcb-keysyms.so -unknown- xorg -./usr/X11R7/lib/libxcb-keysyms.so.1 -unknown- xorg -./usr/X11R7/lib/libxcb-keysyms.so.1.0 -unknown- xorg -./usr/X11R7/lib/libxcb-property.so -unknown- xorg -./usr/X11R7/lib/libxcb-property.so.1 -unknown- xorg -./usr/X11R7/lib/libxcb-property.so.1.0 -unknown- xorg +./usr/X11R7/lib/libxcb-icccm.so -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-icccm.so.1 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-icccm.so.1.0 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-image.so -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-image.so.0 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-image.so.0.0 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-keysyms.so -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-keysyms.so.1 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-keysyms.so.1.0 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-property.so -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-property.so.1 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-property.so.1.0 -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-randr.so -unknown- xorg ./usr/X11R7/lib/libxcb-randr.so.0 -unknown- xorg ./usr/X11R7/lib/libxcb-randr.so.0.1 -unknown- xorg ./usr/X11R7/lib/libxcb-record.so -unknown- xorg ./usr/X11R7/lib/libxcb-record.so.0 -unknown- xorg ./usr/X11R7/lib/libxcb-record.so.0.1 -unknown- xorg -./usr/X11R7/lib/libxcb-render-util.so -unknown- xorg -./usr/X11R7/lib/libxcb-render-util.so.0 -unknown- xorg -./usr/X11R7/lib/libxcb-render-util.so.0.0 -unknown- xorg +./usr/X11R7/lib/libxcb-render-util.so -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-render-util.so.0 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-render-util.so.0.0 -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-render.so -unknown- xorg ./usr/X11R7/lib/libxcb-render.so.0 -unknown- xorg ./usr/X11R7/lib/libxcb-render.so.0.1 -unknown- xorg -./usr/X11R7/lib/libxcb-reply.so -unknown- xorg -./usr/X11R7/lib/libxcb-reply.so.1 -unknown- xorg -./usr/X11R7/lib/libxcb-reply.so.1.0 -unknown- xorg +./usr/X11R7/lib/libxcb-reply.so -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-reply.so.1 -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-reply.so.1.0 -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-res.so -unknown- xorg ./usr/X11R7/lib/libxcb-res.so.0 -unknown- xorg ./usr/X11R7/lib/libxcb-res.so.0.1 -unknown- xorg diff --git a/distrib/sets/lists/xcomp/mi b/distrib/sets/lists/xcomp/mi index 4354afebd..9ff647195 100644 --- a/distrib/sets/lists/xcomp/mi +++ b/distrib/sets/lists/xcomp/mi @@ -5772,17 +5772,17 @@ ./usr/X11R7/include/xcb/sync.h -unknown- xorg ./usr/X11R7/include/xcb/xc_misc.h -unknown- xorg ./usr/X11R7/include/xcb/xcb.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_atom.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_aux.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_bitops.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_event.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_icccm.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_image.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_keysyms.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_pixel.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_property.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_renderutil.h -unknown- xorg -./usr/X11R7/include/xcb/xcb_reply.h -unknown- xorg +./usr/X11R7/include/xcb/xcb_atom.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_aux.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_bitops.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_event.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_icccm.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_image.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_keysyms.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_pixel.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_property.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_renderutil.h -unknown- xorg,minix-false +./usr/X11R7/include/xcb/xcb_reply.h -unknown- xorg,minix-false ./usr/X11R7/include/xcb/xcbext.h -unknown- xorg ./usr/X11R7/include/xcb/xevie.h -unknown- xorg ./usr/X11R7/include/xcb/xf86dri.h -unknown- xorg @@ -6208,9 +6208,9 @@ ./usr/X11R7/lib/libpixman-1_p.a -unknown- profile,xorg ./usr/X11R7/lib/libre.a -unknown- xorg ./usr/X11R7/lib/libre_p.a -unknown- profile,xorg -./usr/X11R7/lib/libxcb-atom.a -unknown- xorg +./usr/X11R7/lib/libxcb-atom.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-atom_p.a -unknown- profile,xorg -./usr/X11R7/lib/libxcb-aux.a -unknown- xorg +./usr/X11R7/lib/libxcb-aux.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-aux_p.a -unknown- profile,xorg ./usr/X11R7/lib/libxcb-composite.a -unknown- xorg ./usr/X11R7/lib/libxcb-composite_p.a -unknown- profile,xorg @@ -6220,27 +6220,27 @@ ./usr/X11R7/lib/libxcb-dpms_p.a -unknown- profile,xorg ./usr/X11R7/lib/libxcb-dri2.a -unknown- xorg ./usr/X11R7/lib/libxcb-dri2_p.a -unknown- profile,xorg -./usr/X11R7/lib/libxcb-event.a -unknown- xorg +./usr/X11R7/lib/libxcb-event.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-event_p.a -unknown- profile,xorg ./usr/X11R7/lib/libxcb-glx.a -unknown- xorg ./usr/X11R7/lib/libxcb-glx_p.a -unknown- profile,xorg -./usr/X11R7/lib/libxcb-icccm.a -unknown- xorg +./usr/X11R7/lib/libxcb-icccm.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-icccm_p.a -unknown- profile,xorg -./usr/X11R7/lib/libxcb-image.a -unknown- xorg +./usr/X11R7/lib/libxcb-image.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-image_p.a -unknown- profile,xorg -./usr/X11R7/lib/libxcb-keysyms.a -unknown- xorg +./usr/X11R7/lib/libxcb-keysyms.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-keysyms_p.a -unknown- profile,xorg -./usr/X11R7/lib/libxcb-property.a -unknown- xorg +./usr/X11R7/lib/libxcb-property.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-property_p.a -unknown- profile,xorg ./usr/X11R7/lib/libxcb-randr.a -unknown- xorg ./usr/X11R7/lib/libxcb-randr_p.a -unknown- profile,xorg ./usr/X11R7/lib/libxcb-record.a -unknown- xorg ./usr/X11R7/lib/libxcb-record_p.a -unknown- profile,xorg -./usr/X11R7/lib/libxcb-render-util.a -unknown- xorg +./usr/X11R7/lib/libxcb-render-util.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-render-util_p.a -unknown- profile,xorg ./usr/X11R7/lib/libxcb-render.a -unknown- xorg ./usr/X11R7/lib/libxcb-render_p.a -unknown- profile,xorg -./usr/X11R7/lib/libxcb-reply.a -unknown- xorg +./usr/X11R7/lib/libxcb-reply.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-reply_p.a -unknown- profile,xorg ./usr/X11R7/lib/libxcb-res.a -unknown- xorg ./usr/X11R7/lib/libxcb-res_p.a -unknown- profile,xorg @@ -6315,24 +6315,24 @@ ./usr/X11R7/lib/pkgconfig/xaw7.pc -unknown- xorg ./usr/X11R7/lib/pkgconfig/xaw8.pc -obsolete- obsolete ./usr/X11R7/lib/pkgconfig/xbitmaps.pc -unknown- xorg -./usr/X11R7/lib/pkgconfig/xcb-atom.pc -unknown- xorg -./usr/X11R7/lib/pkgconfig/xcb-aux.pc -unknown- xorg +./usr/X11R7/lib/pkgconfig/xcb-atom.pc -unknown- xorg,minix-false +./usr/X11R7/lib/pkgconfig/xcb-aux.pc -unknown- xorg,minix-false ./usr/X11R7/lib/pkgconfig/xcb-composite.pc -unknown- xorg ./usr/X11R7/lib/pkgconfig/xcb-damage.pc -unknown- xorg ./usr/X11R7/lib/pkgconfig/xcb-dpms.pc -unknown- xorg ./usr/X11R7/lib/pkgconfig/xcb-dri2.pc -unknown- xorg -./usr/X11R7/lib/pkgconfig/xcb-event.pc -unknown- xorg +./usr/X11R7/lib/pkgconfig/xcb-event.pc -unknown- xorg,minix-false ./usr/X11R7/lib/pkgconfig/xcb-glx.pc -unknown- xorg -./usr/X11R7/lib/pkgconfig/xcb-icccm.pc -unknown- xorg -./usr/X11R7/lib/pkgconfig/xcb-image.pc -unknown- xorg -./usr/X11R7/lib/pkgconfig/xcb-keysyms.pc -unknown- xorg -./usr/X11R7/lib/pkgconfig/xcb-property.pc -unknown- xorg +./usr/X11R7/lib/pkgconfig/xcb-icccm.pc -unknown- xorg,minix-false +./usr/X11R7/lib/pkgconfig/xcb-image.pc -unknown- xorg,minix-false +./usr/X11R7/lib/pkgconfig/xcb-keysyms.pc -unknown- xorg,minix-false +./usr/X11R7/lib/pkgconfig/xcb-property.pc -unknown- xorg,minix-false ./usr/X11R7/lib/pkgconfig/xcb-proto.pc -unknown- xorg ./usr/X11R7/lib/pkgconfig/xcb-randr.pc -unknown- xorg ./usr/X11R7/lib/pkgconfig/xcb-record.pc -unknown- xorg ./usr/X11R7/lib/pkgconfig/xcb-render.pc -unknown- xorg -./usr/X11R7/lib/pkgconfig/xcb-renderutil.pc -unknown- xorg -./usr/X11R7/lib/pkgconfig/xcb-reply.pc -unknown- xorg +./usr/X11R7/lib/pkgconfig/xcb-renderutil.pc -unknown- xorg,minix-false +./usr/X11R7/lib/pkgconfig/xcb-reply.pc -unknown- xorg,minix-false ./usr/X11R7/lib/pkgconfig/xcb-res.pc -unknown- xorg ./usr/X11R7/lib/pkgconfig/xcb-screensaver.pc -unknown- xorg ./usr/X11R7/lib/pkgconfig/xcb-shape.pc -unknown- xorg diff --git a/distrib/sets/lists/xcomp/shl.mi b/distrib/sets/lists/xcomp/shl.mi index 88aa3ced9..355dfc972 100644 --- a/distrib/sets/lists/xcomp/shl.mi +++ b/distrib/sets/lists/xcomp/shl.mi @@ -105,23 +105,23 @@ ./usr/X11R7/lib/libpciaccess_pic.a -unknown- xorg ./usr/X11R7/lib/libpixman-1_pic.a -unknown- xorg ./usr/X11R7/lib/libre_pic.a -unknown- xorg -./usr/X11R7/lib/libxcb-atom_pic.a -unknown- xorg -./usr/X11R7/lib/libxcb-aux_pic.a -unknown- xorg +./usr/X11R7/lib/libxcb-atom_pic.a -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-aux_pic.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-composite_pic.a -unknown- xorg ./usr/X11R7/lib/libxcb-damage_pic.a -unknown- xorg ./usr/X11R7/lib/libxcb-dpms_pic.a -unknown- xorg ./usr/X11R7/lib/libxcb-dri2_pic.a -unknown- xorg -./usr/X11R7/lib/libxcb-event_pic.a -unknown- xorg +./usr/X11R7/lib/libxcb-event_pic.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-glx_pic.a -unknown- xorg -./usr/X11R7/lib/libxcb-icccm_pic.a -unknown- xorg -./usr/X11R7/lib/libxcb-image_pic.a -unknown- xorg -./usr/X11R7/lib/libxcb-keysyms_pic.a -unknown- xorg -./usr/X11R7/lib/libxcb-property_pic.a -unknown- xorg +./usr/X11R7/lib/libxcb-icccm_pic.a -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-image_pic.a -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-keysyms_pic.a -unknown- xorg,minix-false +./usr/X11R7/lib/libxcb-property_pic.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-randr_pic.a -unknown- xorg ./usr/X11R7/lib/libxcb-record_pic.a -unknown- xorg -./usr/X11R7/lib/libxcb-render-util_pic.a -unknown- xorg +./usr/X11R7/lib/libxcb-render-util_pic.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-render_pic.a -unknown- xorg -./usr/X11R7/lib/libxcb-reply_pic.a -unknown- xorg +./usr/X11R7/lib/libxcb-reply_pic.a -unknown- xorg,minix-false ./usr/X11R7/lib/libxcb-res_pic.a -unknown- xorg ./usr/X11R7/lib/libxcb-screensaver_pic.a -unknown- xorg ./usr/X11R7/lib/libxcb-shape_pic.a -unknown- xorg diff --git a/distrib/sets/lists/xetc/mi b/distrib/sets/lists/xetc/mi index 690a82fa2..ad7126f09 100644 --- a/distrib/sets/lists/xetc/mi +++ b/distrib/sets/lists/xetc/mi @@ -30,24 +30,24 @@ ./etc/X11/xdm/TakeConsole -unknown- xorg ./etc/X11/xdm/Xaccess -unknown- x11 ./etc/X11/xdm/Xaccess -unknown- xorg -./etc/X11/xdm/Xreset -unknown- xorg +./etc/X11/xdm/Xreset -unknown- xorg,minix-false ./etc/X11/xdm/Xresources -unknown- x11 -./etc/X11/xdm/Xresources -unknown- xorg +./etc/X11/xdm/Xresources -unknown- xorg,minix-false ./etc/X11/xdm/Xservers -unknown- x11 ./etc/X11/xdm/Xservers -unknown- xorg ./etc/X11/xdm/Xservers.fs -unknown- x11 ./etc/X11/xdm/Xservers.fs -unknown- xorg ./etc/X11/xdm/Xservers.ws -unknown- x11 -./etc/X11/xdm/Xservers.ws -unknown- xorg +./etc/X11/xdm/Xservers.ws -unknown- xorg,minix-false ./etc/X11/xdm/Xsession -unknown- x11 -./etc/X11/xdm/Xsession -unknown- xorg +./etc/X11/xdm/Xsession -unknown- xorg,minix-false ./etc/X11/xdm/Xsetup_0 -unknown- x11 ./etc/X11/xdm/Xsetup_0 -unknown- xorg -./etc/X11/xdm/Xstartup -unknown- xorg +./etc/X11/xdm/Xstartup -unknown- xorg,minix-false ./etc/X11/xdm/Xwilling -unknown- x11 ./etc/X11/xdm/Xwilling -unknown- xorg ./etc/X11/xdm/xdm-config -unknown- x11 -./etc/X11/xdm/xdm-config -unknown- xorg +./etc/X11/xdm/xdm-config -unknown- xorg,minix-false ./etc/X11/xdm/xorg-bw.xpm xetc-obsolete obsolete ./etc/X11/xdm/xorg.xpm xetc-obsolete obsolete ./etc/X11/xinit/xinitrc -unknown- x11 @@ -108,8 +108,8 @@ ./etc/mtree/set.xetc xetc-sys-root x11 ./etc/mtree/set.xetc xetc-sys-root xorg ./etc/rc.d/fccache etc-x11-rc x11 -./etc/rc.d/fccache etc-x11-rc xorg +./etc/rc.d/fccache etc-x11-rc xorg,minix-false ./etc/rc.d/xdm etc-x11-rc x11 -./etc/rc.d/xdm etc-x11-rc xorg +./etc/rc.d/xdm etc-x11-rc xorg,minix-false ./etc/rc.d/xfs etc-x11-rc x11 -./etc/rc.d/xfs etc-x11-rc xorg +./etc/rc.d/xfs etc-x11-rc xorg,minix-false diff --git a/distrib/sets/lists/xserver/md.evbarm b/distrib/sets/lists/xserver/md.evbarm index 17d777167..bb82a2b7b 100644 --- a/distrib/sets/lists/xserver/md.evbarm +++ b/distrib/sets/lists/xserver/md.evbarm @@ -12,10 +12,10 @@ ./usr/X11R7/lib/modules/drivers/mouse_drv.so.1 -unknown- xorg ./usr/X11R7/lib/modules/drivers/void_drv.so -unknown- obsolete ./usr/X11R7/lib/modules/drivers/void_drv.so.1 -unknown- obsolete -./usr/X11R7/lib/modules/drivers/ws_drv.so -unknown- xorg -./usr/X11R7/lib/modules/drivers/ws_drv.so.1 -unknown- xorg -./usr/X11R7/lib/modules/drivers/wsfb_drv.so -unknown- xorg -./usr/X11R7/lib/modules/drivers/wsfb_drv.so.0 -unknown- xorg +./usr/X11R7/lib/modules/drivers/ws_drv.so -unknown- xorg,minix-false +./usr/X11R7/lib/modules/drivers/ws_drv.so.1 -unknown- xorg,minix-false +./usr/X11R7/lib/modules/drivers/wsfb_drv.so -unknown- xorg,minix-false +./usr/X11R7/lib/modules/drivers/wsfb_drv.so.0 -unknown- xorg,minix-false ./usr/X11R7/lib/modules/extensions/libdbe.a -unknown- xorg ./usr/X11R7/lib/modules/extensions/libdbe.so -unknown- xorg ./usr/X11R7/lib/modules/extensions/libdbe.so.0 -unknown- xorg @@ -103,7 +103,7 @@ ./usr/X11R7/man/man4/kbd.4 -unknown- .man,xorg ./usr/X11R7/man/man4/mousedrv.4 -unknown- .man,xorg ./usr/X11R7/man/man4/void.4 -unknown- obsolete -./usr/X11R7/man/man4/ws.4 -unknown- .man,xorg -./usr/X11R7/man/man4/wsfb.4 -unknown- .man,xorg +./usr/X11R7/man/man4/ws.4 -unknown- .man,xorg,minix-false +./usr/X11R7/man/man4/wsfb.4 -unknown- .man,xorg,minix-false ./usr/X11R7/man/man5/xorg.conf.5 -unknown- .man,xorg ./usr/X11R7/share/aclocal/xorg-server.m4 -unknown- xorg diff --git a/distrib/sets/lists/xserver/md.i386 b/distrib/sets/lists/xserver/md.i386 index f4ba5a6cf..ca9e4a1e5 100644 --- a/distrib/sets/lists/xserver/md.i386 +++ b/distrib/sets/lists/xserver/md.i386 @@ -523,10 +523,10 @@ ./usr/X11R7/lib/modules/drivers/vmwlegacy_drv.so.11 -unknown- obsolete ./usr/X11R7/lib/modules/drivers/void_drv.so -unknown- obsolete ./usr/X11R7/lib/modules/drivers/void_drv.so.1 -unknown- obsolete -./usr/X11R7/lib/modules/drivers/ws_drv.so -unknown- xorg -./usr/X11R7/lib/modules/drivers/ws_drv.so.1 -unknown- xorg -./usr/X11R7/lib/modules/drivers/wsfb_drv.so -unknown- xorg -./usr/X11R7/lib/modules/drivers/wsfb_drv.so.0 -unknown- xorg +./usr/X11R7/lib/modules/drivers/ws_drv.so -unknown- xorg,minix-false +./usr/X11R7/lib/modules/drivers/ws_drv.so.1 -unknown- xorg,minix-false +./usr/X11R7/lib/modules/drivers/wsfb_drv.so -unknown- xorg,minix-false +./usr/X11R7/lib/modules/drivers/wsfb_drv.so.0 -unknown- xorg,minix-false ./usr/X11R7/lib/modules/drivers/xgi_drv.so -unknown- xorg ./usr/X11R7/lib/modules/drivers/xgi_drv.so.1 -unknown- xorg ./usr/X11R7/lib/modules/extensions/libGLcore.a -unknown- obsolete @@ -775,8 +775,8 @@ ./usr/X11R7/man/man4/vmmouse.4 -unknown- .man,xorg ./usr/X11R7/man/man4/vmware.4 -unknown- .man,xorg ./usr/X11R7/man/man4/void.4 -unknown- obsolete -./usr/X11R7/man/man4/ws.4 -unknown- .man,xorg -./usr/X11R7/man/man4/wsfb.4 -unknown- .man,xorg +./usr/X11R7/man/man4/ws.4 -unknown- .man,xorg,minix-false +./usr/X11R7/man/man4/wsfb.4 -unknown- .man,xorg,minix-false ./usr/X11R7/man/man4/xgi.4 -unknown- .man,xorg ./usr/X11R7/man/man5/xorg.conf.5 -unknown- .man,xorg ./usr/X11R7/share/aclocal/xorg-server.m4 -unknown- xorg diff --git a/distrib/sets/lists/xserver/mi b/distrib/sets/lists/xserver/mi index 59059f934..d1068e603 100644 --- a/distrib/sets/lists/xserver/mi +++ b/distrib/sets/lists/xserver/mi @@ -53,7 +53,7 @@ ./usr/X11R6/man/man1/xdmxconfig.1 -unknown- .man,x11 ./usr/X11R6/man/man1/xvidtune.1 -unknown- .man,x11 ./usr/X11R7/bin/Xnest -unknown- xorg -./usr/X11R7/bin/Xvfb -unknown- xorg +./usr/X11R7/bin/Xvfb -unknown- xorg,minix-false ./usr/X11R7/lib/modules/dri/libmesa_dri.so -unknown- xorg ./usr/X11R7/lib/modules/dri/libmesa_dri.so.0 -unknown- xorg ./usr/X11R7/lib/modules/dri/swrast_dri.so -unknown- xorg @@ -71,5 +71,5 @@ ./usr/X11R7/man/man1/Xmark.1 -unknown- .man,xorg ./usr/X11R7/man/man1/Xnest.1 -unknown- .man,xorg ./usr/X11R7/man/man1/Xserver.1 -unknown- .man,xorg -./usr/X11R7/man/man1/Xvfb.1 -unknown- .man,xorg +./usr/X11R7/man/man1/Xvfb.1 -unknown- .man,xorg,minix-false ./usr/X11R7/man/man5/SecurityPolicy.5 -unknown- obsolete diff --git a/etc/mtree/NetBSD.dist.Xorg b/etc/mtree/NetBSD.dist.Xorg new file mode 100644 index 000000000..5c0add9ce --- /dev/null +++ b/etc/mtree/NetBSD.dist.Xorg @@ -0,0 +1,204 @@ +# $NetBSD: NetBSD.dist.Xorg,v 1.12 2013/06/10 05:09:34 mrg Exp $ + +# LSC Do not take for granted that the last thing done in the previous file +# was standard directories... +/set type=dir uid=0 gid=0 mode=0755 + +./etc/fonts +./etc/fonts/conf.avail +./etc/X11 +./etc/X11/fs +./etc/X11/lbxproxy +./etc/X11/proxymngr +./etc/X11/rstart +./etc/X11/rstart/commands +./etc/X11/rstart/commands/x11r6 +./etc/X11/rstart/contexts +./etc/X11/twm +./etc/X11/xdm +./etc/X11/xinit +./etc/X11/xserver +./etc/X11/xsm +./usr/libdata +./usr/libdata/debug +./usr/libdata/debug/usr +./usr/X11R7 +./usr/X11R7/bin +./usr/X11R7/include +./usr/X11R7/include/DPS +./usr/X11R7/include/GL +./usr/X11R7/include/GL/internal +./usr/X11R7/include/X11 +./usr/X11R7/include/X11/dri +./usr/X11R7/include/X11/ICE +./usr/X11R7/include/X11/PM +./usr/X11R7/include/X11/SM +./usr/X11R7/include/X11/Xaw +./usr/X11R7/include/X11/Xcursor +./usr/X11R7/include/X11/Xft +./usr/X11R7/include/X11/Xmu +./usr/X11R7/include/X11/Xtrans +./usr/X11R7/include/X11/bitmaps +./usr/X11R7/include/X11/extensions +./usr/X11R7/include/X11/fonts +./usr/X11R7/include/X11/pixmaps +./usr/X11R7/include/libdrm +./usr/X11R7/include/libkms +./usr/X11R7/include/fontconfig +./usr/X11R7/include/freetype2 +./usr/X11R7/include/freetype2/freetype +./usr/X11R7/include/freetype2/freetype/cache +./usr/X11R7/include/freetype2/freetype/config +./usr/X11R7/include/freetype2/freetype/internal +./usr/X11R7/include/freetype2/freetype/internal/services +./usr/X11R7/include/pixman-1 +./usr/X11R7/include/xcb +./usr/X11R7/include/xorg +./usr/X11R7/lib +./usr/X11R7/lib/X11 +./usr/X11R7/lib/X11/app-defaults +./usr/X11R7/lib/X11/config +./usr/X11R7/lib/X11/doc +./usr/X11R7/lib/X11/etc +./usr/X11R7/lib/X11/fonts +./usr/X11R7/lib/X11/fonts/100dpi +./usr/X11R7/lib/X11/fonts/75dpi +./usr/X11R7/lib/X11/fonts/CID +./usr/X11R7/lib/X11/fonts/Speedo +./usr/X11R7/lib/X11/fonts/TTF +./usr/X11R7/lib/X11/fonts/Type1 +./usr/X11R7/lib/X11/fonts/cyrillic +./usr/X11R7/lib/X11/fonts/encodings +./usr/X11R7/lib/X11/fonts/encodings/large +./usr/X11R7/lib/X11/fonts/local +./usr/X11R7/lib/X11/fonts/misc +./usr/X11R7/lib/X11/fonts/util +./usr/X11R7/lib/X11/locale +./usr/X11R7/lib/X11/locale/C +./usr/X11R7/lib/X11/locale/am_ET.UTF-8 +./usr/X11R7/lib/X11/locale/armscii-8 +./usr/X11R7/lib/X11/locale/el_GR.UTF-8 +./usr/X11R7/lib/X11/locale/en_US.UTF-8 +./usr/X11R7/lib/X11/locale/georgian-academy +./usr/X11R7/lib/X11/locale/georgian-ps +./usr/X11R7/lib/X11/locale/ibm-cp1133 +./usr/X11R7/lib/X11/locale/iscii-dev +./usr/X11R7/lib/X11/locale/isiri-3342 +./usr/X11R7/lib/X11/locale/iso8859-1 +./usr/X11R7/lib/X11/locale/iso8859-10 +./usr/X11R7/lib/X11/locale/iso8859-11 +./usr/X11R7/lib/X11/locale/iso8859-13 +./usr/X11R7/lib/X11/locale/iso8859-14 +./usr/X11R7/lib/X11/locale/iso8859-15 +./usr/X11R7/lib/X11/locale/iso8859-2 +./usr/X11R7/lib/X11/locale/iso8859-3 +./usr/X11R7/lib/X11/locale/iso8859-4 +./usr/X11R7/lib/X11/locale/iso8859-5 +./usr/X11R7/lib/X11/locale/iso8859-6 +./usr/X11R7/lib/X11/locale/iso8859-7 +./usr/X11R7/lib/X11/locale/iso8859-8 +./usr/X11R7/lib/X11/locale/iso8859-9 +./usr/X11R7/lib/X11/locale/iso8859-9e +./usr/X11R7/lib/X11/locale/ja +./usr/X11R7/lib/X11/locale/ja.JIS +./usr/X11R7/lib/X11/locale/ja.SJIS +./usr/X11R7/lib/X11/locale/ja_JP.UTF-8 +./usr/X11R7/lib/X11/locale/ko +./usr/X11R7/lib/X11/locale/ko_KR.UTF-8 +./usr/X11R7/lib/X11/locale/koi8-c +./usr/X11R7/lib/X11/locale/koi8-r +./usr/X11R7/lib/X11/locale/koi8-u +./usr/X11R7/lib/X11/locale/lib +./usr/X11R7/lib/X11/locale/lib/common +./usr/X11R7/lib/X11/locale/microsoft-cp1251 +./usr/X11R7/lib/X11/locale/microsoft-cp1255 +./usr/X11R7/lib/X11/locale/microsoft-cp1256 +./usr/X11R7/lib/X11/locale/mulelao-1 +./usr/X11R7/lib/X11/locale/nokhchi-1 +./usr/X11R7/lib/X11/locale/pt_BR.UTF-8 +./usr/X11R7/lib/X11/locale/tatar-cyr +./usr/X11R7/lib/X11/locale/th_TH +./usr/X11R7/lib/X11/locale/th_TH.UTF-8 +./usr/X11R7/lib/X11/locale/tscii-0 +./usr/X11R7/lib/X11/locale/vi_VN.tcvn +./usr/X11R7/lib/X11/locale/vi_VN.viscii +./usr/X11R7/lib/X11/locale/zh_CN +./usr/X11R7/lib/X11/locale/zh_CN.UTF-8 +./usr/X11R7/lib/X11/locale/zh_CN.gb18030 +./usr/X11R7/lib/X11/locale/zh_CN.gbk +./usr/X11R7/lib/X11/locale/zh_HK.UTF-8 +./usr/X11R7/lib/X11/locale/zh_HK.big5 +./usr/X11R7/lib/X11/locale/zh_HK.big5hkscs +./usr/X11R7/lib/X11/locale/zh_TW +./usr/X11R7/lib/X11/locale/zh_TW.UTF-8 +./usr/X11R7/lib/X11/locale/zh_TW.big5 +./usr/X11R7/lib/X11/x11perfcomp +./usr/X11R7/lib/X11/xedit +./usr/X11R7/lib/X11/xedit/lisp +./usr/X11R7/lib/X11/xedit/lisp/progmodes +./usr/X11R7/lib/X11/xkb +./usr/X11R7/lib/X11/xkb/compat +./usr/X11R7/lib/X11/xkb/geometry +./usr/X11R7/lib/X11/xkb/geometry/digital_vndr +./usr/X11R7/lib/X11/xkb/geometry/sgi_vndr +./usr/X11R7/lib/X11/xkb/keycodes +./usr/X11R7/lib/X11/xkb/keycodes/digital_vndr +./usr/X11R7/lib/X11/xkb/keycodes/sgi_vndr +./usr/X11R7/lib/X11/xkb/rules +./usr/X11R7/lib/X11/xkb/symbols +./usr/X11R7/lib/X11/xkb/symbols/digital_vndr +./usr/X11R7/lib/X11/xkb/symbols/fujitsu_vndr +./usr/X11R7/lib/X11/xkb/symbols/hp_vndr +./usr/X11R7/lib/X11/xkb/symbols/macintosh_vndr +./usr/X11R7/lib/X11/xkb/symbols/nec_vndr +./usr/X11R7/lib/X11/xkb/symbols/nokia_vndr +./usr/X11R7/lib/X11/xkb/symbols/sgi_vndr +./usr/X11R7/lib/X11/xkb/symbols/sharp_vndr +./usr/X11R7/lib/X11/xkb/symbols/sony_vndr +./usr/X11R7/lib/X11/xkb/symbols/sun_vndr +./usr/X11R7/lib/X11/xkb/symbols/xfree68_vndr +./usr/X11R7/lib/X11/xkb/torture +./usr/X11R7/lib/X11/xkb/types +./usr/X11R7/lib/modules +./usr/X11R7/lib/modules/dri +./usr/X11R7/lib/modules/extensions +./usr/X11R7/lib/modules/fonts +./usr/X11R7/lib/modules/drivers +./usr/X11R7/lib/modules/input +./usr/X11R7/lib/pkgconfig +./usr/X11R7/lib/xorg +./usr/X11R7/libexec +./usr/X11R7/man +./usr/X11R7/man/cat1 +./usr/X11R7/man/cat3 +./usr/X11R7/man/cat4 +./usr/X11R7/man/cat5 +./usr/X11R7/man/cat7 +./usr/X11R7/man/html1 +./usr/X11R7/man/html3 +./usr/X11R7/man/html4 +./usr/X11R7/man/html5 +./usr/X11R7/man/html7 +./usr/X11R7/man/man1 +./usr/X11R7/man/man3 +./usr/X11R7/man/man4 +./usr/X11R7/man/man5 +./usr/X11R7/man/man7 +./usr/X11R7/share +./usr/X11R7/share/aclocal +./usr/X11R7/share/examples +./usr/X11R7/share/examples/ssh-askpass +./usr/X11R7/share/pciids +./usr/X11R7/share/xcb +./usr/libdata/debug/usr/X11R7 +./usr/libdata/debug/usr/X11R7/bin +./usr/libdata/debug/usr/X11R7/lib +./usr/libdata/debug/usr/X11R7/lib/X11 +./usr/libdata/debug/usr/X11R7/lib/X11/locale +./usr/libdata/debug/usr/X11R7/lib/X11/locale/lib +./usr/libdata/debug/usr/X11R7/lib/X11/locale/lib/common +./usr/libdata/debug/usr/X11R7/lib/modules +./usr/libdata/debug/usr/X11R7/lib/modules/dri +./usr/libdata/debug/usr/X11R7/lib/modules/drivers +./usr/libdata/debug/usr/X11R7/lib/modules/extensions +./usr/libdata/debug/usr/X11R7/libexec diff --git a/etc/mtree/NetBSD.dist.base b/etc/mtree/NetBSD.dist.base index 239e8a3c2..fc380cf56 100644 --- a/etc/mtree/NetBSD.dist.base +++ b/etc/mtree/NetBSD.dist.base @@ -18,9 +18,25 @@ ./boot/minix_default ./dev ./etc +./etc/X11 +./etc/X11/fs +./etc/X11/lbxproxy +./etc/X11/proxymngr +./etc/X11/rstart +./etc/X11/rstart/commands +./etc/X11/rstart/commands/x11r6 +./etc/X11/rstart/contexts +./etc/X11/twm +./etc/X11/xdm +./etc/X11/xinit +./etc/X11/xserver +./etc/X11/xsm ./etc/defaults ./etc/devmand ./etc/devmand/scripts +./etc/fonts +./etc/fonts/conf.avail +./etc/fonts/conf.d ./etc/mtree ./etc/system.conf.d ./home diff --git a/etc/mtree/NetBSD.dist.earm b/etc/mtree/NetBSD.dist.earm index 6e99602fb..6291c2b42 100644 --- a/etc/mtree/NetBSD.dist.earm +++ b/etc/mtree/NetBSD.dist.earm @@ -1,4 +1,4 @@ -# +# $NetBSD: NetBSD.dist.earm,v 1.1 2013/04/27 07:59:09 matt Exp $ ./usr/share/beaglebone ./usr/share/beaglebone/weather diff --git a/external/mit/xorg/Makefile b/external/mit/xorg/Makefile new file mode 100644 index 000000000..09153e211 --- /dev/null +++ b/external/mit/xorg/Makefile @@ -0,0 +1,86 @@ +# $NetBSD: Makefile,v 1.8 2010/11/12 17:05:48 tsutsui Exp $ + +# Top level Makefile to cross build xorg inside the NetBSD tree. + +.include + +SUBDIR= tools .WAIT include .WAIT lib .WAIT bin share server etc + +.if ${MKUPDATE} == "no" && !defined(NOCLEANDIR) +BUILDTARGETS+= cleandir +.endif +.if ${MKOBJDIRS} != "no" +BUILDTARGETS+= obj +.endif +.if !defined(NOINCLUDES) +BUILDTARGETS+= includes +.endif +BUILDTARGETS+= do-tools +BUILDTARGETS+= do-lib +BUILDTARGETS+= do-build + +.ORDER: ${BUILDTARGETS} + +START_TIME!= date + +build: check_X11SRCDIR + @echo "X11 build started at: ${START_TIME}" +.for tgt in ${BUILDTARGETS} + ${MAKEDIRTARGET} . ${tgt} +.endfor + @echo "X11 build started at: ${START_TIME}" + @printf "X11 build finished at: " && date + +do-build: +.for targ in dependall install + ${MAKEDIRTARGET} . ${targ} +.endfor + +.for dir in tools lib +do-${dir:S/\//-/g}: +. for targ in dependall install + ${MAKEDIRTARGET} ${dir} ${targ} +. endfor +.endfor + +afterinstall: .PHONY +.if !defined(__MINIX) +.if ${MKMAN} != "no" + ${MAKEDIRTARGET} ${NETBSDSRCDIR}/share/man makedb \ + WHATISDBDIR=${X11MANDIR} +.endif +.endif # !defined(__MINIX) + + +DISTRIBTARGETS= \ + bin/proxymngr \ + bin/twm \ + bin/xdm/config \ + bin/xfs \ + bin/xinit \ + bin/xsm \ + etc \ + lib/fontconfig/etc \ + lib/fontconfig/etc/conf.avail \ + lib/fontconfig/etc/conf.d + +distribution: check_X11SRCDIR +.for tgt in ${DISTRIBTARGETS} + ${MAKEDIRTARGET} ${tgt} configinstall +.endfor + + +check_X11SRCDIR: .PHONY .NOTMAIN +.if !defined(X11SRCDIR) + @echo + @echo "ERROR: setenv X11SRCDIR before doing that!" + @false +.elif !exists(${X11SRCDIR.X11}) + @echo + @echo "ERROR: X11SRCDIR.X11 \`${X11SRCDIR.X11}' does not exist" + @false +.else + @true +.endif + +.include diff --git a/external/mit/xorg/Makefile.inc b/external/mit/xorg/Makefile.inc new file mode 100644 index 000000000..19f1c1688 --- /dev/null +++ b/external/mit/xorg/Makefile.inc @@ -0,0 +1,4 @@ +LDSTATIC= -dynamic + +LDADD+= -lmthread +DPADD+= ${LIBMTHREAD} diff --git a/external/mit/xorg/TODO b/external/mit/xorg/TODO new file mode 100644 index 000000000..fb7841dc7 --- /dev/null +++ b/external/mit/xorg/TODO @@ -0,0 +1,12 @@ +$NetBSD: TODO,v 1.18 2010/05/23 10:45:04 mrg Exp $ + +libs + -- libGL has has glapi_x86.S commented out from the + build because it spews when eating -traditional-cpp + cheap whitespace hacks have been discussed or + phone suggested we only pass -traditional-cpp to + platforms where assemblers do things with '#'. + + +upgrade issues: + - new Mesa has glslcompiler -- do we want it? diff --git a/external/mit/xorg/bin/Makefile b/external/mit/xorg/bin/Makefile new file mode 100644 index 000000000..17b682c96 --- /dev/null +++ b/external/mit/xorg/bin/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.13 2013/06/03 20:23:39 mrg Exp $ + +# LSC: Skipped for now +# xdm : uses network structures we still do not have (struct ifconf, struct ifreq) +# xlsclients: depends on xcb-atom from xcb-utils +SUBDIR= appres bdftopcf bdftruncate beforelight bitmap ccmakedep \ + cleanlinks cxpm editres \ + fc-cache fc-cat fc-list fc-match fc-pattern fc-query fc-scan \ + fc-validate \ + fonttosfnt fslsfonts fstobdf glxgears glxinfo \ + iceauth ico imake listres lndir luit makedepend \ + makeg makestrs mergelib mkdirhier mkfontdir \ + mkfontscale mkhtmlindex oclock proxymngr revpath \ + rgb setxkbmap smproxy sxpm \ + twm ucs2any viewres x11perf xauth xbiff xcalc \ + xclipboard xclock xcmsdb xconsole xcutsel xditview \ + xdpyinfo xedit xev xeyes xf86dga xfd xfindproxy xfontsel \ + xfs xfsinfo xfwp xgamma xgc xhost xinit xinput xkbcomp \ + xkbevd xkbprint xkbutils xkill xload xlogo xlsatoms \ + xlsfonts xmag xman xmessage xmh xmkmf xmlwf xmodmap xmore \ + xprop xrandr xrdb xrefresh xset xsetmode xsetpointer \ + xsetroot xsm xstdcmap xterm xtrap xvidtune \ + xvinfo xwd xwininfo xwud xdriinfo sessreg + +SUBDIR+=ssh-askpass +SUBDIR+=xsetwallpaper + +# bring back from xfree: +# lndir + +.include diff --git a/external/mit/xorg/bin/Makefile.inc b/external/mit/xorg/bin/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/bin/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/bin/appres/Makefile b/external/mit/xorg/bin/appres/Makefile new file mode 100644 index 000000000..a5fca6ea5 --- /dev/null +++ b/external/mit/xorg/bin/appres/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 05:41:50 mrg Exp $ + +.include + +PROG= appres + +CPPFLAGS+= -I${X11SRCDIR.${PROG}}/../include -DHAVE_CONFIG_H + +LDADD+= -lXt -lSM -lICE -lXext -lX11 -lXdmcp -lXau +DPADD+= ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} ${LIBXDMCP} ${LIBXAU} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/bdftopcf/Makefile b/external/mit/xorg/bin/bdftopcf/Makefile new file mode 100644 index 000000000..45bd25621 --- /dev/null +++ b/external/mit/xorg/bin/bdftopcf/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 05:24:49 mrg Exp $ + +.include + +PROG= bdftopcf + +CPPFLAGS+= -I${X11SRCDIR.${PROG}}/../include -DHAVE_CONFIG_H + +LDADD+= -lXfont -lfontenc -lfreetype -lm -lz -lbz2 +DPADD+= ${LIBXFONT} ${LIBFONTENC} ${LIBFREETYPE} ${LIBM} ${LIBZ} ${LIBBZ2} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/bdftruncate/Makefile b/external/mit/xorg/bin/bdftruncate/Makefile new file mode 100644 index 000000000..8cf3f00f0 --- /dev/null +++ b/external/mit/xorg/bin/bdftruncate/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.3 2010/11/21 01:25:32 mrg Exp $ + +.include + +PROG= bdftruncate + +.PATH: ${X11SRCDIR.font-util} ${X11SRCDIR.font-util}/man + +.include +.include diff --git a/external/mit/xorg/bin/beforelight/Makefile b/external/mit/xorg/bin/beforelight/Makefile new file mode 100644 index 000000000..3f105f2f1 --- /dev/null +++ b/external/mit/xorg/bin/beforelight/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 05:24:49 mrg Exp $ + +.include + +PROG= beforelight +SRCS= b4light + +APPDEFS=Beforelight + +LDADD+= -lXss -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXSS} ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.beforelight} ${X11SRCDIR.beforelight}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/bitmap/Makefile b/external/mit/xorg/bin/bitmap/Makefile new file mode 100644 index 000000000..677c1218c --- /dev/null +++ b/external/mit/xorg/bin/bitmap/Makefile @@ -0,0 +1,29 @@ +# $NetBSD: Makefile,v 1.4 2013/05/31 09:14:18 mrg Exp $ + +.include + +PROG= bitmap +SRCS= BitEdit.c CutPaste.c Graphics.c ReqMach.c Bitmap.c Dialog.c Handlers.c + +.PATH: ${X11SRCDIR.bitmap}/man +MLINKS= bitmap.1 bmtoa.1 bitmap.1 atobm.1 + +FILES= Dashes Down Excl FlipHoriz FlipVert Fold Left Right RotateLeft \ + RotateRight Stipple Term Up +FILESDIR=${X11INCDIR}/X11/bitmaps + +CPPFLAGS+= -DHAVE_MKSTEMP -DHAVE_LRINT + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +SUBDIR= bmtoa atobm app-defaults + +.PATH: ${X11SRCDIR.bitmap} + +CWARNFLAGS.clang+= -Wno-format + +.include +.include +.include diff --git a/external/mit/xorg/bin/bitmap/app-defaults/Makefile b/external/mit/xorg/bin/bitmap/app-defaults/Makefile new file mode 100644 index 000000000..1442dc44c --- /dev/null +++ b/external/mit/xorg/bin/bitmap/app-defaults/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.1 2010/11/21 02:34:15 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.bitmap}/app-defaults +APPDEFS=Bitmap Bitmap-color + +.include +.include diff --git a/external/mit/xorg/bin/bitmap/atobm/Makefile b/external/mit/xorg/bin/bitmap/atobm/Makefile new file mode 100644 index 000000000..b23bec521 --- /dev/null +++ b/external/mit/xorg/bin/bitmap/atobm/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +NOMAN= 1 + +.include + +PROG= atobm + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.bitmap} + +.include +.include diff --git a/external/mit/xorg/bin/bitmap/bmtoa/Makefile b/external/mit/xorg/bin/bitmap/bmtoa/Makefile new file mode 100644 index 000000000..5c39084d7 --- /dev/null +++ b/external/mit/xorg/bin/bitmap/bmtoa/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +NOMAN= 1 + +.include + +PROG= bmtoa + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.bitmap} + +.include +.include diff --git a/external/mit/xorg/bin/ccmakedep/Makefile b/external/mit/xorg/bin/ccmakedep/Makefile new file mode 100644 index 000000000..f5660f5b8 --- /dev/null +++ b/external/mit/xorg/bin/ccmakedep/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +CPPSCRIPTS= ccmakedep +CPPSCRIPTFLAGS= -DPREPROC='"gcc -E -traditional"' +SCRIPTS= ${CPPSCRIPTS} +MAN= ccmakedep.1 + +BUILDSYMLINKS= mdepend.cpp ccmakedep.cpp + +.PATH: ${X11SRCDIR.imake} + +.include +.include diff --git a/external/mit/xorg/bin/cleanlinks/Makefile b/external/mit/xorg/bin/cleanlinks/Makefile new file mode 100644 index 000000000..3496bcff7 --- /dev/null +++ b/external/mit/xorg/bin/cleanlinks/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +SCRIPTS=cleanlinks +MAN= cleanlinks.1 + +.PATH: ${X11SRCDIR.imake} + +.include +.include diff --git a/external/mit/xorg/bin/cxpm/Makefile b/external/mit/xorg/bin/cxpm/Makefile new file mode 100644 index 000000000..3438119da --- /dev/null +++ b/external/mit/xorg/bin/cxpm/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 01:41:08 mrg Exp $ + +.include + +PROG= cxpm + +CPPFLAGS+= -I${X11SRCDIR.Xpm}/src +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 + +LDADD+= -lXpm -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXPM} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.Xpm}/${PROG} +.PATH: ${X11SRCDIR.Xpm}/man + +.include +.include diff --git a/external/mit/xorg/bin/editres/Makefile b/external/mit/xorg/bin/editres/Makefile new file mode 100644 index 000000000..3c65f3a6c --- /dev/null +++ b/external/mit/xorg/bin/editres/Makefile @@ -0,0 +1,21 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 05:24:49 mrg Exp $ + +.include + +PROG= editres +SRCS= actions.c comm.c editres.c geometry.c handler.c setvalues.c \ + svpopup.c utils.c widgets.c wtree.c + +APPDEFS=Editres.ad Editres-color.ad + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +CWARNFLAGS.clang+= -Wno-format + +.include +.include diff --git a/external/mit/xorg/bin/fc-cache/Makefile b/external/mit/xorg/bin/fc-cache/Makefile new file mode 100644 index 000000000..1399fb9f7 --- /dev/null +++ b/external/mit/xorg/bin/fc-cache/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2013/06/03 20:23:39 mrg Exp $ + +.include + +PROG= fc-cache + +CPPFLAGS+= -I${X11SRCDIR.fontconfig} -I. +CPPFLAGS+= -DHAVE_CONFIG_H -I${X11SRCDIR.fontconfig}/../include + +LDADD+= -lfontconfig -lfreetype -lexpat +DPADD+= ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} + +.PATH: ${X11SRCDIR.fontconfig}/${PROG} + +.include "../../lib/fontconfig/src/Makefile.fcarch" + +.include +.include diff --git a/external/mit/xorg/bin/fc-cat/Makefile b/external/mit/xorg/bin/fc-cat/Makefile new file mode 100644 index 000000000..f8687e08b --- /dev/null +++ b/external/mit/xorg/bin/fc-cat/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.2 2013/06/03 20:23:39 mrg Exp $ + +.include + +PROG= fc-cat + +CPPFLAGS+= -I${X11SRCDIR.fontconfig} -I. + +LDADD+= -lfontconfig -lfreetype -lexpat +DPADD+= ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} + +.PATH: ${X11SRCDIR.fontconfig}/${PROG} + +.include "../../lib/fontconfig/src/Makefile.fcarch" + +.include +.include diff --git a/external/mit/xorg/bin/fc-list/Makefile b/external/mit/xorg/bin/fc-list/Makefile new file mode 100644 index 000000000..2a4bcf2ee --- /dev/null +++ b/external/mit/xorg/bin/fc-list/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.2 2013/06/03 20:23:39 mrg Exp $ + +.include + +PROG= fc-list + +CPPFLAGS+= -I${X11SRCDIR.fontconfig} -I. + +LDADD+= -lfontconfig -lfreetype -lexpat +DPADD+= ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} + +.PATH: ${X11SRCDIR.fontconfig}/${PROG} + +.include "../../lib/fontconfig/src/Makefile.fcarch" + +.include +.include diff --git a/external/mit/xorg/bin/fc-match/Makefile b/external/mit/xorg/bin/fc-match/Makefile new file mode 100644 index 000000000..32838b32a --- /dev/null +++ b/external/mit/xorg/bin/fc-match/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.2 2013/06/03 20:23:39 mrg Exp $ + +.include + +PROG= fc-match + +CPPFLAGS+= -I${X11SRCDIR.fontconfig} -I. + +LDADD+= -lfontconfig -lfreetype -lexpat +DPADD+= ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} + +.PATH: ${X11SRCDIR.fontconfig}/${PROG} + +.include "../../lib/fontconfig/src/Makefile.fcarch" + +.include +.include diff --git a/external/mit/xorg/bin/fc-pattern/Makefile b/external/mit/xorg/bin/fc-pattern/Makefile new file mode 100644 index 000000000..0c3c8572e --- /dev/null +++ b/external/mit/xorg/bin/fc-pattern/Makefile @@ -0,0 +1,18 @@ +# $NetBSD + +.include + +PROG= fc-pattern + +CPPFLAGS+= -I${X11SRCDIR.fontconfig} -I. -I${DESTDIR}${X11INCDIR}/freetype2 + +LDADD+= -lfontconfig -lfreetype -lexpat +DPADD+= ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} + +.PATH: ${X11SRCDIR.fontconfig}/${PROG} + +FCARCH_DEPFILE= fc-cat.c +.include "../../lib/fontconfig/src/Makefile.fcarch" + +.include +.include diff --git a/external/mit/xorg/bin/fc-query/Makefile b/external/mit/xorg/bin/fc-query/Makefile new file mode 100644 index 000000000..4e2ecf2dd --- /dev/null +++ b/external/mit/xorg/bin/fc-query/Makefile @@ -0,0 +1,17 @@ +# $NetBSD + +.include + +PROG= fc-query + +CPPFLAGS+= -I${X11SRCDIR.fontconfig} -I. -I${DESTDIR}${X11INCDIR}/freetype2 + +LDADD+= -lfontconfig -lfreetype -lexpat +DPADD+= ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} + +.PATH: ${X11SRCDIR.fontconfig}/${PROG} + +.include "../../lib/fontconfig/src/Makefile.fcarch" + +.include +.include diff --git a/external/mit/xorg/bin/fc-scan/Makefile b/external/mit/xorg/bin/fc-scan/Makefile new file mode 100644 index 000000000..898b44b91 --- /dev/null +++ b/external/mit/xorg/bin/fc-scan/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.2 2013/06/03 20:23:39 mrg Exp $ + +.include + +PROG= fc-scan + +CPPFLAGS+= -I${X11SRCDIR.fontconfig} -I. -I${DESTDIR}${X11INCDIR}/freetype2 + +LDADD+= -lfontconfig -lfreetype -lexpat +DPADD+= ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} + +.PATH: ${X11SRCDIR.fontconfig}/${PROG} + +.include "../../lib/fontconfig/src/Makefile.fcarch" + +.include +.include diff --git a/external/mit/xorg/bin/fc-validate/Makefile b/external/mit/xorg/bin/fc-validate/Makefile new file mode 100644 index 000000000..d03b1d83a --- /dev/null +++ b/external/mit/xorg/bin/fc-validate/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.1 2013/06/03 20:23:39 mrg Exp $ + +.include + +PROG= fc-validate + +CPPFLAGS+= -I${X11SRCDIR.fontconfig} -I. -I${DESTDIR}${X11INCDIR}/freetype2 + +LDADD+= -lfontconfig -lfreetype -lexpat +DPADD+= ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} + +.PATH: ${X11SRCDIR.fontconfig}/${PROG} + +.include "../../lib/fontconfig/src/Makefile.fcarch" + +.include +.include diff --git a/external/mit/xorg/bin/fonttosfnt/Makefile b/external/mit/xorg/bin/fonttosfnt/Makefile new file mode 100644 index 000000000..a4ad4e509 --- /dev/null +++ b/external/mit/xorg/bin/fonttosfnt/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.2 2011/08/11 23:15:35 joerg Exp $ + +.include + +PROG= fonttosfnt +SRCS= fonttosfnt.c read.c write.c struct.c util.c + +# XXX XVENDORNAME and XVENDORNAMESHORT should live in a common location +CPPFLAGS+= -DXFREE86_FT2 -I${DESTDIR}${X11INCDIR}/freetype2 \ + -DXVENDORNAMESHORT=${XVENDORNAMESHORT} \ + -DXVENDORNAME=${XVENDORNAME} +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/fonts \ + -I${X11SRCDIR.xc}/extras/freetype2/include + + +LDADD+= -lfreetype -lfontenc -lz -lm +DPADD+= ${LIBFREETYPE} ${LIBFONTENC} ${LIBZ} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} + +CWARNFLAGS.clang+= -Wno-format + +.include +.include diff --git a/external/mit/xorg/bin/fslsfonts/Makefile b/external/mit/xorg/bin/fslsfonts/Makefile new file mode 100644 index 000000000..6eec161ba --- /dev/null +++ b/external/mit/xorg/bin/fslsfonts/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 05:24:49 mrg Exp $ + +.include + +PROG= fslsfonts + +LDADD+= -lFS +DPADD+= ${LIBFS} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/fstobdf/Makefile b/external/mit/xorg/bin/fstobdf/Makefile new file mode 100644 index 000000000..705569d41 --- /dev/null +++ b/external/mit/xorg/bin/fstobdf/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 05:24:49 mrg Exp $ + +.include + +PROG= fstobdf +SRCS= chars.c fstobdf.c header.c props.c + +LDADD+= -lFS -lXext -lX11 +DPADD+= ${LIBFS} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/glxgears/Makefile b/external/mit/xorg/bin/glxgears/Makefile new file mode 100644 index 000000000..328e2eb30 --- /dev/null +++ b/external/mit/xorg/bin/glxgears/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.2 2008/09/07 14:07:21 lukem Exp $ + +NOMAN= # defined + +.include + +PROG= glxgears + +CPPFLAGS+=${X11FLAGS.THREADS} + +#LSC: NO pthread on minix! +LDADD+= -lGL -lXext -lX11 -lm +DPADD+= ${LIBGL} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.MesaDemos}/progs/xdemos + +.include +.include diff --git a/external/mit/xorg/bin/glxinfo/Makefile b/external/mit/xorg/bin/glxinfo/Makefile new file mode 100644 index 000000000..59208b59b --- /dev/null +++ b/external/mit/xorg/bin/glxinfo/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.3 2013/09/12 17:14:20 joerg Exp $ + +NOMAN= # defined + +.include + +.if ${MKPIC} == "no" || ${LDSTATIC:U} != "" +PROG_CXX= glxinfo +.else +PROG= glxinfo +.endif + +CPPFLAGS+=${X11FLAGS.THREADS} -DDO_GLU + +#LSC: No pthread on MINIX! +LDADD+= -lGLU -lGL -lXext -lX11 -lm +DPADD+= ${LIBGLU} ${LIBGL} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.MesaDemos}/progs/xdemos + +.include +.include diff --git a/external/mit/xorg/bin/iceauth/Makefile b/external/mit/xorg/bin/iceauth/Makefile new file mode 100644 index 000000000..47c20c7d5 --- /dev/null +++ b/external/mit/xorg/bin/iceauth/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.2 2011/07/23 06:41:08 mrg Exp $ + +.include + +PROG= iceauth +SRCS= iceauth.c process.c + +LDADD+= -lICE +DPADD+= ${LIBICE} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/ico/Makefile b/external/mit/xorg/bin/ico/Makefile new file mode 100644 index 000000000..7f0ed5c09 --- /dev/null +++ b/external/mit/xorg/bin/ico/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= ico + +CPPFLAGS+=-DMULTITHREAD ${X11FLAGS.THREADS} ${X11FLAGS.EXTENSION} + +#LSC: No pthreads on MINIX! +LDADD+= -lXext -lX11 -lm +DPADD+= ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/imake/Makefile b/external/mit/xorg/bin/imake/Makefile new file mode 100644 index 000000000..f2b23956e --- /dev/null +++ b/external/mit/xorg/bin/imake/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.4 2013/05/31 05:41:26 mrg Exp $ + +.include + +PROG= imake + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${X11SRCDIR.${PROG}}/../include + +CPP_PROGRAM= cpp +CPPFLAGS+= -DCPP_PROGRAM=\"$(CPP_PROGRAM)\" +X11EXTRAMANDEFS=-e 's,__cpp__,$(CPP_PROGRAM),g' + +.PATH: ${X11SRCDIR.${PROG}} + +COPTS.imake.c+= -Wno-error # const issues + +.include +.include diff --git a/external/mit/xorg/bin/listres/Makefile b/external/mit/xorg/bin/listres/Makefile new file mode 100644 index 000000000..75d83f82b --- /dev/null +++ b/external/mit/xorg/bin/listres/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 05:24:49 mrg Exp $ + +.include + +PROG= listres + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/lndir/Makefile b/external/mit/xorg/bin/lndir/Makefile new file mode 100644 index 000000000..b3e6a1556 --- /dev/null +++ b/external/mit/xorg/bin/lndir/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.1 2010/11/21 02:43:31 mrg Exp $ + +.include + +PROG= lndir + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/luit/Makefile b/external/mit/xorg/bin/luit/Makefile new file mode 100644 index 000000000..5fce77fe0 --- /dev/null +++ b/external/mit/xorg/bin/luit/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.4 2011/10/10 09:41:47 njoly Exp $ + +.include + +PROG= luit +SRCS= luit.c iso2022.c charset.c parser.c sys.c other.c + +CPPFLAGS+=-DLOCALE_ALIAS_FILE=\"${X11LIBDIR}/locale/locale.alias\" +CPPFLAGS+=-DHAVE_CONFIG_H -I${X11SRCDIR.${PROG}}/../include + +X11EXTRAMANDEFS+= -e 's,__locale_alias__,${X11LIBDIR}/locale/locale.alias,g' + +LDADD+= -lfontenc -lz +DPADD+= ${LIBFONTENC} ${LIBZ} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/makedepend/Makefile b/external/mit/xorg/bin/makedepend/Makefile new file mode 100644 index 000000000..cba127a18 --- /dev/null +++ b/external/mit/xorg/bin/makedepend/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= makedepend +SRCS= include.c main.c parse.c pr.c cppsetup.c ifparser.c + +CPPFLAGS+= -I${X11SRCDIR.xc}/config/imake \ + -I${DESTDIR}${X11INCDIR}/X11 + +CPPFLAGS.main.c=-DINCLUDEDIR=\"/usr/include\" -DOBJSUFFIX=\".o\" + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/makeg/Makefile b/external/mit/xorg/bin/makeg/Makefile new file mode 100644 index 000000000..31920ddd0 --- /dev/null +++ b/external/mit/xorg/bin/makeg/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +SCRIPTS=makeg +MAN= makeg.1 + +.PATH: ${X11SRCDIR.imake} + +.include +.include diff --git a/external/mit/xorg/bin/makestrs/Makefile b/external/mit/xorg/bin/makestrs/Makefile new file mode 100644 index 000000000..a96a2174d --- /dev/null +++ b/external/mit/xorg/bin/makestrs/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= makestrs + +.PATH: ${X11SRCDIR.Xt}/util + +.include +.include diff --git a/external/mit/xorg/bin/mergelib/Makefile b/external/mit/xorg/bin/mergelib/Makefile new file mode 100644 index 000000000..fb5a4a2f3 --- /dev/null +++ b/external/mit/xorg/bin/mergelib/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +CPPSCRIPTS= mergelib +CPPSCRIPTFLAGS= -DARCMD="ar clq" -DRANLIB="ranlib" +SCRIPTS= ${CPPSCRIPTS} +MAN= mergelib.1 + +.PATH: ${X11SRCDIR.imake} + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/dpsexec/Makefile b/external/mit/xorg/bin/missing-apps/dpsexec/Makefile new file mode 100644 index 000000000..1e3a75cbf --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/dpsexec/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= dpsexec + +LDADD+= -ldps -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBDPS} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.xc}/programs/${PROG} + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/dpsinfo/Makefile b/external/mit/xorg/bin/missing-apps/dpsinfo/Makefile new file mode 100644 index 000000000..c2efc72cd --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/dpsinfo/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= dpsinfo +SRCS= iwraps.c dpsinfo.c + +DPSRCS+= iwraps.c iwraps.h +CLEANFILES+= iwraps.c iwraps.h +CPPFLAGS+= -I. + +LDADD+= -ldps -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBDPS} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/pswrap/Makefile.pswrap" + +.PATH: ${X11SRCDIR.xc}/programs/${PROG} + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/gccmakedep/Makefile b/external/mit/xorg/bin/missing-apps/gccmakedep/Makefile new file mode 100644 index 000000000..a56759c12 --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/gccmakedep/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +CPPSCRIPTS= gccmakedep +CPPSCRIPTFLAGS= -DCCCMD='"gcc"' -DRMCMD='"rm -f"' -DLNCMD='"ln -s"' \ + -DMVCMD='"mv -f"' +SCRIPTS= ${CPPSCRIPTS} +MAN= gccmakedep.1 + +BUILDSYMLINKS= gccmdep.cpp gccmakedep.cpp + +.PATH: ${X11SRCDIR.xc}/config/util + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/lndir/Makefile b/external/mit/xorg/bin/missing-apps/lndir/Makefile new file mode 100644 index 000000000..71ae04b28 --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/lndir/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= lndir + +.PATH: ${X11SRCDIR.xc}/config/util + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/makepsres/Makefile b/external/mit/xorg/bin/missing-apps/makepsres/Makefile new file mode 100644 index 000000000..86f77f648 --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/makepsres/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= makepsres + +CPPFLAGS+=-DXENVIRONMENT + +.PATH: ${X11SRCDIR.xc}/programs/${PROG} + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/mkcfm/Makefile b/external/mit/xorg/bin/missing-apps/mkcfm/Makefile new file mode 100644 index 000000000..1808a74f5 --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/mkcfm/Makefile @@ -0,0 +1,25 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= mkcfm +SRCS= mkcfm.c arith.c curves.c fontfcn.c hints.c lines.c objects.c \ + paths.c regions.c scanfont.c spaces.c t1funcs.c t1info.c \ + t1io.c t1malloc.c t1snap.c t1stub.c token.c type1.c util.c \ + afm.c cidchar.c + +CPPFLAGS+= -DBUILDCID -DCID_ALL_CHARS +CPPFLAGS+= -I${X11SRCDIR.xc}/lib/font/Type1 \ + -I${X11SRCDIR.xc}/include/fonts \ + -I${X11SRCDIR.xc}/lib/font/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.xc}/programs/Xserver/include + +LDADD+= -lm +DPADD+= ${LIBM} + +.PATH: ${X11SRCDIR.xc}/programs/${PROG} +.PATH: ${X11SRCDIR.xc}/lib/font/Type1 + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/pswrap/Makefile b/external/mit/xorg/bin/missing-apps/pswrap/Makefile new file mode 100644 index 000000000..38058f09c --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/pswrap/Makefile @@ -0,0 +1,21 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= pswrap +SRCS= main.c pswparser.y lexer.l pswdict.c pswfile.c \ + systemnames.c psw.c pswstring.c pswsemantics.c + +YHEADER=1 + +CPPFLAGS+= -DXENVIRONMENT \ + -DFRIENDSFILE='""' \ + -I. \ + -I${X11SRCDIR.xc}/config/pswrap + +pswpriv.h: pswparser.h + +.PATH: ${X11SRCDIR.xc}/config/pswrap + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/rman/Makefile b/external/mit/xorg/bin/missing-apps/rman/Makefile new file mode 100644 index 000000000..0c363108d --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/rman/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= rman + +CPPFLAGS+= -DVOLLIST='"1:2:3:4:5:6:7:8:9:o:l:n:p"' \ + -DMANTITLEPRINTF='"%s(%s) manual page"' \ + -DMANREFPRINTF='"%s.%s.html"' \ + -DPOLYGLOTMANVERSION='"3.0.8+XFree86"' \ + -DXFree86 + +.PATH: ${X11SRCDIR.xc}/extras/rman + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/rstart/Makefile b/external/mit/xorg/bin/missing-apps/rstart/Makefile new file mode 100644 index 000000000..2b98721a1 --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/rstart/Makefile @@ -0,0 +1,39 @@ +# $NetBSD: Makefile,v 1.2 2008/10/14 23:37:19 cube Exp $ + +.include + +PROG= rstartd.real +SRCS= auth.c server.c +RSTARTDBINDIR= ${X11ROOTDIR}/libexec +RSTARTCONFIGDIR= ${X11ETCDIR}/rstart + +CPPFLAGS.server.c= -DSERVERNAME=\"rstartd\" \ + -DDEFAULT_CONFIG=\"${RSTARTCONFIGDIR}/config\" + +MAN= rstart.1 rstartd.1 + +X11EXTRAMANDEFS+= -e 's,RSTARTCONFIGDIR,${RSTARTCONFIGDIR},g' + +BUILDSYMLINKS= client.cpp rstart.cpp \ + server.cpp rstartd.cpp + +CPPSCRIPTS= config rstart rstartd +CPPSCRIPTFLAGS_config= -DBINDIR=${X11BINDIR} -DLIBDIR=${RSTARTCONFIGDIR} \ + -DPACKAGEname=rstart -DENVPREFIX=RSTART +CPPSCRIPTFLAGS_rstart= -DRSHCMD=rsh -DSERVERNAME=rstartd +CPPSCRIPTFLAGS_rstartd= -DLIBDIR=${RSTARTCONFIGDIR} -DSERVERNAME=rstartd \ + -DBINDIR=${RSTARTDBINDIR} +SCRIPTS= rstart rstartd +SCRIPTSDIR= ${X11BINDIR} +CONFIGFILES= config +FILESDIR= ${RSTARTCONFIGDIR} + +SUBDIR= commands contexts +TARGETS+= configinstall + +.PATH: ${X11SRCDIR.xc}/programs/rstart + +.include +BINDIR= ${RSTARTDBINDIR} +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/rstart/Makefile.rstart b/external/mit/xorg/bin/missing-apps/rstart/Makefile.rstart new file mode 100644 index 000000000..779bbc7f5 --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/rstart/Makefile.rstart @@ -0,0 +1,21 @@ +# $NetBSD: Makefile.rstart,v 1.2 2008/10/25 22:27:34 apb Exp $ + +.include + +.PATH: ${X11SRCDIR.xc}/programs/rstart/${CFDIR} +FILESDIR= ${X11ETCDIR}/rstart/${CFDIR} + +.for _F in ${CFFILES} +${_F}.sed: ${_F} + ${_MKTARGET_CREATE} + rm -f ${.TARGET} + ${TOOL_SED} ${CFSED} < ${.ALLSRC} > ${.TARGET} + +CONFIGFILES+= ${_F}.sed +CLEANFILES+= ${_F}.sed +FILESNAME_${_F}.sed= ${_F} +.endfor + +TARGETS+= configinstall + +realall: ${CONFIGFILES} diff --git a/external/mit/xorg/bin/missing-apps/rstart/commands/Makefile b/external/mit/xorg/bin/missing-apps/rstart/commands/Makefile new file mode 100644 index 000000000..1d4c2a446 --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/rstart/commands/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +CFDIR= commands +CFFILES= @List ListContexts ListGenericCommands +CFSED= -e 's,ENVPREFIX,RSTART,g' + +CONFIGSYMLINKS= x11r6 ${FILESDIR}/x \ + x11r6 ${FILESDIR}/x11 \ + +SUBDIR= x11r6 + +.include "../Makefile.rstart" + +.include +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/rstart/commands/x11r6/Makefile b/external/mit/xorg/bin/missing-apps/rstart/commands/x11r6/Makefile new file mode 100644 index 000000000..2502e51be --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/rstart/commands/x11r6/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +CFDIR= commands/x11r6 +CFFILES= @List LoadMonitor Terminal +CFSED= -e 's,ENVPREFIX,RSTART,g' + +.include "../../Makefile.rstart" + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/rstart/contexts/Makefile b/external/mit/xorg/bin/missing-apps/rstart/contexts/Makefile new file mode 100644 index 000000000..34712d218 --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/rstart/contexts/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +CFDIR= contexts +CFFILES= @List default x11r6 +CFSED= -e 's,_PATH,/bin:/usr/bin:/usr/pkg/bin:/usr/local/bin:${X11BINDIR},g' \ + -e 's,_MANPATH,${X11MANDIR}:/usr/man,g' + +CONFIGSYMLINKS= x11r6 ${FILESDIR}/x \ + x11r6 ${FILESDIR}/x11 \ + +.include "../Makefile.rstart" + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/scripts/Makefile b/external/mit/xorg/bin/missing-apps/scripts/Makefile new file mode 100644 index 000000000..27f0e1c5a --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/scripts/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +SCRIPTS=xon.sh +MAN= xon.1 + +.PATH: ${X11SRCDIR.xc}/programs/scripts + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/showfont/Makefile b/external/mit/xorg/bin/missing-apps/showfont/Makefile new file mode 100644 index 000000000..db2987208 --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/showfont/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= showfont + +LDADD+= -lFS +DPADD+= ${LIBFS} + +.PATH: ${X11SRCDIR.xc}/programs/${PROG} + +.include +.include diff --git a/external/mit/xorg/bin/missing-apps/texteroids/Makefile b/external/mit/xorg/bin/missing-apps/texteroids/Makefile new file mode 100644 index 000000000..e05255cef --- /dev/null +++ b/external/mit/xorg/bin/missing-apps/texteroids/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= texteroids +SRCS= twraps.c texteroids.c + +DPSRCS+= twraps.c twraps.h +CLEANFILES+= twraps.c twraps.h +CPPFLAGS+= -I. + +LDADD+= -ldps -lXt -lSM -lICE -lXext -lX11 -lm +DPADD+= ${LIBDPS} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} ${LIBM} + +.include "${NETBSDSRCDIR}/xorg/tools/pswrap/Makefile.pswrap" + +.PATH: ${X11SRCDIR.xc}/programs/${PROG} + +.include +.include diff --git a/external/mit/xorg/bin/mkdirhier/Makefile b/external/mit/xorg/bin/mkdirhier/Makefile new file mode 100644 index 000000000..e2a718829 --- /dev/null +++ b/external/mit/xorg/bin/mkdirhier/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +SCRIPTS=mkdirhier +MAN= mkdirhier.1 + +.PATH: ${X11SRCDIR.imake} + +.include +.include diff --git a/external/mit/xorg/bin/mkfontdir/Makefile b/external/mit/xorg/bin/mkfontdir/Makefile new file mode 100644 index 000000000..8084342d0 --- /dev/null +++ b/external/mit/xorg/bin/mkfontdir/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 05:42:14 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.mkfontdir} +.PATH: ${X11SRCDIR.mkfontdir}/man + +MAN= mkfontdir.1 + +SCRIPTS= mkfontdir + +mkfontdir: mkfontdir.in + ${TOOL_SED} -e "s#@bindir@#${X11BINDIR}#" < ${.ALLSRC} > ${.TARGET} + +.include +.include diff --git a/external/mit/xorg/bin/mkfontscale/Makefile b/external/mit/xorg/bin/mkfontscale/Makefile new file mode 100644 index 000000000..f9f1e73f3 --- /dev/null +++ b/external/mit/xorg/bin/mkfontscale/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2011/07/23 06:06:40 mrg Exp $ + +.include + +PROG= mkfontscale +SRCS= mkfontscale.c list.c hash.c ident.c + +CPPFLAGS+= -DFREETYPE2 -I${DESTDIR}${X11INCDIR}/freetype2 \ + -DXFREE86_FT2 -DX_BZIP2_FONT_COMPRESSION + +LDADD+= -lfontenc -lfreetype -lz -lbz2 +DPADD+= ${LIBFONTENC} ${LIBFREETYPE} ${LIBZ} ${LIBBZ2} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/mkhtmlindex/Makefile b/external/mit/xorg/bin/mkhtmlindex/Makefile new file mode 100644 index 000000000..354db6e34 --- /dev/null +++ b/external/mit/xorg/bin/mkhtmlindex/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.2 2008/09/07 14:50:25 lukem Exp $ + +.include + +SCRIPTS=mkhtmlindex +MAN= mkhtmlindex.1 + +CLEANFILES+= mkhtmlindex # creates it from mkhtmlindex.sh + +.PATH: ${X11SRCDIR.imake} + +.include +.include diff --git a/external/mit/xorg/bin/oclock/Makefile b/external/mit/xorg/bin/oclock/Makefile new file mode 100644 index 000000000..1c9e8548c --- /dev/null +++ b/external/mit/xorg/bin/oclock/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 06:24:05 mrg Exp $ + +.include + +PROG= oclock +SRCS= oclock.c Clock.c transform.c + +APPDEFS=Clock-color + +LDADD+= -lXmu -lXt -lSM -lICE -lXext -lX11 -lm +DPADD+= ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/proxymngr/Makefile b/external/mit/xorg/bin/proxymngr/Makefile new file mode 100644 index 000000000..431133614 --- /dev/null +++ b/external/mit/xorg/bin/proxymngr/Makefile @@ -0,0 +1,29 @@ +# $NetBSD: Makefile,v 1.2 2008/10/14 23:37:19 cube Exp $ + +.include + +PROG= proxymngr +SRCS= main.c pmdb.c config.c + +PROXYMANAGERDIR= ${X11ETCDIR}/proxymngr + +CPPFLAGS.main.c= -DCONFIG_FILE=\"${PROXYMANAGERDIR}/pmconfig\" \ + -DXVENDORNAMESHORT=${XVENDORNAMESHORT} \ + -DXVENDORNAME=${XVENDORNAME} \ + -DXORG_RELEASE=${XORG_RELEASE} + + +X11EXTRAMANDEFS+= -e 's,PROXYMANAGERDIR,${PROXYMANAGERDIR},g' + +CPPSCRIPTS= pmconfig +CPPSCRIPTFLAGS= -DLBXPROXY=${X11BINDIR}/lbxproxy +CONFIGFILES= pmconfig +FILESDIR= ${PROXYMANAGERDIR} + +LDADD+= -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/revpath/Makefile b/external/mit/xorg/bin/revpath/Makefile new file mode 100644 index 000000000..42e3c452f --- /dev/null +++ b/external/mit/xorg/bin/revpath/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= revpath + +.PATH: ${X11SRCDIR.imake} + +.include +.include diff --git a/external/mit/xorg/bin/rgb/Makefile b/external/mit/xorg/bin/rgb/Makefile new file mode 100644 index 000000000..56a0d19a0 --- /dev/null +++ b/external/mit/xorg/bin/rgb/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.3 2010/11/21 02:33:40 mrg Exp $ + +.include + +PROG= showrgb + +CPPFLAGS+=-DNDBM -DRGB_DB=\"${X11LIBDIR}/rgb\" -DUSE_RGB_TXT +CPPFLAGS+=-I${X11SRCDIR.rgb}/include + +X11EXTRAMANDEFS+= -e 's,__RGB_DB__,${X11LIBDIR}/rgb,g; \ + s,__RGB_DB_TYPE__,text,g' + +FILES= rgb.txt +FILESDIR=${X11LIBDIR} + +.PATH: ${X11SRCDIR.rgb} ${X11SRCDIR.rgb}/man + +.include +.include diff --git a/external/mit/xorg/bin/sessreg/Makefile b/external/mit/xorg/bin/sessreg/Makefile new file mode 100644 index 000000000..0de30605f --- /dev/null +++ b/external/mit/xorg/bin/sessreg/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.5 2013/05/31 23:42:48 mrg Exp $ + +.include + +PROG= sessreg + +.include "../xdm/Makefile.xdm" + +CPPFLAGS+= -I${X11SRCDIR.${PROG}}/../include + +X11EXTRAMANDEFS+= -e 's,__ttys_file__,/etc/ttys,g; \ + s,__utmp_file__,${XDMPIDDIR}/utmp,g; \ + s,__wtmp_file__,${XDMLOGDIR}/wtmp,g' + +.include +.include + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man diff --git a/external/mit/xorg/bin/setxkbmap/Makefile b/external/mit/xorg/bin/setxkbmap/Makefile new file mode 100644 index 000000000..072d4df93 --- /dev/null +++ b/external/mit/xorg/bin/setxkbmap/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 06:24:05 mrg Exp $ + +.include + +PROG= setxkbmap + +CPPFLAGS+= -DDFLT_XKB_CONFIG_ROOT=\"${X11LIBDIR}/xkb\" \ + -D__XKBDEFRULES__=${__XKBDEFRULES__} + +LDADD+= -lxkbfile -lXext -lX11 +DPADD+= ${LIBXKBFILE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +X11EXTRAMANDEFS+= -e 's,__xkbconfigroot__,${X11LIBDIR}/xkb,g' + +.include +.include diff --git a/external/mit/xorg/bin/smproxy/Makefile b/external/mit/xorg/bin/smproxy/Makefile new file mode 100644 index 000000000..f00d93727 --- /dev/null +++ b/external/mit/xorg/bin/smproxy/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.3 2011/07/23 06:06:40 mrg Exp $ + +.include + +PROG= smproxy +SRCS= smproxy.c save.c + +CPPFLAGS+=-DHAVE_MKSTEMP + +LDADD+= -lXmu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/ssh-askpass/Makefile b/external/mit/xorg/bin/ssh-askpass/Makefile new file mode 100644 index 000000000..f26a054e6 --- /dev/null +++ b/external/mit/xorg/bin/ssh-askpass/Makefile @@ -0,0 +1,49 @@ +# $NetBSD: Makefile,v 1.3 2011/04/03 13:29:45 mbalmer Exp $ + +.include + +PROG= ssh-askpass +SRCS= drawing.c dynlist.c resources.c x11-ssh-askpass.c + +APPDEFS= SshAskpass.ad +DATE= February 14, 2001 + +BUILDSYMLINKS= SshAskpass-default.ad SshAskpass.ad + +FILESDIR= ${X11ROOTDIR}/share/examples/ssh-askpass +FILES= SshAskpass-1337.ad SshAskpass-NeXTish.ad \ + SshAskpass.ad SshAskpass-green.ad SshAskpass-motif.ad + +# XXX: We use the following two lines instead of just having +# XXX: FILES+= SshAskpass-default.ad +# XXX: because of an obscure bug with "make -j" where it doesn't find +# XXX: SshAskpass-default.ad in the .PATH correctly, probably because +# XXX: of the rule created for it from BUILDSYMLINKS by . +# XXX: This is not the correct long-term solution. +# +FILES+= SshAskpass.ad +FILESNAME_SshAskpass.ad=SshAskpass-default.ad + + +CPPFLAGS+= -I. +DPSRCS+= SshAskpass_ad.h +CLEANFILES+= SshAskpass_ad.h + +SRCPATH= ${X11SRCDIR.local}/programs/x11-ssh-askpass + +ssh-askpass.1: x11-ssh-askpass.man.in + sed -e 's#@NAME@#$(PROG)#g' -e 's#@VERSION@#$(VERSION)#g' \ + -e 's#@DATE@#$(DATE)#g' < ${SRCPATH}/x11-ssh-askpass.man.in > $@ + +SshAskpass_ad.h: SshAskpass.ad + ${_MKTARGET_CREATE} + rm -f ${.TARGET} + ${TOOL_SED} -n '/^[^!]/s/.*/"&",/p' <${.ALLSRC} > ${.TARGET} + +LDADD+= -lXt -lSM -lICE -lXinerama -lXext -lX11 +DPADD+= ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXINERAMA} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.local}/programs/x11-ssh-askpass + +.include +.include diff --git a/external/mit/xorg/bin/sxpm/Makefile b/external/mit/xorg/bin/sxpm/Makefile new file mode 100644 index 000000000..b281428b9 --- /dev/null +++ b/external/mit/xorg/bin/sxpm/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 01:41:56 mrg Exp $ + +.include + +PROG= sxpm + +CPPFLAGS+= -I${X11SRCDIR.Xpm}/src +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 + +LDADD+= -lXpm -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXPM} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.Xpm}/${PROG} +.PATH: ${X11SRCDIR.Xpm}/man + +.include +.include diff --git a/external/mit/xorg/bin/twm/Makefile b/external/mit/xorg/bin/twm/Makefile new file mode 100644 index 000000000..bb2af97f0 --- /dev/null +++ b/external/mit/xorg/bin/twm/Makefile @@ -0,0 +1,50 @@ +# $NetBSD: Makefile,v 1.5 2011/08/11 23:15:35 joerg Exp $ + +.include + +PROG= twm +SRCS= gram.y lex.l deftwmrc.c add_window.c gc.c list.c twm.c \ + parse.c menus.c events.c resize.c util.c version.c iconmgr.c \ + cursor.c icons.c session.c + +YHEADER=1 + +TWMCONFIGDIR= ${X11ETCDIR}/twm + +X11EXTRAMANDEFS+= -e 's,TWMDIR,${TWMCONFIGDIR},g' + +TWMDIR= ${X11SRCDIR.${PROG}} + +CPPFLAGS+= -I. -I${TWMDIR}/src +CPPFLAGS+= -DHAVE_MKSTEMP -DXORG_RELEASE=${XORG_RELEASE} \ + -DXVENDORNAME=${XVENDORNAME} + +CPPFLAGS.parse.c= -DSYSTEM_INIT_FILE=\"${TWMCONFIGDIR}/system.twmrc\" + +CONFIGFILES= system.twmrc +FILESDIR= ${TWMCONFIGDIR} + +DPSRCS+= deftwmrc.c +CLEANFILES+= deftwmrc.c +deftwmrc.c: system.twmrc deftwmrc.sed + ${_MKTARGET_CREATE} + rm -f ${.TARGET} + echo '/* ' >>$@ + echo ' * This file is generated automatically from the default' >>$@ + echo ' * twm bindings file system.twmrc by the twm Makefile.' >>$@ + echo ' */' >>$@ + echo 'char *defTwmrc[] = {' >>$@ + ${TOOL_SED} -f ${TWMDIR}/src/deftwmrc.sed \ + < ${TWMDIR}/src/system.twmrc >>$@ + echo ' (char *) 0 };' >>$@ + + +LDADD+= -lXmu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${TWMDIR}/src ${TWMDIR}/man + +CWARNFLAGS.clang+= -Wno-pointer-sign + +.include +.include diff --git a/external/mit/xorg/bin/ucs2any/Makefile b/external/mit/xorg/bin/ucs2any/Makefile new file mode 100644 index 000000000..a18d444bd --- /dev/null +++ b/external/mit/xorg/bin/ucs2any/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.3 2011/11/11 22:27:33 njoly Exp $ + +.include + +PROG= ucs2any + +X11EXTRAMANDEFS+= -e 's,__mapfilesdir__,${LIBDIR}/X11/fonts/util,' + +.PATH: ${X11SRCDIR.font-util} ${X11SRCDIR.font-util}/man + +.include +.include diff --git a/external/mit/xorg/bin/viewres/Makefile b/external/mit/xorg/bin/viewres/Makefile new file mode 100644 index 000000000..c6cc7ea21 --- /dev/null +++ b/external/mit/xorg/bin/viewres/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 06:24:05 mrg Exp $ + +.include + +PROG= viewres + +APPDEFS=Viewres Viewres-color + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/x11perf/Makefile b/external/mit/xorg/bin/x11perf/Makefile new file mode 100644 index 000000000..01d4f8bd2 --- /dev/null +++ b/external/mit/xorg/bin/x11perf/Makefile @@ -0,0 +1,38 @@ +# $NetBSD: Makefile,v 1.3 2011/11/20 21:02:23 dholland Exp $ + +.include + +PROG= x11perf +SRCS= x11perf.c bitmaps.c do_tests.c do_simple.c do_rects.c do_valgc.c \ + do_lines.c do_segs.c do_dots.c do_windows.c do_movewin.c do_text.c \ + do_blt.c do_arcs.c do_tris.c do_complex.c do_traps.c + +CPPFLAGS+= -DMITSHM -DXRENDER +CPPFLAGS+= -DXFT -DXFREE86_FT2 -I${DESTDIR}${X11INCDIR}/freetype2 + +MAN= Xmark.1 x11perf.1 x11perfcomp.1 + +x11perfcomp: x11perfcomp.in + ${TOOL_SED} \ + -e "s,@x11perfcompdir@,${X11LIBDIR}/x11perfcomp,;" \ + -e "s,@MKTEMP@,/usr/bin/mktemp,;" \ + < ${.ALLSRC} > ${.TARGET} + +SCRIPTS= x11perfcomp Xmark \ + fillblnk perfboth perfratio +SCRIPTSDIR_fillblnk.sh= ${X11LIBDIR}/x11perfcomp +SCRIPTSDIR_perfboth.sh= ${X11LIBDIR}/x11perfcomp +SCRIPTSDIR_perfratio.sh=${X11LIBDIR}/x11perfcomp + +CLEANFILES+= x11perfcomp + +LDADD+= -lXft -lfontconfig -lfreetype -lexpat -lXrender +DPADD+= ${LIBXFT} ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} ${LIBXRENDER} +LDADD+= -lXmuu -lXt -lSM -lICE -lXext -lX11 -lm +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xauth/Makefile b/external/mit/xorg/bin/xauth/Makefile new file mode 100644 index 000000000..266e9c7e5 --- /dev/null +++ b/external/mit/xorg/bin/xauth/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.2 2011/07/23 06:41:08 mrg Exp $ + +.include + +PROG= xauth +SRCS= xauth.c gethost.c process.c parsedpy.c + +CPPFLAGS+= -DRETSIGTYPE=void +CPPFLAGS.gethost.c= ${X11FLAGS.CONNECTION} +CPPFLAGS.parsedpy.c= ${X11FLAGS.CONNECTION} + +LDADD+= -lXau -lXmuu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXAU} ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xbiff/Makefile b/external/mit/xorg/bin/xbiff/Makefile new file mode 100644 index 000000000..ee0756433 --- /dev/null +++ b/external/mit/xorg/bin/xbiff/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.2 2011/02/21 04:40:24 mrg Exp $ + +.include + +PROG= xbiff +SRCS= xbiff.c Mailbox.c + +LDADD+= -lXext -lXaw -lXmu -lXt -lX11 -lSM -lICE -lXau +DPADD+= ${LIBXEXT} ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBX11} ${LIBSM} ${LIBICE} \ + ${LIBXAU} + +CPPFLAGS+= -I${X11SRCDIR.${PROG}}/../include + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xcalc/Makefile b/external/mit/xorg/bin/xcalc/Makefile new file mode 100644 index 000000000..180c01846 --- /dev/null +++ b/external/mit/xorg/bin/xcalc/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 07:22:21 mrg Exp $ + +.include + +PROG= xcalc +SRCS= actions.c math.c xcalc.c + +APPDEFS=XCalc XCalc-color + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xclipboard/Makefile b/external/mit/xorg/bin/xclipboard/Makefile new file mode 100644 index 000000000..569f52b6d --- /dev/null +++ b/external/mit/xorg/bin/xclipboard/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 06:24:05 mrg Exp $ + +.include + +PROG= xclipboard + +APPDEFS=XClipboard + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xclock/Makefile b/external/mit/xorg/bin/xclock/Makefile new file mode 100644 index 000000000..0ab0d4ad8 --- /dev/null +++ b/external/mit/xorg/bin/xclock/Makefile @@ -0,0 +1,23 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 06:24:05 mrg Exp $ + +.include + +PROG= xclock +SRCS= xclock.c Clock.c + +CPPFLAGS+=-DXRENDER -DXFREE86_FT2 -I${DESTDIR}${X11INCDIR}/freetype2 + +APPDEFS=XClock XClock-color + + +LDADD+= -lXft -lfontconfig -lfreetype -lexpat -lXrender +DPADD+= ${LIBXFT} ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} ${LIBXRENDER} +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xcmsdb/Makefile b/external/mit/xorg/bin/xcmsdb/Makefile new file mode 100644 index 000000000..09be63e62 --- /dev/null +++ b/external/mit/xorg/bin/xcmsdb/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 06:24:05 mrg Exp $ + +.include + +PROG= xcmsdb +SRCS= xcmsdb.c loadData.c + +LDADD+= -lX11 +DPADD+= ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xconsole/Makefile b/external/mit/xorg/bin/xconsole/Makefile new file mode 100644 index 000000000..7ee867976 --- /dev/null +++ b/external/mit/xorg/bin/xconsole/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2011/05/15 21:25:33 christos Exp $ + +.include + +PROG= xconsole + +APPDEFS=XConsole + +LDADD+= -lutil -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBUTIL} ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults + +CPPFLAGS+=-DHAS_OPENPTY -DHAVE_UTIL_H + +.include +.include diff --git a/external/mit/xorg/bin/xcutsel/Makefile b/external/mit/xorg/bin/xcutsel/Makefile new file mode 100644 index 000000000..591108ba2 --- /dev/null +++ b/external/mit/xorg/bin/xcutsel/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 06:46:55 mrg Exp $ + +.include + +PROG= xcutsel + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.xclipboard} +.PATH: ${X11SRCDIR.xclipboard}/man + +.include +.include diff --git a/external/mit/xorg/bin/xditview/Makefile b/external/mit/xorg/bin/xditview/Makefile new file mode 100644 index 000000000..a71df98b9 --- /dev/null +++ b/external/mit/xorg/bin/xditview/Makefile @@ -0,0 +1,28 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 06:50:45 mrg Exp $ + +.include + +PROG= xditview +SRCS= xditview.c Dvi.c draw.c font.c lex.c page.c parse.c \ + XFontName.c DviChar.c + +CPPFLAGS+= -DHAS_MKSTEMP +CPPFLAGS+= -DUSE_XFT -DXFREE86_FT2 -I${DESTDIR}${X11INCDIR}/freetype2 + +APPDEFS=Xditview Xditview-chrtr + +LDADD+= -lXft -lfontconfig -lfreetype -lexpat -lXrender +DPADD+= ${LIBXFT} ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} ${LIBXRENDER} +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +FILES= ldblarrow rdblarrow +FILESDIR=${X11INCDIR}/X11/bitmaps + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xdm/Makefile b/external/mit/xorg/bin/xdm/Makefile new file mode 100644 index 000000000..73c87c547 --- /dev/null +++ b/external/mit/xorg/bin/xdm/Makefile @@ -0,0 +1,63 @@ +# $NetBSD: Makefile,v 1.13 2013/06/17 15:58:40 christos Exp $ + +.include + +PROG= xdm +SRCS= access.c auth.c choose.c daemon.c dm.c dpylist.c \ + error.c file.c genauth.c mitauth.c netaddr.c policy.c \ + protodpy.c reset.c resource.c server.c session.c socket.c \ + streams.c util.c xdmauth.c xdmcp.c prngc.c + +.if ${MKPIC} == "no" +SRCS+= Login.c greet.c verify.c +CPPFLAGS+= -DSTATIC_GREETER_LIB +.endif + +CPPFLAGS+= -DRETSIGTYPE=void +CPPFLAGS.auth.c= -DBSD44SOCKETS +CPPFLAGS.socket.c= -DBSD44SOCKETS +CPPFLAGS.xdmcp.c= -DBSD44SOCKETS +CPPFLAGS.xdmshell.c= -DHAS_VFORK +CPPFLAGS.resource.c= \ + -DDEF_SERVER_LINE="\":0 local ${X11BINDIR}/X :0\"" \ + -DXRDB_PROGRAM=\"${X11BINDIR}/xrdb\" \ + -DDEF_SESSION="\"${X11BINDIR}/xterm -ls\"" \ + -DDEF_USER_PATH=\"/bin:/usr/bin:/usr/pkg/bin:/usr/local/bin:${X11BINDIR}\" \ + -DDEF_SYSTEM_PATH=\"/sbin:/usr/sbin:/bin:/usr/bin:${X11BINDIR}\" \ + -DDEF_SYSTEM_SHELL=\"/bin/sh\" \ + -DDEF_FAILSAFE_CLIENT=\"${X11BINDIR}/xterm\" \ + -DDEF_XDM_CONFIG=\"${XDMDIR}/xdm-config\" \ + -DDEF_AUTH_DIR=\"${XDMVARDIR}\" \ + -DDEF_GREETER_LIB=\"${XDMGREETERLIB}\" + +LDADD+= -lXau -lXdmcp -lXft -lXinerama -lXpm +LDADD+= -lXmu -lXt -lSM -lICE -lXext -lXrender -lX11 +LDADD+= -lcrypt -lfreetype -lutil +DPADD+= ${LIBXAU} ${LIBXDMCP} ${LIBXFT} ${LIBXINERAMA} ${LIBXPM} +DPADD+= ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} +DPADD+= ${LIBCRYPT} ${LIBFREETYPE} ${LIBUTIL} + +.if (${USE_PAM} != "no") +LDADD+= -lpam ${PAM_STATIC_LDADD} +DPADD+= ${LIBPAM} ${PAM_STATIC_DPADD} +.endif + +SUBDIR+= chooser config +TARGETS+= configinstall + +.include "Makefile.xdm" + +CPPFLAGS.resource.c+= -DDEF_CHOOSER=\"${XDMCHOOSERPATH}\" + +X11MANCPP= yes +X11EXTRAMANDEFS+= -DARC4_RANDOM \ + -DCHOOSERPATH=${XDMCHOOSERPATH} \ + -DGREETERLIBPATH=${XDMGREETERLIB} \ + -DXDMDIR=${XDMDIR} \ + -DXDMXAUTHDIR=${XDMVARDIR} \ + -DXDMLOGDIR=${XDMLOGDIR} \ + -DXDMPIDDIR=${XDMPIDDIR} + +.include +.include +.include diff --git a/external/mit/xorg/bin/xdm/Makefile.xdm b/external/mit/xorg/bin/xdm/Makefile.xdm new file mode 100644 index 000000000..da0364554 --- /dev/null +++ b/external/mit/xorg/bin/xdm/Makefile.xdm @@ -0,0 +1,53 @@ +# $NetBSD: Makefile.xdm,v 1.8 2013/06/05 00:01:16 mrg Exp $ + +XDMVARDIR= /var/db/xdm +XDMDIR= ${X11ETCDIR}/xdm +XDMCHOOSERPATH= ${X11ROOTDIR}/libexec/chooser +XDMGREETERLIB= ${X11ROOTDIR}/lib/libXdmGreet.so +XDMLOGDIR= /var/log +XDMPIDDIR= /var/run + +CPPFLAGS+= -DBINDIR=\"${X11BINDIR}\" -DXDMDIR=\"${XDMDIR}\" \ + -DHASXDMAUTH ${X11FLAGS.CONNECTION} \ + -DBSD44SOCKETS \ + -DFRAGILE_DEV_MEM -DARC4_RANDOM \ + -DDEV_RANDOM=\"dev/urandom\" \ + -DXPM -DUSE_XFT \ + -DHAVE_GETIFADDRS \ + -DHAVE_MKSTEMP \ + -DHAVE_SETPROCTITLE \ + -DHAVE_SETUSERCONTEXT \ + -DHAVE_ARC4RANDOM \ + -DHAVE_DAEMON \ + -DHAVE_SIGACTION \ + -DHAVE_ASPRINTF \ + -DHAVE_OPENLOG \ + -DUNIXCONN \ + -DTCPCONN \ + -DHAVE_WORKING_VFORK \ + -DHAVE_VFORK_H \ + -DHAVE_VFORK \ + -DHAVE_INTTYPES_H \ + -DHAVE_SYS_PARAM_H \ + -DHAVE_GRP_H \ + -I${X11SRCDIR.xdm} \ + -I${X11SRCDIR.xdm}/include \ + -I${DESTDIR}${X11INCDIR}/freetype2 \ + ${X11FLAGS.VERSION} + +LDFLAGS+= -Wl,--export-dynamic + +.if (${USE_PAM} != "no") +CPPFLAGS+= -DUSE_PAM +.endif + +.if (${USE_INET6} != "no") +CPPFLAGS+= -DIPv6 +.endif + +.PATH: ${X11SRCDIR.xdm} +.PATH: ${X11SRCDIR.xdm}/xdm +.PATH: ${X11SRCDIR.xdm}/man +.PATH: ${X11SRCDIR.xdm}/chooser +.PATH: ${X11SRCDIR.xdm}/greeter +.PATH: ${X11SRCDIR.xdm}/app-defaults diff --git a/external/mit/xorg/bin/xdm/chooser/Makefile b/external/mit/xorg/bin/xdm/chooser/Makefile new file mode 100644 index 000000000..f33bd73bb --- /dev/null +++ b/external/mit/xorg/bin/xdm/chooser/Makefile @@ -0,0 +1,23 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 23:50:35 mrg Exp $ + +NOMAN= 1 + +.include + +PROG= chooser + +CPPFLAGS.chooser.c= -DBSD44SOCKETS -DRETSIGTYPE=void + +APPDEFS=Chooser + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lXdmcp -lXinerama +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBXDMCP} ${LIBXINERAMA} + +.include "../Makefile.xdm" + +.include +BINDIR= ${XDMCHOOSERPATH:H} +.include + +.PATH: ${X11SRCDIR.xdm}/app-defaults diff --git a/external/mit/xorg/bin/xdm/config/Makefile b/external/mit/xorg/bin/xdm/config/Makefile new file mode 100644 index 000000000..4a9d803ea --- /dev/null +++ b/external/mit/xorg/bin/xdm/config/Makefile @@ -0,0 +1,77 @@ +# $NetBSD: Makefile,v 1.13 2013/02/21 08:20:19 martin Exp $ + +.include + +# DEFAULTVT for all arches that are able to switch virtual consoles +# while in X (currently this needs WSDISPLAY_COMPAT_USL and +# WSDISPLAY_COMPAT_PCVT, this might change soon) +.if ${MACHINE_ARCH} == "x86_64" \ + || ${MACHINE_ARCH} == "cats" \ + || ${MACHINE_ARCH} == "hp700" \ + || ${MACHINE_ARCH} == "hpcmips" \ + || ${MACHINE_ARCH} == "hpcsh" \ + || ${MACHINE_ARCH} == "i386" \ + || ${MACHINE_ARCH} == "netwinder" \ + || ${MACHINE_ARCH} == "shark" \ + || ${MACHINE_ARCH} == "sparc" \ + || ${MACHINE_ARCH} == "sparc64" \ + || ${MACHINE_ARCH} == "zaurus" +DEFAULTVT=vt05 +.else +DEFAULTVT= # defined empty +.endif + +UUDECODE_FILES= NetBSD-flag.png +CPPSCRIPTS= Xresources Xreset Xservers.ws Xsession Xstartup xdm-config + +CPPSCRIPTFLAGS_Xresources= -DXPM -DBITMAPDIR=${X11INCDIR}/X11/pixmaps \ + -DXDM_PIXMAP=NetBSD.xpm \ + -DXDM_BWPIXMAP=NetBSD-bw.xpm +CPPSCRIPTFLAGS_Xreset= -DBINDIR=${X11BINDIR} -DXDMCONFIGDIR=${XDMDIR} +CPPSCRIPTFLAGS_Xservers.ws= -DBINDIR=${X11BINDIR} -DDEFAULTVT=${DEFAULTVT} +CPPSCRIPTFLAGS_Xsession= -DBINDIR=${X11BINDIR} \ + -DMKTEMP_COMMAND=/usr/bin/mktemp \ + -DSHELL_CMD=/bin/sh +CPPSCRIPTFLAGS_Xstartup= -DBINDIR=${X11BINDIR} -DXDMCONFIGDIR=${XDMDIR} \ + -DUTMP_FILE=${XDMPIDDIR}/utmp \ + -DWTMP_FILE=${XDMLOGDIR}/wtmp +CPPSCRIPTFLAGS_xdm-config= -DXDMDIR=${XDMDIR} \ + -DXDMXAUTHDIR=${XDMVARDIR} \ + -DXDMLOGDIR=${XDMLOGDIR} \ + -DXDMPIDDIR=${XDMPIDDIR} \ + -DXPM \ + -DSU="su -m" + +CONFIGFILES= GiveConsole TakeConsole \ + Xaccess Xservers.fs Xsession Xsetup_0 Xwilling \ + ${CPPSCRIPTS} +FILES= xorg-bw.xpm xorg.xpm \ + NetBSD-bw.xpm NetBSD-inv.xpm NetBSD.xpm \ + NetBSD-flag.png NetBSD-flag1.xpm NetBSD-flag2.xpm +FILESDIR= ${XDMDIR} +FILESDIR_xorg.xpm= ${X11INCDIR}/X11/pixmaps +FILESDIR_xorg-bw.xpm= ${X11INCDIR}/X11/pixmaps +FILESDIR_NetBSD.xpm= ${X11INCDIR}/X11/pixmaps +FILESDIR_NetBSD-flag.png= ${X11INCDIR}/X11/pixmaps +FILESDIR_NetBSD-flag1.xpm= ${X11INCDIR}/X11/pixmaps +FILESDIR_NetBSD-flag2.xpm= ${X11INCDIR}/X11/pixmaps +FILESDIR_NetBSD-bw.xpm= ${X11INCDIR}/X11/pixmaps +FILESDIR_NetBSD-inv.xpm=${X11INCDIR}/X11/pixmaps +FILESMODE_GiveConsole= ${BINMODE} +FILESMODE_TakeConsole= ${BINMODE} +FILESMODE_Xreset= ${BINMODE} +FILESMODE_Xsetup_0= ${BINMODE} +FILESMODE_Xsession= ${BINMODE} +FILESMODE_Xstartup= ${BINMODE} +FILESMODE_Xwilling= ${BINMODE} + +CONFIGSYMLINKS= Xservers.ws ${XDMDIR}/Xservers + +.PATH: ${X11SRCDIR.xdm}/config + +.include "../Makefile.xdm" + +CPPSCRIPTFLAGS_xdm-config+= -DCHOOSERPATH=${XDMCHOOSERPATH} + +.include +.include diff --git a/external/mit/xorg/bin/xdm/config/NetBSD-bw.xpm b/external/mit/xorg/bin/xdm/config/NetBSD-bw.xpm new file mode 100644 index 000000000..15a00c47b --- /dev/null +++ b/external/mit/xorg/bin/xdm/config/NetBSD-bw.xpm @@ -0,0 +1,159 @@ +/* XPM */ +static char *NetBSDbw_new[] = { +/* columns rows colors chars-per-pixel */ +"185 150 3 1", +" c gray100", +". c black", +"X c None", +/* pixels */ +" ", +" ", +" ", +" ", +" ", +" ", +" ...... ", +" ........................ ", +" .................................. ", +" .......................................... ", +" ................................................ ", +" .................................... ", +" ................................ ", +" ................................ ", +" ................................. ", +" .. ... ................................. ", +" .... ... ................................... ", +" ... ....... .................................... ", +" .... .......... ...................................... ", +" .... ................. ........................................... ...... ", +" .... ......................................................................... ....................... ", +" .... ....................................................................... ................................ ", +" .... ..................................................................... ....................................... ", +" .... ................................................................................................................ ", +" .... ...................................................................................................... ....... ", +" .... .............................................................................................. ", +" .... ........................................................................................ ", +" .... ................................................................................... ", +" .... ................................................................................. ", +" .... ............................................................................. ", +" .... .......................................................................... ", +" .... ....................................................................... ", +" .... .................................................................... ", +" .... .................................................................. ", +" .... .............................................................. ", +" .... ............................................................. ", +" ..... ......................................................... ", +" .... ....................................................... ", +" ..... .................................................... ", +" .... ................................................... ", +" ..... ................................................ ", +" .... ............................................. ", +" ..... .......................................... ", +" ..... ....................................... ", +" ..... .................................... ", +" ..... ................................. ", +" ..... .............................. ", +" ..... .......................... ", +" ..... .................. ", +" ..... .... ", +" ..... ", +" ..... ", +" ..... ", +" ...... ", +" ..... ", +" ...... ", +" ..... ", +" ...... ", +" ..... ", +" ...... ", +" ..... ", +" ............ ............ ...... .................... ........... ................... ", +" ............. .............. ...... ........................ ................ .......................... ", +" ............. ............ ...... .......................... ................. ............................. ", +" ........... ....... ..... .......... .......... ....... ...... .......... ............. ", +" .......... ..... ........ ......... ...... ..... ........ .......... ", +" ........... ..... ........ ......... ....... .... ........ ......... ", +" ............ ... ........ ........ ...... ... ........ ......... ", +" ............ ... ........ ........ ....... ... ........ ......... ", +" ............. ... ........ ......... ....... .. ........ ......... ", +" .............. ... ........ ......... ........ ........ ......... ", +" .... .......... ... .. ........ ......... ........ ........ ......... ", +" .... .......... ... ... ........ ........ ......... ........ ......... ", +" .... ......... ... .... ........ ........ ........... ........ ......... ", +" .... ......... ... ..... ........ ........ ........... ........ ......... ", +" .... .......... ... ....... ...... ........ ........ ............. ........ ......... ", +" .... .......... ... ........... ............... ........ ....... .............. ........ ......... ", +" .... .......... ... .............. ................. .................... ................ ........ ......... ", +" .... .......... ... ...... ...... ................ .................... ................ ........ ......... ", +" .... .......... ... ...... ...... ....... ...................... ................ ........ ......... ", +" .... .......... ... ....... ...... ....... ......... .......... ............... ........ ......... ", +" .... .......... ... ....... ...... ....... ........ ......... ............... ........ ......... ", +" .... .......... ... .................... ....... ........ ......... ............. ........ ......... ", +" .... .......... ... .................... ....... ........ ........ ............ ........ ........ ", +" .... .......... ... .................... ....... ........ ......... ........... ........ ......... ", +" .... ............. ....... ....... ........ ........ .......... ........ ......... ", +" .... ............ ........ ....... ........ ......... .......... ........ ......... ", +" .... ............ ........ ....... ........ ......... .. ......... ........ ........ ", +" .... ........... ........ ....... ........ ......... .. ........ ........ ......... ", +" .... .......... ........ ....... ........ ......... ... ....... ........ ........ ", +" .... ......... ........ ....... ........ ........ ... ....... ........ ......... ", +" .... ........ ......... . ....... ........ ......... .... ....... ........ ......... ", +" .... ........ .......... ... ........ ........ ........ .... ...... ........ ......... ", +" ...... ....... ........... .... ........ ......... ......... ..... ....... ........ ........ ", +" ...... ...... ................. .......... .. ........... ......... ....... ....... .......... ......... ", +" ............ ..... ................ ............. ............................ ........ ....... ............................. ", +" .............. ..... .............. ............ ........................... ................... ............................ ", +" ............ .... ........... .......... ....................... ............... ........................ ", +" .. ..... ..... ........ ", +" ", +" ", +" ", +" ", +" ", +" ", +" ", +" ....... ", +" ........ ", +" ....... ", +" ........ ", +" ........ ", +" ........ ", +" ........ ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ........ ", +" ......... ", +" ......... ", +" ......... ", +" ......... ", +" ......... ", +" ......... ", +" ....... ", +" ...... ", +" .. ", +" ", +" ", +" ", +" ", +" " +}; diff --git a/external/mit/xorg/bin/xdm/config/NetBSD-flag.png.uue b/external/mit/xorg/bin/xdm/config/NetBSD-flag.png.uue new file mode 100644 index 000000000..4c981a2b0 --- /dev/null +++ b/external/mit/xorg/bin/xdm/config/NetBSD-flag.png.uue @@ -0,0 +1,165 @@ +begin 644 NetBSD-flag.png +MB5!.1PT*&@H````-24A$4@```+D```"6"`8```""5RF_````"7!(67,```L3 +M```+$P$`FIP8```*3VE#0U!0:&]T;W-H;W`@24-#('!R;V9I;&4``'C:G5-G +M5%/I%CWWWO1"2XB`E$MO4A4((%)"BX`4D28J(0D02H@AH=D54<$1144$&\B@ +MB`..CH",%5$L#(H*V`?D(:*.@Z.(BLK[X7NC:]:\]^;-_K77/N>L\YVSSP?` +M"`R62#-1-8`,J4(>$>"#Q\3&X>0N0($*)'``$`BS9"%S_2,!`/A^/#PK(L`' +MO@`!>-,+"`#`39O`,!R'_P_J0IE<`8"$`,X.KL[.-HZV#E\MZK\& +M_R)B8N/^Y<^K<$```.%T?M'^+"^S&H`[!H!M_J(E[@1H7@N@=?>+9K(/0+4` +MH.G:5_-P^'X\/$6AD+G9V>7DY-A*Q$);8@)0"`9DF2<0``7D0D+E3*LS_'"```1*"! +M*K!!&_3!&"S`!AS!!=S!"_Q@-H1"),3"0A!""F2`'')@*:R"0BB&S;`=*F`O +MU$`=-,!1:(:3<`XNPE6X#CUP#_IA")[!*+R!"01!R`@382':B`%BBE@CC@@7 +MF87X(<%(!!*+)"#)B!11(DN1-4@Q4HI4(%5('?(]<@(YAUQ&NI$[R``R@OR& +MO$?0JV@/VH\^ +M0\3#Y#/D&^0A\EL*G6)`<:3X4^(H4LIJ2AGE$.4T +MY09EF#)!5:.:4MVHH501-8]:0JVAME*O48>H$S1UFCG-@Q9)2Z6MHI73&F@7 +M:/=IK^ATNA'=E1Y.E]!7TLOI1^B7Z`/T=PP-AA6#QXAG*!F;&`<89QEW&*^8 +M3*89TXL9QU0P-S'KF.>9#YEO55@JMBI\%9'*"I5*E2:5&RHO5*FJIJK>J@M5 +M\U7+5(^I7E-]KD95,U/CJ0G4EJM5JIU0ZU,;4V>I.ZB'JF>H;U0_I'Y9_8D& +M6<-,PT]#I%&@L5_CO,8@"V,9LW@L(6L-JX9U@37$)K'-V7QV*KN8_1V[BSVJ +MJ:$Y0S-*,U>S4O.49C\'XYAQ^)QT3@GG**>7\WZ*WA3O*>(I&Z8T3+DQ95QK +MJI:7EEBK2*M1JT?KO3:N[:>=IKU%NUG[@0Y!QTHG7"='9X_.!9WG4]E3W:<* +MIQ9-/3KUKBZJ:Z4;H;M$=[]NI^Z8GKY>@)Y,;Z?>>;WG^AQ]+_U4_6WZI_5' +M#%@&LPPD!ML,SA@\Q35Q;SP=+\?;\5%#7<-`0Z5AE6&7X821N=$\H]5&C48/ +MC&G&7.,DXVW&;<:C)@8F(29+3>I-[II23;FF*:8[3#M,Q\W,S:+-UIDUFSTQ +MUS+GF^>;UYO?MV!:>%HLMJBVN&5)LN1:IEGNMKQNA5HY6:5855I=LT:MG:TE +MUKNMNZ<1I[E.DTZKGM9GP[#QMLFVJ;<9L.78!MNNMFVV?6%G8A=GM\6NP^Z3 +MO9-]NGV-_3T'#8?9#JL=6AU^<[1R%#I6.MZ:SISN/WW%]);I+V=8SQ#/V#/C +MMA/+*<1IG5.;TT=G%V>Y1*=/5Q7>%ZTO6= +MF[.;PNVHVZ_N-NYI[H?63-ST,/(0^!1Y=$_"Y^5,&O?K'Y/0T^! +M9[7G(R]C+Y%7K=>PMZ5WJO=A[Q<^]CYRG^,^XSPWWC+>65_,-\"WR+?+3\-O +MGE^%WT-_(_]D_WK_T0"G@"4!9P.)@4&!6P+[^'I\(;^./SK;9?:RV>U!C*"Y +M015!CX*M@N7!K2%HR.R0K2'WYYC.D& +M/XYPB%@:T3&7-7?1W$-SWT3Z1)9$WIMG,4\YKRU*-2H^JBYJ/-HWNC2Z/\8N +M9EG,U5B=6$EL2QPY+BJN-FYLOM_\[?.'XIWB"^-[%Y@OR%UP>:'.PO2%IQ:I +M+A(L.I9`3(A..)3P01`JJ!:,)?(3=R6."GG"'<)G(B_1-M&(V$-<*AY.\D@J +M37J2[)&\-7DDQ3.E+.6YA">ID+Q,#4S=FSJ>%IIV(&TR/3J],8.2D9!Q0JHA +M39.V9^IGYF9VRZQEA;+^Q6Z+MR\>E0?):[.0K`59+0JV0J;H5%HHURH'LF=E +M5V:_S8G*.9:KGBO-[=L*XQ4%*X96!JP\N(JV*FW53ZOM5Y>N?KTF>DUK@5[!RH+!M0%KZPM5"N6% +M?>O;>+9Y;#I:JE^:7#FX-V=JT#=]6M.WU]D7;+Y?-*-N[@[9#N:._ +M/+B\9:?)SLT[/U2D5/14^E0V[M+=M6'7^&[1[AM[O/8T[-7;6[SW_3[)OMM5 +M`55-U6;59?M)^[/W/ZZ)JNGXEOMM7:U.;7'MQP/2`_T'(PZVU[G4U1W2/512 +MC]8KZT<.QQ^^_IWO=RT--@U5C9S&XB-P1'GDZ?<)W_<>#3K:=HQ[K.$'TQ]V +M'6<=+VI"FO*:1IM3FOM;8ENZ3\P^T=;JWGK\1]L?#YPT/%EY2O-4R6G:Z8+3 +MDV?RSXR=E9U]?B[YW&#;HK9[YV/.WVH/;^^Z$'3ATD7_B^<[O#O.7/*X=/*R +MV^435[A7FJ\Z7VWJ=.H\_I/33\>[G+N:KKE<:[GN>KVU>V;WZ1N>-\[=]+UY +M\1;_UM6>.3W=O?-Z;_?%]_7?%MU^@\]'<1_<&A8//_I'UCP]#!8^9C\NKGC@^.3GB/W+] +MZ?RG0\]DSR:>%_ZB_LNN%Q8O?OC5Z]?.T9C1H9?REY._;7RE_>K`ZQFOV\;" +MQAZ^R7@S,5[T5OOMP7?<=QWOH]\/3^1\('\H_VCYL?53T*?[DQF3D_\$`YCS +M_&,S+=L````@8TA230``>B4``("#``#Y_P``@.D``'4P``#J8```.I@``!=O +MDE_%1@``$95)1$%4>-KL74UVVLP6+/MDS)-6$+R"R"NPO(+@Z9L81O3,9OA& +MF!6`9\W(>`4F*["\`LLKL+("]+&![PUT%7>$I&[]`)*X=0XG"<&X?ZJKZW;? +M;IV!<;+8CFT7@`7``?`=0)_^RRWX50&]0@`?`'P`06^Y\9M0SS/NZI,@`_`&P.LM-QZ3G%$7J?M$Z"LBM-.0HH5$^E\`UKWE)F22,XHH +MM0O@)_W9;TG15P!^]9:;-9.G,%,V0^UGF;B(#:;WVJY&Z4DI.:OR84T%3-3=5,)?N;YO,_E'B@C_9L +MD_\A=Y[?3FS$6`7JJ[9C2&(2T,MOZF#ZUJ"R/"9('JOY",!KQ>^V$M_MHGM( +M);<2&WQ']62M9#L.$K\KH!GT`PU:BFS4.KF4,JG:L9J_=I28M9*[@=F'`06[ +M;\=<&3MO6(?-DBLM&>\SOM:X9P"NR-9]4@PS;$BLT*=XZ64[MC^W8WM.`_&D +ME=S"W^OCK.;Y*MEO:=D]''"=OG';^E+*!T7!`=H%I66Z=^9VHP99_/JMO._3 +M+`,EL(UQE8B)M$%R5TEN`=@DWH[5/+F>SCB<\OH44/IU+,LFCN3]!WM,+6AD +M@E;*YE"LYGVR,XS]PB=B_SK6N++N:UG#>X;,EEPSLII46=\,C\+(T0T=+C +M96^YN>@JL5M!LYI54>]3E_/$V*7F>FH>LYL;P`-PHJGUR +MXM!HD@LA5@G%9C4WQQK`=6^YN6[S89-34'*D*+:JYA/F\@Y69$ENNK#\=RHD +M7R3^_4?-::'M*ODON:`LJ,DI\TA/ZGF +M.9:F*P@0K7,SN4]`R5/57$HY[*B:!P!&M(FS9JJ>",EIB=%`5?47-?>PN-[:)W!,F-Y,<2-_.G[;8FZO*O6!*,LGCS:%UCIH' +M+5%SMB5,\ERDJ752S<.&EMUC>XV./[VA3?C6\O(_ +MIY!\J@2>"QSF.3P>HIMRUTQL5O)]J'G:UQ$5G-& +MMTA.0:;':L[HLI*S-V=TG^1"B#72KZ=@-6>2=PHS5G-&UTF^1GKV(:LYD[PS +MEB5D;\Y0\:VC]5IE*/<=NG\)42;H64S]Q-L![3.TO6X6OG*1?!([`,#9=FS? +MXROO(T#^O8(.?795](HR>G+;4'G+1_ZA!K5#"E\>G_($N1@7=7=JQ@QA.FO$ +M[1#LH5Q]&M@N].G&/@G`&P7P1>J:-GAT]0V%$'Y-Y)Y37X<*EQ<`9D*(\!MV +M,_A,$&+W2F4=W`J^V"NAP(\9))^BXMV)4DH'>WAPKI0RKNLO`.NRI"=R/Z'8 +M$ZP=>MU3.49"B-6^ZJK4-\#7,T+718A/!'^E?XX2`CVG^E^>H]P1L;L2/U-E +MU!8N(S56VL`8$@FJP-KCS.M2!WU**9^42TU-.WZ(*"O3U2BVKC]^'J"N\2PP +M(/%YEU)NI)1SPSZ:4U]?TJ">`WBA/Z\1W;#V<-Y;;FP`-H`;F%_ET*>C9<;H +M+3=^;[DY`W!!H\[3D'J&Z.#O6873-EF'F:NNM/A4OC7,KXV.9[\9O4QFIB&1 +MW2E`\*>,_YXA>A;JI1#BFHAQ@=T#X:JRJW5=H-@5V9Y2UQEQRS,0+`O11:Z? +M4LK7+++3X!\F9N4)@$L`#GGR"8#;LQ3O?&]H84(B86D?F?/@V=HNMY12/F0H +M_4-=4B2EG./K6499N$EZ7>JHJ<'/AHCRX_V<,@Q(Q=+PUTDIT\$AA#C+L`>Z +M03<10BPT=N^6%-Q$L6?)_J+8X$4(8=.__\77-8%3]?VS#/)M#*1^[3U[V>\O-90M7+72/0\\\Q*%18"@K!I204H4+R>=PF1'*?!N"?WR^E_/>\HG]VB]J6A(4):O;N1T'5 +M51%2V;4N,(SOE)X +M(K8Z=6P&3;=CVZWP\\G*_<9IPN1&WI\9[]]J`G!3S(XD$J$0XMH@)G1B2T;" +M$J18O1FM$/5I9EK7M>/Y0@>#ZT!PB@RG3O,-.CG-JC@UE<'#$3?+R%;IVL"E +M&"@6ABG-<#-$>PT>!:-S\ORSNDANY00]14E]DB3/F-5@8!\ +MC<$*S+V4TJ5`?D3QS!6BY>$'?&V`C800OBG)5P:?<;=CN\S&4B/LR79L][=C +M^W,[MM^/6(Q_]O"=MP75=$T*.3M&?$0SFLE`FR<\_1L1_0K1*;'+>#7+*'>E +MM]R,MF,[#G!R1]AV;'^T]$++)YAO3;<)]U+*YR+>/&_Y[T!8D!I;FD!\((2( +M=X8S%T"*V)6)X;\>VTR86T'J]VX*BEE76EZ([IT>.3T)#]V"T\VY,2]Y<;;CNT9 +M]/D?@^W8GO>6F\F>".IF5-#3I0303NL+]G_;;=&8(`\C-47F +M(?'S%J+-@ZGF][QGJ,ACW<_45/*AW1P%'^7E>!L&:CLSK93R%E%>B-=0DG\8 +MD+Q>NY*`B3^O+1"EQ+%WY&]AJU/S=#NVW^/8@-(//@T5SR'2)5]5ZO'G^)V4 +MTI%2QIL:[QDQ06Q/+C0$CP.U,KN5+J*M\J8&IH%A7^V'Y$H@:N(%*P6BM/J1 +MEL03(#]UU<%74OT4^\^-UMF$5THD>J=RW6"Y@)T845N7F7$L1$N-HQ9X]<.17/'G/PR\DULT$-V.[4$&P5=)@L?$ +MSRC''8"+^)PHK:KA$EDG;N8B6 +M_XP4FA*=)BC_]+NG!EJ7XY*\@#\O$HC>9UB*(.LTDB;EMW_DM@[3E%<(L2+" +MZY33(D]O2O0%HJ-@ZPI$MYCDNRIJ8D5,`]&LQ*(^K9J\)E[O2I"9AJLF=P2I +MKPG1GPI\9R"$N*%8R"M8)`OZ8WG[AHDP!0 +MV`+1,;$8>2>$LLCNT:&$HA;FCDF>[<]]@\^YM'*2Y4'KQG/3&9YSQ5T2/TM^ +M_X)4W3?\$>O(WOR'P6?>]KZZDN;/MV-[1-9!9TF&&2,QKW*K$H0-JMPJ<&"L +M8)`R46$@^5+*:YB=NH]GS?61VL*D?-[!21[[\^W8GACZQW[!:>IWEY^G*80( +MI)2A3B"DE$[9:]:$$"$1_=-`B(X2RV338WN/1 +M25[@H$41N,SM6E=!&A>04R*;SH^O3.^[R2*Y52/1`Q2_139/72S37=,60QMP +M);QHO^BR8@%K]':$^NL"[Q!F>S*Y)/^KD2F/NPK1URAVU?.'KA&*9#5NQ[;3 +MEN-X%'!9)8BYK\?%^`>N_\!@MAZ99F<6L2O]JH6GQ"S3!EL;E.?)E."(ELL^ +M"PR*?5@BTS8T";ABBQ$DU/RAYC*'*'?9D%62X(Y!ORYT^?5:DF>H=K^F1C/R +MY^3E=149T/9^7T/PEQ*-O@^2FP;,=P;$6Z60'(ANDRI:]KR-I741Q51P59+@ +MNKV5E1"B\''*[`=VZ[RFE.C]8M$XC'1 +MBM@;PR6\H>YSE"*K$Q3U($6:7WXI<)^YE;,RD^5[^W74-270U!%\87([KRG) +MTY1D6)>GI8V<15V?B\M'BOVJO.Z51O,3^>>ZJ-P"\+X=VT,:,`-*`MM4L!@6 +M@'E:YTLI+<,<\%4BS]O/^#VOAH'H4PZQLGSOE6%=7PT&M4/USB-XB"A-N?2! +M^#-E:A_@ZPZYK%\V0W0:OG(P0EF#:8KSUP7\.9\KXBNOU3)GW(MN.DC/$@KT +M$V;G3I-V(\YI_X[\@]DQTBZBMP!L-+'-++DS&M_MG=.N.Z>#Z&=N46Q-/K:= +M'\J`=*C.KD&_KA(S5SF2YQPOTV'56VY&%4CN(/V!2TF26Z32;AT$5[[W!<5R +M0$(`D]YRL\JXL'Y?\*BC_1R+H^N_0)F]^CF6(U9-3_G^3QPV%S]4!F=0QQ=^ +MJU"!2L$9Y;=HSX=2$'I-YS2+7+NP!C#*>31BD?.0'A'<+QM8E2"VZ1/@)H@N +M3;W-Z)B@0IGM5*(4-0QWTJBAT) +MD7)72N*S<:#T,V.0Q2KP;)+$I=S#DC9XXH;?^2Z:NMT,7Z\.IC#C.Q\T,X.Z"&`E%BNLE-_YD?@.OVY29WKR8X'\L57&YQ-)'26X +M#"N4X\]W=27+D90X;>;;.[$8#`:#P6`P&`P&@\%@,!@,!J,E..,F*`;:',G; +M\1S5M1W-J`??N`D*PT-^*L(4Q8_[,5C)&Z?FNJ2E"U;SYN"2M5_,`^LMW6,V9Y*SF#"9YT]7<@_X>ESMN*2;Y*:BYQ2 +MMQZ\TL(D[SQ6T&\.L9HSR5MM64+HEQ-9S9GD)V%96,V9Y*U6\\!0S6^YM9CD +M75=SEYN)2=YF-?>AWQQB,,D[K^8\")CDK5?S=0Z10P`3;B4F>1=PDQ*$KA`= +=B?.Y>>K#_P<`RA;2@JG--:\`````245.1*Y"8(*1 +` +end diff --git a/external/mit/xorg/bin/xdm/config/NetBSD-flag1.xpm b/external/mit/xorg/bin/xdm/config/NetBSD-flag1.xpm new file mode 100644 index 000000000..87eaf2beb --- /dev/null +++ b/external/mit/xorg/bin/xdm/config/NetBSD-flag1.xpm @@ -0,0 +1,190 @@ +/* XPM */ +static char *noname[] = { +/* width height ncolors chars_per_pixel */ +"185 150 33 1", +/* colors */ +" c Gray68", +". c Gray67", +"X c #A7A7A7", +"o c Gray64", +"O c #9F9F9F", +"+ c #D08A5F", +"@ c #9B9B9B", +"# c #C3987D", +"$ c Gray60", +"% c #E97025", +"& c #C89373", +"* c #EE6B1B", +"= c #CC8F69", +"- c #F26711", +"; c Gray", +": c #D48656", +"> c #AAAAAA", +", c Gray66", +"< c Gray65", +"1 c #A4A4A4", +"2 c #A2A2A2", +"3 c #A0A0A0", +"4 c Gray62", +"5 c Gray61", +"6 c #989898", +"7 c #B2AAA4", +"8 c #D8824C", +"9 c #B7A59A", +"0 c #DD7D42", +"q c #BF9C87", +"w c #E5742F", +"e c #BBA190", +"r c #E17938", +/* pixels */ +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;q#+8rr------------%r0+#e;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7q+0%--------------------------r+q;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9&8w----------------------------------*0&7;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7#8%------------------------------------------8#;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;e+w-----------------------------------%rrrrrrw-----%=7;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#8%-------------------------------r8+qe;;;;;;;;;;;;9q=:r%+9;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7&0------------------------------*0=e;;;;;;;;;;;;;;;;;;;;;;;;e&7;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9=r------------------------------w+e;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;e+w------------------------------w=9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;263;+%=7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7#8%------------------------------*:e;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>666.7*--0#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;q+r--------------------------------r&;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 6663;&----*0&7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;q+r---------------------------------*89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3666.;%-------w:#7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;e&:r-----------------------------------*+7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>6663;&-----------%0+qe;;;;;;;;;;;;;;;;;;7q#+0w--------------------------------------%&7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4666.;%----------------*rrr++++++++0rr%-------------------------------------------%&;;;;;;;9q=+0rr%------*rr0+&q7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;X6663;q-------------------------------------------------------------------------%&;;;;q+8w-----------------------%8=9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@666.;r----------------------------------------------------------------------%&;9&8w--------------------------------%:#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<6663;q--------------------------------------------------------------------*8&8%---------------------------------------%:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; $666.;r-------------------------------------------------------------------%----------------------------------------------r&;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;o6663;e---------------------------------------------------------------------------------------------------%r8+++#qq=+++rr--%&;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 6666.;8---------------------------------------------------------------------------------------------r:&e;;;;;;;;;;;;;;;;;7q+:e;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36663;9-----------------------------------------------------------------------------------------w:q;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.6666 ;8-------------------------------------------------------------------------------------w=9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4666o;9*---------------------------------------------------------------------------------%=9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,666$ ;+------------------------------------------------------------------------------*8e;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@666o;7*---------------------------------------------------------------------------%=7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<666$ ;+-------------------------------------------------------------------------r#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;$666o;7*----------------------------------------------------------------------0q;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;o666$ ;&--------------------------------------------------------------------89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 6666o;;%-----------------------------------------------------------------89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3666$ ;&---------------------------------------------------------------89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.6666o;;%------------------------------------------------------------09;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;O666$ ;q----------------------------------------------------------rq;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,6666o;;r-------------------------------------------------------rq;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5666$;;q-----------------------------------------------------%#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<6666<;;r--------------------------------------------------%&;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@666@;;e------------------------------------------------%&;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;o6666<;;8---------------------------------------------%=;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; $666@;;9-------------------------------------------%&;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36666<;;8----------------------------------------%&;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.6666@;;9*-------------------------------------r&;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;O6666<;;+-----------------------------------8e;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,6666@;;7*-------------------------------w=7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;46666<;;+----------------------------%:e;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<6666@;;7w------------------------r+e;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@6666<;;;7#+r*--------------%r+q7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16666@;;;;;;;;7qq+++++++=qq;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; $6666,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;266664;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.66666,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;366664;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,66666,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;466664;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;X66666,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@66664;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<66666,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; $66664;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;o66666,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.66666O;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.,,,,.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ,, ;;;", +"=++&qqqqqqq=+9;;;;;;;;;;;;9+++#qqqqqqq&++7;;;;;;;;;;;;366666.;;;;;;;;;;;;;;;;;;;;,,,,,ooooooooooX,.;;;;;;;;;;;;;;;;;;;;.256666666652X;;;;;;;,,,,,;;;;;;;;;;;;;;;;; 36$662 ;", +"-------------=;;;;;;;;;;;;&--------------q;;;;;;;;;;;;>666663;;;;;;;;;;;;;;;;>666666666666666666666641.;;;;;;;;;;;;;;.4666666666666666<;>66666666666666666666666@Oo>;;;;;;;;;;; 55<,,,55;", +"*------------%;;;;;;;;;;;;e--------------e;;;;;;;;;;;;;466666.;;;;;;;;;;;;;;;,66666666666666666666666663 ;;;;;;;;;;;<66666665456666666O;,666666666666666666666666666$2.;;;;;;;;35;65$5 @o", +";7#8----------+;;;;;;;;;;;;;9&r------*+e;;;;;;;;;;;;;;;X666663;;;;;;;;;;;;;;; oO@666666666$2oo4666666666$>;;;;;;;;;<666666o ;;;.O66666@; o2@66666666664ooo34$66666666664.;;;;; 6>;6,.6;X@", +";;;;=---------*9;;;;;;;;;;;;;;;8-----q;;;;;;;;;;;;;;;;;;oooooo;;;;;;;;;;;;;;;;;;;266666666X;;;; 266666666$>;;;;;;;X666666<;;;;;;;<66666;;;; 5666666661;;;;;;;>2@666666666o;;;;,$;;611$;;6", +";;;;;*---------r;;;;;;;;;;;;;;;9----w;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.66666666,;;;;;;<666666665;;;;;; $666663;;;;;;;;;o6666.;;;;166666666,;;;;;;;;;;<$666666664 ;;,5;;656,;;6", +";;;;;r----------+;;;;;;;;;;;;;;;----8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;66666666,;;;;;;;O66666666<;;;;;1666666>;;;;;;;;;;4666,;;;;,66666666,;;;;;;;;;;; 4666666665 ;.6 ;6,42;.6", +";;;;;r-----------q;;;;;;;;;;;;;;r---+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;66666666,;;;;;;;.66666666O;;;;;5666666;;;;;;;;;;;,666,;;;;,66666666,;;;;;;;;;;;;;3666666664;;@o;6,,6.3O", +";;;;;r-----------*7;;;;;;;;;;;;;r---&;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;66666666,;;;;;;;;56666666@;;;; 6666666;;;;;;;;;;;;466,;;;;,66666666,;;;;;;;;;;;;;;5666666662;X6", +";;;;;r------------r;;;;;;;;;;;;;8---q;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;66666666,;;;;;;;;266666666;;;;,6666666>;;;;;;;;;;;X66,;;;;,66666666,;;;;;;;;;;;;;;.$66666666,;<64oo5$X;", +";;;;;r---8---------:;;;;;;;;;;;;+---q;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9%w;;;;;;;;;;;;;66666666,;;;;;;;;o66666666;;;;,66666662;;;;;;;;;;;;1o ;;;;,66666666,;;;;;;;;;;;;;;;o666666665;;.o441.;;", +";;;;;r---;8---------&;;;;;;;;;;;+---q;;;;;;;;;;;;;;;;;;;;;;;;;;;;;r--;;;;;;;;;;;;;66666666,;;;;;;;;o66666666;;;;,66666666>;;;;;;;;;;;;;;;;;;,66666666,;;;;;;;;;;;;;;; $66666666X;;;;;;;;;", +";;;;;r---;7w--------*e;;;;;;;;;;+---q;;;;;;;;;;;;;;;;;;;;;;;;;;;;8---;;;;;;;;;;;;;66666666,;;;;;;;;o66666665;;;;,66666666@ ;;;;;;;;;;;;;;;;;,66666666,;;;;;;;;;;;;;;;;2666666664;;;;;;;;;", +";;;;;r---;;9*--------%7;;;;;;;;;+---q;;;;;;;;;;;;;;;;;;;;;;;;;;;&----;;;;;;;;;;;;;66666666,;;;;;;;;56666666o;;;;.666666666$>;;;;;;;;;;;;;;;;,66666666,;;;;;;;;;;;;;;;;>666666666.;;;;;;;;", +";;;;;r---;;;q---------0;;;;;;;;;+---q;;;;;;;;;;;;;;;;;;;;;;;;;;:-----;;;;;;;;;;;;;66666666,;;;;;;;.6666666$ ;;;;;@6666666666o ;;;;;;;;;;;;;;,66666666,;;;;;;;;;;;;;;;;;$66666666<;;;;;;;;", +";;;;;r---;;;;+---------:;;;;;;;;+---q;;;;;;;;;q+++++q;;;;;;;;9w------;;;;;;;;;;;;;66666666,;;;;;;;46666666X;;;;;;o66666666666@<;;;;;;;;;;;;;,66666666,;;;;;;;;;;;;;;;;;O66666666O;;;;;;;;", +";;;;;r---;;;;;r---------&;;;;;;;+---q;;;;;;98*-------*+;;;;7+--------wrrrrr#;;;;;;66666666,;;;;; 3666666$X;;;;;;; $6666666666664,;;;;;;;;;;;,66666666,;;;;;;;;;;;;;;;;;o666666665;;;;;;;;", +";;;;;r---;;;;;7*--------*e;;;;;;+---q;;;;;=*-----------w7;+*---------------+;;;;;;66666666o,;>,2@66666$2 ;;;;;;;;;166666666666666O ;;;;;;;;;,66666666,;;;;;;;;;;;;;;;;;<666666666;;;;;;;;", +";;;;;r---;;;;;;q---------%7;;;;;+---q;;;;8-----%++r-----w;-----------------+;;;;;;66666666666666666662;;;;;;;;;;;;;O66666666666666$X;;;;;;;;,66666666,;;;;;;;;;;;;;;;;;,666666666;;;;;;;;", +";;;;;r---;;;;;;;+---------r;;;;;+---q;;;8-----+;;;;0-----+:rr*-------wrrrrr9;;;;;;66666666666666666666$3,;;;;;;;;;; 5666666666666666<;;;;;;;,66666666,;;;;;;;;;;;;;;;;;,666666666;;;;;;;;", +";;;;;r---;;;;;;;;0---------:;;;;+---q;;#-----8;;;;;e-----*7;;:-------;;;;;;;;;;;;;666666666444@66666666664.;;;;;;;;;;3666666666666666<;;;;;;,66666666,;;;;;;;;;;;;;;;;;,666666666;;;;;;;;", +";;;;;r---;;;;;;;;7%---------&;;;+---q;7*-----9;;;;;;------&;;+-------;;;;;;;;;;;;;66666666X;;;; <@66666666$>;;;;;;;;;;1$66666666666666X;;;;;,66666666,;;;;;;;;;;;;;;;;;,666666666;;;;;;;;", +";;;;;r---;;;;;;;;;e---------*e;;+---q;+-----%;;;;;;q------+;;+-------;;;;;;;;;;;;;66666666,;;;;;;;366666666$>;;;;;;;;;;.O6666666666666$ ;;;;,66666666,;;;;;;;;;;;;;;;;;,666666666;;;;;;;;", +";;;;;r---;;;;;;;;;;=---------%7;+---q;%------wrrrrw-------r;;+-------;;;;;;;;;;;;;66666666,;;;;;;;;3666666665;;;;;;;;;;;;,4666666666666o;;;;,66666666,;;;;;;;;;;;;;;;;;<66666666@;;;;;;;;", +";;;;;r---;;;;;;;;;;;0---------r;+---qe--------------------0;;+-------;;;;;;;;;;;;;66666666,;;;;;;;; $66666666<;;;;;;;;;;;;;1$6666666666$;;;;,66666666,;;;;;;;;;;;;;;;;;o666666664;;;;;;;;", +";;;;;r---;;;;;;;;;;;7w---------8+---q=--------------------#;;+-------;;;;;;;;;;;;;66666666,;;;;;;;;;o66666666O;;;;;;;;;;;;;;>56666666666X;;;,66666666,;;;;;;;;;;;;;;;;;O66666666o;;;;;;;;", +";;;;;r---;;;;;;;;;;;;e*---------%---q8------8qqqqqqqqqqqq9;;;+-------;;;;;;;;;;;;;66666666,;;;;;;;;;.666666666;;;;;;;;;;;;;;; 5666666666o;;;,66666666,;;;;;;;;;;;;;;;;;@66666666,;;;;;;;;", +";;;;;r---;;;;;;;;;;;;;&-------------qr------+;;;;;;;;;;;;;;;;+-------;;;;;;;;;;;;;66666666,;;;;;;;;;;$66666666>;;;;;;;;;;;;;;; $666666664;;;,66666666,;;;;;;;;;;;;;;;;.66666666$;;;;;;;;;", +";;;;;r---;;;;;;;;;;;;;;8------------qr------+;;;;;;;;;;;;;;;;+-------;;;;;;;;;;;;;66666666,;;;;;;;;;;466666666,$66666662;;;;;;;;;;;;", +";;;;9----&;;;;;;;;;;;;;;;;;9*-------q;0--------w9;;;;;;e%-*;;+-------+;;;;;;;;;;;;666666662;;;;;;;;;@6666666$ ;46666,;;;;;;;;;;;26666663;;;;,666666662;;;;;;;;;;;;>$66666663;;;;;;;;;;;;;", +";;;;#----:;;;;;;;;;;;;;;;;;;q-------q;q----------8#qqq:*--+;;+-------*7;;;;;;;;;; 66666666$ ;;;;;;;366666666<;;o6666$>;;;;;;;;; $66666$ ;;;;<66666666$ ;;;;;;;;;;,$66666662;;;;;;;;;;;;;;", +";;;;r----*7;;;;;;;;;;;;;;;;;;:------q;;:-----------------w;;;&--------%&q#r*;;;;;<6666666663 ;;;; 3666666663;;;X66666$<;;;;;;;;O666666X;;;;;36666666665 ;;;;;;;>36666666$X;;;;;;;;;;;;;;;", +";;#r------*=e;;;;;;;;;;;;;;;;;w-----q;;;w---------------*e;;;9--------------;;;,2$6666666666$2oo3$66666666o;;;; 6666666O>;;;;,5666666<;;;;,366666666666$31,,125666666663 ;;;;;;;;;;;;;;;;", +"8-------------8;;;;;;;;;;;;;;;e-----q;;;7r-------------*e;;;;;0-----------*&;o666666666666666666666666664>;;;;;;366666666@44@666666$,;;;@666666666666666666666666666$3.;;;;;;;;;;;;;;;;;;", +"r-------------%;;;;;;;;;;;;;;;;+----q;;;;;+*----------07;;;;;;7w---------re;;46666666666666666666666641.;;;;;;;; o@66666666666666$o ;;;>6666666666666666666666666@3< ;;;;;;;;;;;;;;;;;;;;", +"&+++&qqqq#++++&;;;;;;;;;;;;;;;;;w-*+;;;;;;;7=r-----*8q;;;;;;;;;7+*----%8q;;;;,ooooo,,,,,,,,, ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;o4444444.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,66666663;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@6666666.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<66666663;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;$6666666.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;o66666663;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 66666666.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;366666663;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.66666666.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;466666663;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,66666666.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@66666662;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<6666666$ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@6666666o;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;o6666666$ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; $6666666o;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;36666666$ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.66666666o;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;O6666666$ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,66666666o;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;56666666$ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<66666666o;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@6666666$ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;o666666661;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; $6666666@;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;266666666<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.66666666@;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;366666666<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,66666666@;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;466666666<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;<66666666@;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;@66666666<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;166666666@;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; $66666666<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;266666666@;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.666666666<;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3666666664;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;>666666666;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;466666666;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;X66666664;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;466666$>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;", +";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 36663 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;" +}; diff --git a/external/mit/xorg/bin/xdm/config/NetBSD-flag2.xpm b/external/mit/xorg/bin/xdm/config/NetBSD-flag2.xpm new file mode 100644 index 000000000..345c3fbdb --- /dev/null +++ b/external/mit/xorg/bin/xdm/config/NetBSD-flag2.xpm @@ -0,0 +1,190 @@ +/* XPM */ +static char *noname[] = { +/* width height ncolors chars_per_pixel */ +"185 150 33 1", +/* colors */ +" c Gray67", +". c #A7A7A7", +"X c Gray64", +"o c #9F9F9F", +"O c #D7C5BB", +"+ c #DDB196", +"@ c #E8894E", +"# c #EE7529", +"$ c Gray80", +"% c #C8C8C8", +"& c #EC7B36", +"* c #F26711", +"= c Gray77", +"- c Grey", +"; c #E49666", +": c #B2B2B2", +"> c #E39D72", +", c Gray", +"< c #D5CCC7", +"1 c #DBB8A2", +"2 c Gray61", +"3 c #989898", +"4 c #E6905A", +"5 c #DFAA8A", +"6 c #EA8242", +"7 c #F06E1D", +"8 c #E1A47E", +"9 c LightGrey", +"0 c #D9BFAE", +"q c Gray81", +"w c Gray74", +"e c #B9B9B9", +"r c Gray71", +/* pixels */ +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999991+>466************#6@>+09999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999<1>@#**************************6>1999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999O54&**********************************7@5<99999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999<+4#******************************************4+999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999990>&***********************************#666666&*****#8<999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999+4#*******************************64>10999999999999O18;6#>O9999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999<5@******************************7@8099999999999999999999999905<999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999O86******************************&>09999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999O999999999999999999999999999999999999999999999999999999999990>&******************************&8O9999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999:3,9>#8<9999999999999999999999999999999999999999999999999999<+4#******************************7;09999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999%333$<7**@+999999999999999999999999999999999999999999999991>6********************************659999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999q333,95****7@5<9999999999999999999999999999999999999991>6*********************************74O999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999,333$9#*******&;+<99999999999999999999999999999905;6***********************************7><99999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999%333,95***********#@>10999999999999999999<1+>@&**************************************#5<9999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999.333$9#****************7666>>>>>>>>@66#*******************************************#59999999O18>@66#******766@>51<99999999999999999999999999999999999999", +"9999999999999999999999999999999999-333,91*************************************************************************#599991>4&***********************#48O9999999999999999999999999999999999", +"99999999999999999999999999999999999o333$96**********************************************************************#59O54&********************************#;+9999999999999999999999999999999", +"99999999999999999999999999999999999w333,91********************************************************************7454#***************************************#;O9999999999999999999999999999", +"99999999999999999999999999999999999q2333$96*******************************************************************#**********************************************6599999999999999999999999999", +"999999999999999999999999999999999999r333,90***************************************************************************************************#64>>>+118>>>66**#5999999999999999999999999", +"999999999999999999999999999999999999q3333$94*********************************************************************************************6;5099999999999999999<1>;09999999999999999999999", +"9999999999999999999999999999999999999,333,9O*****************************************************************************************&;19999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999$3333q94*************************************************************************************&8O9999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999.333r9O7*********************************************************************************#8O9999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999=3332q9>******************************************************************************7409999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999o333r9<7***************************************************************************#8<999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999w3332q9>*************************************************************************6+999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999992333r9<7**********************************************************************@199999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999r3332q95********************************************************************4O9999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999q3333r99#*****************************************************************4O999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999,3332q95***************************************************************4O99999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999$3333r99#************************************************************@O9999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999 3332q91**********************************************************61999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999=3333r996*******************************************************6199999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999X3332991*****************************************************#+9999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999w3333w996**************************************************#5999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999o333o990************************************************#599999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999r3333w994*********************************************#89999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999q2333o99O*******************************************#5999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999,3333w994****************************************#599999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999$3333o99O7*************************************659999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999 3333w99>***********************************40999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999=3333o99<7*******************************&8<99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999.3333w99>****************************#;099999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999w3333o99<&************************6>099999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999o3333w999<+>67**************#6>1<99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999e3333o99999999<11>>>>>>>81199999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999q23333=9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999:3333.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999$33333=999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999,3333.999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999=33333=99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999.3333.99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999-33333=9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999o3333.9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999w33333=999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999q23333.999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999r33333=99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999$33333 999999999999999999999999999999999999999999999999999999999999999$====$9999999999999999999999999999999999999999999999999q==q999", +"8>>511111118>O999999999999O>>>+11111115>><999999999999,33333$99999999999999999999=====rrrrrrrrrr-=$99999999999999999999$:X33333333X:-9999999=====wrrrrrrrrrr-=%99999999999999999q,3233:q9", +"*************89999999999995**************1999999999999%33333,9999999999999999%3333333333333333333333.e$99999999999999$.333333333333333w9%33333333333333333333333o r%99999999999qXXw===XX9", +"7************#9999999999990**************09999999999999.33333$999999999999999=3333333333333333333333333,q99999999999w3333333X.X3333333 9=3333333333333333333333333332:$99999999,X93X2Xqor", +"9<+4**********>9999999999999O56******7>0999999999999999-33333,999999999999999qr o3333333332:rr.3333333332%999999999w333333rq999$ 33333o9qr:o3333333333.rrr,.23333333333.$99999q3%93=$39-o", +"99998*********7O9999999999999994*****1999999999999999999rrrrrr9999999999999999999:33333333-9999q:333333332%9999999-333333w9999999w333339999qX33333333e9999999%:o333333333r9999=2993ee2993", +"999997*********6999999999999999O****&99999999999999999999999999999999999999999999$33333333=999999w33333333X999999q233333,999999999r3333$9999e33333333=9999999999w233333333.q99=X993X3=993", +"999996**********>999999999999999****499999999999999999999999999999999999999999999933333333=9999999 33333333w99999e333333%9999999999.333=9999=33333333=99999999999q.33333333Xq9$3q93=.:9$3", +"999996***********1999999999999996***>99999999999999999999999999999999999999999999933333333=9999999$33333333 99999X33333399999999999=333=9999=33333333=9999999999999,33333333.99or93==3$, ", +"999996***********7<99999999999996***599999999999999999999999999999999999999999999933333333=99999999X3333333o9999q3333333999999999999.33=9999=33333333=99999999999999X33333333:9-3wr$9w 2%", +"999996************699999999999994***199999999999999999999999999999999999999999999933333333=99999999:333333339999=3333333%99999999999-33=9999=33333333=99999999999999$233333333=9w3.rrX2-9", +"999996***4*********;999999999999>***199999999999999999999999999999O#&999999999999933333333=99999999r333333339999=3333333:999999999999erq9999=33333333=999999999999999r33333333X99$r..e$99", +"999996***94*********599999999999>***1999999999999999999999999999996**999999999999933333333=99999999r333333339999=33333333%999999999999999999=33333333=999999999999999q233333333-999999999", +"999996***9<&********709999999999>***199999999999999999999999999994***999999999999933333333=99999999r3333333X9999=33333333oq99999999999999999=33333333=9999999999999999:33333333.999999999", +"999996***99O7********#<999999999>***19999999999999999999999999995****999999999999933333333=99999999X3333333r9999$3333333332%9999999999999999=33333333=9999999999999999%333333333$99999999", +"999996***9991*********@999999999>***199999999999999999999999999;*****999999999999933333333=9999999$33333332q99999o3333333333rq99999999999999=33333333=99999999999999999233333333w99999999", +"999996***9999>*********;99999999>***19999999991>>>>>199999999O&******999999999999933333333=9999999.3333333-999999r33333333333ow9999999999999=33333333=99999999999999999 33333333 99999999", +"999996***999996*********59999999>***1999999O47*******7>9999<>********&66666+99999933333333=99999q,3333332-9999999q2333333333333.=99999999999=33333333=99999999999999999r33333333X99999999", +"999996***99999<7********70999999>***19999987***********&<9>7***************>99999933333333r=9%=:o333332:q999999999e33333333333333 q999999999=33333333=99999999999999999w33333333399999999", +"999996***9999991*********#<99999>***199994*****#>>6*****&9*****************>9999993333333333333333333:9999999999999 333333333333332-99999999=33333333=99999999999999999=33333333399999999", +"999996***9999999>*********699999>***19994*****>9999@*****>;667*******&66666O999999333333333333333333332,=9999999999qX333333333333333w9999999=33333333=99999999999999999=33333333399999999", +"999996***99999999@*********;9999>***199+*****4999990*****7<99;*******9999999999999333333333...o3333333333.$9999999999,333333333333333w999999=33333333=99999999999999999=33333333399999999", +"999996***99999999<#*********5999>***19<7*****O999999******599>*******999999999999933333333-9999qwo333333332%9999999999e233333333333333-99999=33333333=99999999999999999=33333333399999999", +"999996***9999999990*********7099>***19>*****#9999991******>99>*******999999999999933333333=9999999,333333332%9999999999$ 33333333333332q9999=33333333=99999999999999999=33333333399999999", +"999996***99999999998*********#<9>***19#******&6666&*******699>*******999999999999933333333=99999999,33333333X999999999999=.333333333333r9999=33333333=99999999999999999w33333333o99999999", +"999996***99999999999@*********69>***10********************@99>*******999999999999933333333=99999999q233333333w9999999999999e2333333333329999=33333333=99999999999999999r33333333.99999999", +"999996***99999999999<&*********4>***18********************+99>*******999999999999933333333=999999999r33333333 99999999999999%X3333333333-999=33333333=99999999999999999 33333333r99999999", +"999996***99999999999907*********#***14******4111111111111O999>*******999999999999933333333=999999999$333333333999999999999999qX333333333r999=33333333=99999999999999999o33333333=99999999", +"999996***99999999999995*************16******>9999999999999999>*******999999999999933333333=9999999999233333333%999999999999999q233333333.999=33333333=9999999999999999$333333332999999999", +"999996***999999999999994************16******>9999999999999999>*******999999999999933333333=9999999999.33333333=wrq9999999999999=33333333.999=33333333=9999999999999999e33333333:999999999", +"999996***99999999999999<&***********16******@9999999999999999>*******999999999999933333333=9999999999.33333333=33e99999999999999X3333333.999=33333333=9999999999999999X33333333$999999999", +"999996***999999999999999O7**********16******79999999999999999>*******999999999999933333333=9999999999.33333333=33o99999999999999e3333333.999=33333333=999999999999999=33333333,9999999999", +"99999&***9999999999999999+**********1;*******5999999999999999>*******999999999999933333333=99999999992333333339333w9999999999999=3333333r999=33333333=999999999999999.33333332q9999999999", +"99999****O9999999999999999;*********15*******#<99999999990<99>*******999999999999933333333=999999999$33333333X9333o9999999999999=3333333-999=33333333=99999999999999-33333333-99999999999", +"99999****199999999999999999&********1<********@99999999907799>*******199999999999933333333w999999999e33333333e9o333r999999999999=3333332q999=33333333-9999999999999%23333333:999999999999", +"9999O****599999999999999999O7*******19@********&O9999990#*799>*******>99999999999933333333:999999999o33333332q9.3333=99999999999:333333,9999=33333333:999999999999%23333333,9999999999999", +"9999+****;9999999999999999991*******191**********4+111;7**>99>*******7<9999999999q333333332q9999999,33333333w99r33332%999999999q2333332q9999w333333332q9999999999=23333333:99999999999999", +"99996****7<999999999999999999;******199;*****************&9995********#51+6799999w333333333,q9999q,33333333,999-333332w99999999 333333-99999,333333333Xq9999999%,33333332-999999999999999", +"99+6******78099999999999999999&*****1999&***************70999O**************999=:233333333332:rr,233333333r9999q3333333 %9999=X333333w9999=,333333333332,e==e:X33333333,q9999999999999999", +"4*************49999999999999990*****1999<6*************7099999@***********759r33333333333333333333333333.%999999,33333333o..o3333332=999o3333333333333333333333333332,$999999999999999999", +"6*************#9999999999999999>****199999>7**********@<999999<&*********6099.33333333333333333333333.e$99999999qro333333333333332rq999%3333333333333333333333333o,wq99999999999999999999", +"5>>>51111+>>>>599999999999999999&*7>9999999<86*****741999999999<>7****#419999=rrrrr====wrrrrrrrrrw=$999999999999999-:X333333332 wq999999rrrrrw====errr .... rrw=q999999999999999999999999", +"99999999999999999999999999999999O09999999999999<11<999999999999999<1199999999999999999999999999999999999999999999999999%=====q99999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999r.......$9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999=3333333,9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999o3333333$999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999w3333333,999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999923333333$99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999r3333333,99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999q33333333$9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999,3333333,9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999$33333333$999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999.3333333,999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999=33333333$99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999o3333333:99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999w33333332q9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999o3333333r9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999r33333332q999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999q23333333r999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999,33333332q99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999$33333333r99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999 33333332q9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999=33333333r9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999X33333332q999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999w33333333r999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999o33333332q99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999r33333333e99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999q23333333o99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999999:33333333w9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999999$33333333o9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999,33333333w999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999=33333333o999999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999.33333333w99999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999w33333333o99999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999o33333333w9999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999e33333333o9999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999q233333333w999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999:33333333o999999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999$333333333w99999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999,33333333.99999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"99999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999%33333333399999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999.3333333399999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999-3333333.99999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999.333332%99999999999999999999999999999999999999999999999999999999999999999999999999999999999", +"9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999q,333,q999999999999999999999999999999999999999999999999999999999999999999999999999999999999" +}; diff --git a/external/mit/xorg/bin/xdm/config/NetBSD-inv.xpm b/external/mit/xorg/bin/xdm/config/NetBSD-inv.xpm new file mode 100644 index 000000000..778c4402c --- /dev/null +++ b/external/mit/xorg/bin/xdm/config/NetBSD-inv.xpm @@ -0,0 +1,269 @@ +/* XPM */ +static char * NetBSDinv_xpm[] = { +"185 150 116 2", +" c None", +". c #020202", +"+ c #F26612", +"@ c #767676", +"# c #CA560E", +"$ c #76320A", +"% c #666666", +"& c #4A4A4A", +"* c #522206", +"= c #3A3A3A", +"- c #262626", +"; c #361606", +"> c #220E02", +", c #161616", +"' c #923E0A", +") c #160A02", +"! c #D65A0E", +"~ c #A6460E", +"{ c #0E0E0E", +"] c #5A5A5A", +"^ c #0E0602", +"/ c #DA5E0E", +"( c #6A2E06", +"_ c #B64E0E", +": c #222222", +"< c #E25E12", +"[ c #0A0A0A", +"} c #6A6A6A", +"| c #2A2A2A", +"1 c #7E360A", +"2 c #464646", +"3 c #0A0202", +"4 c #4E4E4E", +"5 c #4A1E06", +"6 c #622A06", +"7 c #2E2E2E", +"8 c #6E6E6E", +"9 c #E66212", +"0 c #1E1E1E", +"a c #260E02", +"b c #C2520E", +"c c #421E06", +"d c #060606", +"e c #424242", +"f c #525252", +"g c #9E420A", +"h c #363636", +"i c #863A0A", +"j c #EA6212", +"k c #626262", +"l c #562606", +"m c #727272", +"n c #AE4A0E", +"o c #2E1202", +"p c #060202", +"q c #1A1A1A", +"r c #1E0E02", +"s c #72320A", +"t c #565656", +"u c #3E3E3E", +"v c #5E2606", +"w c #121212", +"x c #BE520E", +"y c #0A0602", +"z c #323232", +"A c #CE5A0E", +"B c #EA6612", +"C c #3A1606", +"D c #8A3A0A", +"E c #9A420A", +"F c #5E5E5E", +"G c #EE6612", +"H c #120A02", +"I c #B24E0E", +"J c #8E3E0A", +"K c #1A0A02", +"L c #C6560E", +"M c #AA4A0E", +"N c #2E1602", +"O c #DE5E0E", +"P c #96420A", +"Q c #120602", +"R c #5A2606", +"S c #CE560E", +"T c #7A360A", +"U c #A2460A", +"V c #6E2E0A", +"W c #662E06", +"X c #823A0A", +"Y c #2A1202", +"Z c #3E1A06", +"` c #BA4E0E", +" . c #662A06", +".. c #5E2A06", +"+. c #D25A0E", +"@. c #1A0E02", +"#. c #261202", +"$. c #461E06", +"%. c #B24A0E", +"&. c #82360A", +"*. c #321602", +"=. c #4E2206", +"-. c #D65E0E", +";. c #E26212", +">. c #522606", +",. c #4A2206", +"'. c #963E0A", +"). c #7A320A", +"!. c #3A1A06", +"~. c #AA460E", +"{. c #6A2E0A", +"]. c #A2460E", +"^. c #321606", +"/. c #C6520E", +"(. c #8E3A0A", +"_. c #DE5E12", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p ^ ^ ^ ^ ^ ^ p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p ^ Q o =.6 ).' g ~.%.%.%.%.%.%.~.g (.$ R !.K y p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Q Z .(.n +.G + + + + + + + + + + + + + + + + + + + + S n &.* > . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ) ; 6 '.# 9 G G + + + + + + + + + + + + + + + + + + + + + + + + + + + B < /.D Z K . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . K *.( ~ S < + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + j S J Z Q . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p K v g # j + + + + + + + + + + + + + + + + + + + + + + + + + + G G B B ;.L x U U U ~ M U U _ L < G j ` s K . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Q 5 i L + + + + + + + + + + + + + + + + + + + + + + + + + + + + B x E T =.N H . . . . . . . . . . . . . ) *.l 1 '. .*.. . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 o 6 n / j + + + + + + + + + + + + + + + + + + + + + + + + + + -.I X ,.@.H . . . . . . . . . . . . . . . . . . . . . . y Q ^ . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p ) ; 1 ` / + + + + + + + + + + + + + + + + + + + + + + + + + + B -.E >.#.[ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . , q . > v ^ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Q R '.# + + + + + + + + + + + + + + + + + + + + + + + + + + + + B P ,.H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . z @ @ : y U ;.E 5 Q . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . > * &.b + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B U ,.d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . u @ @ t [ ; 9 + 9 +.' =.a p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Q Y 5 D x / G + + + + + + + + + + + + + + + + + + + + + + + + + + + + B L T #.d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 m @ @ | . ' + + + + j +.%.V !.) 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . p ^ ) ; .E x / + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B M >.H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d t @ @ F [ #.O + + + + + + + + O %.J .$.K . . . . . . . . . . . . . . . . . . . . K Z v 1 g /.9 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B P !.d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 @ @ m z . T G + + + + + + + + + + G j G < L n E &.1 6 R R R R R v s 1 (.U _ S j G j + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G -.T @.. . . . . 3 > C 5 6 ).D g ~ b /./././.` U g 1 V * Z > 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d t @ @ % [ @.L + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G -.s , d y > ; * i n # -.;.j + + + + + + + + + + + + + + + G 9 ! /.U ( C K . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | @ @ m z . ..+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B A W #.r R D %.A B + + + + + + + + + + + + + + + + + + + + + + + + + + + + B # g R K p . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . k @ @ % [ H I + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ;.P s P # + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 9 ~ R ^ . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | @ @ @ h . !.G + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B -.B G + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G / O +.# L S O O j + G / D C . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [ k @ @ % , d U + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G + G + + + + + + + + + + + + + + + + + + + + + + + + B -.L M X ..c !.Y Y > r r r Y Y *.Z v ).U n D *.3 . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 @ @ @ = . !.;.+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B / U ( c #.. . . . . . . . . . . . . . . . . . . . > ; H . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . { k @ @ } w . X + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B M s *.d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . h @ @ @ e . #.-.+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -.M ..@.d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . { } @ @ 8 w . ( G + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B x s #.d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . u @ @ @ e . w A + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B J !.d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . { 8 @ @ m , . ,.G + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B x W [ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e @ @ @ 2 d [ x + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B M c [ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . q 8 @ @ 8 q . c ;.+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B P !.d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 @ @ @ f . [ M + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B B X r . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . q m @ @ 8 0 . , ;.G + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G -.X w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d & @ @ @ f . d X + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B A T @.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . , @ @ @ @ 0 . w -.G + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B T , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ] @ @ @ t d d s G + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G -.s { . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . : m @ @ @ - . [ L G + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B 2 w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ] @ @ @ t [ d h B + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B -.s > p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | @ @ @ m | . y I G + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B e w d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d t @ @ @ F . d | B + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B L >.[ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | @ @ @ m | . d J B + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + B @ >.{ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [ F @ @ @ k [ d 0 B + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + G B B J C y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . z @ @ @ @ 7 . d s B + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -.& , d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 @ @ @ F { d , ;.+ + + + + + + + + + + + + + + + + + + + + + + + + + + B B -.J , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . h @ @ @ @ h . d >.B B + + + + + + + + + + + + + + + + + + + + + + G B @ P | w [ d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . { % @ @ @ k w d w ..k -.B B G + + + + + + + + + + + + + B B B -.F ..!.[ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . u @ @ @ @ = . . . p [ 0 7 2 P I A @ B B B B B @ A k J 2 7 , [ d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . w } @ @ @ } [ . . . . . d d [ [ [ [ [ w { [ H y y . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e @ @ @ @ = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . w m @ @ @ 8 { . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 @ @ @ @ e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . w m @ @ @ % , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 @ @ @ @ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 m @ @ @ 8 , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . f @ @ @ @ & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . : @ @ @ @ @ w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d f @ @ @ @ & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - @ @ @ @ m 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . Q *.Y K K K K K K K K K Y p . . . . . . . . . . . . ) *.a K K K K K K K K K r o Q . . . . . . . . . . . d F @ @ @ @ f . . . . . . . . . . . . . . . . . . . . . . . [ [ [ w , , , , , , , { [ . . . . . . . . . . . . . . . . . . . . . . w 7 e f F % % F f e 7 q . . . . . . . . . . d [ [ [ w , , , , , , , w [ d . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . D _./ ! ! ! ! ! ! ! ! ! O =.. . . . . . . . . . . . D _./ ! ! ! ! ! ! ! ! ! ! ;.$ . . . . . . . . . . . . | @ @ @ @ 8 : . . . . . . . . . . . . . . . . = f t k k } } } } 8 8 8 8 8 8 8 8 8 } k t e | w . . . . . . . . . . . . . . d - t 8 m @ @ @ @ @ @ @ @ m 8 % & [ . : f f F k k } } } } 8 8 8 8 8 8 8 8 8 } } k t 2 7 q { . . . . . . . . . . . . . . . . . . . ", +". . . . . . i < 9 G + + + + + + + + + ~ ^ . . . . . . . . . . . 1 < 9 G + + + + + + + + j ;.( . . . . . . . . . . . . d k @ @ @ @ t . . . . . . . . . . . . . . . . } @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ } 4 q . . . . . . . . . . . w & m @ @ @ @ m } } } m @ @ @ @ @ @ - . e @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ 8 k 4 - [ . . . . . . . . . . . . . . . . ", +". . . . . . p > $.&.O + + + + + + + + j l . . . . . . . . . . . . #.c $ +.+ + + + + B M =.r . . . . . . . . . . . . . . 7 @ @ @ @ m - . . . . . . . . . . . . . . . 7 & F @ @ @ @ @ @ @ @ @ } 4 & & ] @ @ @ @ @ @ @ @ m = d . . . . . . . . w k @ @ @ @ @ & q . . . 0 f @ @ @ @ @ e . q = 4 m @ @ @ @ @ @ @ @ @ k & & & & t % @ @ @ @ @ @ @ @ @ % = d . . . . . . . . . . . . . . ", +". . . . . . . . . . #.;.G + + + + + + + +.a . . . . . . . . . . . . . . ) -.G + + + D 3 . . . . . . . . . . . . . . . . [ z = = = h 0 . . . . . . . . . . . . . . . . . d - m @ @ @ @ @ @ @ 0 . . . . w & @ @ @ @ @ @ @ @ & . . . . . . . { % @ @ @ @ m 7 . . . . . . d z m @ @ @ 4 . . . . 0 8 @ @ @ @ @ @ @ ] d . . . . . d { 7 t @ @ @ @ @ @ @ @ % | . . . . . . . . . . . . . ", +". . . . . . . . . . . P + + + + + + + + + M 3 . . . . . . . . . . . . . . X + + + 9 *.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . % @ @ @ @ @ @ 8 w . . . . . d = @ @ @ @ @ @ @ m | . . . . . . 2 @ @ @ @ @ & d . . . . . . . . = @ @ @ F [ . . . d ] @ @ @ @ @ @ @ u . . . . . . . . . d 0 ] @ @ @ @ @ @ @ 8 e d . . . . . . . . . . . ", +". . . . . . . . . . . s G + + + + + + + + G V p . . . . . . . . . . . . . l B + + # K . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . t @ @ @ @ @ @ 8 w . . . . . . d f @ @ @ @ @ @ @ k . . . . . , 8 @ @ @ @ @ 0 . . . . . . . . . d t @ @ F [ . . . . & @ @ @ @ @ @ @ = . . . . . . . . . . . d u m @ @ @ @ @ @ @ & . . . . . . . . . . . ", +". . . . . . . . . . . ( + + + + + + + + + + B =.. . . . . . . . . . . . . Z ;.+ + I H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ] @ @ @ @ @ @ 8 , . . . . . . . 0 @ @ @ @ @ @ @ @ w . . . . u @ @ @ @ @ m { . . . . . . . . . . q m @ 8 { . . . . & @ @ @ @ @ @ @ h . . . . . . . . . . . . . | m @ @ @ @ @ @ @ 2 d . . . . . . . . . ", +". . . . . . . . . . . ( + + + + + + + + + + + +.!.. . . . . . . . . . . . *./ + + ~ p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . t @ @ @ @ @ @ 8 w . . . . . . . [ } @ @ @ @ @ @ @ | . . . . ] @ @ @ @ @ @ w . . . . . . . . . . . 4 @ } { . . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . h @ @ @ @ @ @ @ m h . . . . . . . . . ", +". . . . . . . . . . . ( + + G A + + + + + + + + b r . . . . . . . . . . . @./ + + '.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . K 5 K . . . . . . . . . . . . ] @ @ @ @ @ @ 8 , . . . . . . . d t @ @ @ @ @ @ @ h . . . d } @ @ @ @ @ @ z . . . . . . . . . . . 0 % t [ . . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . d ] @ @ @ @ @ @ @ } q . . . . . . . . ", +". . . . . . . . . . . ( + + + r I + + + + + + + + n 3 . . . . . . . . . . @.-.+ + '.. . . . . . . . . . . . . . . . . . . . . . . . . . . . y M + &.. . . . . . . . . . . . ] @ @ @ @ @ @ 8 w . . . . . . . d 4 @ @ @ @ @ @ @ z . . . [ % @ @ @ @ @ @ k { . . . . . . . . . . . [ d . . . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . : m @ @ @ @ @ @ @ 4 . . . . . . . . ", +". . . . . . . . . . . s + + G [ r x + + + + + + + + D 3 . . . . . . . . . ) ! + + X . . . . . . . . . . . . . . . . . . . . . . . . . . . . (.+ + D . . . . . . . . . . . . ] @ @ @ @ @ @ 8 , . . . . . . . . ] @ @ @ @ @ @ @ - . . . [ } @ @ @ @ @ @ @ f d . . . . . . . . . . . . . . . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . . f @ @ @ @ @ @ @ 8 q . . . . . . . ", +". . . . . . . . . . . W + + + d . N -.+ + + + + + + B V . . . . . . . . . . A + + V . . . . . . . . . . . . . . . . . . . . . . . . . . 3 T B + + i . . . . . . . . . . . . t @ @ @ @ @ @ 8 w . . . . . . . d } @ @ @ @ @ @ 8 d . . . . F @ @ @ @ @ @ @ @ f { . . . . . . . . . . . . . . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . . | @ @ @ @ @ @ @ @ 2 . . . . . . . ", +". . . . . . . . . . . ( + + + 3 . . =.;.+ + + + + + + < R . . . . . . . . . A + + $ . . . . . . . . . . . . . . . . . . . . . . . . . Q i j + + + D . . . . . . . . . . . . F @ @ @ @ @ @ 8 , . . . . . . . | @ @ @ @ @ @ @ u . . . . . e @ @ @ @ @ @ @ @ @ F - d . . . . . . . . . . . . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . . { 8 @ @ @ @ @ @ @ % d . . . . . . ", +". . . . . . . . . . . ( + + + p . . . T G + + + + + + + ! ; . . . . . . . . A + + V . . . . . . . . . > * .1 .* a . . . . . . . . N _ G + + + + i . . . . . . . . . . . . t @ @ @ @ @ @ 8 w . . . . . . [ F @ @ @ @ @ @ ] d . . . . . 0 @ @ @ @ @ @ @ @ @ @ m t q . . . . . . . . . . . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . . d ] @ @ @ @ @ @ @ @ , . . . . . . ", +". . . . . . . . . . . ( + + + y . . . d P + + + + + + + + ! > . . . . . . . # + + $ . . . . . . K V L + + + + + + G # R 3 . . . Y (.j + + + + + + < M M M M M 1 . . . . . . F @ @ @ @ @ @ 8 , . . . . . w ] @ @ @ @ @ @ e d . . . . . . . 4 @ @ @ @ @ @ @ @ @ @ @ @ f q . . . . . . . . . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . . . 2 @ @ @ @ @ @ @ @ z . . . . . . ", +". . . . . . . . . . . ( + + + p . . . . @.I + + + + + + + + %.K . . . . . . A + + V . . . . p 5 # j + + + j 9 + + + + B U K 3 './ + + + + + + + + + + + + + + /.Q . . . . . t @ @ @ @ @ @ @ = 0 0 0 | 2 8 @ @ @ @ 8 & q d . . . . . . . . w } @ @ @ @ @ @ @ @ @ @ @ @ 8 & { . . . . . . . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . . . = @ @ @ @ @ @ @ @ e . . . . . . ", +". . . . . . . . . . . ( + + + 3 . . . . . #.-.+ + + + + + + G E 3 . . . . . # + + $ . . . p .;.+ + + 9 J $.!.$ ;.+ + + + n #.9 j G + + + + + + + + j j j j j n . . . . . . F @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ m z { d . . . . . . . . . . : @ @ @ @ @ @ @ @ @ @ @ @ @ @ % - . . . . . . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . . . 7 @ @ @ @ @ @ @ @ & . . . . . . ", +". . . . . . . . . . . ( + + + p . . . . . . ,.;.+ + + + + + + G &.. . . . . A + + V . . . ( 9 + + + 9 =.. . . . 6 G + + + j V $.>.6 -.+ + + + + + _ l l l l * Y . . . . . . t @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ 8 4 0 . . . . . . . . . . : 8 @ @ @ @ @ @ @ @ @ @ @ @ @ m = . . . . . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . . . | @ @ @ @ @ @ @ @ & . . . . . . ", +". . . . . . . . . . . ( + + + 3 . . . . . . . W B + + + + + + + G ( . . . . A + + $ . . C ;.+ + + + s . . . . . Y +.+ + + + +.d . y x + + + + + + ( . . . . . . . . . . . . F @ @ @ @ @ @ @ f 7 | | = 4 8 @ @ @ @ @ @ @ @ f w . . . . . . . . . w ] @ @ @ @ @ @ @ @ @ @ @ @ @ @ e . . . . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . . . | @ @ @ @ @ @ @ @ 4 . . . . . . ", +". . . . . . . . . . . ( + + + p . . . . . . . [ J + + + + + + + + < 5 . . . A + + V . y %.+ + + + -.Y . . . . . Y -.+ + + + + o . y _ + + + + + + .. . . . . . . . . . . . t @ @ @ @ @ @ m , . . . . . w u 8 @ @ @ @ @ @ @ % , . . . . . . . . . [ h } @ @ @ @ @ @ @ @ @ @ @ @ m | . . . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . . . | @ @ @ @ @ @ @ @ & . . . . . . ", +". . . . . . . . . . . ( + + + 3 . . . . . . . . H I + + + + + + + + ! ; . . A + + $ . $.+ + + + + 9 $ ; ; ; ; =.~ G + + + + + 6 . d x + + + + + + .. . . . . . . . . . . . F @ @ @ @ @ @ } , . . . . . . . - m @ @ @ @ @ @ @ F [ . . . . . . . . . . , e m @ @ @ @ @ @ @ @ @ @ @ % { . . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . . . h @ @ @ @ @ @ @ @ = . . . . . . ", +". . . . . . . . . . . ( + + + p . . . . . . . . . @.-.+ + + + + + + + # > . A + + V p E + + + + + + + + + + + + + + + + + + + ( . y _ + + + + + + .. . . . . . . . . . . . t @ @ @ @ @ @ m w . . . . . . . . z @ @ @ @ @ @ @ @ e . . . . . . . . . . . . w 4 @ @ @ @ @ @ @ @ @ @ @ u . . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . . . e @ @ @ @ @ @ @ @ - . . . . . . ", +". . . . . . . . . . . ( + + + 3 . . . . . . . . . . !.;.+ + + + + + + + b ) A + + $ r A + + + + + + + + + + + + + + + + + + 9 C . [ x + + + + + + W . . . . . . . . . . . . F @ @ @ @ @ @ } , . . . . . . . . . k @ @ @ @ @ @ @ % w . . . . . . . . . . . . . - 8 @ @ @ @ @ @ @ @ @ F d . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . . . t @ @ @ @ @ @ @ @ w . . . . . . ", +". . . . . . . . . . . ( + + + p . . . . . . . . . . . 6 B + + + + + + + + _ 9 + + s N B + + + + + x ....l ................>.*.. . y _ + + + + + + .. . . . . . . . . . . . t @ @ @ @ @ @ 8 w . . . . . . . . . = @ @ @ @ @ @ @ m - . . . . . . . . . . . . . . , F @ @ @ @ @ @ @ @ 8 q . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . . { k @ @ @ @ @ @ @ % . . . . . . . ", +". . . . . . . . . . . ( + + + 3 . . . . . . . . . . . y X + + + + + + + + + + + + $ $.+ + + + + G J . . . . . . . . . . . . . . . [ x + + + + + + .. . . . . . . . . . . . F @ @ @ @ @ @ 8 , . . . . . . . . . : @ @ @ @ @ @ @ @ e . . . . . . . . . . . . . . . w 8 @ @ @ @ @ @ @ @ - . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . . q @ @ @ @ @ @ @ @ u . . . . . . . ", +". . . . . . . . . . . ( + + + p . . . . . . . . . . . . [ M + + + + + + + + + + + $ ..+ + + + + + E . . . . . . . . . . . . . . . y _ + + + + + + .. . . . . . . . . . . . t @ @ @ @ @ @ 8 w . . . . . . . . . , 8 @ @ @ @ @ @ @ 2 , h q . . . . . . . . . . . . . - m @ @ @ @ @ @ @ 7 . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . . u @ @ @ @ @ @ @ m , . . . . . . . ", +". . . . . . . . . . . ( + + + 3 . . . . . . . . . . . . . @.L + + + + + + + + + G s l + + + + + + x Q . . . . . . . . . . . . . . [ x + + + + + + W . . . . . . . . . . . . F @ @ @ @ @ @ 8 , . . . . . . . . . , 8 @ @ @ @ @ @ @ & & @ ] . . . . . . . . . . . . . d ] @ @ @ @ @ @ @ z . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . [ % @ @ @ @ @ @ @ & . . . . . . . . ", +". . . . . . . . . . . T G + + r . . . . . . . . . . . . . . !.-.+ + + + + + + + + s !.+ + + + + + O C . . . . . . . . . . . . . . y _ + + + + + + ( . . . . . . . . . . . . t @ @ @ @ @ @ 8 w . . . . . . . . . , 8 @ @ @ @ @ @ @ e & @ m 0 . . . . . . . . . . . . . z @ @ @ @ @ @ @ - . . . = @ @ @ @ @ @ @ h . . . . . . . . . . . . . . . | @ @ @ @ @ @ @ m q . . . . . . . . ", +". . . . . . . . . . . J + + + o . . . . . . . . . . . . . . d l B + + + + + + + + $ #.B + + + + + + P . . . . . . . . . . . . . . [ x + + + + + + &.. . . . . . . . . . . . F @ @ @ @ @ @ 8 , . . . . . . . . . - @ @ @ @ @ @ @ @ - u @ @ f . . . . . . . . . . . . . : @ @ @ @ @ @ m q . . . e @ @ @ @ @ @ @ = . . . . . . . . . . . . . . d } @ @ @ @ @ @ @ h . . . . . . . . . ", +". . . . . . . . . . . E + + + Z . . . . . . . . . . . . . . . d s + + + + + + + + s H I G + + + + + 9 R . . . . . . . . . ^ $ *.. y I G + + + + + ' . . . . . . . . . . . . t @ @ @ @ @ @ @ q . . . . . . . . . u @ @ @ @ @ @ @ 8 , = @ @ m | . . . . . . . . . . . . 0 @ @ @ @ @ @ F d . . . = @ @ @ @ @ @ @ 2 . . . . . . . . . . . . . . 2 @ @ @ @ @ @ @ 4 d . . . . . . . . . ", +". . . . . . . . . . d _ + + + ... . . . . . . . . . . . . . . . [ U G + + + + + + $ . s + + + + + + + O l p . . . . . . 3 &.+ ~.3 [ L + + + + + + L . . . . . . . . . . . . F @ @ @ @ @ @ @ | . . . . . . . . d } @ @ @ @ @ @ @ 2 . | @ @ @ } , . . . . . . . . . . . h @ @ @ @ @ @ h . . . . f @ @ @ @ @ @ @ t . . . . . . . . . . . . . u @ @ @ @ @ @ @ f d . . . . . . . . . . ", +". . . . . . . . . . d -.+ + + &.. . . . . . . . . . . . . . . . . @.x + + + + + + s . @.-.+ + + + + + + 9 '.; Q y 3 ^ Y E B + s . y I G + + + + + B *.. . . . . . . . . . . F @ @ @ @ @ @ @ 4 . . . . . . . . h @ @ @ @ @ @ @ } w . , @ @ @ @ ] w . . . . . . . . . d ] @ @ @ @ @ k { . . . . 4 @ @ @ @ @ @ @ m [ . . . . . . . . . . [ = @ @ @ @ @ @ @ t [ . . . . . . . . . . . ", +". . . . . . . . . . N + + + + b Q . . . . . . . . . . . . . . . . . !.;.+ + + + + $ . . W B + + + + + + + + G A _ I b B + + x 3 . d U + + + + + + + /.Z . . ; &.> . . . . [ m @ @ @ @ @ @ @ 8 : . . . . . . 7 @ @ @ @ @ @ @ @ - . . d m @ @ @ @ F , . . . . . . . . h @ @ @ @ @ @ : . . . . [ % @ @ @ @ @ @ @ @ f d . . . . . . . . : ] @ @ @ @ @ @ @ = d . . . . . . . . . . . . ", +". . . . . . . . ) * A + + + + + M Z Q . . . . . . . . . . . . . . . . >.B + + + + s . . d J G + + + + + + + + + + + + + + # N . . . W B + + + + + + + j 9 / B G * . . [ 0 f @ @ @ @ @ @ @ @ @ m e - q 0 7 ] @ @ @ @ @ @ @ 8 : . . . . f @ @ @ @ @ 8 = { . . . . { e @ @ @ @ @ m 7 . . . . , u @ @ @ @ @ @ @ @ @ @ k h q , , , - = F @ @ @ @ @ @ @ t w . . . . . . . . . . . . . . ", +". . . . . . Y n S B + + + + + + + 9 +._ V . . . . . . . . . . . . . . d J + + + + (.. . . { X ;.+ + + + + + + + + + + G x !.. . . . { -.+ + + + + + + + + + j E ) , f k 8 @ @ @ @ @ @ @ @ @ @ @ @ m 8 m @ @ @ @ @ @ @ 8 2 w . . . . . - m @ @ @ @ @ @ } f u u 4 % @ @ @ @ @ F : . . , f k } @ @ @ @ @ @ @ @ @ @ @ @ @ m } } 8 m @ @ @ @ @ @ 8 f : d . . . . . . . . . . . . . . . ", +". . . . . . * + G G B G B B G G G B j G x . . . . . . . . . . . . . . . H L + + + J . . . . d ,.L B + + + + + + + + 9 ' r . . . . . . >.-.+ + + + + + + j S v ^ . | @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ } f 7 w . . . . . . . . - ] m @ @ @ @ @ @ @ @ @ @ @ @ @ 8 = [ . . . - @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ m } 4 7 w . . . . . . . . . . . . . . . . . . ", +". . . . . . r W R l ....c c ..R R R v v 5 . . . . . . . . . . . . . . . . !./ A J K . . . . . . p ,.i x / G + -._ 1 *.. . . . . . . . . N J L B + ;.# P >.^ . . . { z | 7 z z z z | - 7 7 z u u u u = h 7 - q [ . . . . . . . . . . . . . . , h 4 k 8 @ @ @ @ @ 8 F 2 - d . . . . . { z 7 7 z z z z | : 7 7 z u u & & 4 & u = h | q [ . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d H ^ p . . . . . . . . . . y H H Q ^ y . . . . . . . . . . . . . [ H H H y p . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d [ [ { 0 [ [ d d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . { z z z z z z 7 { . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [ % @ @ @ @ @ @ & . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = @ @ @ @ @ @ m w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [ 8 @ @ @ @ @ @ 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . u @ @ @ @ @ @ m 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . , } @ @ @ @ @ @ 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & @ @ @ @ @ @ m - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . , m @ @ @ @ @ @ ] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & @ @ @ @ @ @ m - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . q @ @ @ @ @ @ @ t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ] @ @ @ @ @ @ @ - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . : @ @ @ @ @ @ @ ] [ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ] @ @ @ @ @ @ @ | . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - @ @ @ @ @ @ @ F d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d F @ @ @ @ @ @ m z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - @ @ @ @ @ @ @ } d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [ k @ @ @ @ @ @ @ z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . z @ @ @ @ @ @ @ k [ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d 8 @ @ @ @ @ @ @ = . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . z @ @ @ @ @ @ @ % w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . { } @ @ @ @ @ @ @ u . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . = @ @ @ @ @ @ @ % { . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . w 8 @ @ @ @ @ @ @ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . u @ @ @ @ @ @ @ m { . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . { @ @ @ @ @ @ @ @ e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 @ @ @ @ @ @ @ 8 , . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . , @ @ @ @ @ @ @ @ 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . & @ @ @ @ @ @ @ 8 q . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 @ @ @ @ @ @ @ @ 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . f @ @ @ @ @ @ @ m q . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . q @ @ @ @ @ @ @ @ t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . [ f @ @ @ @ @ @ @ @ 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - @ @ @ @ @ @ @ @ f d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d k @ @ @ @ @ @ @ m : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . | @ @ @ @ @ @ @ @ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d k @ @ @ @ @ @ @ 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . z @ @ @ @ @ @ @ - . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d & @ @ @ @ @ z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d h ] ] & w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . d d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ", +". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . "}; diff --git a/external/mit/xorg/bin/xdm/config/NetBSD.xpm b/external/mit/xorg/bin/xdm/config/NetBSD.xpm new file mode 100644 index 000000000..ee8dc09d2 --- /dev/null +++ b/external/mit/xorg/bin/xdm/config/NetBSD.xpm @@ -0,0 +1,224 @@ +/* XPM */ +static char *NetBSD_new[] = { +/* columns rows colors chars-per-pixel */ +"185 150 68 1", +" c #777777777777", +". c #7AE47AE47AE4", +"X c #F2F267671111", +"o c #F2F269A51488", +"O c #F37E6D801AB6", +"+ c #F3F370701EF0", +"@ c #F3F3732C2379", +"# c #F40376C62939", +"$ c #F4BD79892D01", +"% c #F4F47E17348F", +"& c #F4F480803737", +"* c #F50382273B15", +"= c #F5CC866B41C8", +"- c #F5F5892945C6", +"; c #F5F58D374C52", +": c #F5F58F8F5050", +"> c #F67F9261545E", +", c #F6F696525A68", +"< c #F6F699545EE7", +"1 c #F7939CB96481", +"2 c #F7F79F4968BE", +"3 c #F7F7A1C86C52", +"4 c #F7F7A5A57290", +"5 c #F7F7A8A87721", +"6 c #F8F8A7677535", +"7 c #F8F8A8A87777", +"8 c #F8F8AB797B89", +"9 c #839D839D839D", +"0 c #8B788B788B78", +"q c #93AD93AD93AD", +"w c #9D059D059D05", +"e c #A353A353A353", +"r c #AC09AC09AC09", +"t c #B3F5B3F5B3F5", +"y c #BD82BD82BD82", +"u c #F8F8AF59819E", +"i c #F8F8B19184E4", +"p c #F9C7B63B8CBE", +"a c #F9F9B8B88F8F", +"s c #F9F9BBEA9580", +"d c #FA6BBF309AA8", +"f c #FAE0C1A79E84", +"g c #FAFAC5BBA495", +"h c #FAFAC7C7A8A8", +"j c #FB3ACA93AC87", +"k c #FBEDCE95B2CF", +"l c #FBFBD0FBB68B", +"z c #FC22D4BABC62", +"x c #C493C493C493", +"c c #CC75CC75CC75", +"v c #D465D465D465", +"b c #DCABDCABDCAB", +"n c #FC3BD7D7C141", +"m c #FCF0DA36C4FE", +"M c #FCFCDE59CB57", +"N c #FCFCE120CF4F", +"B c #FDBFE477D4E4", +"V c #FDFDE787D9B9", +"C c #FDFDEA3BDDC8", +"Z c #E540E540E540", +"A c #EC9FEC9FEC9F", +"S c #FE94EEA5E4E8", +"D c #FEFEF0F0E7E7", +"F c #FEFEF3C4ECCD", +"G c #F4CDF4CDF4CD", +"H c #FEFEF758F2AE", +"J c #FF4AF9C2F62C", +"K c none", +/* pixels */ +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJHHHHHHJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJHFBjfi31>;;:;:;,<4phmSHJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKDzd4>$oXXXXoXoXXXXXXXXXXXXX%>8jVKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKSMf2*+OoXXXXXXXXXXXXXXXXXXXXXXXXXXXoO*8zSKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJSMs,%@XXoXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXO%4nFKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJSg1*oXXXXXXXXXXXXXXXXXXXXXXXXoXXOoO@*;<<<<<<<-*OOO-pSKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKFj8*oXXXoXXXXXXXXXXXXXXXXXXXXXXXO-1pjBFKKKKKKKKKKKKKDMju2sMKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJBd>#OXXXXXXXXXXXXXXXXXXXXXXXXXX$:8zSHJKKKKKKKKKKKKKKKKKKKKKJFHKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJDM8-#XXXXXXXXXXXXXXXXXXXXXXXXXXO%1jVJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKZbKCgJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKFh2&ooXXXXXXXXXXXXXXXXXXXXXXXXXX@3lFKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKc vHjDKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJe qGC@XXXXXXXX#;4dzSKKKKKKKKKKKKKKKKKKKJCmg81*OoXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXO4MKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKb. .xKpoXXXXXXXXXXooO+%>18idhgggggpu3<-%OOoXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX%iSJKKKKHCmkgi4<<=****-<<8ajmVJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKGe 0GS*XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXo*sCJJCMh8:*$@oXXXXXXXXXXXXXoXo@$*-%%$%%;,6ahMDKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKA0 .GKKKKKKKKJKKJJJJJKJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKt yKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKA. 0AKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKt. tKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKZ. 9ZKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKe tKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKb9 9ZKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKe rKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKb. AKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJe rJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKv .bKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKDMBSSSSSSSSSBJKKKKKKKKKKKKSMBSSDSSSSSSCMDKKKKKKKKKKKKq eKKKKKKKKKKKKKKKKKKKKKKJGGAZZZZZZAZGGKKKKKKKKKKKKKKKKKKKKKKActwq00qercZJKKKKKKKKKGGGGZZZZZZZZAGGKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKK8@#$$$$$$$$$#kKKKKKKKKKKKK8##$$$$$$$$$$#pKKKKKKKKKKKKv. 9vKKKKKKKKKKKKKKKKyew0009009...9....90wtcAKKKKKKKKKKKKKKGvw9 . 90rGKvweq0009099..9.....900wrcbGKKKKKKKKKKKKKKKKKKK", +"KKKKKK8#OooXoXXXXXX,HKKKKKKKKKKKu#OooXXXoXXoO#sKKKKKKKKKKKKGq wKKKKKKKKKKKKKKKK9 9eZKKKKKKKKKKKAr .0999 vKt . .0evGKKKKKKKKKKKKKKKK", +"KKKKKKJCz8@XoXXXXXXOhKKKKKKKKKKKJCzp$oXXXXo,jCJKKKKKKKKKKKKKc. vKKKKKKKKKKKKKKKctq 0rtrw .yGKKKKKKKKA0 rZKKJbe tKZyr. qrrtre0 0yGKKKKKKKKKKKKKK", +"KKKKKKKKKKB@XXXXXXXX$VKKKKKKKKKKKKKKD%XXXo8JKKKKKKKKKKKKKKKKGxxyyybKKKKKKKKKKKKKKKKKKv. .ZKKKJGr.. rKKKKKKKA0 .cKKKKKKJc. eKKKKb. wJKKKKJJAce. 0vJKKKKKKKKKKKK", +"KKKKKKKKKKK3XXXXXXXXo,JKKKKKKKKKKKKKK8XXXOMKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK0 9ZKKKKKGy. ..cKKKKKKt rKKKKKKKKKy. qGKKKGe yKKKKKKKKKGbw .tGKKKKKKKKKKK", +"KKKKKKKKKKKsXXXXXXXXXXsJKKKKKKKKKKKKKjOXX*SKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKw 9AKKKKKKGe qKKKKKZ. bKKKKKKKKKGe qGKKKKr yKKKKKKKKKKKGt9 rGKKKKKKKKKK", +"KKKKKKKKKKKsXXXXXXXXXXOjKKKKKKKKKKKKKmOXX;HKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKw .ZKKKKKKKZ ZKKKKy .GKKKKKKKKKKb9 9AKKKKt xKKKKKKKKKKKKKv9 tGKKKKKKKKK", +"KKKKKKKKKKKsXXXXXXXXXXX$mKKKKKKKKKKKKB@XXX8KKKKKKKKKKKKw 9AKKKKKKKKe xKKKG0 qAKKKKKKKKKKKGJKKKKKy yKKKKKKKKKKKKKKKb9 rKKKKKKKK", +"KKKKKKKKKKKsXXXKC-XXXXXXXX7JKKKKKKKKKD$XX8KKKKKKKKKKKKKKKKKKKKKKKKKKKK4oX7KKKKKKKKKKKKw 9AKKKKKKKKw vKKKG0 eGKKKKKKKKKKKKKKKKKy xKKKKKKKKKKKKKKKKe .bKKKKKKK", +"KKKKKKKKKKKdXXXJKB%XXXXXXXoaJKKKKKKKKK%XXpKKKKKKKKKKKKKKKKKKKKKKKKKKHpoXX8KKKKKKKKKKKKw 9ZKKKKKKKG0 .GKKKKw wAKKKKKKKKKKKKKKKKx yKKKKKKKKKKKKKKKKv rKKKKKKK", +"KKKKKKKKKKKsXXoJKKkOXXXXXXo@jKKKKKKKKK%XopKKKKKKKKKKKKKKKKKKKKKKKKKF5OXXX7KKKKKKKKKKKKe .AKKKKKKKv .yKKKKKy qvGKKKKKKKKKKKKKKy yKKKKKKKKKKKKKKKKA0 0GKKKKKK", +"KKKKKKKKKKKsXXXJKKKpoXXXXXXX#MKKKKKKKK%oXpKKKKKKKKKVjs8djVKKKKKKKKB;oXXXX8KKKKKKKKKKKKw 9AKKKKKKGq wGKKKKKZ. wZKKKKKKKKKKKKKy xKKKKKKKKKKKKKKKKGw ZKKKKKK", +"KKKKKKKKKKKsXXXJKKKJ4XXXXXXXX#CKKKKKKK%XXpKKKKKKSs&XoXXoXo%hJKKKB4oXXXXXXO>>>>,8JKKKKKw 9ZKKKKKZw .tGKKKKKKKr eZKKKKKKKKKKKy yKKKKKKKKKKKKKKKKKt xKKKKKK", +"KKKKKKKKKKKdXXoJKKKKS:XXXXXXXX;SKKKKKK%oXpKKKKKl&oXXXOOoXXXoC@OoXXXXXXXXOOoOo,KKKKKKw 9xGKKKKKKKKKKKb. 0vKKKKKKKKy xKKKKKKKKKKKKKKKKKv rKKKKKK", +"KKKKKKKKKKKdXXXJKKKKKKzOXXXXXXXo8KKKKK%oXpKKKdOoXX+kKKKKgoXXXosljg$XXXXXX;jjjjjVKKKKKKw .evKKKKKKKKKKb0 .yKKKKKKKy yKKKKKKKKKKKKKKKKKv rKKKKKK", +"KKKKKKKKKKKdXXoJKKKKKKKdOXXXXXXXosKKKK%XXpKKmOXXXopKKKKKV$XXXX$JKJ-XXXXXXdKKKKKKKKKKKKe ecvcxr0 .eZKKKKKKKKKAe tKKKKKKx yKKKKKKKKKKKKKKKKKv eKKKKKK", +"KKKKKKKKKKKsoXXJKKKKKKKJ5ooXXXXXXOlKKK%XXpKJ;XXXX$BKKKKKB$XXXXXBKH-oXXXXXdKKKKKKKKKKKKw .ZKKKKKGy0. 0ZKKKKKKKKKGx0 .vKKKKKy yKKKKKKKKKKKKKKKKKv rKKKKKK", +"KKKKKKKKKKKsXXoJKKKKKKKKF:XXXXXXXX$mKK&XopKzooXXoOpMMMMjHJ-XXXXXX*KKKKKKKKKKKKw cKKKKKKKKG0 rKv 0ZKKKKKKKKKKKc xKKKKt wKKKKKKKKKKKKKy. .eGKKKKKKKKKK", +"KKKKKKKKKKJ#XXX8KKKKKKKKKKKKKKKKKS-XXXXXXpKS$oXXXXXXO3MFHJHB2OXsKH;XXXXXXoMKKKKKKKKKKKq rKKKKKKKKy 0AKZ wAKKKKKKKKKGw qGKKKKe .GKKKKKKKKKKGy .eJKKKKKKKKKKK", +"KKKKKKKKKKBXXXX=FKKKKKKKKKKKKKKKKKM#XXXXXpKKfoXXXXXXoXX%;:*OXX=JKJ2XXXXXXX*zJKM8CKKKKG0 .vKKKKKKc. vKKJ. qZKKKKKKKKx. .bKKKKGq eGKKKKKKKKbw .xGKKKKKKKKKKKK", +"KKKKKKKKDj%XXXXX,lFKKKKKKKKKKKKKKKKjOXXXXpKKK6oXXXXXXXXXXXooX*BKKKfoXXXXXXXO@#oojKKGbe .tvZbcw qvKKKKe .yAKKKKGt. 9cKKKJZy 0xZZZZvtq 9eZKKKKKKKKKKKKKK", +"KKKKKKB:%OXXXXXXoO%-sKKKKKKKKKKKKKKJ8XXXX4KKKH8OXXXXXXXXXXXX=MKKKKD%XXXXXXXXXXO3DZw0.. .. 0tAKKKKKv. 9ette0. qvKKZeq9 .999. 0rbGKKKKKKKKKKKKKKK", +"KKKKKKjoooooOOoooooo=KKKKKKKKKKKKKKKH*XXX4KKKKJl=OXXXXXXooO3CKKKKKKk#XXoXXXoo%gJKv. ... . . ...0rcAKKKKKKKJvw. . .0xGKKKc .... ... . .0rcAKKKKKKKKKKKKKKKKKK", +"KKKKKKSdhhhhzzhhhhhgkKKKKKKKKKKKKKKKKm#%4SKKKKKKJz8-#oo#;uBKKKKKKKKKB8*OX@*3jFKKKAcccccccbbccxyyyyyxcvZGKKKKKKKKKKKKKKAxrq9 9qtvGKKKKKGxccccvcvbcccyyrerryyyvZGKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKFHJKKKKKKKKKKJHFFHJKKKKKKKKKKKKKJFFFJJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKGGGGZGGGJKKKKKKKKKKKKKKKKKKKKKKKKJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKGxxxxxxxAKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKG9 rKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKy .ZKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKA9 eKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKy .bKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKA9 eKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKt .vKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKZ. wKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKt vKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKZ wJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKe vKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKb. qGKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKe .cKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKb qGKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKGw .cKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKv. 9GKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKGw xKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKc 0GKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJ0 yKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKx 9AKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKG0 yKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKx 9AKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKA0 tKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKy .AKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKA. .tKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKt. 9ZKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKA. eJKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKr 9ZKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKZ. eKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKr .bKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKZ. .eKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKGe bKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKb eGKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKq bKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKv. rKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKq rKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKc .vKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKGt .xKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJcewrZKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKJGKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK", +"KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK" +}; diff --git a/external/mit/xorg/bin/xdm/config/Xresources.cpp b/external/mit/xorg/bin/xdm/config/Xresources.cpp new file mode 100644 index 000000000..f408834f0 --- /dev/null +++ b/external/mit/xorg/bin/xdm/config/Xresources.cpp @@ -0,0 +1,108 @@ +! +! +! +! +! + +Xcursor.theme: whiteglass + +#define BS \ /* cpp can be trickier than m4 */ +#define NLBS \n\ /* don't remove these comments */ +xlogin*login.translations: #override BS + CtrlR: abort-display()NLBS + F1: set-session-argument(failsafe) finish-field()NLBS + Delete: delete-character()NLBS + Left: move-backward-character()NLBS + Right: move-forward-character()NLBS + Home: move-to-begining()NLBS + End: move-to-end()NLBS + CtrlKP_Enter: set-session-argument(failsafe) finish-field()NLBS + KP_Enter: set-session-argument() finish-field()NLBS + CtrlReturn: set-session-argument(failsafe) finish-field()NLBS + Return: set-session-argument() finish-field() + +xlogin*greeting: Welcome to CLIENTHOST +xlogin*namePrompt: \040\040\040\040\040\040\040Login: +xlogin*fail: Login incorrect + +XHASHif WIDTH > 800 +xlogin*greetFont: -adobe-helvetica-bold-o-normal-*-18-*-*-*-*-*-iso8859-1 +xlogin*font: -adobe-helvetica-medium-o-normal-*-14-*-*-*-*-*-iso8859-1 +xlogin*promptFont: -adobe-helvetica-medium-r-normal-*-14-*-*-*-*-*-iso8859-1 +xlogin*failFont: -adobe-helvetica-medium-r-normal-*-14-*-*-*-*-*-iso8859-1 +xlogin*greetFace: Serif-24:bold:italic +xlogin*face: Helvetica-14 +xlogin*promptFace: Helvetica-14:bold +xlogin*failFace: Helvetica-14:bold +XHASHelse +xlogin*greetFont: -adobe-helvetica-bold-o-normal--17-120-100-100-p-92-iso8859-1 +xlogin*font: -adobe-helvetica-medium-r-normal--12-120-75-75-p-67-iso8859-1 +xlogin*promptFont: -adobe-helvetica-bold-r-normal--12-120-75-75-p-70-iso8859-1 +xlogin*failFont: -adobe-helvetica-bold-o-normal--14-140-75-75-p-82-iso8859-1 +xlogin*greetFace: Serif-18:bold:italic +xlogin*face: Helvetica-12 +xlogin*promptFace: Helvetica-12:bold +xlogin*failFace: Helvetica-14:bold +XHASHendif + +XHASHifdef COLOR +xlogin*borderWidth: 1 +xlogin*frameWidth: 5 +xlogin*innerFramesWidth: 2 +xlogin*shdColor: grey30 +xlogin*hiColor: grey90 +xlogin*background: grey +!xlogin*foreground: darkgreen +xlogin*greetColor: Blue3 +xlogin*failColor: red +*Foreground: black +*Background: #fffff0 +XHASHelse +xlogin*borderWidth: 3 +xlogin*frameWidth: 0 +xlogin*innerFramesWidth: 1 +xlogin*shdColor: black +xlogin*hiColor: black +XHASHendif +#ifdef XPM +XHASHif PLANES >= 8 +XHASHif 1 +! XDM has no support for images with alpha channel, so we precomputed a +! NetBSD logo with fixed background and use it here. If you change this +! file to use another background colour, you need to create a new logo +! xpm file. This can be done with netpbm from pkgsrc: +! +! pngtopnm -mix -background grey NetBSD-flag.png | pnmtoxpm > NetBSD-flag.xpm +! +! (all files in BITMAPDIR) +! +xlogin*logoFileName: BITMAPDIR/**//NetBSD-flag1.xpm +xlogin*useShape: false +XHASHelse +! +! This is the stock method, using a coloured xpm file and a b&w mask xpm. +! Antialiased borders look ugly this way, but it works with arbitrary +! background colours. +! +xlogin*logoFileName: BITMAPDIR/**//XDM_PIXMAP +xlogin*useShape: true +XHASHendif +XHASHelse +xlogin*logoFileName: BITMAPDIR/**//XDM_BWPIXMAP +xlogin*useShape: true +XHASHendif +xlogin*logoPadding: 10 +#endif /* XPM */ + +XConsole.text.geometry: 480x130 +XConsole.verbose: true +XConsole*iconic: true +XConsole*font: fixed + +Chooser*geometry: 700x500+300+200 +Chooser*allowShellResize: false +Chooser*viewport.forceBars: true +Chooser*label.font: *-new century schoolbook-bold-i-normal-*-240-* +Chooser*label.label: XDMCP Host Menu from CLIENTHOST +Chooser*list.font: -*-*-medium-r-normal-*-*-230-*-*-c-*-iso8859-1 +Chooser*Command.font: *-new century schoolbook-bold-r-normal-*-180-* diff --git a/external/mit/xorg/bin/xdpyinfo/Makefile b/external/mit/xorg/bin/xdpyinfo/Makefile new file mode 100644 index 000000000..bf65de941 --- /dev/null +++ b/external/mit/xorg/bin/xdpyinfo/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.6 2013/09/29 14:34:30 christos Exp $ + +.include + +# XXX add composite lib support + +PROG= xdpyinfo + +CPPFLAGS+=-I${X11SRCDIR.${PROG}}/../include -DHAVE_CONFIG_H + +LDADD+= -lXtst -lXi -lXrender -lXinerama -lXcomposite \ + -lXxf86vm -lXxf86dga -lXxf86misc -lXext -lX11 \ + -lxcb -lX11-xcb +DPADD+= ${LIBXTST} ${LIBXI} ${LIBXRENDER} ${LIBXINERAMA} ${LIBXCOMPOSITE} \ + ${LIBXXF86VM} ${LIBXXF86DGA} ${LIBXXF86MISC} ${LIBXEXT} ${LIBX11} \ + ${LIBXCB} ${LIBX11XCB} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +COPTS.xdpyinfo.c+= -Wno-error # xf86vmstr.h + +.include +.include diff --git a/external/mit/xorg/bin/xdriinfo/Makefile b/external/mit/xorg/bin/xdriinfo/Makefile new file mode 100644 index 000000000..dfcd45b4d --- /dev/null +++ b/external/mit/xorg/bin/xdriinfo/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xdriinfo + +SRCS= xdriinfo.c + +#LSC: No pthreads on MINIX! +LDADD+= -lGL -lXext -lX11 +DPADD+= ${LIBGL} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/xedit/Makefile b/external/mit/xorg/bin/xedit/Makefile new file mode 100644 index 000000000..98af91e7a --- /dev/null +++ b/external/mit/xorg/bin/xedit/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +SUBDIR= lisp mp re .WAIT xedit modules + +.include diff --git a/external/mit/xorg/bin/xedit/Makefile.inc b/external/mit/xorg/bin/xedit/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/bin/xedit/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/bin/xedit/lisp/Makefile b/external/mit/xorg/bin/xedit/lisp/Makefile new file mode 100644 index 000000000..eb4991c61 --- /dev/null +++ b/external/mit/xorg/bin/xedit/lisp/Makefile @@ -0,0 +1,29 @@ +# $NetBSD: Makefile,v 1.3 2011/08/11 23:15:35 joerg Exp $ + +MKPRIVATELIB= yes + +.include + +LIB= lisp +SRCS= bytecode.c core.c debugger.c format.c hash.c helper.c \ + io.c lisp.c math.c package.c pathname.c read.c \ + regex.c require.c stream.c string.c struct.c time.c \ + write.c xedit.c + +CPPFLAGS+= -DLISP -DLISPDIR=\"${X11LIBDIR}/xedit/lisp\" \ + -I${X11SRCDIR.xedit}/lisp/mp \ + -I${X11SRCDIR.xedit}/lisp/re \ + -I${X11SRCDIR.xedit} \ + -I${X11SRCDIR.xc}/programs + +.if defined(HAVE_PCC) +# code uses gcc-specific "label as values" feature +CPPFLAGS+= -DANSI_SOURCE +.endif + +.PATH: ${X11SRCDIR.xedit}/lisp + +CWARNFLAGS.clang+= -Wno-format + +.include +.include diff --git a/external/mit/xorg/bin/xedit/modules/Makefile b/external/mit/xorg/bin/xedit/modules/Makefile new file mode 100644 index 000000000..d1dedc279 --- /dev/null +++ b/external/mit/xorg/bin/xedit/modules/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xedit}/lisp/modules + +FILESDIR=${X11LIBDIR}/xedit/lisp +FILES= indent.lsp lisp.lsp syntax.lsp xedit.lsp + +SUBDIR= progmodes + +.include +.include +.include diff --git a/external/mit/xorg/bin/xedit/modules/progmodes/Makefile b/external/mit/xorg/bin/xedit/modules/progmodes/Makefile new file mode 100644 index 000000000..b71716e44 --- /dev/null +++ b/external/mit/xorg/bin/xedit/modules/progmodes/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xedit}/lisp/modules/progmodes + +FILESDIR=${X11LIBDIR}/xedit/lisp/progmodes +FILES= c.lsp html.lsp imake.lsp lisp.lsp make.lsp man.lsp patch.lsp \ + rpm.lsp sgml.lsp sh.lsp xconf.lsp xlog.lsp xrdb.lsp + +.include +.include diff --git a/external/mit/xorg/bin/xedit/mp/Makefile b/external/mit/xorg/bin/xedit/mp/Makefile new file mode 100644 index 000000000..09e8461b0 --- /dev/null +++ b/external/mit/xorg/bin/xedit/mp/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +MKPRIVATELIB= yes + +.include + +LIB= mp +SRCS= mp.c mpi.c mpr.c + +.PATH: ${X11SRCDIR.xedit}/lisp/mp + +.include +.include diff --git a/external/mit/xorg/bin/xedit/re/Makefile b/external/mit/xorg/bin/xedit/re/Makefile new file mode 100644 index 000000000..d520e0559 --- /dev/null +++ b/external/mit/xorg/bin/xedit/re/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +MKPRIVATELIB= yes + +.include + +LIB= re +SRCS= re.c rec.c reo.c + +.PATH: ${X11SRCDIR.xedit}/lisp/re + +.include +.include diff --git a/external/mit/xorg/bin/xedit/xedit/Makefile b/external/mit/xorg/bin/xedit/xedit/Makefile new file mode 100644 index 000000000..84d883760 --- /dev/null +++ b/external/mit/xorg/bin/xedit/xedit/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.4 2013/05/31 06:24:05 mrg Exp $ + +.include + +PROG= xedit +SRCS= xedit.c commands.c util.c ispell.c options.c hook.c lisp.c \ + tags.c hash.c + +CPPFLAGS+= -I${X11SRCDIR.xedit}/lisp/re + +APPDEFS= Xedit Xedit-color + +.for _L in lisp mp re +LIB.${_L}!= cd ${.CURDIR}/../${_L} && ${PRINTOBJDIR} +DPADD+= ${LIB.${_L}}/lib${_L}.a +LDADD+= -L${LIB.${_L}} -l${_L} +.endfor + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xev/Makefile b/external/mit/xorg/bin/xev/Makefile new file mode 100644 index 000000000..fe239d12f --- /dev/null +++ b/external/mit/xorg/bin/xev/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 06:47:07 mrg Exp $ + +.include + +PROG= xev + +LDADD+= -lX11 -lXrandr +DPADD+= ${LIBX11} ${LIBXRANDR} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xeyes/Makefile b/external/mit/xorg/bin/xeyes/Makefile new file mode 100644 index 000000000..670370138 --- /dev/null +++ b/external/mit/xorg/bin/xeyes/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xeyes +SRCS= xeyes.c Eyes.c transform.c + +LDADD+= -lXmu -lXt -lSM -lICE -lXext -lX11 -lm +DPADD+= ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/xf86dga/Makefile b/external/mit/xorg/bin/xf86dga/Makefile new file mode 100644 index 000000000..d924e48b3 --- /dev/null +++ b/external/mit/xorg/bin/xf86dga/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2010/05/22 02:40:40 mrg Exp $ + +.include + +PROG= dga + +LDADD+= -lXxf86dga -lXext -lX11 +DPADD+= ${LIBXXF86DGA} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.xf86dga} + +COPTS.dga.c+= -Wno-error # XXX xf86dga.h + +.include +.include diff --git a/external/mit/xorg/bin/xfd/Makefile b/external/mit/xorg/bin/xfd/Makefile new file mode 100644 index 000000000..5b97b7683 --- /dev/null +++ b/external/mit/xorg/bin/xfd/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 07:22:21 mrg Exp $ + +.include + +PROG= xfd +SRCS= xfd.c grid.c + +CPPFLAGS+= -DXRENDER -DXFREE86_FT2 -I${DESTDIR}${X11INCDIR}/freetype2 + +APPDEFS=Xfd + +LDADD+= -lXft -lfontconfig -lfreetype -lexpat -lXrender +DPADD+= ${LIBXFT} ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} ${LIBXRENDER} +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xfindproxy/Makefile b/external/mit/xorg/bin/xfindproxy/Makefile new file mode 100644 index 000000000..c30117404 --- /dev/null +++ b/external/mit/xorg/bin/xfindproxy/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xfindproxy + +LDADD+= -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/xfontsel/Makefile b/external/mit/xorg/bin/xfontsel/Makefile new file mode 100644 index 000000000..984b9a3ea --- /dev/null +++ b/external/mit/xorg/bin/xfontsel/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 07:22:21 mrg Exp $ + +.include + +PROG= xfontsel +SRCS= xfontsel.c ULabel.c + +APPDEFS=XFontSel + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xfs/Makefile b/external/mit/xorg/bin/xfs/Makefile new file mode 100644 index 000000000..54f6059f5 --- /dev/null +++ b/external/mit/xorg/bin/xfs/Makefile @@ -0,0 +1,69 @@ +# $NetBSD: Makefile,v 1.9 2013/05/31 01:50:25 mrg Exp $ + +.include + +PROG= xfs + +XFSDIR= ${X11SRCDIR.${PROG}} + +.PATH: ${XFSDIR}/man + +.PATH: ${XFSDIR}/difs +SRCS= atom.c charinfo.c difsutils.c dispatch.c events.c \ + extensions.c fontinfo.c fonts.c globals.c initfonts.c main.c \ + resource.c swaprep.c swapreq.c tables.c + +.PATH: ${XFSDIR}/os +SRCS+= access.c config.c connection.c daemon.c error.c io.c osglue.c \ + osinit.c utils.c waitfor.c xfstrans.c + +CPPFLAGS+= -I${XFSDIR}/include \ + -I${DESTDIR}${X11INCDIR}/X11/FS \ + -I${X11SRCDIR.libXfont}/include \ + -I${X11SRCDIR.libXfont}/bitmap \ + -I${XFSDIR}/../include \ + -DHAVE_DAEMON + +CONN_DEFINES= ${X11FLAGS.CONNECTION} -DFONT_t -DTRANS_SERVER \ + -DTRANS_REOPEN -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT + +XFSCONFIGDIR= ${X11ETCDIR}/fs + +CPPFLAGS.initfonts.c= -DFONT_PCF -DFONT_FS -DFONT_SPEEDO +CPPFLAGS.connection.c= ${CONN_DEFINES} -DBSD44SOCKETS \ + ${X11FLAGS.OS_DEFINES} +CPPFLAGS.xfstrans.c= ${CONN_DEFINES} -DBSD44SOCKETS \ + ${X11FLAGS.OS_DEFINES} +CPPFLAGS.utils.c= -DXFSPIDDIR=\"/var/run\" +CPPFLAGS.io.c= ${CONN_DEFINES} +CPPFLAGS.waitfor.c= ${CONN_DEFINES} +CPPFLAGS.error.c= -DUSE_SYSLOG +CPPFLAGS.osglue.c= ${CONN_DEFINES} \ + ${X11FLAGS.OS_DEFINES} +CPPFLAGS.config.c= ${CONN_DEFINES} +# XXX +CPPFLAGS.xfstrans.c+= -Wno-error + +X11EXTRAMANDEFS+= -e 's%__configfilepath__%${XFSCONFIGDIR}/config%g; \ + s%__configfiledesc__%the default file,%g' + + +.PATH: ${XFSDIR}/config +BUILDSYMLINKS= config.cpp fsconfig.cpp +CPPSCRIPTS= fsconfig +CPPSCRIPTFLAGS= -DDEFAULTFONTPATH=${X11FONTDIR}/misc/,${X11FONTDIR}/Type1/,${X11FONTDIR}/75dpi/,${X11FONTDIR}/100dpi/ \ + -DFSERRORS=/var/log/xfs.log -D__appmansuffix__=1 + +CONFIGFILES= fsconfig +FILESNAME= config +FILESDIR= ${XFSCONFIGDIR} + + +LDADD+= -lXfont -lfontenc -lXfontcache -lXext -lX11 -lfreetype -lm -lz +DPADD+= ${LIBXFONT} ${LIBFONTENC} ${LIBXFONTCACHE} ${LIBXEXT} ${LIBX11} \ + ${LIBFREETYPE} ${LIBM} ${LIBZ} + +.PATH: ${XFSDIR} + +.include +.include diff --git a/external/mit/xorg/bin/xfsinfo/Makefile b/external/mit/xorg/bin/xfsinfo/Makefile new file mode 100644 index 000000000..efe55d657 --- /dev/null +++ b/external/mit/xorg/bin/xfsinfo/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 07:22:21 mrg Exp $ + +.include + +PROG= xfsinfo + +LDADD+= -lFS +DPADD+= ${LIBFS} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xfwp/Makefile b/external/mit/xorg/bin/xfwp/Makefile new file mode 100644 index 000000000..e2849f09e --- /dev/null +++ b/external/mit/xorg/bin/xfwp/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xfwp +SRCS= xfwp.c misc.c pm.c transport.c io.c + +CPPFLAGS.transport.c= -DBSD44SOCKETS + +LDADD+= -lICE +DPADD+= ${LIBICE} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/xgamma/Makefile b/external/mit/xorg/bin/xgamma/Makefile new file mode 100644 index 000000000..86b8a5e57 --- /dev/null +++ b/external/mit/xorg/bin/xgamma/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 07:22:21 mrg Exp $ + +.include + +PROG= xgamma + +LDADD+= -lXxf86vm -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXXF86VM} ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xgc/Makefile b/external/mit/xorg/bin/xgc/Makefile new file mode 100644 index 000000000..97909c67c --- /dev/null +++ b/external/mit/xorg/bin/xgc/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.4 2013/05/31 07:22:21 mrg Exp $ + +.include + +PROG= xgc +SRCS= dashlist.c planemask.c getfile.c tests.c text.c \ + choice.c main.c interpret.c record.c testfrac.c gram.y lex.l + +YHEADER=1 +CPPFLAGS+=-I. -I${X11SRCDIR.${PROG}} + +APPDEFS=Xgc Xgc-color + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXPM} \ + ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xhost/Makefile b/external/mit/xorg/bin/xhost/Makefile new file mode 100644 index 000000000..04c2fd785 --- /dev/null +++ b/external/mit/xorg/bin/xhost/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 07:22:21 mrg Exp $ + +.include + +PROG= xhost + +CPPFLAGS+=${X11FLAGS.CONNECTION} -DBSD44SOCKETS + +LDADD+= -lXmuu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xinit/Makefile b/external/mit/xorg/bin/xinit/Makefile new file mode 100644 index 000000000..b2330848b --- /dev/null +++ b/external/mit/xorg/bin/xinit/Makefile @@ -0,0 +1,37 @@ +# $NetBSD: Makefile,v 1.6 2011/08/03 02:56:29 mrg Exp $ + +.include + +PROG= xinit +MAN= xinit.1 startx.1 + +XINITDIR= ${X11ETCDIR}/xinit + +CPPFLAGS+= ${X11FLAGS.CONNECTION} -DBINDIR=\"${X11BINDIR}\" \ + -DRETSIGTYPE=void + +CPPSCRIPTS= startx xinitrc +CPPSCRIPTFLAGS_xinitrc= -DXINITDIR=${XINITDIR} -DBINDIR=${X11BINDIR} \ + -DSHELL_CMD=/bin/sh -DXRDB=xrdb -DXMODMAP=xmodmap \ + -DTWM=twm -DXCLOCK=xclock -DXTERM=${X11BINDIR}/xterm +CPPSCRIPTFLAGS_startx= -DXINITDIR=${XINITDIR} -DBINDIR=${X11BINDIR} \ + -DSHELL_CMD=/bin/sh -DXAUTH=xauth -DXINIT=xinit \ + -DXSERVER=${X11BINDIR}/X -DXTERM=${X11BINDIR}/xterm \ + -DHAS_COOKIE_MAKER \ + -DMK_COOKIE='dd if=/dev/urandom bs=16 count=1 2>/dev/null | hexdump -e \\"%08x\\"' + +SCRIPTS= startx +CONFIGFILES= xinitrc +FILESDIR= ${XINITDIR} + +LDADD+= -lXmuu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +X11EXTRAMANDEFS=-D__xinitdir__=${XINITDIR} +X11MANCPP= yes + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xinput/Makefile b/external/mit/xorg/bin/xinput/Makefile new file mode 100644 index 000000000..d308d65da --- /dev/null +++ b/external/mit/xorg/bin/xinput/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.5 2011/05/23 17:44:41 dsl Exp $ + +.include + +PROG= xinput +SRCS= buttonmap.c feedback.c list.c property.c setint.c setmode.c \ + setptr.c state.c test.c xinput.c + +CPPFLAGS+= -DVERSION='"1.4.0"' + +LDADD+= -lXi -lX11 -lm +DPADD+= ${LIBXI} ${LIBM} +.PATH: ${X11SRCDIR.${PROG}}/src +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xkbcomp/Makefile b/external/mit/xorg/bin/xkbcomp/Makefile new file mode 100644 index 000000000..de9016815 --- /dev/null +++ b/external/mit/xorg/bin/xkbcomp/Makefile @@ -0,0 +1,33 @@ +# $NetBSD: Makefile,v 1.9 2011/08/11 23:15:35 joerg Exp $ + +.include +.include "Makefile.common" + +PROG= xkbcomp +SRCS= xkbcomp.c xkbscan.c expr.c vmod.c indicators.c misc.c \ + keymap.c keycodes.c keytypes.c compat.c action.c alias.c \ + symbols.c geometry.c xkbpath.c listing.c \ + xkbparse.y parseutils.c utils.c + +CPPFLAGS.xkbpath.c= -DDFLT_XKB_CONFIG_ROOT=\"${XKBROOTDIR}\" + +CPPFLAGS+= -I${X11SRCDIR.${PROG}} -I${X11SRCDIR.${PROG}}/../include -DHAVE_CONFIG_H +CPPFLAGS.geometry.c= -Wno-error # XXX +COPTS.xkbscan.c+= -Wno-stack-protector + +FILESDIR=${XKBROOTDIR} +FILES= README + +SYMLINKS+= ${BINDIR}/xkbcomp ${XKBROOTDIR}/xkbcomp +SYMLINKS+= ${XKBDATADIR} ${XKBCOMPDIR} + +LDADD+= -lxkbfile -lXext -lX11 +DPADD+= ${LIBXKBFILE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +CWARNFLAGS.clang+= -Wno-parentheses + +.include +.include diff --git a/external/mit/xorg/bin/xkbcomp/Makefile.common b/external/mit/xorg/bin/xkbcomp/Makefile.common new file mode 100644 index 000000000..4ffc392f0 --- /dev/null +++ b/external/mit/xorg/bin/xkbcomp/Makefile.common @@ -0,0 +1,5 @@ +# $NetBSD: Makefile.common,v 1.3 2010/05/20 12:51:16 christos Exp $ + +XKBROOTDIR= ${X11LIBDIR}/xkb +XKBCOMPDIR= ${XKBROOTDIR}/compiled # actually a link to ${XKBDATADIR} +XKBDATADIR= /var/db/xkb # must be writable! diff --git a/external/mit/xorg/bin/xkbevd/Makefile b/external/mit/xorg/bin/xkbevd/Makefile new file mode 100644 index 000000000..99dd7ba0b --- /dev/null +++ b/external/mit/xorg/bin/xkbevd/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.2 2011/02/17 23:50:18 jmcneill Exp $ + +.include + +PROG= xkbevd +SRCS= xkbevd.c cfgscan.c cfgparse.y evargs.c printev.c utils.c + +CPPFLAGS+=-DDFLT_XKB_CONFIG_ROOT='"${X11ROOTDIR}/lib/X11/xkb"' +CPPFLAGS+=-DDFLT_SOUND_CMD='"/usr/bin/audioplay"' +CPPFLAGS+=-DDFLT_SOUND_DIR='"${X11ROOTDIR}/share/sounds/"' +CPPFLAGS+=-I${X11SRCDIR.${PROG}} +LDADD+= -lxkbfile -lXext -lX11 +DPADD+= ${LIBXKBFILE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/xkbprint/Makefile b/external/mit/xorg/bin/xkbprint/Makefile new file mode 100644 index 000000000..d0dd52196 --- /dev/null +++ b/external/mit/xorg/bin/xkbprint/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xkbprint +SRCS= xkbprint.c utils.c psgeom.c + +LDADD+= -lxkbfile -lXext -lX11 +DPADD+= ${LIBXKBFILE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +# XXX +CPPFLAGS.psgeom.c+= -Wno-error + +.include +.include diff --git a/external/mit/xorg/bin/xkbutils/Makefile b/external/mit/xorg/bin/xkbutils/Makefile new file mode 100644 index 000000000..830eb9d6f --- /dev/null +++ b/external/mit/xorg/bin/xkbutils/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +SUBDIR= xkbbell xkbvleds xkbwatch + +.include diff --git a/external/mit/xorg/bin/xkbutils/Makefile.inc b/external/mit/xorg/bin/xkbutils/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/bin/xkbutils/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/bin/xkbutils/Makefile.xkbutils b/external/mit/xorg/bin/xkbutils/Makefile.xkbutils new file mode 100644 index 000000000..46275a151 --- /dev/null +++ b/external/mit/xorg/bin/xkbutils/Makefile.xkbutils @@ -0,0 +1,14 @@ +# $NetBSD: Makefile.xkbutils,v 1.2 2009/11/09 00:36:12 mrg Exp $ + +.include + +CPPFLAGS+=-DXKB + +LDADD+= -lxkbfile -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXKBFILE} ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.xkbutils} + +.include +.include diff --git a/external/mit/xorg/bin/xkbutils/xkbbell/Makefile b/external/mit/xorg/bin/xkbutils/xkbbell/Makefile new file mode 100644 index 000000000..998038a03 --- /dev/null +++ b/external/mit/xorg/bin/xkbutils/xkbbell/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xkbbell + +.include "../Makefile.xkbutils" diff --git a/external/mit/xorg/bin/xkbutils/xkbvleds/Makefile b/external/mit/xorg/bin/xkbutils/xkbvleds/Makefile new file mode 100644 index 000000000..da1f40240 --- /dev/null +++ b/external/mit/xorg/bin/xkbutils/xkbvleds/Makefile @@ -0,0 +1,6 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xkbvleds +SRCS= xkbvleds.c LED.c utils.c + +.include "../Makefile.xkbutils" diff --git a/external/mit/xorg/bin/xkbutils/xkbwatch/Makefile b/external/mit/xorg/bin/xkbutils/xkbwatch/Makefile new file mode 100644 index 000000000..41f5c93f5 --- /dev/null +++ b/external/mit/xorg/bin/xkbutils/xkbwatch/Makefile @@ -0,0 +1,6 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xkbwatch +SRCS= xkbwatch.c LED.c utils.c + +.include "../Makefile.xkbutils" diff --git a/external/mit/xorg/bin/xkill/Makefile b/external/mit/xorg/bin/xkill/Makefile new file mode 100644 index 000000000..bc6d6617a --- /dev/null +++ b/external/mit/xorg/bin/xkill/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xkill + +LDADD+= -lXmuu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/xload/Makefile b/external/mit/xorg/bin/xload/Makefile new file mode 100644 index 000000000..1a8fd8aa2 --- /dev/null +++ b/external/mit/xorg/bin/xload/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.5 2013/06/13 11:25:18 christos Exp $ + +.include + +PROG= xload +SRCS= xload.c get_load.c get_rload.c + +CPPFLAGS+=${X11FLAGS.VERSION} -DHAVE_GETLOADAVG + +APPDEFS=XLoad + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xlogo/Makefile b/external/mit/xorg/bin/xlogo/Makefile new file mode 100644 index 000000000..c44aa9ed2 --- /dev/null +++ b/external/mit/xorg/bin/xlogo/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 08:01:59 mrg Exp $ + +.include + +PROG= xlogo +SRCS= xlogo.c Logo.c RenderLogo.c + +CPPFLAGS+= -DXRENDER -DXFREE86_FT2 -I${DESTDIR}${X11INCDIR}/freetype2 + +APPDEFS=XLogo XLogo-color + +LDADD+= -lXft -lfontconfig -lfreetype -lexpat -lXrender +DPADD+= ${LIBXFT} ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} ${LIBXRENDER} +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xlsatoms/Makefile b/external/mit/xorg/bin/xlsatoms/Makefile new file mode 100644 index 000000000..5eb1def52 --- /dev/null +++ b/external/mit/xorg/bin/xlsatoms/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 08:01:59 mrg Exp $ + +.include + +PROG= xlsatoms + +LDADD+= -lxcb +DPADD+= ${LIBXCB} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xlsclients/Makefile b/external/mit/xorg/bin/xlsclients/Makefile new file mode 100644 index 000000000..f3b3ffab9 --- /dev/null +++ b/external/mit/xorg/bin/xlsclients/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.5 2011/07/23 07:11:48 mrg Exp $ + +.include + +PROG= xlsclients + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR} -DHAVE_STRNLEN + +#BUILDSYMLINKS= xlscli.man xlsclients.man + +LDADD+= -lxcb -lxcb-atom +DPADD+= ${LIBXCB} ${LIBXCB_ATOM} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xlsfonts/Makefile b/external/mit/xorg/bin/xlsfonts/Makefile new file mode 100644 index 000000000..b663bbcef --- /dev/null +++ b/external/mit/xorg/bin/xlsfonts/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xlsfonts +SRCS= xlsfonts.c dsimple.c + +LDADD+= -lXext -lX11 +DPADD+= ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/xmag/Makefile b/external/mit/xorg/bin/xmag/Makefile new file mode 100644 index 000000000..5375f8261 --- /dev/null +++ b/external/mit/xorg/bin/xmag/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 08:01:59 mrg Exp $ + +.include + +PROG= xmag +SRCS= xmag.c CutPaste.c RootWin.c Scale.c + +APPDEFS=Xmag + +CPPFLAGS+= -I${X11SRCDIR.${PROG}}/../include + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lm +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBM} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xman/Makefile b/external/mit/xorg/bin/xman/Makefile new file mode 100644 index 000000000..003565795 --- /dev/null +++ b/external/mit/xorg/bin/xman/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.5 2011/07/23 06:06:40 mrg Exp $ + +.include + +PROG= xman +SRCS= ScrollByL.c handler.c man.c buttons.c help.c \ + search.c globals.c main.c misc.c tkfuncs.c vendor.c + +CPPFLAGS+=${X11FLAGS.VERSION} +CPPFLAGS+=-DHELPFILE=\"${X11LIBDIR}/xman.help\" +CPPFLAGS+=-DMANCONFIGSTYLE_OpenBSD -DMANCONF=\"/etc/man.conf\" +CPPFLAGS+=-DHAVE_CONFIG_H -I${X11SRCDIR.${PROG}}/../include + +APPDEFS=Xman + +FILES= xman.help +FILESDIR=${X11LIBDIR} + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xmessage/Makefile b/external/mit/xorg/bin/xmessage/Makefile new file mode 100644 index 000000000..549b1eaa2 --- /dev/null +++ b/external/mit/xorg/bin/xmessage/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 08:01:59 mrg Exp $ + +.include + +PROG= xmessage +SRCS= xmessage.c makeform.c readfile.c + +APPDEFS=Xmessage Xmessage-color + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/app-defaults + +.include +.include diff --git a/external/mit/xorg/bin/xmh/Makefile b/external/mit/xorg/bin/xmh/Makefile new file mode 100644 index 000000000..aa4ce5a61 --- /dev/null +++ b/external/mit/xorg/bin/xmh/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.6 2011/08/11 23:15:36 joerg Exp $ + +.include + +PROG= xmh +SRCS= bbox.c command.c compfuncs.c folder.c init.c main.c \ + menu.c mlist.c msg.c pick.c popup.c screen.c toc.c \ + tocfuncs.c tocutil.c tsource.c util.c viewfuncs.c \ + miscfuncs.c + +CPPFLAGS+= -I${X11SRCDIR.${PROG}}/../include +CPPFLAGS+= -DHAS_VFORK -DXVENDORNAME=${XVENDORNAME} \ + -DXORG_RELEASE=${XORG_RELEASE} + +APPDEFS=Xmh + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults + +CWARNFLAGS.clang+= -Wno-format + +.include +.include diff --git a/external/mit/xorg/bin/xmkmf/Makefile b/external/mit/xorg/bin/xmkmf/Makefile new file mode 100644 index 000000000..bdc17d768 --- /dev/null +++ b/external/mit/xorg/bin/xmkmf/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +CPPSCRIPTS= xmkmf +CPPSCRIPTFLAGS= -DCONFIGDIRSPEC=\"-I${X11LIBDIR}/config\" +SCRIPTS= ${CPPSCRIPTS} +MAN= xmkmf.1 + +.PATH: ${X11SRCDIR.imake} + +.include +.include diff --git a/external/mit/xorg/bin/xmlwf/Makefile b/external/mit/xorg/bin/xmlwf/Makefile new file mode 100644 index 000000000..edd3c4138 --- /dev/null +++ b/external/mit/xorg/bin/xmlwf/Makefile @@ -0,0 +1,8 @@ +# $NetBSD: Makefile,v 1.4 2012/02/29 20:07:56 tron Exp $ + +.include + +SYMLINKS+= /usr/bin/xmlwf ${BINDIR}/xmlwf + +.include +.include diff --git a/external/mit/xorg/bin/xmodmap/Makefile b/external/mit/xorg/bin/xmodmap/Makefile new file mode 100644 index 000000000..dcb61ad1e --- /dev/null +++ b/external/mit/xorg/bin/xmodmap/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.3 2013/05/30 23:42:19 mrg Exp $ + +.include + +PROG= xmodmap +SRCS= xmodmap.c pf.c handle.c exec.c + +CPPFLAGS+= -I${X11SRCDIR.${PROG}}/../include + +LDADD+= -lX11 +DPADD+= ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/man + +COPTS.handle.c+=-Wno-error # uses XKeycodeToKeysym +COPTS.exec.c+= -Wno-error # uses XKeycodeToKeysym + +.include +.include diff --git a/external/mit/xorg/bin/xmore/Makefile b/external/mit/xorg/bin/xmore/Makefile new file mode 100644 index 000000000..0dc21ad63 --- /dev/null +++ b/external/mit/xorg/bin/xmore/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.4 2010/08/14 09:26:46 mrg Exp $ + +.include + +PROG= xmore +APPDEFS= XMore + +SRCS= xmore.c + +CPPFLAGS+= -DXMORE + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} \ + ${LIBICE} ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults + +.include +.include diff --git a/external/mit/xorg/bin/xprop/Makefile b/external/mit/xorg/bin/xprop/Makefile new file mode 100644 index 000000000..f6e0b2c28 --- /dev/null +++ b/external/mit/xorg/bin/xprop/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.5 2013/05/30 23:42:19 mrg Exp $ + +.include + +PROG= xprop +SRCS= xprop.c dsimple.c clientwin.c + +CPPFLAGS+=-DHAVE_WCHAR_H -DHAVE_WCTYPE_H -DNO_WIDEC_H +CPPFLAGS+=-I${X11SRCDIR.${PROG}}/../include + +LDADD+= -lXmuu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/man + +COPTS.xprop.c+= -Wno-error # uses XKeycodeToKeysym + +.include +.include diff --git a/external/mit/xorg/bin/xrandr/Makefile b/external/mit/xorg/bin/xrandr/Makefile new file mode 100644 index 000000000..a4509aed4 --- /dev/null +++ b/external/mit/xorg/bin/xrandr/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.6 2013/05/31 09:14:18 mrg Exp $ + +.include + +PROG= xrandr + +LDADD+= -lXrandr -lXrender -lXext -lX11 -lm +DPADD+= ${LIBXRANDR} ${LIBXRENDER} ${LIBXEXT} ${LIBX11} ${LIBM} + +CPPFLAGS+= -DVERSION=\"1.4.0\" + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/man + +CWARNFLAGS.clang+= -Wno-parentheses + +.include +.include diff --git a/external/mit/xorg/bin/xrdb/Makefile b/external/mit/xorg/bin/xrdb/Makefile new file mode 100644 index 000000000..f5c66122d --- /dev/null +++ b/external/mit/xorg/bin/xrdb/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.4 2013/07/19 08:29:27 prlw1 Exp $ + +.include + +PROG= xrdb + +CPPFLAGS+=-DCPP="\"/usr/bin/cpp -traditional\"" -DHAS_MKSTEMP # XXX +CPPFLAGS+=-DHAVE_ASPRINTF + +LDADD+= -lXmuu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xrefresh/Makefile b/external/mit/xorg/bin/xrefresh/Makefile new file mode 100644 index 000000000..6188dbd44 --- /dev/null +++ b/external/mit/xorg/bin/xrefresh/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 08:01:59 mrg Exp $ + +.include + +PROG= xrefresh + +LDADD+= -lXext -lX11 +DPADD+= ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xset/Makefile b/external/mit/xorg/bin/xset/Makefile new file mode 100644 index 000000000..47ee3f3d4 --- /dev/null +++ b/external/mit/xorg/bin/xset/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.2 2011/08/03 02:57:23 mrg Exp $ + +.include + +PROG= xset + +CPPFLAGS+=${X11FLAGS.EXTENSION} -DXKB + +LDADD+= -lXmuu -lXt -lSM -lICE -lXxf86misc -lXfontcache -lXext -lX11 +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXXF86MISC} ${LIBXFONTCACHE} +DPADD+= ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xsetmode/Makefile b/external/mit/xorg/bin/xsetmode/Makefile new file mode 100644 index 000000000..8ee787b09 --- /dev/null +++ b/external/mit/xorg/bin/xsetmode/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xsetmode + +LDADD+= -lXi -lXext -lX11 +DPADD+= ${LIBXI} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/xsetpointer/Makefile b/external/mit/xorg/bin/xsetpointer/Makefile new file mode 100644 index 000000000..3654d6f14 --- /dev/null +++ b/external/mit/xorg/bin/xsetpointer/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xsetpointer + +LDADD+= -lXi -lXext -lX11 +DPADD+= ${LIBXI} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/bin/xsetroot/Makefile b/external/mit/xorg/bin/xsetroot/Makefile new file mode 100644 index 000000000..5c8bf8b30 --- /dev/null +++ b/external/mit/xorg/bin/xsetroot/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.4 2013/05/31 09:14:18 mrg Exp $ + +.include + +PROG= xsetroot + +CPPFLAGS+= -DPACKAGE_STRING="\"xsetroot 1.1.1\"" + +LDADD+= -lXmuu -lXt -lSM -lICE -lXext -lX11 -lXcursor +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} ${LIBXCURSOR} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xsetwallpaper/Makefile b/external/mit/xorg/bin/xsetwallpaper/Makefile new file mode 100644 index 000000000..a2b61110e --- /dev/null +++ b/external/mit/xorg/bin/xsetwallpaper/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.2 2012/03/22 23:46:26 joerg Exp $ + +NOMAN= # defined + +.include + +PROG= xsetwallpaper +SRCS= xsetwallpaper.c +SRCS+= stb_image.c + +CPPFLAGS+= -I${NETBSDSRCDIR}/sys -I${NETBSDSRCDIR}/sys/dev/stbi + +SRCPATH= ${X11SRCDIR.local}/programs/xsetwallpaper + +LDADD+= -lm -lX11 +DPADD+= ${LIBM} ${LIBX11} + +.PATH: ${X11SRCDIR.local}/programs/xsetwallpaper +.PATH: ${NETBSDSRCDIR}/sys/dev/stbi + +WARNS= 4 + +CPPFLAGS.stb_image.c+= -Wno-shadow +CPPFLAGS.stb_image.c+= -Wno-sign-compare +CPPFLAGS.stb_image.c+= -Wno-missing-prototypes +CPPFLAGS.stb_image.c+= -Wno-missing-field-initializers + +CWARNFLAGS.clang+= -Wno-missing-noreturn -Wno-self-assign + +.include +.include diff --git a/external/mit/xorg/bin/xsm/Makefile b/external/mit/xorg/bin/xsm/Makefile new file mode 100644 index 000000000..c7af62b13 --- /dev/null +++ b/external/mit/xorg/bin/xsm/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 08:02:00 mrg Exp $ + +.include + +PROG= xsm +SRCS= auth.c choose.c info.c list.c lock.c log.c \ + mainwin.c misc.c popup.c printhex.c prop.c remote.c \ + restart.c save.c saveutil.c signals.c xsm.c xtwatch.c + +XSMDIR= ${X11ETCDIR}/xsm + +CPPFLAGS+=-DHAVE_MKSTEMP -DHAVE_PUTENV +CPPFLAGS.remote.c= -DRSHCMD=\"ssh\" +CPPFLAGS.restart.c= -DSYSTEM_INIT_FILE=\"${XSMDIR}/system.xsm\" + +CONFIGFILES= system.xsm +FILESDIR= ${XSMDIR} + +.PATH: ${X11SRCDIR.${PROG}}/app-defaults +APPDEFS=XSm + +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xstdcmap/Makefile b/external/mit/xorg/bin/xstdcmap/Makefile new file mode 100644 index 000000000..33b5b369e --- /dev/null +++ b/external/mit/xorg/bin/xstdcmap/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 09:14:18 mrg Exp $ + +.include + +PROG= xstdcmap + +CPPFLAGS+= -DPACKAGE_STRING="\"xstdcmap 1.0.3\"" + +LDADD+= -lXmu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xterm/Makefile b/external/mit/xorg/bin/xterm/Makefile new file mode 100644 index 000000000..6d207a5d2 --- /dev/null +++ b/external/mit/xorg/bin/xterm/Makefile @@ -0,0 +1,45 @@ +# $NetBSD: Makefile,v 1.11 2013/05/31 21:40:29 mrg Exp $ + +.include + +PROG= xterm +SRCS= button.c charproc.c charsets.c cursor.c data.c doublechr.c \ + fontutils.c input.c linedata.c menu.c misc.c print.c ptydata.c \ + screen.c scrollback.c scrollbar.c tabs.c util.c xstrings.c \ + TekPrsTbl.c Tekproc.c VTPrsTbl.c main.c charclass.c precompose.c \ + wcwidth.c xutf8.c cachedGCs.c xtermcap.c version.c + +CPPFLAGS+= -I${X11SRCDIR.${PROG}} \ + -I${X11SRCDIR.${PROG}}/../include \ + -I${DESTDIR}${X11INCDIR}/freetype2 \ + -DPROJECTROOT=${X11ROOTDIR} \ + -DHAVE_CONFIG_H \ + -D_REENTRANT \ + ${X11FLAGS.VERSION} + +CWARNFLAGS.clang+= -Wno-empty-body + +APPDEFS=XTerm.ad XTerm-color.ad + +BUILDSYMLINKS= XTerm-col.ad XTerm-color.ad + +#CPPFLAGS+=-DOPT_TRACE +#SRCS+=trace.c + +LDADD+= -lXft -lfontconfig -lfreetype -lexpat -lXrender +DPADD+= ${LIBXFT} ${LIBFONTCONFIG} ${LIBFREETYPE} ${LIBEXPAT} ${LIBXRENDER} +LDADD+= -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 -lcurses -lterminfo -lutil +DPADD+= ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} ${LIBCURSES} ${LIBTERMINFO} ${LIBUTIL} + +SUBDIR= resize uxterm + +.PATH: ${X11SRCDIR.${PROG}} + +COPTS.input.c+= -Wno-error # uses XKeycodeToKeysym + +.include "Makefile.inc" + +.include +.include +.include diff --git a/external/mit/xorg/bin/xterm/Makefile.inc b/external/mit/xorg/bin/xterm/Makefile.inc new file mode 100644 index 000000000..25d661f71 --- /dev/null +++ b/external/mit/xorg/bin/xterm/Makefile.inc @@ -0,0 +1,3 @@ +# $NetBSD: Makefile.inc,v 1.1 2008/10/14 23:37:19 cube Exp $ + +X11EXTRAMANDEFS+= -e 's,__mansuffix__,1,g' diff --git a/external/mit/xorg/bin/xterm/resize/Makefile b/external/mit/xorg/bin/xterm/resize/Makefile new file mode 100644 index 000000000..4a7bc738e --- /dev/null +++ b/external/mit/xorg/bin/xterm/resize/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.4 2013/05/31 21:40:29 mrg Exp $ + +.include + +PROG= resize +SRCS= resize.c xstrings.c version.c + +CPPFLAGS+=-I${X11SRCDIR.xterm} +CPPFLAGS+=-DHAVE_TERMCAP_H + +.PATH: ${X11SRCDIR.xterm} + +LDADD+= -lterminfo +DPADD+= ${LIBTERMINFO} + +.include +.include diff --git a/external/mit/xorg/bin/xterm/uxterm/Makefile b/external/mit/xorg/bin/xterm/uxterm/Makefile new file mode 100644 index 000000000..4b2761fa2 --- /dev/null +++ b/external/mit/xorg/bin/xterm/uxterm/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +SCRIPTS=uxterm + +APPDEFS=UXTerm.ad + +.PATH: ${X11SRCDIR.xterm} + +.include +.include diff --git a/external/mit/xorg/bin/xtrap/Makefile b/external/mit/xorg/bin/xtrap/Makefile new file mode 100644 index 000000000..517e8f268 --- /dev/null +++ b/external/mit/xorg/bin/xtrap/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +SUBDIR= xtrapinfo xtrapout xtrapreset xtrapstats xtrapin xtrapproto xtrapchar + +MAN= xtrap.1 + +.for _M in ${SUBDIR} +MLINKS+=xtrap.1 ${_M}.1 +.endfor + +.PATH: ${X11SRCDIR.xtrap} + +.include +.include +.include diff --git a/external/mit/xorg/bin/xtrap/Makefile.inc b/external/mit/xorg/bin/xtrap/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/bin/xtrap/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/bin/xtrap/Makefile.xtrap b/external/mit/xorg/bin/xtrap/Makefile.xtrap new file mode 100644 index 000000000..dfd6e89e5 --- /dev/null +++ b/external/mit/xorg/bin/xtrap/Makefile.xtrap @@ -0,0 +1,22 @@ +# $NetBSD: Makefile.xtrap,v 1.2 2011/07/01 01:25:52 mrg Exp $ + +NOMAN= 1 + +.include + +SRCS+= ${PROG}.c XEKeybCtrl.c + +MLINKS+=xtrap.1 ${PROG}.1 + +LDADD+= -lXTrap -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXTRAP} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.xtrap} + +.include +.include + +# XXX +.if defined(HAVE_GCC) +COPTS+= -Wno-error +.endif diff --git a/external/mit/xorg/bin/xtrap/xtrapchar/Makefile b/external/mit/xorg/bin/xtrap/xtrapchar/Makefile new file mode 100644 index 000000000..b8d83be58 --- /dev/null +++ b/external/mit/xorg/bin/xtrap/xtrapchar/Makefile @@ -0,0 +1,6 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xtrapchar +SRCS= chparse.c + +.include "../Makefile.xtrap" diff --git a/external/mit/xorg/bin/xtrap/xtrapin/Makefile b/external/mit/xorg/bin/xtrap/xtrapin/Makefile new file mode 100644 index 000000000..841f602de --- /dev/null +++ b/external/mit/xorg/bin/xtrap/xtrapin/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xtrapin + +.include "../Makefile.xtrap" diff --git a/external/mit/xorg/bin/xtrap/xtrapinfo/Makefile b/external/mit/xorg/bin/xtrap/xtrapinfo/Makefile new file mode 100644 index 000000000..2a763d49b --- /dev/null +++ b/external/mit/xorg/bin/xtrap/xtrapinfo/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xtrapinfo + +.include "../Makefile.xtrap" diff --git a/external/mit/xorg/bin/xtrap/xtrapout/Makefile b/external/mit/xorg/bin/xtrap/xtrapout/Makefile new file mode 100644 index 000000000..96fb3800e --- /dev/null +++ b/external/mit/xorg/bin/xtrap/xtrapout/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xtrapout + +.include "../Makefile.xtrap" diff --git a/external/mit/xorg/bin/xtrap/xtrapproto/Makefile b/external/mit/xorg/bin/xtrap/xtrapproto/Makefile new file mode 100644 index 000000000..b08c916ef --- /dev/null +++ b/external/mit/xorg/bin/xtrap/xtrapproto/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xtrapproto + +.include "../Makefile.xtrap" diff --git a/external/mit/xorg/bin/xtrap/xtrapreset/Makefile b/external/mit/xorg/bin/xtrap/xtrapreset/Makefile new file mode 100644 index 000000000..fa1217999 --- /dev/null +++ b/external/mit/xorg/bin/xtrap/xtrapreset/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xtrapreset + +.include "../Makefile.xtrap" diff --git a/external/mit/xorg/bin/xtrap/xtrapstats/Makefile b/external/mit/xorg/bin/xtrap/xtrapstats/Makefile new file mode 100644 index 000000000..8ae56a5b1 --- /dev/null +++ b/external/mit/xorg/bin/xtrap/xtrapstats/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +PROG= xtrapstats + +.include "../Makefile.xtrap" diff --git a/external/mit/xorg/bin/xvidtune/Makefile b/external/mit/xorg/bin/xvidtune/Makefile new file mode 100644 index 000000000..642a0183c --- /dev/null +++ b/external/mit/xorg/bin/xvidtune/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.4 2013/05/31 08:02:00 mrg Exp $ + +.include + +PROG= xvidtune +APPDEFS= Xvidtune + +SRCS= xvidtune.c + +LDADD+= -lXxf86vm -lXaw -lXmu -lXt -lSM -lICE -lXpm -lXext -lX11 +DPADD+= ${LIBXXF86VM} ${LIBXAW} ${LIBXMU} ${LIBXT} ${LIBSM} ${LIBICE} \ + ${LIBXPM} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} ${X11SRCDIR.${PROG}}/app-defaults +.PATH: ${X11SRCDIR.${PROG}}/man + +VENDOR_NAME=The Xorg Foundation + +.include +.include diff --git a/external/mit/xorg/bin/xvinfo/Makefile b/external/mit/xorg/bin/xvinfo/Makefile new file mode 100644 index 000000000..a89fd896e --- /dev/null +++ b/external/mit/xorg/bin/xvinfo/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2012/03/22 23:46:27 joerg Exp $ + +.include + +PROG= xvinfo + +LDADD+= -lXv -lXext -lX11 +DPADD+= ${LIBXV} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +CWARNFLAGS.clang+= -Wno-dangling-else + +.include +.include diff --git a/external/mit/xorg/bin/xwd/Makefile b/external/mit/xorg/bin/xwd/Makefile new file mode 100644 index 000000000..db3d09a07 --- /dev/null +++ b/external/mit/xorg/bin/xwd/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 08:02:00 mrg Exp $ + +.include + +PROG= xwd +SRCS= xwd.c clientwin.c dsimple.c list.c multiVis.c + +CPPFLAGS+=-I${X11SRCDIR./xlsfonts} +.PATH: ${X11SRCDIR./xlsfonts} + +LDADD+= -lXmuu -lXt -lSM -lICE -lXext -lX11 +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} +.PATH: ${X11SRCDIR.${PROG}}/man + +.include +.include diff --git a/external/mit/xorg/bin/xwininfo/Makefile b/external/mit/xorg/bin/xwininfo/Makefile new file mode 100644 index 000000000..2bc8df629 --- /dev/null +++ b/external/mit/xorg/bin/xwininfo/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.6 2013/05/31 09:14:18 mrg Exp $ + +.include + +PROG= xwininfo +SRCS= xwininfo.c clientwin.c dsimple.c + +XWININFODIR= ${X11SRCDIR.${PROG}} +CPPFLAGS+=-I${XWININFODIR} -I${XWININFODIR}/../include -DICONV_CONST=const + +.PATH: ${XWININFODIR} ${XWININFODIR}/man + +LDADD+= -lXmuu -lXt -lSM -lICE -lXext -lX11 -lxcb -lxcb-shape +DPADD+= ${LIBXMUU} ${LIBXT} ${LIBSM} ${LIBICE} ${LIBXEXT} ${LIBX11} ${LIBXCB} ${LIBXCB_SHAPE} + +CWARNFLAGS.clang+= -Wno-tautological-compare + +.include +.include diff --git a/external/mit/xorg/bin/xwud/Makefile b/external/mit/xorg/bin/xwud/Makefile new file mode 100644 index 000000000..d803dd7d8 --- /dev/null +++ b/external/mit/xorg/bin/xwud/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +PROG= xwud + +LDADD+= -lX11 +DPADD+= ${LIBX11} + +.PATH: ${X11SRCDIR.${PROG}} + +.include +.include diff --git a/external/mit/xorg/etc/Makefile b/external/mit/xorg/etc/Makefile new file mode 100644 index 000000000..d4abf5806 --- /dev/null +++ b/external/mit/xorg/etc/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.1 2010/11/12 17:05:48 tsutsui Exp $ + +.include + +.if exists(etc.${RELEASEMACHINE}/Makefile.inc) +.include "etc.${RELEASEMACHINE}/Makefile.inc" +.endif + +FILESDIR= ${X11ETCDIR} +CONFIGFILES= +CONFIGSYMLINKS= + +.if defined(XORGCONF_FILES) +.for file in ${XORGCONF_FILES} +CONFIGFILES+= ${file} +FILESMODE_${file:T}= 644 +.endfor +.endif + +.include diff --git a/external/mit/xorg/etc/etc.dreamcast/Makefile.inc b/external/mit/xorg/etc/etc.dreamcast/Makefile.inc new file mode 100644 index 000000000..4c60fdcf0 --- /dev/null +++ b/external/mit/xorg/etc/etc.dreamcast/Makefile.inc @@ -0,0 +1,3 @@ +# $NetBSD: Makefile.inc,v 1.1 2010/11/12 17:05:49 tsutsui Exp $ + +XORGCONF_FILES= etc.${MACHINE}/xorg.conf.jpkbd etc.${MACHINE}/xorg.conf.uskbd diff --git a/external/mit/xorg/etc/etc.dreamcast/xorg.conf.jpkbd b/external/mit/xorg/etc/etc.dreamcast/xorg.conf.jpkbd new file mode 100644 index 000000000..fcdf21566 --- /dev/null +++ b/external/mit/xorg/etc/etc.dreamcast/xorg.conf.jpkbd @@ -0,0 +1,49 @@ +# $NetBSD: xorg.conf.jpkbd,v 1.2 2011/05/20 16:35:38 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "Mouse0" "CorePointer" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" + FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" + Option "Protocol" "wskbd" + Option "Device" "/dev/wskbd0" +# Option "XkbLayout" "us" + Option "XkbLayout" "jp(106)" +# Option "XkbOptions" "ctrl:swapcaps" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Protocol" "wsmouse" + Option "ButtonMapping" "1 2 3 2" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" +EndSection + +Section "Monitor" + Identifier "Monitor" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.dreamcast/xorg.conf.uskbd b/external/mit/xorg/etc/etc.dreamcast/xorg.conf.uskbd new file mode 100644 index 000000000..fa31e31bb --- /dev/null +++ b/external/mit/xorg/etc/etc.dreamcast/xorg.conf.uskbd @@ -0,0 +1,49 @@ +# $NetBSD: xorg.conf.uskbd,v 1.2 2011/05/20 16:35:38 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "Mouse0" "CorePointer" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" + FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" + Option "Protocol" "wskbd" + Option "Device" "/dev/wskbd0" + Option "XkbLayout" "us" +# Option "XkbLayout" "jp(106)" +# Option "XkbOptions" "ctrl:swapcaps" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Protocol" "wsmouse" + Option "ButtonMapping" "1 2 3 2" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" +EndSection + +Section "Monitor" + Identifier "Monitor" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpc/Makefile.inc b/external/mit/xorg/etc/etc.hpc/Makefile.inc new file mode 100644 index 000000000..196f86959 --- /dev/null +++ b/external/mit/xorg/etc/etc.hpc/Makefile.inc @@ -0,0 +1,9 @@ +# $NetBSD: Makefile.inc,v 1.1 2010/11/13 02:07:28 tsutsui Exp $ + +XORGCONF_FILES+= \ + etc.hpc/xorg.conf.640x240-jp \ + etc.hpc/xorg.conf.640x240-us \ + etc.hpc/xorg.conf.640x480-jp \ + etc.hpc/xorg.conf.640x480-us \ + etc.hpc/xorg.conf.800x600-jp \ + etc.hpc/xorg.conf.800x600-us diff --git a/external/mit/xorg/etc/etc.hpc/xorg.conf.640x240-jp b/external/mit/xorg/etc/etc.hpc/xorg.conf.640x240-jp new file mode 100644 index 000000000..4bfecacee --- /dev/null +++ b/external/mit/xorg/etc/etc.hpc/xorg.conf.640x240-jp @@ -0,0 +1,77 @@ +# $NetBSD: xorg.conf.640x240-jp,v 1.2 2011/05/20 16:35:38 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" +# Option "XkbLayout" "us" + Option "XkbLayout" "jp" +# Option "XkbModel" "foo" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" + Option "MaxX" "639" +# Option "MaxX" "799" + + Option "MinY" "0" + Option "MaxY" "239" +# Option "MaxY" "479" + +# Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + +# Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" +# VendorName "hpc" +# ModelName "lcd" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpc/xorg.conf.640x240-us b/external/mit/xorg/etc/etc.hpc/xorg.conf.640x240-us new file mode 100644 index 000000000..08ab14dbf --- /dev/null +++ b/external/mit/xorg/etc/etc.hpc/xorg.conf.640x240-us @@ -0,0 +1,77 @@ +# $NetBSD: xorg.conf.640x240-us,v 1.2 2011/05/20 16:35:38 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" + Option "XkbLayout" "us" +# Option "XkbLayout" "jp" +# Option "XkbModel" "foo" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" + Option "MaxX" "639" +# Option "MaxX" "799" + + Option "MinY" "0" + Option "MaxY" "239" +# Option "MaxY" "479" + +# Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + +# Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" +# VendorName "hpc" +# ModelName "lcd" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpc/xorg.conf.640x480-jp b/external/mit/xorg/etc/etc.hpc/xorg.conf.640x480-jp new file mode 100644 index 000000000..d51b2a118 --- /dev/null +++ b/external/mit/xorg/etc/etc.hpc/xorg.conf.640x480-jp @@ -0,0 +1,77 @@ +# $NetBSD: xorg.conf.640x480-jp,v 1.2 2011/05/20 16:35:38 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" +# Option "XkbLayout" "us" + Option "XkbLayout" "jp" +# Option "XkbModel" "foo" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" + Option "MaxX" "639" +# Option "MaxX" "799" + + Option "MinY" "0" +# Option "MaxY" "239" + Option "MaxY" "479" + +# Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + +# Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" +# VendorName "hpc" +# ModelName "lcd" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpc/xorg.conf.640x480-us b/external/mit/xorg/etc/etc.hpc/xorg.conf.640x480-us new file mode 100644 index 000000000..d8960610c --- /dev/null +++ b/external/mit/xorg/etc/etc.hpc/xorg.conf.640x480-us @@ -0,0 +1,77 @@ +# $NetBSD: xorg.conf.640x480-us,v 1.2 2011/05/20 16:35:38 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" + Option "XkbLayout" "us" +# Option "XkbLayout" "jp" +# Option "XkbModel" "foo" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" + Option "MaxX" "639" +# Option "MaxX" "799" + + Option "MinY" "0" +# Option "MaxY" "239" + Option "MaxY" "479" + +# Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + +# Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" +# VendorName "hpc" +# ModelName "lcd" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpc/xorg.conf.800x600-jp b/external/mit/xorg/etc/etc.hpc/xorg.conf.800x600-jp new file mode 100644 index 000000000..ded252df6 --- /dev/null +++ b/external/mit/xorg/etc/etc.hpc/xorg.conf.800x600-jp @@ -0,0 +1,78 @@ +# $NetBSD: xorg.conf.800x600-jp,v 1.2 2011/05/20 16:35:38 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" +# Option "XkbLayout" "us" + Option "XkbLayout" "jp" +# Option "XkbModel" "foo" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" +# Option "MaxX" "639" + Option "MaxX" "799" + + Option "MinY" "0" +# Option "MaxY" "239" +# Option "MaxY" "479" + Option "MaxY" "599" + +# Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + +# Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" +# VendorName "hpc" +# ModelName "lcd" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpc/xorg.conf.800x600-us b/external/mit/xorg/etc/etc.hpc/xorg.conf.800x600-us new file mode 100644 index 000000000..e15ed6b1a --- /dev/null +++ b/external/mit/xorg/etc/etc.hpc/xorg.conf.800x600-us @@ -0,0 +1,78 @@ +# $NetBSD: xorg.conf.800x600-us,v 1.2 2011/05/20 16:35:39 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" + Option "XkbLayout" "us" +# Option "XkbLayout" "jp" +# Option "XkbModel" "foo" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" +# Option "MaxX" "639" + Option "MaxX" "799" + + Option "MinY" "0" +# Option "MaxY" "239" +# Option "MaxY" "479" + Option "MaxY" "599" + +# Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + +# Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" +# VendorName "hpc" +# ModelName "lcd" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpcarm/Makefile.inc b/external/mit/xorg/etc/etc.hpcarm/Makefile.inc new file mode 100644 index 000000000..d1442c85e --- /dev/null +++ b/external/mit/xorg/etc/etc.hpcarm/Makefile.inc @@ -0,0 +1,9 @@ +# $NetBSD: Makefile.inc,v 1.1 2010/11/13 02:07:28 tsutsui Exp $ + +XORGCONF_FILES= \ + etc.${MACHINE}/xorg.conf.ws003sh \ + etc.${MACHINE}/xorg.conf.ws007sh \ + etc.${MACHINE}/xorg.conf.ws011sh \ + etc.${MACHINE}/xorg.conf.ws020sh + +.include "../etc.hpc/Makefile.inc" diff --git a/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws003sh b/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws003sh new file mode 100644 index 000000000..4f1869f45 --- /dev/null +++ b/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws003sh @@ -0,0 +1,78 @@ +# $NetBSD: xorg.conf.ws003sh,v 1.2 2011/05/20 16:35:39 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" + Option "XkbModel" "ws003sh" +# Option "XkbModel" "ws007sh" +# Option "XkbModel" "ws011sh" +# Option "XkbModel" "ws020sh" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" + Option "MaxX" "479" + + + Option "MinY" "0" + Option "MaxY" "639" +# Option "MaxY" "799" + + Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + + Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" + VendorName "Sharp" + ModelName "W-ZERO3" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws007sh b/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws007sh new file mode 100644 index 000000000..d48578770 --- /dev/null +++ b/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws007sh @@ -0,0 +1,78 @@ +# $NetBSD: xorg.conf.ws007sh,v 1.2 2011/05/20 16:35:39 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" +# Option "XkbModel" "ws003sh" + Option "XkbModel" "ws007sh" +# Option "XkbModel" "ws011sh" +# Option "XkbModel" "ws020sh" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" + Option "MaxX" "479" + + + Option "MinY" "0" + Option "MaxY" "639" +# Option "MaxY" "799" + + Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + + Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" + VendorName "Sharp" + ModelName "W-ZERO3" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws011sh b/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws011sh new file mode 100644 index 000000000..2d913d176 --- /dev/null +++ b/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws011sh @@ -0,0 +1,78 @@ +# $NetBSD: xorg.conf.ws011sh,v 1.2 2011/05/20 16:35:39 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" +# Option "XkbModel" "ws003sh" +# Option "XkbModel" "ws007sh" + Option "XkbModel" "ws011sh" +# Option "XkbModel" "ws020sh" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" + Option "MaxX" "479" + + + Option "MinY" "0" +# Option "MaxY" "639" + Option "MaxY" "799" + + Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + + Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" + VendorName "Sharp" + ModelName "W-ZERO3" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws020sh b/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws020sh new file mode 100644 index 000000000..73436d229 --- /dev/null +++ b/external/mit/xorg/etc/etc.hpcarm/xorg.conf.ws020sh @@ -0,0 +1,78 @@ +# $NetBSD: xorg.conf.ws020sh,v 1.2 2011/05/20 16:35:39 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Mouse0" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" +# Option "XkbModel" "ws003sh" +# Option "XkbModel" "ws007sh" +# Option "XkbModel" "ws011sh" + Option "XkbModel" "ws020sh" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "Device" "/dev/wsmouse0" + + Option "MinX" "0" + Option "MaxX" "479" + + + Option "MinY" "0" +# Option "MaxY" "639" + Option "MaxY" "799" + + Option "Rotate" "CCW" +EndSection + +Section "InputDevice" + Identifier "Mouse0" + Driver "mouse" + Option "Device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + + Option "Rotate" "CCW" +EndSection + +Section "Monitor" + Identifier "Monitor" + VendorName "Sharp" + ModelName "W-ZERO3" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + + SubSection "Display" + Viewport 0 0 + Depth 1 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 8 + EndSubSection + SubSection "Display" + Viewport 0 0 + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.hpcmips/Makefile.inc b/external/mit/xorg/etc/etc.hpcmips/Makefile.inc new file mode 100644 index 000000000..45e45a3f5 --- /dev/null +++ b/external/mit/xorg/etc/etc.hpcmips/Makefile.inc @@ -0,0 +1,5 @@ +# $NetBSD: Makefile.inc,v 1.1 2010/11/13 02:07:28 tsutsui Exp $ + +XORGCONF_FILES= + +.include "../etc.hpc/Makefile.inc" diff --git a/external/mit/xorg/etc/etc.hpcsh/Makefile.inc b/external/mit/xorg/etc/etc.hpcsh/Makefile.inc new file mode 100644 index 000000000..ca3a96633 --- /dev/null +++ b/external/mit/xorg/etc/etc.hpcsh/Makefile.inc @@ -0,0 +1,5 @@ +# $NetBSD: Makefile.inc,v 1.1 2010/11/13 02:07:29 tsutsui Exp $ + +XORGCONF_FILES= + +.include "../etc.hpc/Makefile.inc" diff --git a/external/mit/xorg/etc/etc.zaurus/Makefile.inc b/external/mit/xorg/etc/etc.zaurus/Makefile.inc new file mode 100644 index 000000000..4ed11381c --- /dev/null +++ b/external/mit/xorg/etc/etc.zaurus/Makefile.inc @@ -0,0 +1,3 @@ +# $NetBSD: Makefile.inc,v 1.3 2012/02/10 11:25:43 tsutsui Exp $ + +XORGCONF_FILES= etc.${MACHINE}/xorg.conf.C3x00 etc.${MACHINE}/xorg.conf.C7x0 diff --git a/external/mit/xorg/etc/etc.zaurus/xorg.conf.C3x00 b/external/mit/xorg/etc/etc.zaurus/xorg.conf.C3x00 new file mode 100644 index 000000000..33ab68618 --- /dev/null +++ b/external/mit/xorg/etc/etc.zaurus/xorg.conf.C3x00 @@ -0,0 +1,57 @@ +# $NetBSD: xorg.conf.C3x00,v 1.1 2012/02/10 11:25:43 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" + Option "XkbModel" "sl-c3x00" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" + + Option "MinX" "0" + Option "MaxX" "479" + Option "MinY" "0" + Option "MaxY" "639" + + Option "Rotate" "CW" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + + Option "Rotate" "CW" +EndSection + +Section "Monitor" + Identifier "Monitor" + VendorName "Sharp" + ModelName "Zaurus" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + DefaultDepth 16 + + SubSection "Display" + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/etc/etc.zaurus/xorg.conf.C7x0 b/external/mit/xorg/etc/etc.zaurus/xorg.conf.C7x0 new file mode 100644 index 000000000..5d4461e72 --- /dev/null +++ b/external/mit/xorg/etc/etc.zaurus/xorg.conf.C7x0 @@ -0,0 +1,57 @@ +# $NetBSD: xorg.conf.C7x0,v 1.1 2012/02/10 11:25:43 tsutsui Exp $ + +Section "ServerLayout" + Identifier "wsfb" + Screen 0 "Screen0" 0 0 + InputDevice "TouchScreen0" "CorePointer" + InputDevice "Keyboard0" "CoreKeyboard" +EndSection + +Section "Files" +# FontPath "/usr/pkg/lib/X11/fonts/TTF/" +EndSection + +Section "InputDevice" + Identifier "Keyboard0" + Driver "kbd" + Option "XkbModel" "sl-c3x00" +EndSection + +Section "InputDevice" + Identifier "TouchScreen0" + Driver "ws" + + Option "device" "/dev/wsmouse" + Option "ZAxisMapping" "4 5" + + Option "MinX" "0" + Option "MaxX" "639" + Option "MinY" "0" + Option "MaxY" "479" + +# Option "Rotate" "CW" +EndSection + +Section "Device" + Identifier "Wsdisplay0" + Driver "wsfb" + +# Option "Rotate" "CW" +EndSection + +Section "Monitor" + Identifier "Monitor" + VendorName "Sharp" + ModelName "Zaurus" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "Wsdisplay0" + Monitor "Monitor" + DefaultDepth 16 + + SubSection "Display" + Depth 16 + EndSubSection +EndSection diff --git a/external/mit/xorg/include/Makefile b/external/mit/xorg/include/Makefile new file mode 100644 index 000000000..82784678c --- /dev/null +++ b/external/mit/xorg/include/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.4 2010/07/18 07:07:09 mrg Exp $ + +# *proto packages for xorg + +SUBDIR= xproto fontsproto bigreqsproto kbproto xcmiscproto xf86bigfontproto \ + fixesproto inputproto scrnsaverproto xextproto evieext xineramaproto \ + resourceproto recordproto videoproto xf86dgaproto xf86miscproto \ + compositeproto damageproto trapproto glproto randrproto fontcacheproto \ + xf86driproto xf86vidmodeproto renderproto dri2proto \ + xproxymanagementprotocol xbitmaps xcb-proto .WAIT \ + xtrans + +.include diff --git a/external/mit/xorg/include/bigreqsproto/Makefile b/external/mit/xorg/include/bigreqsproto/Makefile new file mode 100644 index 000000000..76e0c6d01 --- /dev/null +++ b/external/mit/xorg/include/bigreqsproto/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:06 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.bigreqsproto} + +INCS= bigreqstr.h \ + bigreqsproto.h + +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= bigreqsproto + +.include +.include diff --git a/external/mit/xorg/include/compositeproto/Makefile b/external/mit/xorg/include/compositeproto/Makefile new file mode 100644 index 000000000..6c0093a9f --- /dev/null +++ b/external/mit/xorg/include/compositeproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:28 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.compositeproto} + +INCS= composite.h compositeproto.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= compositeproto + +.include +.include diff --git a/external/mit/xorg/include/damageproto/Makefile b/external/mit/xorg/include/damageproto/Makefile new file mode 100644 index 000000000..19d5f3be9 --- /dev/null +++ b/external/mit/xorg/include/damageproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:28 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.damageproto} + +INCS= damageproto.h damagewire.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= damageproto + +.include +.include diff --git a/external/mit/xorg/include/dri2proto/Makefile b/external/mit/xorg/include/dri2proto/Makefile new file mode 100644 index 000000000..85fe3516d --- /dev/null +++ b/external/mit/xorg/include/dri2proto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1 2009/06/10 04:37:27 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.dri2proto} + +INCS= dri2proto.h dri2tokens.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= dri2proto + +.include +.include diff --git a/external/mit/xorg/include/evieext/Makefile b/external/mit/xorg/include/evieext/Makefile new file mode 100644 index 000000000..d78da3175 --- /dev/null +++ b/external/mit/xorg/include/evieext/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:07 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.evieext} + +INCS= Xeviestr.h \ + evieproto.h + +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= evieproto +PKGDIST= evieext + +.include +.include diff --git a/external/mit/xorg/include/fixesproto/Makefile b/external/mit/xorg/include/fixesproto/Makefile new file mode 100644 index 000000000..4f55ae560 --- /dev/null +++ b/external/mit/xorg/include/fixesproto/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:07 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.fixesproto} + +INCS= xfixesproto.h \ + xfixeswire.h + +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= fixesproto + +# XXX fixesproto.txt + +.include +.include diff --git a/external/mit/xorg/include/fontcacheproto/Makefile b/external/mit/xorg/include/fontcacheproto/Makefile new file mode 100644 index 000000000..a9f8739cc --- /dev/null +++ b/external/mit/xorg/include/fontcacheproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:28 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.fontcacheproto} + +INCS= fontcache.h fontcacheP.h fontcachstr.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= fontcacheproto + +.include +.include diff --git a/external/mit/xorg/include/fontsproto/Makefile b/external/mit/xorg/include/fontsproto/Makefile new file mode 100644 index 000000000..7404f6836 --- /dev/null +++ b/external/mit/xorg/include/fontsproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.fontsproto} + +INCS= FS.h FSproto.h font.h fontproto.h fontstruct.h fsmasks.h +INCSDIR=${X11INCDIR}/X11/fonts + +NOOBJ= # defined + +PKGCONFIG= fontsproto + +.include +.include diff --git a/external/mit/xorg/include/glproto/Makefile b/external/mit/xorg/include/glproto/Makefile new file mode 100644 index 000000000..4d42d4125 --- /dev/null +++ b/external/mit/xorg/include/glproto/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.glproto} + +INCS= glxint.h glxmd.h glxproto.h glxtokens.h +INCSDIR=${X11INCDIR}/GL + +SUBDIR= internal + +NOOBJ= # defined + +PKGCONFIG= glproto + +.include +.include +.include diff --git a/external/mit/xorg/include/glproto/internal/Makefile b/external/mit/xorg/include/glproto/internal/Makefile new file mode 100644 index 000000000..af7b081dd --- /dev/null +++ b/external/mit/xorg/include/glproto/internal/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.glproto} + +INCS= glcore.h +INCSDIR=${X11INCDIR}/GL/internal + +NOOBJ= # defined + +.include +.include diff --git a/external/mit/xorg/include/inputproto/Makefile b/external/mit/xorg/include/inputproto/Makefile new file mode 100644 index 000000000..6d0bae354 --- /dev/null +++ b/external/mit/xorg/include/inputproto/Makefile @@ -0,0 +1,21 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:07 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.inputproto} + +INCS= XI.h \ + XIproto.h \ + XI2.h \ + XI2proto.h + +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= inputproto + +# XXX XI2proto.txt XIproto.txt + +.include +.include diff --git a/external/mit/xorg/include/kbproto/Makefile b/external/mit/xorg/include/kbproto/Makefile new file mode 100644 index 000000000..c456e1665 --- /dev/null +++ b/external/mit/xorg/include/kbproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.kbproto} + +INCS= XKB.h XKBgeom.h XKBproto.h XKBsrv.h XKBstr.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= kbproto + +.include +.include diff --git a/external/mit/xorg/include/randrproto/Makefile b/external/mit/xorg/include/randrproto/Makefile new file mode 100644 index 000000000..2f7219459 --- /dev/null +++ b/external/mit/xorg/include/randrproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.randrproto} + +INCS= randr.h randrproto.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= randrproto + +.include +.include diff --git a/external/mit/xorg/include/recordproto/Makefile b/external/mit/xorg/include/recordproto/Makefile new file mode 100644 index 000000000..3a8ed83a3 --- /dev/null +++ b/external/mit/xorg/include/recordproto/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:07 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.recordproto} + +INCS= recordconst.h \ + recordproto.h \ + recordstr.h + +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= recordproto + +.include +.include diff --git a/external/mit/xorg/include/renderproto/Makefile b/external/mit/xorg/include/renderproto/Makefile new file mode 100644 index 000000000..1f8ffde61 --- /dev/null +++ b/external/mit/xorg/include/renderproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.renderproto} + +INCS= render.h renderproto.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= renderproto + +.include +.include diff --git a/external/mit/xorg/include/resourceproto/Makefile b/external/mit/xorg/include/resourceproto/Makefile new file mode 100644 index 000000000..758d7614f --- /dev/null +++ b/external/mit/xorg/include/resourceproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.resourceproto} + +INCS= XResproto.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= resourceproto + +.include +.include diff --git a/external/mit/xorg/include/scrnsaverproto/Makefile b/external/mit/xorg/include/scrnsaverproto/Makefile new file mode 100644 index 000000000..a49b86f7c --- /dev/null +++ b/external/mit/xorg/include/scrnsaverproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 09:22:15 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.scrnsaverproto} + +INCS= saver.h saverproto.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= scrnsaverproto + +.include +.include diff --git a/external/mit/xorg/include/trapproto/Makefile b/external/mit/xorg/include/trapproto/Makefile new file mode 100644 index 000000000..d53068c01 --- /dev/null +++ b/external/mit/xorg/include/trapproto/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.trapproto} + +INCS= xtrapbits.h xtrapddmi.h xtrapdi.h xtrapemacros.h xtraplib.h \ + xtraplibp.h xtrapproto.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= trapproto + +.include +.include diff --git a/external/mit/xorg/include/videoproto/Makefile b/external/mit/xorg/include/videoproto/Makefile new file mode 100644 index 000000000..c576d0957 --- /dev/null +++ b/external/mit/xorg/include/videoproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.videoproto} + +INCS= Xv.h XvMC.h XvMCproto.h Xvproto.h vldXvMC.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= videoproto + +.include +.include diff --git a/external/mit/xorg/include/xbitmaps/Makefile b/external/mit/xorg/include/xbitmaps/Makefile new file mode 100644 index 000000000..a3d74622c --- /dev/null +++ b/external/mit/xorg/include/xbitmaps/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.3 2009/11/09 00:41:26 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xbitmaps} + +INCSDIR=${X11INCDIR}/X11/bitmaps + +INCS= 1x1 2x2 black boxes calculator cntr_ptr cntr_ptrmsk cross_weave \ + dimple1 dimple3 dot dropbar7 dropbar8 escherknot flagdown flagup \ + flipped_gray gray gray1 gray3 grid16 grid2 grid4 grid8 hlines2 \ + hlines3 icon keyboard16 left_ptr left_ptrmsk letters light_gray \ + mailempty mailemptymsk mailfull mailfullmsk mensetmanus menu10 \ + menu12 menu16 menu6 menu8 noletters opendot opendotMask plaid \ + right_ptr right_ptrmsk root_weave scales sipb star starMask \ + stipple target terminal tie_fighter vlines2 vlines3 weird_size \ + wide_weave wingdogs woman xfd_icon xlogo11 xlogo16 xlogo32 \ + xlogo64 xsnow \ + box6 black6 + +PKGCONFIG= xbitmaps + +.include +.include diff --git a/external/mit/xorg/include/xcb-proto/Makefile b/external/mit/xorg/include/xcb-proto/Makefile new file mode 100644 index 000000000..c3fd70485 --- /dev/null +++ b/external/mit/xorg/include/xcb-proto/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.2 2013/05/31 09:14:19 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xcb-proto} ${X11SRCDIR.xcb-proto}/src + +FILES= bigreq.xml composite.xml damage.xml dpms.xml dri2.xml \ + ge.xml glx.xml randr.xml record.xml render.xml res.xml \ + screensaver.xml shape.xml shm.xml sync.xml xc_misc.xml \ + xcb.xsd xevie.xml xf86dri.xml xf86vidmode.xml xfixes.xml \ + xinerama.xml xkb.xml \ + xinput.xml xprint.xml xproto.xml xselinux.xml xtest.xml \ + xv.xml xvmc.xml +FILESDIR=${X11SHAREDIR}/xcb + +PKGCONFIG= xcb-proto + +NOPROG= # defined + +.include +.include +.include diff --git a/external/mit/xorg/include/xcmiscproto/Makefile b/external/mit/xorg/include/xcmiscproto/Makefile new file mode 100644 index 000000000..41eb73a63 --- /dev/null +++ b/external/mit/xorg/include/xcmiscproto/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:07 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xcmiscproto} + +INCS= xcmiscstr.h \ + xcmiscproto.h + +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= xcmiscproto + +.include +.include diff --git a/external/mit/xorg/include/xextproto/Makefile b/external/mit/xorg/include/xextproto/Makefile new file mode 100644 index 000000000..8c3c01db7 --- /dev/null +++ b/external/mit/xorg/include/xextproto/Makefile @@ -0,0 +1,47 @@ +# $NetBSD: Makefile,v 1.5 2010/08/14 08:51:32 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xextproto} + +INCS= EVI.h \ + EVIproto.h \ + ag.h \ + agproto.h \ + cup.h \ + cupproto.h \ + dbe.h \ + dbeproto.h \ + dpmsconst.h \ + dpmsproto.h \ + ge.h \ + geproto.h \ + lbx.h \ + lbxproto.h \ + mitmiscconst.h \ + mitmiscproto.h \ + multibufconst.h \ + multibufproto.h \ + secur.h \ + securproto.h \ + shapeconst.h \ + shapeproto.h \ + shm.h \ + shmproto.h \ + syncconst.h \ + syncproto.h \ + xtestconst.h \ + xtestext1const.h \ + xtestext1proto.h \ + xtestproto.h +# XXX XXX XXX xorg-server 1.7 won't need this +INCS+= shapestr.h shmstr.h syncstr.h +# +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= xextproto + +.include +.include diff --git a/external/mit/xorg/include/xf86bigfontproto/Makefile b/external/mit/xorg/include/xf86bigfontproto/Makefile new file mode 100644 index 000000000..f32455cd7 --- /dev/null +++ b/external/mit/xorg/include/xf86bigfontproto/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:07 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xf86bigfontproto} + +INCS= xf86bigfont.h \ + xf86bigfstr.h \ + xf86bigfproto.h + +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= xf86bigfontproto + +.include +.include diff --git a/external/mit/xorg/include/xf86dgaproto/Makefile b/external/mit/xorg/include/xf86dgaproto/Makefile new file mode 100644 index 000000000..5ad31ccc6 --- /dev/null +++ b/external/mit/xorg/include/xf86dgaproto/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:07 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xf86dgaproto} + +INCS= xf86dga.h \ + xf86dga1str.h \ + xf86dgastr.h \ + xf86dga1const.h \ + xf86dga1proto.h \ + xf86dgaconst.h \ + xf86dgaproto.h + +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= xf86dgaproto + +.include +.include diff --git a/external/mit/xorg/include/xf86driproto/Makefile b/external/mit/xorg/include/xf86driproto/Makefile new file mode 100644 index 000000000..97278076c --- /dev/null +++ b/external/mit/xorg/include/xf86driproto/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:07 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xf86driproto} + +INCS= xf86dri.h \ + xf86dristr.h \ + xf86driproto.h + +INCSDIR=${X11INCDIR}/X11/dri + +NOOBJ= # defined + +PKGCONFIG= xf86driproto + +.include +.include diff --git a/external/mit/xorg/include/xf86miscproto/Makefile b/external/mit/xorg/include/xf86miscproto/Makefile new file mode 100644 index 000000000..60bb7a3a9 --- /dev/null +++ b/external/mit/xorg/include/xf86miscproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.xf86miscproto} + +INCS= xf86misc.h xf86mscstr.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= xf86miscproto + +.include +.include diff --git a/external/mit/xorg/include/xf86vidmodeproto/Makefile b/external/mit/xorg/include/xf86vidmodeproto/Makefile new file mode 100644 index 000000000..cd5d04611 --- /dev/null +++ b/external/mit/xorg/include/xf86vidmodeproto/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2010/05/22 02:27:07 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xf86vidmodeproto} + +INCS= xf86vm.h \ + xf86vmstr.h \ + xf86vmproto.h + +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= xf86vidmodeproto + +.include +.include diff --git a/external/mit/xorg/include/xineramaproto/Makefile b/external/mit/xorg/include/xineramaproto/Makefile new file mode 100644 index 000000000..cf6ef2b7c --- /dev/null +++ b/external/mit/xorg/include/xineramaproto/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.3 2009/11/09 03:27:05 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xineramaproto} + +INCS= panoramiXproto.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +PKGCONFIG= xineramaproto + +.include +.include diff --git a/external/mit/xorg/include/xproto/Makefile b/external/mit/xorg/include/xproto/Makefile new file mode 100644 index 000000000..f979112a0 --- /dev/null +++ b/external/mit/xorg/include/xproto/Makefile @@ -0,0 +1,29 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.xproto} + +Xfuncproto.h: Xfuncproto.h.in + ${TOOL_SED} 's/#undef NARROWPROTO/#define NARROWPROTO/; \ + s/#undef FUNCPROTO/#define FUNCPROTO 15/' \ + < ${.ALLSRC} > ${.TARGET} + +Xpoll.h: Xpoll.h.in + ${TOOL_SED} 's/@USE_FDS_BITS@/fds_bits/' \ + < ${.ALLSRC} > ${.TARGET} + +INCS= DECkeysym.h HPkeysym.h Sunkeysym.h X.h XF86keysym.h XWDFile.h \ + Xalloca.h Xarch.h Xatom.h Xdefs.h Xfuncproto.h Xfuncs.h Xmd.h \ + Xos.h Xos_r.h Xosdefs.h Xpoll.h Xproto.h Xprotostr.h Xthreads.h \ + Xw32defs.h Xwindows.h Xwinsock.h ap_keysym.h keysym.h keysymdef.h +INCSDIR=${X11INCDIR}/X11 + +CLEANFILES+= Xpoll.h Xfuncproto.h + +NOOBJ= # defined + +PKGCONFIG= xproto + +.include +.include diff --git a/external/mit/xorg/include/xproxymanagementprotocol/Makefile b/external/mit/xorg/include/xproxymanagementprotocol/Makefile new file mode 100644 index 000000000..44721883f --- /dev/null +++ b/external/mit/xorg/include/xproxymanagementprotocol/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.xproxymanagementprotocol} + +INCS= PM.h PMproto.h +INCSDIR=${X11INCDIR}/X11/PM + +NOOBJ= # defined + +PKGCONFIG= xproxymngproto +PKGDIST= xproxymanagementprotocol + +.include +.include diff --git a/external/mit/xorg/include/xtrans/Makefile b/external/mit/xorg/include/xtrans/Makefile new file mode 100644 index 000000000..4c9db498e --- /dev/null +++ b/external/mit/xorg/include/xtrans/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:29 cube Exp $ + +.include + +.PATH: ${X11SRCDIR.xtrans} + +INCS= Xtrans.c Xtrans.h Xtransdnet.c Xtransint.h Xtranslcl.c \ + Xtransos2.c Xtranssock.c Xtranstli.c Xtransutil.c transport.c +INCSDIR=${X11INCDIR}/X11/Xtrans + +NOOBJ= # defined + +PKGCONFIG= xtrans + +.include +.include diff --git a/external/mit/xorg/lib/Makefile b/external/mit/xorg/lib/Makefile new file mode 100644 index 000000000..645fdcdc6 --- /dev/null +++ b/external/mit/xorg/lib/Makefile @@ -0,0 +1,38 @@ +# $NetBSD: Makefile,v 1.27 2013/06/05 02:51:49 mrg Exp $ + +# build libraries for xorg + +SUBDIR= libfontenc freetype libFS libICE libOSMesa \ + libXau libXdmcp libdrm libpciaccess .WAIT +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +SUBDIR+=libdrm_intel +.endif +SUBDIR+=libdrm_radeon pixman xkeyboard-config libxcb \ + .WAIT \ + dri fontconfig libSM libX11 \ + .WAIT \ + libXcomposite libXdamage libXext libXfixes libXt \ + libxkbfile \ + .WAIT \ + libXi libXxf86vm \ + .WAIT \ + libGL libXScrnSaver libXTrap libXevie libXfont libXfontcache \ + libXinerama libXmu libXmuu libXpm libXrender \ + libXres libXtst libXvMC libXvMCW libXv libXxf86dga libXxf86misc \ + libxkbui \ + .WAIT +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +SUBDIR+=libI810XvMC +SUBDIR+=libIntelXvMC +SUBDIR+=libchromeXvMC +SUBDIR+=libchromeXvMCPro +.endif +SUBDIR+=libGLU libGLw libXaw6 libXaw libXcursor \ + libXrandr \ + .WAIT \ + libXft libglut \ + .WAIT \ + libXdmGreet \ + #xcb-util #LSC: pthread_cancel stuff + +.include diff --git a/external/mit/xorg/lib/Makefile.inc b/external/mit/xorg/lib/Makefile.inc new file mode 100644 index 000000000..bbc249e01 --- /dev/null +++ b/external/mit/xorg/lib/Makefile.inc @@ -0,0 +1,4 @@ +# $NetBSD: Makefile.inc,v 1.1.1.1 2008/07/29 05:01:21 mrg Exp $ + +.include +.include diff --git a/external/mit/xorg/lib/dri/Makefile b/external/mit/xorg/lib/dri/Makefile new file mode 100644 index 000000000..90b2642ff --- /dev/null +++ b/external/mit/xorg/lib/dri/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.18 2010/11/22 21:05:30 mrg Exp $ + +SUBDIR= libmesa .WAIT + +.if ${MACHINE_ARCH} == "alpha" +SUBDIR+= mach64 mga r128 r200 r300 r600 radeon savage sis tdfx +.elif ${MACHINE} == "macppc" || ${MACHINE} == "ofppc" +SUBDIR+= mach64 mga r128 r200 r300 r600 radeon tdfx +.elif ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "sparc" +SUBDIR+= mach64 mga r128 r200 r300 r600 radeon +.elif ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +SUBDIR+= i810 i915 i965 mach64 mga r128 r200 r300 r600 radeon \ + savage sis tdfx unichrome +.elif ${MACHINE} == "prep" || ${MACHINE} == "bebox" +SUBDIR+= mga +.endif + +SUBDIR+= swrast + +PKGCONFIG= dri +PKGDIST.dri= ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri +.include "${.CURDIR}/../libGL/mesa-ver.mk" +PKGCONFIG_VERSION.dri= ${MESA_VER} + +.include +.include diff --git a/external/mit/xorg/lib/dri/dri.mk b/external/mit/xorg/lib/dri/dri.mk new file mode 100644 index 000000000..138872a48 --- /dev/null +++ b/external/mit/xorg/lib/dri/dri.mk @@ -0,0 +1,58 @@ +# $NetBSD: dri.mk,v 1.12 2012/03/10 20:52:30 tron Exp $ + +# XXX DRI_LIB_DEPS + +LIBISMODULE= yes + +.include + +SHLIB_MAJOR= 0 + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/main \ + -I${X11SRCDIR.MesaLib}/src/mesa/glapi \ + -I${X11SRCDIR.MesaLib}/src/mesa/shader \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/common \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/${MODULE}/server \ + -I${X11SRCDIR.MesaLib}/src/mesa \ + -I${X11SRCDIR.MesaLib}/include \ + -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${DESTDIR}${X11INCDIR}/X11 + +.if !defined(__MINIX) +CPPFLAGS+= -D_NETBSD_SOURCE -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 \ + -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING \ + -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN +.else +CPPFLAGS+= -D_NETBSD_SOURCE -DUSE_EXTERNAL_DXTN_LIB=1 \ + -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING \ + -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_POSIX_MEMALIGN +.endif # !defined(__MINIX) + +CPPFLAGS+= -Wno-stack-protector + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/${MODULE} ${DRI_EXTRA_PATHS} + +# Common sources +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/common \ + ${X11SRCDIR.MesaLib}/src/mesa/drivers/common +.if (${MODULE} == "swrast") +SRCS+= driverfuncs.c utils.c +.else +SRCS+= dri_util.c drirenderbuffer.c driverfuncs.c texmem.c +SRCS+= dri_metaops.c +SRCS+= utils.c vblank.c xmlconfig.c +.endif + +.include + +LIB= ${MODULE}_dri +LIBDIR= ${X11USRLIBDIR}/modules/dri + +LIBDPLIBS+= drm ${.CURDIR}/../../libdrm +LIBDPLIBS+= expat ${NETBSDSRCDIR}/external/mit/expat/lib/libexpat +LIBDPLIBS+= m ${NETBSDSRCDIR}/lib/libm +LIBDPLIBS+= mesa_dri ${.CURDIR}/../libmesa +# to find mesa_dri.so +LDFLAGS+= -Wl,-rpath,${LIBDIR} + +.include diff --git a/external/mit/xorg/lib/dri/i810/Makefile b/external/mit/xorg/lib/dri/i810/Makefile new file mode 100644 index 000000000..8848a9983 --- /dev/null +++ b/external/mit/xorg/lib/dri/i810/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.3 2011/08/11 23:15:36 joerg Exp $ + +MODULE= i810 + +SRCS= i810context.c i810ioctl.c i810render.c i810screen.c i810span.c \ + i810state.c i810tex.c i810texmem.c i810texstate.c i810tris.c \ + i810vb.c + +CWARNFLAGS.clang+= -Wno-constant-logical-operand + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/i915/Makefile b/external/mit/xorg/lib/dri/i915/Makefile new file mode 100644 index 000000000..da354192e --- /dev/null +++ b/external/mit/xorg/lib/dri/i915/Makefile @@ -0,0 +1,64 @@ +# $NetBSD: Makefile,v 1.11 2011/08/11 23:15:36 joerg Exp $ + +MODULE= i915 + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/i965 \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/intel \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/intel/server + +DRI_EXTRA_PATHS= ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/intel +SRCS= \ + i830_context.c \ + i830_state.c \ + i830_texblend.c \ + i830_texstate.c \ + i830_vtbl.c \ + intel_render.c \ + intel_regions.c \ + intel_buffer_objects.c \ + intel_batchbuffer.c \ + intel_clear.c \ + intel_extensions.c \ + intel_mipmap_tree.c \ + intel_tex_layout.c \ + intel_tex_image.c \ + intel_tex_subimage.c \ + intel_tex_copy.c \ + intel_tex_validate.c \ + intel_tex_format.c \ + intel_tex.c \ + intel_pixel.c \ + intel_pixel_bitmap.c \ + intel_pixel_copy.c \ + intel_pixel_draw.c \ + intel_pixel_read.c \ + intel_buffers.c \ + intel_blit.c \ + i915_tex_layout.c \ + i915_texstate.c \ + i915_context.c \ + i915_debug.c \ + i915_debug_fp.c \ + i915_fragprog.c \ + i915_program.c \ + i915_state.c \ + i915_vtbl.c \ + intel_context.c \ + intel_decode.c \ + intel_screen.c \ + intel_span.c \ + intel_state.c \ + intel_syncobj.c \ + intel_tris.c \ + intel_fbo.c + +CPPFLAGS+= -DI915 -DDRM_VBLANK_FLIP=DRM_VBLANK_FLIP + +LIBDPLIBS+= drm_intel ${.CURDIR}/../../libdrm_intel + +COPTS.intel_context.c+= -Wno-error # XXX +COPTS.intel_tex.c+= -Wno-error # XXX +CWARNFLAGS.clang+= -Wno-tautological-compare -Wno-format \ + -Wno-constant-logical-operand + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/i965/Makefile b/external/mit/xorg/lib/dri/i965/Makefile new file mode 100644 index 000000000..fab62f4a5 --- /dev/null +++ b/external/mit/xorg/lib/dri/i965/Makefile @@ -0,0 +1,112 @@ +# $NetBSD: Makefile,v 1.14 2012/03/22 23:46:27 joerg Exp $ + +MODULE= i965 + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/i965 \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/intel \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/intel/server + +DRI_EXTRA_PATHS= ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/intel \ + ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/intel/server +SRCS= \ + intel_batchbuffer.c \ + intel_blit.c \ + intel_buffer_objects.c \ + intel_buffers.c \ + intel_clear.c \ + intel_context.c \ + intel_decode.c \ + intel_extensions.c \ + intel_fbo.c \ + intel_mipmap_tree.c \ + intel_regions.c \ + intel_screen.c \ + intel_span.c \ + intel_pixel.c \ + intel_pixel_bitmap.c \ + intel_pixel_copy.c \ + intel_pixel_draw.c \ + intel_pixel_read.c \ + intel_state.c \ + intel_syncobj.c \ + intel_tex.c \ + intel_tex_copy.c \ + intel_tex_format.c \ + intel_tex_image.c \ + intel_tex_layout.c \ + intel_tex_subimage.c \ + intel_tex_validate.c \ + brw_cc.c \ + brw_clip.c \ + brw_clip_line.c \ + brw_clip_point.c \ + brw_clip_state.c \ + brw_clip_tri.c \ + brw_clip_unfilled.c \ + brw_clip_util.c \ + brw_context.c \ + brw_curbe.c \ + brw_disasm.c \ + brw_draw.c \ + brw_draw_upload.c \ + brw_eu.c \ + brw_eu_debug.c \ + brw_eu_emit.c \ + brw_eu_util.c \ + brw_fallback.c \ + brw_gs.c \ + brw_gs_emit.c \ + brw_gs_state.c \ + brw_misc_state.c \ + brw_program.c \ + brw_queryobj.c \ + brw_sf.c \ + brw_sf_emit.c \ + brw_sf_state.c \ + brw_state_batch.c \ + brw_state_cache.c \ + brw_state_dump.c \ + brw_state_upload.c \ + brw_tex.c \ + brw_tex_layout.c \ + brw_urb.c \ + brw_util.c \ + brw_vs.c \ + brw_vs_constval.c \ + brw_vs_emit.c \ + brw_vs_state.c \ + brw_vs_surface_state.c \ + brw_vtbl.c \ + brw_wm.c \ + brw_wm_debug.c \ + brw_wm_emit.c \ + brw_wm_fp.c \ + brw_wm_iz.c \ + brw_wm_glsl.c \ + brw_wm_pass0.c \ + brw_wm_pass1.c \ + brw_wm_pass2.c \ + brw_wm_sampler_state.c \ + brw_wm_state.c \ + brw_wm_surface_state.c \ + gen6_cc.c \ + gen6_clip_state.c \ + gen6_depthstencil.c \ + gen6_gs_state.c \ + gen6_sampler_state.c \ + gen6_scissor_state.c \ + gen6_sf_state.c \ + gen6_urb.c \ + gen6_viewport_state.c \ + gen6_vs_state.c \ + gen6_wm_state.c + +COPTS.brw_draw_upload.c= -Wno-error +CWARNFLAGS.clang+= -Wno-format -Wno-switch + +LIBDPLIBS+= drm_intel ${.CURDIR}/../../libdrm_intel + +COPTS.intel_context.c+= -Wno-error # XXX +COPTS.intel_tex.c+= -Wno-error # XXX + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/libmesa/Makefile b/external/mit/xorg/lib/dri/libmesa/Makefile new file mode 100644 index 000000000..ebc71cf10 --- /dev/null +++ b/external/mit/xorg/lib/dri/libmesa/Makefile @@ -0,0 +1,47 @@ +# $NetBSD: Makefile,v 1.11 2013/02/09 17:18:01 christos Exp $ + +.include + +_LIB_PREFIX= lib +LIB= mesa_dri +LIBISMODULE= yes + +SHLIB_MAJOR= 0 + +MESA_SRC_MODULES= glapi main math vbo tnl shader swrast slang ss common + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/main \ + -I${X11SRCDIR.MesaLib}/src/mesa/glapi \ + -I${X11SRCDIR.MesaLib}/src/mesa/shader \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/common \ + -I${X11SRCDIR.MesaLib}/src/mesa \ + -I${X11SRCDIR.MesaLib}/include \ + -I${DESTDIR}${X11INCDIR}/X11 + + +.if !defined(__MINIX) +CPPFLAGS+= ${X11FLAGS.THREADLIB} \ + -DPTHREADS -D_NETBSD_SOURCE -DUSE_EXTERNAL_DXTN_LIB=1 \ + -DHAVE_ALIAS -DIN_DRI_DRIVER +#CPPFLAGS+= -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING -DHAVE_POSIX_MEMALIGN +CFLAGS+= -pthread +.else +CPPFLAGS+= ${X11FLAGS.THREADLIB} \ + -D_NETBSD_SOURCE -DUSE_EXTERNAL_DXTN_LIB=1 \ + -DHAVE_ALIAS -DIN_DRI_DRIVER +.endif # !defined(__MINIX) + +.include "../../libOSMesa/libmesa.mk" +.include "../../../tools/glsl/Makefile.glslsrcs" + +SRCS+= ${SRCS.pp} ${SRCS.cl} + +.include + +LIBDIR= ${X11USRLIBDIR}/modules/dri + +#LIBDPLIBS+= GL ${.CURDIR}/../../libGL + +CWARNFLAGS.clang+= -Wno-format -Wno-constant-conversion + +.include diff --git a/external/mit/xorg/lib/dri/mach64/Makefile b/external/mit/xorg/lib/dri/mach64/Makefile new file mode 100644 index 000000000..b2eba8178 --- /dev/null +++ b/external/mit/xorg/lib/dri/mach64/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.3 2011/08/11 23:15:36 joerg Exp $ + +MODULE= mach64 + +SRCS= mach64_context.c mach64_ioctl.c mach64_screen.c mach64_span.c \ + mach64_state.c mach64_tex.c mach64_texmem.c mach64_texstate.c \ + mach64_tris.c mach64_vb.c mach64_dd.c mach64_lock.c + +CWARNFLAGS.clang+= -Wno-constant-logical-operand + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/mga/Makefile b/external/mit/xorg/lib/dri/mga/Makefile new file mode 100644 index 000000000..f0fd4d2ba --- /dev/null +++ b/external/mit/xorg/lib/dri/mga/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.3 2011/08/11 23:15:36 joerg Exp $ + +MODULE= mga + +SRCS= mgadd.c mgaioctl.c mgarender.c mgastate.c mgatris.c mgapixel.c \ + mgaspan.c mgatex.c mgatexmem.c mga_texstate.c mga_texcombine.c \ + mgavb.c mga_xmesa.c + +CWARNFLAGS.clang+= -Wno-constant-logical-operand + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/r128/Makefile b/external/mit/xorg/lib/dri/r128/Makefile new file mode 100644 index 000000000..10d4e9fac --- /dev/null +++ b/external/mit/xorg/lib/dri/r128/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.4 2011/08/11 23:15:37 joerg Exp $ + +MODULE= r128 + +SRCS= r128_context.c r128_lock.c r128_state.c r128_texstate.c r128_dd.c \ + r128_screen.c r128_tex.c r128_tris.c r128_ioctl.c r128_span.c \ + r128_texmem.c + +COPTS.r128_span.c= -Wno-error # XXX const +CWARNFLAGS.clang+= -Wno-constant-logical-operand + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/r200/Makefile b/external/mit/xorg/lib/dri/r200/Makefile new file mode 100644 index 000000000..db68e2896 --- /dev/null +++ b/external/mit/xorg/lib/dri/r200/Makefile @@ -0,0 +1,61 @@ +# $NetBSD: Makefile,v 1.8 2011/08/11 23:15:37 joerg Exp $ + +MODULE= r200 + +CPPFLAGS+= -DRADEON_COMMON=1 -DRADEON_COMMON_FOR_R200 -DRADEON_R200 +CPPFLAGS+= -DHAVE_LIBDRM_RADEON + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/r200 \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon/server + +DRI_EXTRA_PATHS= ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon +SRCS= \ + radeon_bo_legacy.c \ + radeon_common_context.c \ + radeon_common.c \ + radeon_cs_legacy.c \ + radeon_dma.c \ + radeon_debug.c \ + radeon_fbo.c \ + radeon_lock.c \ + radeon_mipmap_tree.c \ + radeon_queryobj.c \ + radeon_span.c \ + radeon_tex_copy.c \ + radeon_texture.c \ + r200_blit.c \ + r200_context.c \ + r200_ioctl.c \ + r200_state.c \ + r200_state_init.c \ + r200_cmdbuf.c \ + r200_pixel.c \ + r200_tex.c \ + r200_texstate.c \ + r200_tcl.c \ + r200_swtcl.c \ + r200_maos.c \ + r200_sanity.c \ + r200_fragshader.c \ + r200_vertprog.c \ + radeon_screen.c + +SRCS+= \ + radeon_cs_space_drm.c \ + radeon_bo.c \ + radeon_cs.c + +LIBDPLIBS+= drm_radeon ${.CURDIR}/../../libdrm_radeon + +# XXX +.if ${MACHINE_ARCH} == "sparc64" +COPTS.r200_tcl.c= -Wno-error +.endif + +COPTS.radeon_screen.c= -Wno-error # XXX const + +CWARNFLAGS.clang+= -Wno-format -Wno-constant-logical-operand \ + -Wno-empty-body + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/r300/Makefile b/external/mit/xorg/lib/dri/r300/Makefile new file mode 100644 index 000000000..09a84ea29 --- /dev/null +++ b/external/mit/xorg/lib/dri/r300/Makefile @@ -0,0 +1,93 @@ +# $NetBSD: Makefile,v 1.8 2011/08/11 23:15:37 joerg Exp $ + +MODULE= r300 + +CPPFLAGS+= -DCOMPILE_R300 -DR200_MERGED=0 \ + -DRADEON_COMMON=1 -DRADEON_COMMON_FOR_R300 \ + -DRADEON_R300 +CPPFLAGS+= -DHAVE_LIBDRM_RADEON + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/r300 \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/r300/compiler \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon/server + +DRI_EXTRA_PATHS= ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon \ + ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/r300/compiler +SRCS= \ + radeon_bo_legacy.c \ + radeon_buffer_objects.c \ + radeon_common_context.c \ + radeon_common.c \ + radeon_cs_legacy.c \ + radeon_dma.c \ + radeon_debug.c \ + radeon_fbo.c \ + radeon_lock.c \ + radeon_mipmap_tree.c \ + radeon_span.c \ + radeon_queryobj.c \ + radeon_tex_copy.c \ + radeon_texture.c \ + radeon_screen.c \ + r300_blit.c \ + r300_context.c \ + r300_draw.c \ + r300_cmdbuf.c \ + r300_state.c \ + r300_render.c \ + r300_tex.c \ + r300_texstate.c \ + r300_vertprog.c \ + r300_fragprog_common.c \ + r300_shader.c \ + radeon_mesa_to_rc.c \ + r300_emit.c \ + r300_swtcl.c + +SRCS+= \ + radeon_cs_space_drm.c \ + radeon_bo.c \ + radeon_cs.c + +# r300/compiler +SRCS+= \ + radeon_code.c \ + radeon_compiler.c \ + radeon_program.c \ + radeon_program_print.c \ + radeon_opcodes.c \ + radeon_program_alu.c \ + radeon_program_pair.c \ + radeon_pair_translate.c \ + radeon_pair_schedule.c \ + radeon_pair_regalloc.c \ + radeon_dataflow.c \ + radeon_dataflow_deadcode.c \ + radeon_dataflow_swizzles.c \ + r3xx_fragprog.c \ + r300_fragprog.c \ + r300_fragprog_swizzle.c \ + r300_fragprog_emit.c \ + r500_fragprog.c \ + r500_fragprog_emit.c \ + r3xx_vertprog.c \ + r3xx_vertprog_dump.c \ + memory_pool.c + +LIBDPLIBS+= drm_radeon ${.CURDIR}/../../libdrm_radeon + +# ../common/mm.c \ +# ../common/vblank.c \ +# ../common/xmlconfig.c \ +# ../common/dri_util.c \ + +COPTS.radeon_screen.c= -Wno-error # XXX const + +# uses C99 variable decl scoping +CFLAGS+= -std=c99 + +CWARNFLAGS.clang+= -Wno-empty-body -Wno-format -Wno-constant-conversion \ + -Wno-constant-logical-operand + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/r600/Makefile b/external/mit/xorg/lib/dri/r600/Makefile new file mode 100644 index 000000000..5b3ee6070 --- /dev/null +++ b/external/mit/xorg/lib/dri/r600/Makefile @@ -0,0 +1,64 @@ +# $NetBSD: Makefile,v 1.4 2011/08/11 23:15:37 joerg Exp $ + +MODULE= r600 + +# Uses C99 for() variable decls. +COPTS+= -std=c99 + +CPPFLAGS+= -DRADEON_COMMON=1 -DRADEON_R600 +CPPFLAGS+= -DHAVE_LIBDRM_RADEON + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/r600 \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon \ + -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon/server + +DRI_EXTRA_PATHS= ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon +SRCS= \ + radeon_bo_legacy.c \ + radeon_common_context.c \ + radeon_buffer_objects.c \ + radeon_common.c \ + radeon_cs_legacy.c \ + radeon_dma.c \ + radeon_debug.c \ + radeon_fbo.c \ + radeon_lock.c \ + radeon_mipmap_tree.c \ + radeon_span.c \ + radeon_texture.c \ + radeon_queryobj.c \ + radeon_screen.c \ + radeon_tex_copy.c \ + r600_blit.c \ + r600_context.c \ + r600_cmdbuf.c \ + r600_emit.c \ + r700_assembler.c \ + r700_fragprog.c \ + r700_vertprog.c \ + r700_shader.c \ + r700_shaderinst.c \ + r700_ioctl.c \ + r700_oglprog.c \ + r700_chip.c \ + r700_state.c \ + r700_clear.c \ + r700_render.c \ + r600_tex.c \ + r600_texstate.c \ + r700_debug.c + +SRCS+= \ + radeon_cs_space_drm.c \ + radeon_bo.c \ + radeon_cs.c + +LIBDPLIBS+= drm_radeon ${.CURDIR}/../../libdrm_radeon + +COPTS.radeon_screen.c= -Wno-error # XXX const +COPTS.r700_assembler.c= -Wno-error # XXX pointer casts + +CWARNFLAGS.clang+= -Wno-constant-logical-operand -Wno-empty-body \ + -Wno-format + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/radeon/Makefile b/external/mit/xorg/lib/dri/radeon/Makefile new file mode 100644 index 000000000..24677f681 --- /dev/null +++ b/external/mit/xorg/lib/dri/radeon/Makefile @@ -0,0 +1,54 @@ +# $NetBSD: Makefile,v 1.8 2011/08/11 23:15:37 joerg Exp $ + +MODULE= radeon + +CPPFLAGS+= -DRADEON_COMMON=0 -DRADEON_R100 +CPPFLAGS+= -DHAVE_LIBDRM_RADEON + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/radeon + +SRCS= \ + radeon_blit.c \ + radeon_bo_legacy.c \ + radeon_common_context.c \ + radeon_common.c \ + radeon_cs_legacy.c \ + radeon_dma.c \ + radeon_debug.c \ + radeon_fbo.c \ + radeon_lock.c \ + radeon_mipmap_tree.c \ + radeon_queryobj.c \ + radeon_span.c \ + radeon_texture.c \ + radeon_context.c \ + radeon_ioctl.c \ + radeon_screen.c \ + radeon_state.c \ + radeon_state_init.c \ + radeon_tex.c \ + radeon_tex_copy.c \ + radeon_texstate.c \ + radeon_tcl.c \ + radeon_swtcl.c \ + radeon_maos.c \ + radeon_sanity.c \ + +SRCS+= \ + radeon_cs_space_drm.c \ + radeon_bo.c \ + radeon_cs.c + +LIBDPLIBS+= drm_radeon ${.CURDIR}/../../libdrm_radeon + +# XXX +.if ${MACHINE_ARCH} == "sparc64" +COPTS.radeon_tcl.c= -Wno-error +.endif + +COPTS.radeon_screen.c= -Wno-error # XXX const + +CWARNFLAGS.clang+= -Wno-constant-logical-operand -Wno-empty-body \ + -Wno-format + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/s3v/Makefile b/external/mit/xorg/lib/dri/s3v/Makefile new file mode 100644 index 000000000..aa12da59d --- /dev/null +++ b/external/mit/xorg/lib/dri/s3v/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.3 2008/09/26 07:15:53 rtr Exp $ + +MODULE= s3v + +SRCS= s3v_context.c s3v_dd.c s3v_inithw.c s3v_lock.c s3v_render.c \ + s3v_screen.c s3v_span.c s3v_state.c s3v_tex.c s3v_texmem.c \ + s3v_texstate.c s3v_tris.c s3v_vb.c s3v_xmesa.c + +COPTS.s3v_tris.c= -Wno-error +COPTS.s3v_texmem.c= -Wno-error + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/savage/Makefile b/external/mit/xorg/lib/dri/savage/Makefile new file mode 100644 index 000000000..6806e6df2 --- /dev/null +++ b/external/mit/xorg/lib/dri/savage/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.3 2011/08/11 23:15:37 joerg Exp $ + +MODULE= savage + +SRCS= savage_xmesa.c savagedd.c savagestate.c savagetex.c savagetris.c \ + savagerender.c savageioctl.c savagespan.c + +CWARNFLAGS.clang+= -Wno-constant-logical-operand -Wno-error + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/sis/Makefile b/external/mit/xorg/lib/dri/sis/Makefile new file mode 100644 index 000000000..c728d56cc --- /dev/null +++ b/external/mit/xorg/lib/dri/sis/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.3 2011/08/11 23:15:37 joerg Exp $ + +MODULE= sis + +SRCS= sis6326_state.c sis6326_clear.c sis_alloc.c sis_clear.c sis_context.c \ + sis_dd.c sis_fog.c sis_lock.c sis_screen.c sis_span.c sis_state.c \ + sis_stencil.c sis_tex.c sis_texstate.c sis_tris.c + +CWARNFLAGS.clang+= -Wno-constant-logical-operand + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/swrast/Makefile b/external/mit/xorg/lib/dri/swrast/Makefile new file mode 100644 index 000000000..73a294854 --- /dev/null +++ b/external/mit/xorg/lib/dri/swrast/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2009/06/16 00:26:11 mrg Exp $ + +MODULE= swrast + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/swrast + +DRI_EXTRA_PATHS= ${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/swrast +SRCS= \ + swrast.c \ + swrast_span.c + +COPTS.swrast.c= -Wno-error # XXX const + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/tdfx/Makefile b/external/mit/xorg/lib/dri/tdfx/Makefile new file mode 100644 index 000000000..1ddb47bd5 --- /dev/null +++ b/external/mit/xorg/lib/dri/tdfx/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.4 2011/08/11 23:15:37 joerg Exp $ + +MODULE= tdfx + +SRCS= tdfx_context.c tdfx_dd.c tdfx_lock.c tdfx_pixels.c tdfx_render.c \ + tdfx_screen.c tdfx_span.c tdfx_state.c tdfx_tex.c tdfx_texman.c \ + tdfx_texstate.c tdfx_tris.c tdfx_vb.c + +COPTS.tdfx_screen.c= -Wno-error # XXX const +CWARNFLAGS.clang+= -Wno-constant-logical-operand \ + -Wno-tautological-compare + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/trident/Makefile b/external/mit/xorg/lib/dri/trident/Makefile new file mode 100644 index 000000000..32db730bb --- /dev/null +++ b/external/mit/xorg/lib/dri/trident/Makefile @@ -0,0 +1,8 @@ +# $NetBSD: Makefile,v 1.2 2008/09/21 14:08:46 lukem Exp $ + +MODULE= trident + +SRCS= trident_context.c trident_state.c trident_vb.c trident_dd.c \ + trident_tris.c + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/dri/unichrome/Makefile b/external/mit/xorg/lib/dri/unichrome/Makefile new file mode 100644 index 000000000..941208d92 --- /dev/null +++ b/external/mit/xorg/lib/dri/unichrome/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.3 2011/08/11 23:15:38 joerg Exp $ + +MODULE= unichrome + +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/drivers/dri/unichrome + +SRCS= via_context.c via_fb.c via_tex.c via_ioctl.c via_memcpy.c \ + via_render.c via_screen.c via_span.c via_state.c via_texcombine.c \ + via_tris.c + +CWARNFLAGS.clang+= -Wno-constant-logical-operand + +.include "${.CURDIR}/../dri.mk" diff --git a/external/mit/xorg/lib/fontconfig/Makefile b/external/mit/xorg/lib/fontconfig/Makefile new file mode 100644 index 000000000..7b38881d8 --- /dev/null +++ b/external/mit/xorg/lib/fontconfig/Makefile @@ -0,0 +1,8 @@ +# $NetBSD: Makefile,v 1.3 2008/11/01 21:38:14 cube Exp $ + +.include + +SUBDIR= fontconfig src etc + +.include +.include diff --git a/external/mit/xorg/lib/fontconfig/etc/Makefile b/external/mit/xorg/lib/fontconfig/etc/Makefile new file mode 100644 index 000000000..6f82e6734 --- /dev/null +++ b/external/mit/xorg/lib/fontconfig/etc/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2009/09/07 21:07:03 mrg Exp $ + +SUBDIR= conf.d conf.avail + +.include + +.PATH: ${X11SRCDIR.fontconfig} +CONFIGFILES= \ + fonts.conf \ + fonts.dtd + +FILESDIR= \ + /etc/fonts + +.include +.include +.include diff --git a/external/mit/xorg/lib/fontconfig/etc/conf.avail/Makefile b/external/mit/xorg/lib/fontconfig/etc/conf.avail/Makefile new file mode 100644 index 000000000..79f7961a9 --- /dev/null +++ b/external/mit/xorg/lib/fontconfig/etc/conf.avail/Makefile @@ -0,0 +1,41 @@ +# $NetBSD: Makefile,v 1.4 2013/06/03 20:23:39 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.fontconfig}/conf.d +CONFIGFILES= \ + 10-autohint.conf \ + 10-no-sub-pixel.conf \ + 10-sub-pixel-bgr.conf \ + 10-sub-pixel-rgb.conf \ + 10-sub-pixel-vbgr.conf \ + 10-sub-pixel-vrgb.conf \ + 10-scale-bitmap-fonts.conf \ + 10-unhinted.conf \ + 11-lcdfilter-default.conf \ + 11-lcdfilter-legacy.conf \ + 11-lcdfilter-light.conf \ + 20-unhint-small-vera.conf \ + 25-unhint-nonlatin.conf \ + 30-metric-aliases.conf \ + 30-urw-aliases.conf \ + 40-nonlatin.conf \ + 45-latin.conf \ + 49-sansserif.conf \ + 50-user.conf \ + 51-local.conf \ + 60-latin.conf \ + 65-fonts-persian.conf \ + 65-khmer.conf \ + 65-nonlatin.conf \ + 69-unifont.conf \ + 70-no-bitmaps.conf \ + 70-yes-bitmaps.conf \ + 80-delicious.conf \ + 90-synthetic.conf + +FILESDIR= \ + /etc/fonts/conf.avail + +.include +.include diff --git a/external/mit/xorg/lib/fontconfig/etc/conf.d/Makefile b/external/mit/xorg/lib/fontconfig/etc/conf.d/Makefile new file mode 100644 index 000000000..89283b7d3 --- /dev/null +++ b/external/mit/xorg/lib/fontconfig/etc/conf.d/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.3 2013/06/03 20:23:39 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.fontconfig}/conf.d +FONTCONFIG_LINKS= \ + 10-scale-bitmap-fonts.conf \ + 20-unhint-small-vera.conf \ + 30-urw-aliases.conf \ + 30-metric-aliases.conf \ + 40-nonlatin.conf \ + 45-latin.conf \ + 49-sansserif.conf \ + 50-user.conf \ + 51-local.conf \ + 60-latin.conf \ + 65-fonts-persian.conf \ + 65-nonlatin.conf \ + 69-unifont.conf \ + 80-delicious.conf \ + 90-synthetic.conf + +CONFAVAILDIR= ../conf.avail +CONFDIR= /etc/fonts/conf.d + +.for _conffile in ${FONTCONFIG_LINKS} +CONFIGSYMLINKS+=${CONFAVAILDIR}/${_conffile} ${CONFDIR}/${_conffile} +.endfor + +.include +.include diff --git a/external/mit/xorg/lib/fontconfig/etc/fonts.conf b/external/mit/xorg/lib/fontconfig/etc/fonts.conf new file mode 100644 index 000000000..55a073495 --- /dev/null +++ b/external/mit/xorg/lib/fontconfig/etc/fonts.conf @@ -0,0 +1,156 @@ + + + + + + + + + + + /usr/X11R7/lib/X11/fonts + /usr/pkg/lib/X11/fonts + fonts + + ~/.fonts + + + + + mono + + + monospace + + + + + + + sans serif + + + sans-serif + + + + + + + sans + + + sans-serif + + + + + conf.d + + + + /var/cache/fontconfig + fontconfig + + ~/.fontconfig + + + + + 0x0020 + 0x00A0 + 0x00AD + 0x034F + 0x0600 + 0x0601 + 0x0602 + 0x0603 + 0x06DD + 0x070F + 0x115F + 0x1160 + 0x1680 + 0x17B4 + 0x17B5 + 0x180E + 0x2000 + 0x2001 + 0x2002 + 0x2003 + 0x2004 + 0x2005 + 0x2006 + 0x2007 + 0x2008 + 0x2009 + 0x200A + 0x200B + 0x200C + 0x200D + 0x200E + 0x200F + 0x2028 + 0x2029 + 0x202A + 0x202B + 0x202C + 0x202D + 0x202E + 0x202F + 0x205F + 0x2060 + 0x2061 + 0x2062 + 0x2063 + 0x206A + 0x206B + 0x206C + 0x206D + 0x206E + 0x206F + 0x2800 + 0x3000 + 0x3164 + 0xFEFF + 0xFFA0 + 0xFFF9 + 0xFFFA + 0xFFFB + + + + 30 + + + + diff --git a/external/mit/xorg/lib/fontconfig/fontconfig/Makefile b/external/mit/xorg/lib/fontconfig/fontconfig/Makefile new file mode 100644 index 000000000..01d1b2156 --- /dev/null +++ b/external/mit/xorg/lib/fontconfig/fontconfig/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:21 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.fontconfig}/fontconfig + +INCSDIR=${X11INCDIR}/fontconfig + +INCS= fcfreetype.h fcprivate.h fontconfig.h + +.include +.include diff --git a/external/mit/xorg/lib/fontconfig/src/Makefile b/external/mit/xorg/lib/fontconfig/src/Makefile new file mode 100644 index 000000000..dccb27cac --- /dev/null +++ b/external/mit/xorg/lib/fontconfig/src/Makefile @@ -0,0 +1,134 @@ +# $NetBSD: Makefile,v 1.15 2013/06/27 12:44:58 wiz Exp $ + +.include + +LIB= fontconfig + +.PATH: ${X11SRCDIR.${LIB}}/src +SRCS= fcatomic.c \ + fcblanks.c \ + fccache.c \ + fccfg.c \ + fccharset.c \ + fccompat.c \ + fcdbg.c \ + fcdefault.c \ + fcdir.c \ + fcformat.c \ + fcfreetype.c \ + fcfs.c \ + fchash.c \ + fcinit.c \ + fclang.c \ + fclist.c \ + fcmatch.c \ + fcmatrix.c \ + fcname.c \ + fcobjs.c \ + fcpat.c \ + fcserialize.c \ + fcstat.c \ + fcstr.c \ + fcxml.c \ + ftglue.c + +.PATH: ${X11SRCDIR.${LIB}}/doc +MAN= FcAtomicCreate.3 FcAtomicDeleteNew.3 FcAtomicDestroy.3 FcAtomicLock.3 \ + FcAtomicNewFile.3 FcAtomicOrigFile.3 FcAtomicReplaceOrig.3 \ + FcAtomicUnlock.3 FcBlanksAdd.3 FcBlanksCreate.3 FcBlanksDestroy.3 \ + FcBlanksIsMember.3 FcCacheCopySet.3 FcCacheDir.3 FcCacheNumFont.3 \ + FcCacheNumSubdir.3 FcCacheSubdir.3 FcCharSetAddChar.3 FcCharSetCopy.3 \ + FcCharSetCount.3 FcCharSetCoverage.3 FcCharSetCreate.3 \ + FcCharSetDestroy.3 FcCharSetEqual.3 FcCharSetFirstPage.3 \ + FcCharSetHasChar.3 FcCharSetIntersect.3 FcCharSetIntersectCount.3 \ + FcCharSetIsSubset.3 FcCharSetNew.3 FcCharSetNextPage.3 \ + FcCharSetSubtract.3 FcCharSetSubtractCount.3 FcCharSetUnion.3 \ + FcConfigAppFontAddDir.3 FcConfigAppFontAddFile.3 \ + FcConfigAppFontClear.3 FcConfigBuildFonts.3 FcConfigCreate.3 \ + FcConfigDestroy.3 FcConfigEnableHome.3 FcConfigFilename.3 \ + FcConfigGetBlanks.3 FcConfigGetCache.3 FcConfigGetCacheDirs.3 \ + FcConfigGetConfigDirs.3 FcConfigGetConfigFiles.3 FcConfigGetCurrent.3 \ + FcConfigGetFontDirs.3 FcConfigGetFonts.3 FcConfigGetRescanInterval.3 \ + FcConfigHome.3 FcConfigParseAndLoad.3 FcConfigSetCurrent.3 \ + FcConfigSetRescanInterval.3 FcConfigSubstitute.3 \ + FcConfigSubstituteWithPat.3 FcConfigUptoDate.3 FcDefaultSubstitute.3 \ + FcDirCacheLoad.3 FcDirCacheLoadFile.3 FcDirCacheRead.3 \ + FcDirCacheUnlink.3 FcDirCacheUnload.3 FcDirCacheValid.3 FcDirSave.3 \ + FcDirScan.3 FcFileIsDir.3 FcFileScan.3 FcFini.3 FcFontList.3 \ + FcFontMatch.3 FcFontRenderPrepare.3 FcFontSetAdd.3 FcFontSetCreate.3 \ + FcFontSetDestroy.3 FcFontSetList.3 FcFontSetMatch.3 FcFontSetPrint.3 \ + FcFontSetSort.3 FcFontSetSortDestroy.3 FcFontSort.3 \ + FcFreeTypeCharIndex.3 FcFreeTypeCharSet.3 \ + FcFreeTypeCharSetAndSpacing.3 FcFreeTypeQuery.3 \ + FcFreeTypeQueryFace.3 FcGetLangs.3 FcGetVersion.3 FcInit.3 \ + FcInitBringUptoDate.3 FcInitLoadConfig.3 FcInitLoadConfigAndFonts.3 \ + FcInitReinitialize.3 FcIsLower.3 FcIsUpper.3 FcLangGetCharSet.3 \ + FcLangSetAdd.3 FcLangSetCompare.3 FcLangSetContains.3 FcLangSetCopy.3 \ + FcLangSetCreate.3 FcLangSetDestroy.3 FcLangSetEqual.3 \ + FcLangSetHasLang.3 FcLangSetHash.3 FcMatrixCopy.3 FcMatrixEqual.3 \ + FcMatrixInit.3 FcMatrixMultiply.3 FcMatrixRotate.3 FcMatrixScale.3 \ + FcMatrixShear.3 FcNameConstant.3 FcNameGetConstant.3 \ + FcNameGetObjectType.3 FcNameParse.3 FcNameRegisterConstants.3 \ + FcNameRegisterObjectTypes.3 FcNameUnparse.3 \ + FcNameUnregisterConstants.3 FcNameUnregisterObjectTypes.3 \ + FcObjectSetAdd.3 FcObjectSetBuild.3 FcObjectSetCreate.3 \ + FcObjectSetDestroy.3 FcPatternAdd-Type.3 FcPatternAdd.3 \ + FcPatternAddWeak.3 FcPatternBuild.3 FcPatternCreate.3 FcPatternDel.3 \ + FcPatternDestroy.3 FcPatternDuplicate.3 FcPatternEqual.3 \ + FcPatternEqualSubset.3 FcPatternGet-Type.3 FcPatternGet.3 \ + FcPatternHash.3 FcPatternPrint.3 FcPatternReference.3 \ + FcPatternRemove.3 FcStrBasename.3 FcStrCmp.3 FcStrCmpIgnoreCase.3 \ + FcStrCopy.3 FcStrCopyFilename.3 FcStrDirname.3 FcStrDowncase.3 \ + FcStrFree.3 FcStrListCreate.3 FcStrListDone.3 FcStrListNext.3 \ + FcStrPlus.3 FcStrSetAdd.3 FcStrSetAddFilename.3 FcStrSetCreate.3 \ + FcStrSetDel.3 FcStrSetDestroy.3 FcStrSetEqual.3 FcStrSetMember.3 \ + FcStrStr.3 FcStrStrIgnoreCase.3 FcToLower.3 FcUcs4ToUtf8.3 \ + FcUtf16Len.3 FcUtf16ToUcs4.3 FcUtf8Len.3 FcUtf8ToUcs4.3 \ + FcValueDestroy.3 FcValueEqual.3 FcValuePrint.3 FcValueSave.3 \ + FcCacheCreateTagFile.3 FcCharSetDelChar.3 FcGetDefaultLangs.3 \ + FcLangSetDel.3 FcLangSetSubtract.3 FcLangSetUnion.3 + +MAN+= fonts-conf.5 + +LIBDPLIBS=\ + expat ${NETBSDSRCDIR}/external/mit/expat/lib/libexpat \ + freetype ${.CURDIR}/../../freetype + +# XXX FONTCONFIG_PATH was arbitrarily chosen +CPPFLAGS+= -DHAVE_CONFIG_H +CPPFLAGS+= -DFONTCONFIG_PATH='"/etc/fonts"' \ + -DFC_DEFAULT_FONTS='"${X11FONTDIR}"' \ + -DFC_CACHEDIR='"/var/cache/fontconfig"' \ + -DHAVE_FT_BITMAP_SIZE_Y_PPEM \ + -DHAVE_FT_GET_BDF_PROPERTY \ + -DHAVE_FT_GET_NEXT_CHAR \ + -DHAVE_FT_GET_PS_FONT_INFO \ + -DHAVE_FT_GET_X11_FONT_FORMAT \ + -DHAVE_FT_HAS_PS_GLYPH_NAMES \ + -DHAVE_EXPAT -DXFREE86_FT2 -DHAVE_INTTYPES_H \ + -DHAVE_STDINT_H -DHAVE_RANDOM +.if defined(__MINIX) +CPPFLAGS+= -DFC_NO_MT=1 +.endif # defined(__MINIX) + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/freetype2 \ + -I${X11SRCDIR.freetype}/src \ + -I${X11SRCDIR.freetype}/include \ + -I${X11SRCDIR.${LIB}}/../include \ + -I. \ + -I${X11SRCDIR.${LIB}} + +.include "Makefile.fcarch" + +CLEANFILES+= fcarch.h + +PKGCONFIG= fontconfig + +# XXX +CPPFLAGS.fcxml.c= -Wno-error + +CWARNFLAGS.clang+= -Wno-pointer-sign -Wno-switch + +.include +.include diff --git a/external/mit/xorg/lib/fontconfig/src/Makefile.fcarch b/external/mit/xorg/lib/fontconfig/src/Makefile.fcarch new file mode 100644 index 000000000..cefec5889 --- /dev/null +++ b/external/mit/xorg/lib/fontconfig/src/Makefile.fcarch @@ -0,0 +1,8 @@ +# $NetBSD: Makefile.fcarch,v 1.3 2013/06/03 06:46:54 mrg Exp $ + +.ifndef _FONTCONFIG_FCARCH_MK_ +_FONTCONFIG_FCARCH_MK_=1 + +CPPFLAGS+= -DFC_ARCHITECTURE="\"${MACHINE_ARCH}\"" + +.endif diff --git a/external/mit/xorg/lib/fontconfig/src/shlib_version b/external/mit/xorg/lib/fontconfig/src/shlib_version new file mode 100644 index 000000000..b342e9274 --- /dev/null +++ b/external/mit/xorg/lib/fontconfig/src/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.4 2013/06/03 20:23:39 mrg Exp $ +# +major=2 +minor=2 diff --git a/external/mit/xorg/lib/freetype/Makefile b/external/mit/xorg/lib/freetype/Makefile new file mode 100644 index 000000000..77200e700 --- /dev/null +++ b/external/mit/xorg/lib/freetype/Makefile @@ -0,0 +1,107 @@ +# $NetBSD: Makefile,v 1.11 2013/06/05 08:42:56 mrg Exp $ + +.include + +LIB= freetype + +FREETYPE= ${X11SRCDIR.${LIB}} + +SUBDIR= freetype + +.PATH: ${FREETYPE}/src/base +SRCS= ftapi.c ftbase.c ftbbox.c ftbdf.c ftdebug.c ftfstype.c ftglyph.c \ + ftinit.c ftlcdfil.c ftmm.c ftpfr.c ftstroke.c ftsynth.c \ + ftsystem.c fttype1.c ftwinfnt.c ftxf86.c ftbitmap.c ftcid.c \ + ftgasp.c ftgxval.c ftotval.c ftpatent.c ftpfr.c + +.PATH: ${FREETYPE}/src/autofit +SRCS+= autofit.c + +#.PATH: ${FREETYPE}/src/autohint +#SRCS+= autohint.c + +.PATH: ${FREETYPE}/src/bdf +SRCS+= bdf.c + +.PATH: ${FREETYPE}/src/cache +SRCS+= ftcache.c + +.PATH: ${FREETYPE}/src/cff +SRCS+= cff.c + +.PATH: ${FREETYPE}/src/cid +SRCS+= type1cid.c + +.PATH: ${FREETYPE}/src/gzip +SRCS+= ftgzip.c + +.PATH: ${FREETYPE}/src/bzip2 +SRCS+= ftbzip2.c + +.PATH: ${FREETYPE}/src/lzw +SRCS+= ftlzw.c + +.PATH: ${FREETYPE}/src/pcf +SRCS+= pcf.c + +.PATH: ${FREETYPE}/src/pfr +SRCS+= pfr.c + +.PATH: ${FREETYPE}/src/psaux +SRCS+= psaux.c + +.PATH: ${FREETYPE}/src/pshinter +SRCS+= pshinter.c + +.PATH: ${FREETYPE}/src/psnames +SRCS+= psmodule.c + +.PATH: ${FREETYPE}/src/raster +SRCS+= raster.c + +.PATH: ${FREETYPE}/src/sfnt +SRCS+= sfnt.c + +.PATH: ${FREETYPE}/src/smooth +SRCS+= smooth.c + +.PATH: ${FREETYPE}/src/truetype +SRCS+= truetype.c + +.PATH: ${FREETYPE}/src/type1 +SRCS+= type1.c + +.PATH: ${FREETYPE}/src/type42 +SRCS+= type42.c + +.PATH: ${FREETYPE}/src/winfonts +SRCS+= winfnt.c + +.PATH: ${FREETYPE}/include +INCS= ft2build.h +INCSDIR=${X11INCDIR} + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -DFT_CONFIG_OPTION_SYSTEM_ZLIB \ + -DFT_CONFIG_CONFIG_H="" \ + -DFT2_BUILD_LIBRARY \ + -DFT_CONFIG_MODULES_H="" +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/freetype2 \ + -I${DESTDIR}${X11INCDIR}/freetype2/freetype/config \ + -I${X11SRCDIR.${LIB}}/include + +.if !defined(MKSUBPIXEL) || ${MKSUBPIXEL} != "no" +CPPFLAGS+= -DFT_CONFIG_OPTION_SUBPIXEL_RENDERING +.endif + +LIBDPLIBS= \ + z ${.CURDIR}/../../../../../lib/libz \ + bz2 ${.CURDIR}/../../../../../lib/libbz2 + +PKGCONFIG= freetype2 +PKGDIST.freetype2= ${.CURDIR} +PKGCONFIG_VERSION.freetype2= 9.20.3 + +.include +.include +.include diff --git a/external/mit/xorg/lib/freetype/freetype/Makefile b/external/mit/xorg/lib/freetype/freetype/Makefile new file mode 100644 index 000000000..6f06ccc9a --- /dev/null +++ b/external/mit/xorg/lib/freetype/freetype/Makefile @@ -0,0 +1,48 @@ +# $NetBSD: Makefile,v 1.15 2013/06/10 17:37:22 mrg Exp $ + +.include + +SUBDIR= config + +.PATH: ${X11SRCDIR.freetype}/include/freetype + +INCSDIR=${X11INCDIR}/freetype2/freetype + +INCS= freetype.h ftadvanc.h ftbbox.h ftbdf.h ftbitmap.h ftbzip2.h ftcache.h \ + ftchapters.h ftcid.h fterrdef.h fterrors.h ftgasp.h ftglyph.h \ + ftgxval.h ftgzip.h ftimage.h ftincrem.h ftlcdfil.h ftlist.h \ + ftlzw.h ftmac.h ftmm.h ftmodapi.h ftmoderr.h ftotval.h ftoutln.h \ + ftpfr.h ftrender.h ftsizes.h ftsnames.h ftstroke.h ftsynth.h \ + ftsystem.h fttrigon.h fttypes.h ftwinfnt.h ftxf86.h \ + t1tables.h ttnameid.h tttables.h tttags.h ttunpat.h \ + ftautoh.h ftcffdrv.h + +SCRIPTS= freetype-config + +CLEANFILES+= ${SCRIPTS} + +FT_VERSION!= sed -n '/^version_info=/{s/version_info=.\([0-9]*\):\([0-9]*\):\([0-9]*\)./\1.\2.\3/;p;q;}' < ${X11SRCDIR.freetype}/builds/unix/configure.ac + +# XXX hijack config-subst from Xft +CONFIG_SUBST= ${TOOL_SED} \ + -e 's,%prefix%,${X11ROOTDIR},' \ + -e 's,%exec_prefix%,${X11BINDIR},' \ + -e 's,%libdir%,${X11USRLIBDIR},g' \ + -e 's,%includedir%,${X11INCDIR},' \ + -e 's,%ft_version%,${FT_VERSION},' \ + -e 's,%build_libtool_libs%,yes,' \ + -e 's,%FT2_EXTRA_LIBS%,,' \ + -e 's,%LIBZ%,-lz,' \ + -e 's,%LIBBZ2%,-lbz2,' \ + -e 's,@FT2_EXTRA_LIBS@,,' \ + -e 's,@LIBZ@,-lz,' \ + -e 's,@LIBBZ2@,-lbz2,' + +.PATH: ${X11SRCDIR.freetype}/builds/unix +freetype-config: freetype-config.in + ${_MKTARGET_CREATE} + ${CONFIG_SUBST} < ${.ALLSRC} > ${.TARGET} + +.include +.include +.include diff --git a/external/mit/xorg/lib/freetype/freetype/cache/Makefile b/external/mit/xorg/lib/freetype/freetype/cache/Makefile new file mode 100644 index 000000000..5e90f259e --- /dev/null +++ b/external/mit/xorg/lib/freetype/freetype/cache/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.freetype}/include/freetype/cache + +INCSDIR=${X11INCDIR}/freetype2/freetype/cache + +INCS= ftcimage.h ftcmanag.h \ + ftcsbits.h ftcmru.h + +.include +.include diff --git a/external/mit/xorg/lib/freetype/freetype/config/Makefile b/external/mit/xorg/lib/freetype/freetype/config/Makefile new file mode 100644 index 000000000..bd55efc27 --- /dev/null +++ b/external/mit/xorg/lib/freetype/freetype/config/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.freetype}/include/freetype/config + +INCSDIR=${X11INCDIR}/freetype2/freetype/config + +INCS= ftconfig.h ftheader.h ftmodule.h ftoption.h ftstdlib.h + +.include +.include diff --git a/external/mit/xorg/lib/freetype/freetype2.pc.in b/external/mit/xorg/lib/freetype/freetype2.pc.in new file mode 100644 index 000000000..11d684f8a --- /dev/null +++ b/external/mit/xorg/lib/freetype/freetype2.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=${prefix} +libdir=${prefix}/lib +includedir=${prefix}/include + +Name: FreeType 2 +Description: A free, high-quality, and portable font engine. +Version: @VERSION@ +Requires: +Libs: -L${libdir} -lfreetype -lz +Cflags: -I${includedir}/freetype2 -I${includedir} diff --git a/external/mit/xorg/lib/freetype/shlib_version b/external/mit/xorg/lib/freetype/shlib_version new file mode 100644 index 000000000..588ed99d8 --- /dev/null +++ b/external/mit/xorg/lib/freetype/shlib_version @@ -0,0 +1,6 @@ +# $NetBSD: shlib_version,v 1.6 2013/06/05 08:42:56 mrg Exp $ +# +# XXX XXX XXX netbsd xsrc xfree 4.5 freetype used "major=9"! +# +major=7 +minor=4 diff --git a/external/mit/xorg/lib/libFS/Makefile b/external/mit/xorg/lib/libFS/Makefile new file mode 100644 index 000000000..c830b4f7d --- /dev/null +++ b/external/mit/xorg/lib/libFS/Makefile @@ -0,0 +1,41 @@ +# $NetBSD: Makefile,v 1.3 2012/04/04 10:59:45 joerg Exp $ + +.include +.if defined(__MINIX) +NOCLANGERROR= yes +NOGCCERROR= yes +.endif # defined(__MINIX) + +LIB= FS +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/fonts + +SRCS= FSCloseFt.c FSClServ.c FSConnServ.c FSErrDis.c FSErrHndlr.c FSFlush.c \ + FSFontInfo.c FSFtNames.c FSGetCats.c FSlibInt.c FSListCats.c \ + FSListExt.c FSMisc.c FSNextEv.c FSOpenFont.c FSOpenServ.c FSQGlyphs.c \ + FSQuExt.c FSQXExt.c FSQXInfo.c FSServName.c FSSetCats.c FSSync.c \ + FSSynchro.c fs_transport.c + +CWARNFLAGS.clang+= -Wno-string-plus-int + +INCS= FSlib.h +INCSDIR=${X11INCDIR}/X11/fonts + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/fonts +CPPFLAGS+= -I${X11SRCDIR.${LIB}}/../include + +CONN_DEFINES = ${X11FLAGS.CONNECTION} -DFS_t -DTRANS_CLIENT +SOCK_DEFINES = -DBSD44SOCKETS + +CPPFLAGS+= $(CONN_DEFINES) $(SOCK_DEFINES) + +# XXX +COPTS.FSGetCats.c+= -Wno-error +COPTS.FSListExt.c+= -Wno-error +COPTS.FSOpenServ.c+= -Wno-error + +PKGCONFIG= libfs +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libFS/shlib_version b/external/mit/xorg/lib/libFS/shlib_version new file mode 100644 index 000000000..00a39cdf0 --- /dev/null +++ b/external/mit/xorg/lib/libFS/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:10 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libGL/Makefile b/external/mit/xorg/lib/libGL/Makefile new file mode 100644 index 000000000..7394d3883 --- /dev/null +++ b/external/mit/xorg/lib/libGL/Makefile @@ -0,0 +1,133 @@ +# $NetBSD: Makefile,v 1.18 2012/03/22 23:46:27 joerg Exp $ + +.include + +LIB= GL + +SUBDIR= internal + +# glx +.PATH: ${X11SRCDIR.MesaLib}/src/glx +SRCS.glx= glcontextmodes.c clientattrib.c compsize.c eval.c glxcmds.c \ + glxext.c glxextensions.c indirect.c indirect_init.c \ + indirect_size.c indirect_window_pos.c \ + indirect_transpose_matrix.c indirect_vertex_array.c \ + indirect_vertex_program.c pixel.c pixelstore.c render2.c \ + renderpix.c single2.c singlepix.c vertarr.c xfont.c \ + glx_pbuffer.c glx_query.c \ + glxcurrent.c indirect_texture_compression.c + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/glapi +SRCS.glx+= glapi.c glapi_dispatch.c glapi_getproc.c glapi_nop.c glthread.c + +# XXX see TODO +#.if ${MACHINE_ARCH} == "i386" +#.PATH: ${X11SRCDIR.MesaLib}/src/mesa/x86 +#SRCS.glx+= glapi_x86.S +#CPPFLAGS+= -DUSE_X86_ASM -I${X11SRCDIR.MesaLib}/src/mesa/x86 +## -DUSE_X86_ASM $(MMX_DEFS) $(3DNOW_DEFS) $(SSE_DEFS) +#.endif + + +.if ${X11DRI} != "no" +# dri +SRCS.dri= XF86dri.c dri_glx.c drisw_glx.c dri_common.c \ + glxhash.c dri2_glx.c dri2.c +.for fn in ${SRCS.dri} +CPPFLAGS.${fn}=-DDEFAULT_DRIVER_DIR=\"${X11USRLIBDIR}/modules/dri\" +.endfor +.endif + +MESA_SRC_MODULES= main math vbo tnl shader swrast slang glapi common \ + osmesa ss + +.include "../libOSMesa/libmesa.mk" + + +.PATH: ${X11SRCDIR.MesaLib}/src/glw +.PATH: ${X11SRCDIR.MesaLib}/include/GL +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/drivers/x11 +INCS= GLwDrawA.h GLwDrawAP.h GLwMDrawA.h GLwMDrawAP.h gl.h gl_mangle.h \ + glext.h glx.h glx_mangle.h glxext.h xmesa.h xmesa_x.h \ + xmesa_xf86.h +INCSDIR=${X11INCDIR}/GL + +SRCS+= ${SRCS.dri} ${SRCS.glx} + +.include "../../tools/glsl/Makefile.glslsrcs" + +SRCS+= ${SRCS.pp} ${SRCS.cl} + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/GL \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${X11SRCDIR.MesaLib}/include \ + -I${X11SRCDIR.MesaLib}/include/GL/internal \ + -I${X11SRCDIR.MesaLib}/src/mesa/main \ + -I${X11SRCDIR.MesaLib}/src/mesa/glapi \ + -I${X11SRCDIR.MesaLib}/src/mesa \ + ${X11FLAGS.THREADLIB} + +# -I${X11SRCDIR.dri2proto}/src/mesa \ + +.if !defined(__MINIX) +CFLAGS+= -fno-strict-aliasing -fvisibility=hidden -pthread +CPPFLAGS+= -DUSE_SSE_SYSCTL_DETECTION \ + -D__GLX_ALIGN64 \ + -DMESA_EXECMEM_MMAP \ + -DEXEC_HEAP_SIZE=10485760 \ + -D_NETBSD_SOURCE \ + -DUSE_NATIVE_LIBM_FUNCS \ + -DPTHREADS \ + -DUSE_EXTERNAL_DXTN_LIB=1 \ + -DIN_DRI_DRIVER \ + -DGLX_DIRECT_RENDERING \ + -DGLX_INDIRECT_RENDERING \ + -DHZ=100 \ + -DHAVE_ALIAS \ + -DXF86VIDMODE \ + -UIN_DRI_DRIVER +.else +CFLAGS+= -fno-strict-aliasing -fvisibility=hidden +CPPFLAGS+= -DUSE_SSE_SYSCTL_DETECTION \ + -D__GLX_ALIGN64 \ + -DMESA_EXECMEM_MMAP \ + -DEXEC_HEAP_SIZE=10485760 \ + -D_NETBSD_SOURCE \ + -DUSE_NATIVE_LIBM_FUNCS \ + -DUSE_EXTERNAL_DXTN_LIB=1 \ + -DGLX_DIRECT_RENDERING \ + -DGLX_INDIRECT_RENDERING \ + -DHZ=100 \ + -DHAVE_ALIAS \ + -DXF86VIDMODE \ + -UIN_DRI_DRIVER +.endif # !defined(__MINIX) + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic \ + Xxf86vm ${.CURDIR}/../libXxf86vm \ + Xfixes ${.CURDIR}/../libXfixes \ + Xdamage ${.CURDIR}/../libXdamage \ + drm ${.CURDIR}/../libdrm \ + m ${.CURDIR}/../../../../../lib/libm + +# XXX XXX +COPTS.dri_glx.c= -Wno-error +COPTS.dri2_glx.c= -Wno-error +COPTS.drisw_glx.c= -Wno-error +COPTS.glxext.c= -Wno-error +COPTS.indirect_vertex_program.c= -Wno-error +MKLINT=no + +PKGCONFIG= gl +PKGDIST.gl= ${X11SRCDIR.MesaLib}/src/mesa +.include "${.CURDIR}/../libGL/mesa-ver.mk" +PKGCONFIG_VERSION.gl= ${MESA_VER} + +CWARNFLAGS.clang+= -Wno-tautological-compare -Wno-format -Wno-constant-conversion + +.include +.include +.include diff --git a/external/mit/xorg/lib/libGL/Makefile.mesa b/external/mit/xorg/lib/libGL/Makefile.mesa new file mode 100644 index 000000000..619714895 --- /dev/null +++ b/external/mit/xorg/lib/libGL/Makefile.mesa @@ -0,0 +1,185 @@ + +SRCS.mesa= \ + api_arrayelt.c \ + api_exec.c \ + api_loopback.c \ + api_noop.c \ + api_validate.c \ + accum.c \ + attrib.c \ + arrayobj.c \ + blend.c \ + bufferobj.c \ + buffers.c \ + clear.c \ + clip.c \ + colortab.c \ + context.c \ + convolve.c \ + cpuinfo.c \ + debug.c \ + depth.c \ + depthstencil.c \ + dlist.c \ + dlopen.c \ + drawpix.c \ + enable.c \ + enums.c \ + eval.c \ + execmem.c \ + extensions.c \ + fbobject.c \ + feedback.c \ + ffvertex_prog.c \ + fog.c \ + formats.c \ + framebuffer.c \ + get.c \ + getstring.c \ + hash.c \ + hint.c \ + histogram.c \ + image.c \ + imports.c \ + light.c \ + lines.c \ + matrix.c \ + mipmap.c \ + mm.c \ + multisample.c \ + pixel.c \ + pixelstore.c \ + points.c \ + polygon.c \ + queryobj.c \ + rastpos.c \ + rbadaptors.c \ + readpix.c \ + remap.c \ + renderbuffer.c \ + scissor.c \ + shaders.c \ + shared.c \ + state.c \ + stencil.c \ + syncobj.c \ + texcompress.c \ + texcompress_s3tc.c \ + texcompress_fxt1.c \ + texenv.c \ + texenvprogram.c \ + texfetch.c \ + texformat.c \ + texgen.c \ + texgetimage.c \ + teximage.c \ + texobj.c \ + texparam.c \ + texrender.c \ + texstate.c \ + texstore.c \ + varray.c \ + viewport.c \ + vtxfmt.c + + +# XXX avoid source name clashes with glx +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/main +BUILDSYMLINKS= ${X11SRCDIR.MesaLib}/src/mesa/main/pixel.c MESApixel.c \ + ${X11SRCDIR.MesaLib}/src/mesa/main/eval.c MESAeval.c + + + +# math +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/math +SRCS.math= \ + m_debug_clip.c \ + m_debug_norm.c \ + m_debug_xform.c \ + m_eval.c \ + m_matrix.c \ + m_translate.c \ + m_vector.c + +SRCS.math+= \ + m_xform.c + + +# swrast +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/swrast +SRCS.swrast= \ + s_aaline.c \ + s_aatriangle.c \ + s_accum.c \ + s_alpha.c \ + s_atifragshader.c \ + s_bitmap.c \ + s_blend.c \ + s_blit.c \ + s_clear.c \ + s_copypix.c \ + s_context.c \ + s_depth.c \ + s_drawpix.c \ + s_feedback.c \ + s_fog.c \ + s_fragprog.c \ + s_lines.c \ + s_logic.c \ + s_masking.c \ + s_points.c \ + s_readpix.c \ + s_span.c \ + s_stencil.c \ + s_texcombine.c \ + s_texfilter.c \ + s_triangle.c \ + s_zoom.c + + +# swrast_setup +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/swrast_setup +SRCS.ss= \ + ss_context.c \ + ss_triangle.c + + +# tnl +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/tnl +SRCS.tnl= \ + t_context.c \ + t_pipeline.c \ + t_draw.c \ + t_rasterpos.c \ + t_vb_program.c \ + t_vb_render.c \ + t_vb_texgen.c \ + t_vb_texmat.c \ + t_vb_vertex.c \ + t_vb_cull.c \ + t_vb_fog.c \ + t_vb_light.c \ + t_vb_normals.c \ + t_vb_points.c \ + t_vp_build.c \ + t_vertex.c \ + t_vertex_sse.c \ + t_vertex_generic.c + + +.for fn in ${SRCS.glx} ${SRCS.dri} ${SRCS.mesa} +CPPFLAGS.${fn}+=-I${X11SRCDIR.xc}/lib/GL/dri \ + -I${X11SRCDIR.xc}/lib/GL/glx \ + -I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/os-support \ + -I${X11SRCDIR.xc}/programs/Xserver/hw/xfree86/os-support/shared/drm/kernel \ + -I${X11SRCDIR.xc}/programs/Xserver/GL/dri \ + -I${X11SRCDIR.MesaLib}/src/mesa/array_cache \ + -I${X11SRCDIR.MesaLib}/src/mesa \ + -I${X11SRCDIR.MesaLib}/src/mesa/swrast_setup \ + -I${X11SRCDIR.MesaLib}/src/mesa/tnl \ + -I${X11SRCDIR.MesaLib}/src/mesa/include +CPPFLAGS.${fn}+=${X11FLAGS.DRI} +.endfor + +SRCS+= ${SRCS.dri} ${SRCS.mesa} ${SRCS.ac} ${SRCS.math} \ + ${SRCS.swrast} ${SRCS.ss} ${SRCS.tnl} diff --git a/external/mit/xorg/lib/libGL/internal/Makefile b/external/mit/xorg/lib/libGL/internal/Makefile new file mode 100644 index 000000000..1f5221a26 --- /dev/null +++ b/external/mit/xorg/lib/libGL/internal/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1 2010/05/22 08:52:34 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.MesaLib}/include/GL/internal + +INCS= dri_interface.h sarea.h +INCSDIR=${X11INCDIR}/GL/internal + +NOOBJ= # defined + +.include +.include diff --git a/external/mit/xorg/lib/libGL/mesa-ver.mk b/external/mit/xorg/lib/libGL/mesa-ver.mk new file mode 100644 index 000000000..076a705f4 --- /dev/null +++ b/external/mit/xorg/lib/libGL/mesa-ver.mk @@ -0,0 +1,3 @@ +# $NetBSD: mesa-ver.mk,v 1.1 2010/11/22 21:05:29 mrg Exp $ + +MESA_VER= 7.8.2 diff --git a/external/mit/xorg/lib/libGL/shlib_version b/external/mit/xorg/lib/libGL/shlib_version new file mode 100644 index 000000000..0ca2b9a32 --- /dev/null +++ b/external/mit/xorg/lib/libGL/shlib_version @@ -0,0 +1,5 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:10 christos Exp $ +# +# XXX netbsd-4 has major=1 minor=2 +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libGLU/Makefile b/external/mit/xorg/lib/libGLU/Makefile new file mode 100644 index 000000000..5179f0f03 --- /dev/null +++ b/external/mit/xorg/lib/libGLU/Makefile @@ -0,0 +1,110 @@ +# $NetBSD: Makefile,v 1.12 2013/09/12 17:14:20 joerg Exp $ + +NOLINT= 1 # XTODO: tess.ln SIGSEGVs lint :( + +.include + +LIB= GLU +LIBISCXX= yes + +GLUDIR= ${X11SRCDIR.MesaLib}/src/glu/sgi + +SRCS.libutil= error.c glue.c mipmap.c project.c quad.c registry.c +.PATH: ${GLUDIR}/libutil + +SRCS.libtess= dict.c geom.c memalloc.c mesh.c normal.c priorityq.c \ + render.c sweep.c tess.c tessmono.c +.PATH: ${GLUDIR}/libtess + +SRCS.interface= bezierEval.cc bezierPatch.cc bezierPatchMesh.cc \ + glcurveval.cc glinterface.cc glrenderer.cc \ + glsurfeval.cc incurveeval.cc insurfeval.cc +.PATH: ${GLUDIR}/libnurbs/interface +.for fn in ${SRCS.interface} +CPPFLAGS.${fn}+=-I${GLUDIR}/libnurbs/internals \ + -I${GLUDIR}/libnurbs/nurbtess \ + -DLIBRARYBUILD +.endfor + +SRCS.internals= arc.cc arcsorter.cc arctess.cc backend.cc \ + basiccrveval.cc basicsurfeval.cc bin.cc bufpool.cc \ + cachingeval.cc ccw.cc coveandtiler.cc curve.cc \ + curvelist.cc curvesub.cc dataTransform.cc displaylist.cc \ + flist.cc flistsorter.cc hull.cc intersect.cc \ + knotvector.cc mapdesc.cc mapdescv.cc maplist.cc \ + mesher.cc monoTriangulationBackend.cc monotonizer.cc \ + mycode.cc nurbsinterfac.cc nurbstess.cc patch.cc \ + patchlist.cc quilt.cc reader.cc renderhints.cc \ + slicer.cc sorter.cc splitarcs.cc subdivider.cc \ + tobezier.cc trimline.cc trimregion.cc trimvertpool.cc \ + uarray.cc varray.cc +.PATH: ${GLUDIR}/libnurbs/internals +.for fn in ${SRCS.internals} +CPPFLAGS.${fn}+=-I${GLUDIR}/libnurbs/internals \ + -I${GLUDIR}/libnurbs/nurbtess \ + -I${GLUDIR}/libutil \ + -DLIBRARYBUILD -D_EXTENSIONS_ +.endfor + +SRCS.nurbtess= directedLine.cc gridWrap.cc monoChain.cc monoPolyPart.cc \ + monoTriangulation.cc partitionX.cc partitionY.cc \ + polyDBG.cc polyUtil.cc primitiveStream.cc quicksort.cc \ + rectBlock.cc sampleComp.cc sampleCompBot.cc \ + sampleCompRight.cc sampleCompTop.cc sampleMonoPoly.cc \ + sampledLine.cc searchTree.cc +.PATH: ${GLUDIR}/libnurbs/nurbtess +.for fn in ${SRCS.nurbtess} +CPPFLAGS.${fn}+=-I${GLUDIR}/libnurbs/internals \ + -I${GLUDIR}/libnurbs/nurbtess \ + -DLIBRARYBUILD +.endfor + +CPPFLAGS+= -I${GLUDIR}/include +.if !defined(__MINIX) +CPPFLAGS+= -DPTHREADS -DUSE_XSHM -DHZ=100 -DNDEBUG -DLIBRARYBUILD +.else +CPPFLAGS+= -DUSE_XSHM -DHZ=100 -DNDEBUG -DLIBRARYBUILD +.endif # !defined(__MINIX) + +SRCS= ${SRCS.libutil} ${SRCS.libtess} \ + ${SRCS.interface} ${SRCS.internals} ${SRCS.nurbtess} + +.if !defined(__MINIX) +CFLAGS+= -fno-strict-aliasing -fvisibility=hidden -pthread +.else +CFLAGS+= -fno-strict-aliasing -fvisibility=hidden +.endif # !defined(__MINIX) + +.PATH: ${X11SRCDIR.MesaLib}/include/GL +INCS= glu.h glu_mangle.h +INCSDIR=${X11INCDIR}/GL + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic \ + GL ${.CURDIR}/../libGL \ + Xxf86vm ${.CURDIR}/../libXxf86vm \ + Xfixes ${.CURDIR}/../libXfixes \ + Xdamage ${.CURDIR}/../libXdamage \ + drm ${.CURDIR}/../libdrm \ + m ${NETBSDSRCDIR}/lib/libm + +PKGCONFIG= glu +PKGDIST.glu= ${X11SRCDIR.MesaLib}/src/glu +.include "${.CURDIR}/../libGL/mesa-ver.mk" +PKGCONFIG_VERSION.glu= ${MESA_VER} + +.include +.include + +# XXX +.if defined(HAVE_GCC) && ${HAVE_GCC} >= 45 +COPTS.arcsorter.cc+= -Wno-error +COPTS.sorter.cc+= -Wno-error +COPTS.tobezier.cc+= -Wno-error +.endif + +.if ${MACHINE_ARCH} == "m68000" || ${MACHINE_ARCH} == "m68k" +COPTS.sampleCompTop.cc+= -O0 +.endif + +CWARNFLAGS.clang+= -Wno-parentheses diff --git a/external/mit/xorg/lib/libGLU/shlib_version b/external/mit/xorg/lib/libGLU/shlib_version new file mode 100644 index 000000000..14f3f722c --- /dev/null +++ b/external/mit/xorg/lib/libGLU/shlib_version @@ -0,0 +1,5 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:10 christos Exp $ +# +# XXX netbsd-4 had minor=3 +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libGLw/Makefile b/external/mit/xorg/lib/libGLw/Makefile new file mode 100644 index 000000000..0c884ff59 --- /dev/null +++ b/external/mit/xorg/lib/libGLw/Makefile @@ -0,0 +1,39 @@ +# $NetBSD: Makefile,v 1.3 2013/06/02 11:02:40 mbalmer Exp $ + +.include + +LIB= GLw +.PATH: ${X11SRCDIR.MesaLib}/src/glw + +SRCS= GLwDrawA.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} + +# Motif stubs for glwMDrawingAreaClass are enabled by setting MKX11MOTIF +# in /etc/mk.conf. If Motif is not installed in the default location +# (/usr/pkg), set X11MOTIFPATH as well. + +.if "${MKX11MOTIF}" == "yes" +X11MOTIFPATH?= /usr/pkg +SRCS+= GLwMDrawA.c +CPPFLAGS+= -I${X11MOTIFPATH}/include +.endif + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic \ + Xxf86vm ${.CURDIR}/../libXxf86vm \ + Xfixes ${.CURDIR}/../libXfixes \ + Xdamage ${.CURDIR}/../libXdamage \ + m ${.CURDIR}/../../../../../lib/libm \ + drm ${.CURDIR}/../libdrm \ + GL ${.CURDIR}/../libGL \ + ICE ${.CURDIR}/../libICE \ + SM ${.CURDIR}/../libSM \ + Xt ${.CURDIR}/../libXt + +PKGCONFIG= glw +PKGDIST.glw= ${X11SRCDIR.MesaLib}/src/glw +PKGCONFIG_VERSION.glw= 1.0.0 + +.include +.include diff --git a/external/mit/xorg/lib/libGLw/shlib_version b/external/mit/xorg/lib/libGLw/shlib_version new file mode 100644 index 000000000..21144984e --- /dev/null +++ b/external/mit/xorg/lib/libGLw/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:10 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libI810XvMC/Makefile b/external/mit/xorg/lib/libI810XvMC/Makefile new file mode 100644 index 000000000..36be7e3e6 --- /dev/null +++ b/external/mit/xorg/lib/libI810XvMC/Makefile @@ -0,0 +1,25 @@ +# $NetBSD: Makefile,v 1.2 2011/01/19 01:52:44 jakllsch Exp $ + +.include + +LIB= I810XvMC +.PATH: ${X11SRCDIR.xf86-video-intel}/src/xvmc + +SRCS= I810XvMC.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} \ + -DHAVE_XEXTPROTO_71 \ + -DXSERVER_LIBPCIACCESS \ + -DTRUE=1 -DFALSE=0 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xf86-video-intel}/src + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic \ + Xv ${.CURDIR}/../libXv \ + XvMC ${.CURDIR}/../libXvMC \ + drm ${.CURDIR}/../libdrm + +.include +.include diff --git a/external/mit/xorg/lib/libI810XvMC/shlib_version b/external/mit/xorg/lib/libI810XvMC/shlib_version new file mode 100644 index 000000000..ef5534efa --- /dev/null +++ b/external/mit/xorg/lib/libI810XvMC/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2011/01/19 00:36:40 jmcneill Exp $ +# +major=1 +minor=0 diff --git a/external/mit/xorg/lib/libICE/Makefile b/external/mit/xorg/lib/libICE/Makefile new file mode 100644 index 000000000..d9afcf1e8 --- /dev/null +++ b/external/mit/xorg/lib/libICE/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.5 2013/05/31 08:18:41 mrg Exp $ + +.include + +LIB= ICE +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/ICE + +SRCS= accept.c authutil.c connect.c error.c getauth.c iceauth.c icetrans.c \ + listen.c listenwk.c locking.c misc.c ping.c process.c protosetup.c \ + register.c replywait.c setauth.c shutdown.c watch.c + +INCS= ICE.h ICEconn.h ICElib.h ICEmsg.h ICEproto.h ICEutil.h +INCSDIR=${X11INCDIR}/X11/ICE + +CONN_DEFINES= ${X11FLAGS.CONNECTION} -DICE_t=1 -DTRANS_CLIENT -DTRANS_SERVER +SOCK_DEFINES= -DBSD44SOCKETS + +CPPFLAGS+= -DHAVE_ASPRINTF + +CPPFLAGS+= $(TRANS_INCLUDES) $(CONN_DEFINES) $(SOCK_DEFINES) + +PKGDIST= ${LIB} + +CWARNFLAGS.clang+= -Wno-string-plus-int + +COPTS.icetrans.c+= -Wno-error + +.include +.include diff --git a/external/mit/xorg/lib/libICE/shlib_version b/external/mit/xorg/lib/libICE/shlib_version new file mode 100644 index 000000000..00a39cdf0 --- /dev/null +++ b/external/mit/xorg/lib/libICE/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:10 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libIntelXvMC/Makefile b/external/mit/xorg/lib/libIntelXvMC/Makefile new file mode 100644 index 000000000..05dcebdae --- /dev/null +++ b/external/mit/xorg/lib/libIntelXvMC/Makefile @@ -0,0 +1,33 @@ +# $NetBSD: Makefile,v 1.2 2011/08/11 23:15:38 joerg Exp $ + +.include + +LIB= IntelXvMC +#MKLINT= no +.PATH: ${X11SRCDIR.xf86-video-intel}/src/xvmc + +SRCS= intel_xvmc.c \ + intel_xvmc_dump.c \ + i915_xvmc.c \ + i965_xvmc.c \ + intel_batchbuffer.c \ + xf86dri.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} \ + -DHAVE_XEXTPROTO_71 \ + -DXSERVER_LIBPCIACCESS \ + -DTRUE=1 -DFALSE=0 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xf86-video-intel}/src + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic \ + Xv ${.CURDIR}/../libXv \ + XvMC ${.CURDIR}/../libXvMC \ + drm ${.CURDIR}/../libdrm + +CWARNFLAGS.clang+= -Wno-pointer-sign -Wno-format -Wno-parentheses + +.include +.include diff --git a/external/mit/xorg/lib/libIntelXvMC/shlib_version b/external/mit/xorg/lib/libIntelXvMC/shlib_version new file mode 100644 index 000000000..ef5534efa --- /dev/null +++ b/external/mit/xorg/lib/libIntelXvMC/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2011/01/19 00:36:40 jmcneill Exp $ +# +major=1 +minor=0 diff --git a/external/mit/xorg/lib/libOSMesa/Makefile b/external/mit/xorg/lib/libOSMesa/Makefile new file mode 100644 index 000000000..3e7126c1f --- /dev/null +++ b/external/mit/xorg/lib/libOSMesa/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.7 2012/03/22 23:46:27 joerg Exp $ + +.include + +LIB= OSMesa + +MESA_SRC_MODULES= main math vbo tnl shader swrast slang glapi common \ + osmesa ss + +.PATH: ${X11SRCDIR.MesaLib}/include/GL +INCS= osmesa.h +INCSDIR= ${X11INCDIR}/GL + +.if !defined(__MINIX) +CPPFLAGS+= ${X11FLAGS.THREADLIB} \ + -DPTHREADS -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31 \ + -D_NETBSD_SOURCE -DUSE_EXTERNAL_DXTN_LIB=1 -DHAVE_ALIAS +CFLAGS+= -pthread +.else +CPPFLAGS+= ${X11FLAGS.THREADLIB} \ + -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31 \ + -D_NETBSD_SOURCE -DUSE_EXTERNAL_DXTN_LIB=1 -DHAVE_ALIAS +.endif # !defined(__MINIX) + +CWARNFLAGS.clang+= -Wno-format -Wno-constant-conversion + +.include "libmesa.mk" + +.include +.include diff --git a/external/mit/xorg/lib/libOSMesa/libmesa.mk b/external/mit/xorg/lib/libOSMesa/libmesa.mk new file mode 100644 index 000000000..7be9b8384 --- /dev/null +++ b/external/mit/xorg/lib/libOSMesa/libmesa.mk @@ -0,0 +1,390 @@ +# $NetBSD: libmesa.mk,v 1.7 2011/03/13 04:48:53 mrg Exp $ +# +# Consumer of this Makefile should set MESA_SRC_MODULES. + +INCLUDES.all= . glapi main + +# Main sources +PATHS.main= main +INCLUDES.main= shader +SRCS.main= \ + api_arrayelt.c \ + api_exec.c \ + api_loopback.c \ + api_noop.c \ + api_validate.c \ + accum.c \ + attrib.c \ + arrayobj.c \ + blend.c \ + bufferobj.c \ + buffers.c \ + clear.c \ + clip.c \ + colortab.c \ + condrender.c \ + context.c \ + convolve.c \ + cpuinfo.c \ + debug.c \ + depth.c \ + depthstencil.c \ + dlist.c \ + dlopen.c \ + drawpix.c \ + enable.c \ + enums.c \ + MESAeval.c \ + execmem.c \ + extensions.c \ + fbobject.c \ + feedback.c \ + ffvertex_prog.c \ + fog.c \ + formats.c \ + framebuffer.c \ + get.c \ + getstring.c \ + hash.c \ + hint.c \ + histogram.c \ + image.c \ + imports.c \ + light.c \ + lines.c \ + matrix.c \ + mipmap.c \ + mm.c \ + multisample.c \ + MESApixel.c \ + MESApixelstore.c \ + points.c \ + polygon.c \ + queryobj.c \ + rastpos.c \ + rbadaptors.c \ + readpix.c \ + remap.c \ + renderbuffer.c \ + scissor.c \ + shaders.c \ + shared.c \ + state.c \ + stencil.c \ + syncobj.c \ + texcompress.c \ + texcompress_s3tc.c \ + texcompress_fxt1.c \ + texenv.c \ + texenvprogram.c \ + texfetch.c \ + texformat.c \ + texgen.c \ + texgetimage.c \ + teximage.c \ + texobj.c \ + texparam.c \ + texrender.c \ + texstate.c \ + texstore.c \ + varray.c \ + version.c \ + viewport.c \ + vtxfmt.c + +# XXX avoid source name clashes with glx +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/main +BUILDSYMLINKS= ${X11SRCDIR.MesaLib}/src/mesa/main/pixel.c MESApixel.c \ + ${X11SRCDIR.MesaLib}/src/mesa/main/pixelstore.c MESApixelstore.c \ + ${X11SRCDIR.MesaLib}/src/mesa/main/eval.c MESAeval.c + +# GL API sources +PATHS.glapi= glapi main +SRCS.glapi= \ + glapi.c \ + glapi_dispatch.c \ + glapi_getproc.c \ + glapi_nop.c \ + glthread.c + +# Math sources +PATHS.math= math +SRCS.math= \ + m_debug_clip.c \ + m_debug_norm.c \ + m_debug_xform.c \ + m_eval.c \ + m_matrix.c \ + m_translate.c \ + m_vector.c + +SRCS.math+= \ + m_xform.c + +# Software raster sources +PATHS.swrast= swrast swrast_setup +INCLUDES.swrast= shader +SRCS.swrast= \ + s_aaline.c \ + s_aatriangle.c \ + s_accum.c \ + s_alpha.c \ + s_atifragshader.c \ + s_bitmap.c \ + s_blend.c \ + s_blit.c \ + s_clear.c \ + s_copypix.c \ + s_context.c \ + s_depth.c \ + s_drawpix.c \ + s_feedback.c \ + s_fog.c \ + s_fragprog.c \ + s_lines.c \ + s_logic.c \ + s_masking.c \ + s_points.c \ + s_readpix.c \ + s_span.c \ + s_stencil.c \ + s_texcombine.c \ + s_texfilter.c \ + s_triangle.c \ + s_zoom.c + +# swrast_setup +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/swrast_setup +SRCS.ss= \ + ss_context.c \ + ss_triangle.c + +# TNL sources +PATHS.tnl= tnl +INCLUDES.tnl= shader +SRCS.tnl= \ + t_context.c \ + t_pipeline.c \ + t_draw.c \ + t_rasterpos.c \ + t_vb_program.c \ + t_vb_render.c \ + t_vb_texgen.c \ + t_vb_texmat.c \ + t_vb_vertex.c \ + t_vb_cull.c \ + t_vb_fog.c \ + t_vb_light.c \ + t_vb_normals.c \ + t_vb_points.c \ + t_vp_build.c \ + t_vertex.c \ + t_vertex_sse.c \ + t_vertex_generic.c + +# VBO sources +PATHS.vbo= vbo +SRCS.vbo= \ + vbo_context.c \ + vbo_exec.c \ + vbo_exec_api.c \ + vbo_exec_array.c \ + vbo_exec_draw.c \ + vbo_exec_eval.c \ + vbo_rebase.c \ + vbo_split.c \ + vbo_split_copy.c \ + vbo_split_inplace.c \ + vbo_save.c \ + vbo_save_api.c \ + vbo_save_draw.c \ + vbo_save_loopback.c + +COPTS.vbo_save_draw.c= -Wno-error + +# statetracker + +# Shader sources +PATHS.shader= shader +INCLUDES.shader= shader/slang +SRCS.shader= \ + arbprogparse.c \ + arbprogram.c \ + atifragshader.c \ + hash_table.c \ + lex.yy.c \ + nvfragparse.c \ + nvprogram.c \ + nvvertparse.c \ + program.c \ + program_parse.tab.c \ + program_parse_extra.c \ + prog_cache.c \ + prog_execute.c \ + prog_instruction.c \ + prog_noise.c \ + prog_optimize.c \ + prog_parameter.c \ + prog_parameter_layout.c \ + prog_print.c \ + prog_statevars.c \ + prog_uniform.c \ + programopt.c \ + symbol_table.c \ + shader_api.c + +# Shader language sources +PATHS.slang= shader/slang +INCLUDES.slang= shader +SRCS.slang= \ + slang_builtin.c \ + slang_codegen.c \ + slang_compile.c \ + slang_compile_function.c \ + slang_compile_operation.c \ + slang_compile_struct.c \ + slang_compile_variable.c \ + slang_emit.c \ + slang_ir.c \ + slang_label.c \ + slang_link.c \ + slang_log.c \ + slang_mem.c \ + slang_print.c \ + slang_simplify.c \ + slang_storage.c \ + slang_typeinfo.c \ + slang_vartable.c \ + slang_utility.c + +.if 0 +ASM_C_SOURCES = \ + x86/common_x86.c \ + x86/x86_xform.c \ + x86/3dnow.c \ + x86/sse.c \ + x86/rtasm/x86sse.c \ + sparc/sparc.c \ + ppc/common_ppc.c \ + x86-64/x86-64.c + +X86_SOURCES = \ + x86/common_x86_asm.S \ + x86/x86_xform2.S \ + x86/x86_xform3.S \ + x86/x86_xform4.S \ + x86/x86_cliptest.S \ + x86/mmx_blend.S \ + x86/3dnow_xform1.S \ + x86/3dnow_xform2.S \ + x86/3dnow_xform3.S \ + x86/3dnow_xform4.S \ + x86/3dnow_normal.S \ + x86/sse_xform1.S \ + x86/sse_xform2.S \ + x86/sse_xform3.S \ + x86/sse_xform4.S \ + x86/sse_normal.S \ + x86/read_rgba_span_x86.S + +X86_API = \ + x86/glapi_x86.S + +X86-64_SOURCES = \ + x86-64/xform4.S + +X86-64_API = \ + x86-64/glapi_x86-64.S + +SPARC_SOURCES = \ + sparc/clip.S \ + sparc/norm.S \ + sparc/xform.S + +SPARC_API = \ + sparc/glapi_sparc.S +.endif + +# Common driver sources +PATHS.common= drivers/common +INCLUDES.common= shader +SRCS.common= \ + driverfuncs.c \ + meta.c + +# OSMesa driver sources +PATHS.osmesa= drivers/osmesa +INCLUDES.osmesa= shader +SRCS.osmesa= \ + osmesa.c + +.for _mod_ in ${MESA_SRC_MODULES} + +SRCS+= ${SRCS.${_mod_}} + +. for _path_ in ${PATHS.${_mod_}} +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/${_path_} +. endfor + +. for _path_ in ${INCLUDES.${_mod_}} +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/${_path_} +. endfor + +.endfor + +.for _path_ in ${INCLUDES.all} +CPPFLAGS+= -I${X11SRCDIR.MesaLib}/src/mesa/${_path_} +.endfor + +LIBDPLIBS= m ${NETBSDSRCDIR}/lib/libm + +# build the shader headers +.include "../../tools/glsl/Makefile.glsl" + +CPPFLAGS+= -I. + +# XXXX +HEADERS.slang= library/slang_120_core_gc.h \ + library/slang_builtin_120_common_gc.h \ + library/slang_builtin_120_fragment_gc.h \ + library/slang_common_builtin_gc.h \ + library/slang_core_gc.h \ + library/slang_fragment_builtin_gc.h \ + library/slang_vertex_builtin_gc.h +${SRCS.slang}: ${HEADERS.slang} + +library/slang_120_core_gc.h: slang_120_core.gc + -@mkdir -p library + $(GLSL) fragment $> library/slang_120_core_gc.h + +library/slang_builtin_120_common_gc.h: slang_builtin_120_common.gc + -@mkdir -p library + $(GLSL) fragment $> library/slang_builtin_120_common_gc.h + +library/slang_builtin_120_fragment_gc.h: slang_builtin_120_fragment.gc + -@mkdir -p library + $(GLSL) fragment $> library/slang_builtin_120_fragment_gc.h + +library/slang_common_builtin_gc.h: slang_common_builtin.gc + -@mkdir -p library + $(GLSL) fragment $> library/slang_common_builtin_gc.h + +library/slang_core_gc.h: slang_core.gc + -@mkdir -p library + $(GLSL) fragment $> library/slang_core_gc.h + +library/slang_fragment_builtin_gc.h: slang_fragment_builtin.gc + -@mkdir -p library + $(GLSL) fragment $> library/slang_fragment_builtin_gc.h + +library/slang_vertex_builtin_gc.h: slang_vertex_builtin.gc + -@mkdir -p library + $(GLSL) vertex $> library/slang_vertex_builtin_gc.h + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/shader/slang/library + +CLEANFILES+= ${HEADERS.slang} +cleandir: cleanmesa +cleanmesa: .PHONY + -@if [ -d library ]; then rmdir library; fi + diff --git a/external/mit/xorg/lib/libOSMesa/shlib_version b/external/mit/xorg/lib/libOSMesa/shlib_version new file mode 100644 index 000000000..00a39cdf0 --- /dev/null +++ b/external/mit/xorg/lib/libOSMesa/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:10 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libSM/Makefile b/external/mit/xorg/lib/libSM/Makefile new file mode 100644 index 000000000..7692335c3 --- /dev/null +++ b/external/mit/xorg/lib/libSM/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.3 2008/09/13 04:32:30 cube Exp $ + +.include + +LIB= SM +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/SM + +SRCS= sm_auth.c sm_client.c sm_error.c sm_genid.c sm_manager.c sm_misc.c \ + sm_process.c + +INCS= SM.h SMlib.h SMproto.h +INCSDIR=${X11INCDIR}/X11/SM + +CPPFLAGS+= ${X11FLAGS.THREADLIB} + +CONN_DEFINES= ${X11FLAGS.CONNECTION} -DICE_t + +CPPFLAGS.sm_manager.c= $(CONN_DEFINES) +CPPFLAGS.sm_genid.c= $(CONN_DEFINES) + +LIBDPLIBS=ICE ${.CURDIR}/../libICE + +# XXXMRG +COPTS.sm_client.c= -Wno-error +COPTS.sm_manager.c= -Wno-error + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libSM/shlib_version b/external/mit/xorg/lib/libSM/shlib_version new file mode 100644 index 000000000..7b9723451 --- /dev/null +++ b/external/mit/xorg/lib/libSM/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libX11/Makefile b/external/mit/xorg/lib/libX11/Makefile new file mode 100644 index 000000000..348ea569c --- /dev/null +++ b/external/mit/xorg/lib/libX11/Makefile @@ -0,0 +1,114 @@ +# $NetBSD: Makefile,v 1.11 2011/02/23 07:53:29 mrg Exp $ + +.include + +SUBDIR= dynamic .WAIT libX11-xcb static \ + ximcp xlcDef xlcUTF8Load xlibi18n xlocale xomGeneric + +INCS= ImUtil.h XKBlib.h Xcms.h Xlib-xcb.h Xlib.h XlibConf.h \ + Xlibint.h Xlocale.h Xregion.h Xresource.h Xutil.h \ + Xcmsint.h Xlcint.h \ + cursorfont.h +INCSDIR= ${X11INCDIR}/X11 + +MAN= AllPlanes.3 BlackPixelOfScreen.3 DisplayOfCCC.3 \ + ImageByteOrder.3 IsCursorKey.3 XAddConnectionWatch.3 \ + XAddHost.3 XAllocClassHint.3 XAllocColor.3 \ + XAllocIconSize.3 XAllocSizeHints.3 \ + XAllocStandardColormap.3 XAllocWMHints.3 \ + XAllowEvents.3 XAnyEvent.3 XButtonEvent.3 \ + XChangeKeyboardControl.3 XChangeKeyboardMapping.3 \ + XChangePointerControl.3 XChangeSaveSet.3 \ + XChangeWindowAttributes.3 XCirculateEvent.3 \ + XCirculateRequestEvent.3 XClearArea.3 \ + XClientMessageEvent.3 XColormapEvent.3 \ + XConfigureEvent.3 XConfigureRequestEvent.3 \ + XConfigureWindow.3 XCopyArea.3 XCreateColormap.3 \ + XCreateFontCursor.3 XCreateFontSet.3 XCreateGC.3 \ + XCreateIC.3 XCreateOC.3 XCreatePixmap.3 \ + XCreateRegion.3 XCreateWindow.3 XCreateWindowEvent.3 \ + XCrossingEvent.3 XDefineCursor.3 XDestroyWindow.3 \ + XDestroyWindowEvent.3 XDrawArc.3 XDrawImageString.3 \ + XDrawLine.3 XDrawPoint.3 XDrawRectangle.3 \ + XDrawString.3 XDrawText.3 XEmptyRegion.3 \ + XErrorEvent.3 XExposeEvent.3 XExtentsOfFontSet.3 \ + XFillRectangle.3 XFilterEvent.3 XFlush.3 \ + XFocusChangeEvent.3 XFontSetExtents.3 \ + XFontsOfFontSet.3 XFree.3 XGetVisualInfo.3 \ + XGetWindowAttributes.3 XGetWindowProperty.3 \ + XGetXCBConnection.3 XGrabButton.3 XGrabKey.3 \ + XGrabKeyboard.3 XGrabPointer.3 XGrabServer.3 \ + XGraphicsExposeEvent.3 XGravityEvent.3 \ + XIconifyWindow.3 XIfEvent.3 XInitImage.3 \ + XInitThreads.3 XInstallColormap.3 XInternAtom.3 \ + XIntersectRegion.3 XKeymapEvent.3 XListFonts.3 \ + XLoadFont.3 XLookupKeysym.3 XMapEvent.3 \ + XMapRequestEvent.3 XMapWindow.3 XNextEvent.3 XNoOp.3 \ + XOpenDisplay.3 XOpenIM.3 XOpenOM.3 XParseGeometry.3 \ + XPolygonRegion.3 XPropertyEvent.3 XPutBackEvent.3 \ + XPutImage.3 XQueryBestSize.3 XQueryColor.3 \ + XQueryExtension.3 XQueryPointer.3 XQueryTree.3 \ + XRaiseWindow.3 XReadBitmapFile.3 XRecolorCursor.3 \ + XReparentEvent.3 XReparentWindow.3 \ + XResizeRequestEvent.3 XResourceManagerString.3 \ + XSaveContext.3 XSelectInput.3 XSelectionClearEvent.3 \ + XSelectionEvent.3 XSelectionRequestEvent.3 \ + XSendEvent.3 XSetArcMode.3 XSetClipOrigin.3 \ + XSetCloseDownMode.3 XSetCommand.3 XSetErrorHandler.3 \ + XSetEventQueueOwner.3 XSetFillStyle.3 XSetFont.3 \ + XSetFontPath.3 XSetICFocus.3 XSetICValues.3 \ + XSetInputFocus.3 XSetLineAttributes.3 \ + XSetPointerMapping.3 XSetScreenSaver.3 \ + XSetSelectionOwner.3 XSetState.3 XSetTextProperty.3 \ + XSetTile.3 XSetTransientForHint.3 \ + XSetWMClientMachine.3 XSetWMColormapWindows.3 \ + XSetWMIconName.3 XSetWMName.3 XSetWMProperties.3 \ + XSetWMProtocols.3 XStoreBytes.3 XStoreColors.3 \ + XStringListToTextProperty.3 XStringToKeysym.3 \ + XSupportsLocale.3 XSynchronize.3 XTextExtents.3 \ + XTextWidth.3 XTranslateCoordinates.3 XUnmapEvent.3 \ + XUnmapWindow.3 XVaCreateNestedList.3 \ + XVisibilityEvent.3 XWarpPointer.3 XcmsAllocColor.3 \ + XcmsCCCOfColormap.3 XcmsCIELabQueryMaxC.3 \ + XcmsCIELuvQueryMaxC.3 XcmsColor.3 XcmsConvertColors.3 \ + XcmsCreateCCC.3 XcmsDefaultCCC.3 XcmsQueryBlack.3 \ + XcmsQueryColor.3 XcmsSetWhitePoint.3 XcmsStoreColor.3 \ + XcmsTekHVCQueryMaxC.3 XmbDrawImageString.3 \ + XmbDrawString.3 XmbDrawText.3 XmbLookupString.3 \ + XmbResetIC.3 XmbTextEscapement.3 XmbTextExtents.3 \ + XmbTextListToTextProperty.3 XmbTextPerCharExtents.3 \ + XrmEnumerateDatabase.3 XrmGetFileDatabase.3 \ + XrmGetResource.3 XrmInitialize.3 XrmMergeDatabases.3 \ + XrmPutResource.3 XrmUniqueQuark.3 +# XGetEventData.man + +USETBL= yes + +FILES= XErrorDB XKeysymDB Xcms.txt +FILESDIR= ${X11LIBDIR} + +.PATH: ${X11SRCDIR.X11} +.PATH: ${X11SRCDIR.X11}/include/X11 +.PATH: ${X11SRCDIR.X11}/man +.PATH: ${X11SRCDIR.X11}/src +.PATH: ${X11SRCDIR.X11}/src/xcms +.PATH: ${X11SRCDIR.X11}/src/xlibi18n + +XlibConf.h: XlibConf.h.in + ${_MKTARGET_CREATE} +.if !defined(__MINIX) + ${TOOL_SED} 's/#undef XTHREADS/#define XTHREADS 1/; \ + s/#undef XUSE_MTSAFE_API/#define XUSE_MTSAFE_API 1/ ' \ + < ${.ALLSRC} > ${.TARGET} +.else + ${TOOL_SED} 's/#undef XTHREADS/#define XTHREADS 1/;' \ + ${.ALLSRC} > ${.TARGET} +.endif + +CLEANFILES+= XlibConf.h + +PKGDIST= X11 + +.include +.include +.include diff --git a/external/mit/xorg/lib/libX11/Makefile.libx11 b/external/mit/xorg/lib/libX11/Makefile.libx11 new file mode 100644 index 000000000..dd74a2825 --- /dev/null +++ b/external/mit/xorg/lib/libX11/Makefile.libx11 @@ -0,0 +1,478 @@ +# $NetBSD: Makefile.libx11,v 1.12 2013/10/18 01:12:00 riz Exp $ + +LIB= X11 +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/src/xkb +.PATH: ${X11SRCDIR.${LIB}}/src/xcms +.PATH: ${X11SRCDIR.${LIB}}/src/xlibi18n + +#MINIX: LSC Not sure bsd.own.mk is always sourced... +NOCLANGERROR= yes +NOGCCERROR= yes + +SRCS= \ + AllCells.c \ + AllowEv.c \ + AllPlanes.c \ + AutoRep.c \ + Backgnd.c \ + BdrWidth.c \ + Bell.c \ + Border.c \ + ChAccCon.c \ + ChActPGb.c \ + ChClMode.c \ + ChCmap.c \ + ChGC.c \ + ChKeyCon.c \ + ChkIfEv.c \ + ChkMaskEv.c \ + ChkTypEv.c \ + ChkTypWEv.c \ + ChkWinEv.c \ + ChPntCon.c \ + ChProp.c \ + ChSaveSet.c \ + ChWAttrs.c \ + ChWindow.c \ + CirWin.c \ + CirWinDn.c \ + CirWinUp.c \ + ClDisplay.c \ + ClearArea.c \ + Clear.c \ + ConfWind.c \ + Context.c \ + ConvSel.c \ + CopyArea.c \ + CopyCmap.c \ + CopyGC.c \ + CopyPlane.c \ + CrBFData.c \ + CrCmap.c \ + CrCursor.c \ + CrGC.c \ + CrGlCur.c \ + CrPFBData.c \ + CrPixmap.c \ + CrWindow.c \ + Cursor.c \ + DefCursor.c \ + DelProp.c \ + Depths.c \ + DestSubs.c \ + DestWind.c \ + DisName.c \ + DrArc.c \ + DrArcs.c \ + DrLine.c \ + DrLines.c \ + DrPoint.c \ + DrPoints.c \ + DrRect.c \ + DrRects.c \ + DrSegs.c \ + ErrDes.c \ + ErrHndlr.c \ + evtomask.c \ + EvToWire.c \ + FetchName.c \ + FillArc.c \ + FillArcs.c \ + FillPoly.c \ + FillRct.c \ + FillRcts.c \ + FilterEv.c \ + Flush.c \ + Font.c \ + FontInfo.c \ + FontNames.c \ + FreeCmap.c \ + FreeCols.c \ + FreeCurs.c \ + FreeEData.c \ + FreeEventData.c \ + FreeGC.c \ + FreePix.c \ + FSSaver.c \ + FSWrap.c \ + GCMisc.c \ + Geom.c \ + GetAtomNm.c \ + GetColor.c \ + GetDflt.c \ + GetEventData.c \ + GetFPath.c \ + GetFProp.c \ + GetGCVals.c \ + GetGeom.c \ + GetHColor.c \ + GetHints.c \ + GetIFocus.c \ + GetImage.c \ + GetKCnt.c \ + GetMoEv.c \ + GetNrmHint.c \ + GetPCnt.c \ + GetPntMap.c \ + GetProp.c \ + GetRGBCMap.c \ + GetSOwner.c \ + GetSSaver.c \ + GetStCmap.c \ + GetTxtProp.c \ + GetWAttrs.c \ + GetWMCMapW.c \ + GetWMProto.c \ + globals.c \ + GrButton.c \ + GrKeybd.c \ + GrKey.c \ + GrPointer.c \ + GrServer.c \ + Host.c \ + Iconify.c \ + IfEvent.c \ + imConv.c \ + ImText16.c \ + ImText.c \ + ImUtil.c \ + InitExt.c \ + InsCmap.c \ + IntAtom.c \ + KeyBind.c \ + KeysymStr.c \ + KillCl.c \ + LiHosts.c \ + LiICmaps.c \ + LiProps.c \ + ListExt.c \ + LoadFont.c \ + LockDis.c \ + locking.c \ + LookupCol.c \ + LowerWin.c \ + Macros.c \ + MapRaised.c \ + MapSubs.c \ + MapWindow.c \ + MaskEvent.c \ + Misc.c \ + ModMap.c \ + MoveWin.c \ + NextEvent.c \ + OCWrap.c \ + OMWrap.c \ + OpenDis.c \ + ParseCmd.c \ + ParseCol.c \ + ParseGeom.c \ + PeekEvent.c \ + PeekIfEv.c \ + Pending.c \ + PixFormats.c \ + PmapBgnd.c \ + PmapBord.c \ + PolyReg.c \ + PolyTxt16.c \ + PolyTxt.c \ + PropAlloc.c \ + PutBEvent.c \ + PutImage.c \ + Quarks.c \ + QuBest.c \ + QuColor.c \ + QuColors.c \ + QuCurShp.c \ + QuExt.c \ + QuKeybd.c \ + QuPntr.c \ + QuStipShp.c \ + QuTextE16.c \ + QuTextExt.c \ + QuTileShp.c \ + QuTree.c \ + RaiseWin.c \ + RdBitF.c \ + RecolorC.c \ + ReconfWin.c \ + ReconfWM.c \ + Region.c \ + RegstFlt.c \ + RepWindow.c \ + RestackWs.c \ + RotProp.c \ + ScrResStr.c \ + SelInput.c \ + SendEvent.c \ + SetBack.c \ + SetClMask.c \ + SetClOrig.c \ + SetCRects.c \ + SetDashes.c \ + SetFont.c \ + SetFore.c \ + SetFPath.c \ + SetFunc.c \ + SetHints.c \ + SetIFocus.c \ + SetLocale.c \ + SetLStyle.c \ + SetNrmHint.c \ + SetPMask.c \ + SetPntMap.c \ + SetRGBCMap.c \ + SetSOwner.c \ + SetSSaver.c \ + SetState.c \ + SetStCmap.c \ + SetStip.c \ + SetTile.c \ + SetTSOrig.c \ + SetTxtProp.c \ + SetWMCMapW.c \ + SetWMProto.c \ + StBytes.c \ + StColor.c \ + StColors.c \ + StName.c \ + StNColor.c \ + StrKeysym.c \ + StrToText.c \ + Sync.c \ + Synchro.c \ + Text16.c \ + Text.c \ + TextExt16.c \ + TextExt.c \ + TextToStr.c \ + TrCoords.c \ + UndefCurs.c \ + UngrabBut.c \ + UngrabKbd.c \ + UngrabKey.c \ + UngrabPtr.c \ + UngrabSvr.c \ + UninsCmap.c \ + UnldFont.c \ + UnmapSubs.c \ + UnmapWin.c \ + VisUtil.c \ + WarpPtr.c \ + Window.c \ + WinEvent.c \ + Withdraw.c \ + WMGeom.c \ + WMProps.c \ + WrBitF.c \ + XlibAsync.c \ + XlibInt.c \ + Xrm.c \ + +SRCS+= \ + UIThrStubs.c + +SRCS+= \ + AddDIC.c \ + AddSF.c \ + CCC.c \ + CvColW.c \ + CvCols.c \ + HVC.c \ + HVCGcC.c \ + HVCGcV.c \ + HVCGcVC.c \ + HVCMnV.c \ + HVCMxC.c \ + HVCMxV.c \ + HVCMxVC.c \ + HVCMxVs.c \ + HVCWpAj.c \ + IdOfPr.c \ + LRGB.c \ + Lab.c \ + LabGcC.c \ + LabGcL.c \ + LabGcLC.c \ + LabMnL.c \ + LabMxC.c \ + LabMxL.c \ + LabMxLC.c \ + LabWpAj.c \ + Luv.c \ + LuvGcC.c \ + LuvGcL.c \ + LuvGcLC.c \ + LuvMnL.c \ + LuvMxC.c \ + LuvMxL.c \ + LuvMxLC.c \ + LuvWpAj.c \ + OfCCC.c \ + PrOfId.c \ + QBlack.c \ + QBlue.c \ + QGreen.c \ + QRed.c \ + QWhite.c \ + QuCol.c \ + QuCols.c \ + SetCCC.c \ + SetGetCols.c \ + StCol.c \ + StCols.c \ + UNDEFINED.c \ + XRGB.c \ + XYZ.c \ + cmsAllCol.c \ + cmsAllNCol.c \ + cmsCmap.c \ + cmsColNm.c \ + cmsGlobls.c \ + cmsInt.c \ + cmsLkCol.c \ + cmsMath.c \ + cmsProp.c \ + cmsTrig.c \ + uvY.c \ + xyY.c \ + +SRCS+= \ + XKB.c \ + XKBBind.c \ + XKBCompat.c \ + XKBCtrls.c \ + XKBCvt.c \ + XKBGetMap.c \ + XKBGetByName.c \ + XKBNames.c \ + XKBRdBuf.c \ + XKBSetMap.c \ + XKBUse.c \ + XKBleds.c \ + XKBBell.c \ + XKBGeom.c \ + XKBSetGeom.c \ + XKBExtDev.c \ + XKBList.c \ + XKBMisc.c \ + XKBMAlloc.c \ + XKBGAlloc.c \ + XKBAlloc.c \ + +SRCS+= \ + XDefaultIMIF.c \ + XDefaultOMIF.c \ + xim_trans.c \ + ICWrap.c \ + IMWrap.c \ + imKStoUCS.c \ + lcCT.c \ + lcCharSet.c \ + lcConv.c \ + lcDB.c \ + lcDynamic.c \ + lcFile.c \ + lcGeneric.c \ + lcInit.c \ + lcPrTxt.c \ + lcPubWrap.c \ + lcPublic.c \ + lcRM.c \ + lcStd.c \ + lcTxtPr.c \ + lcUTF8.c \ + lcUtil.c \ + lcWrap.c \ + mbWMProps.c \ + mbWrap.c \ + utf8WMProps.c \ + utf8Wrap.c \ + wcWrap.c \ + +CPPFLAGS+= ${X11FLAGS.THREADLIB} ${X11FLAGS.CONNECTION} +CPPFLAGS+= -I. -DHAS_SNPRINTF -DLIBX11 -DPOSTLOCALELIBDIR=\"lib\" +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${X11SRCDIR.X11}/src +CPPFLAGS+= -I${X11SRCDIR.X11}/src/xkb +CPPFLAGS+= -I${X11SRCDIR.X11}/src/xcms +CPPFLAGS+= -I${X11SRCDIR.X11}/src/xlibi18n + +# From libX11's config.h +CPPFLAGS+= -DCOMPOSECACHE -DHAVE_DLOPEN -DHAVE_GETPAGESIZE +CPPFLAGS+= -DHAVE_INTTYPES_H -DHAVE_MEMORY_H -DHAVE_MMAP +CPPFLAGS+= -DHAVE_SOCKLEN_T -DHAVE_STDLIB_H -DHAVE_STRINGS_H +CPPFLAGS+= -DHAVE_STRING_H -DHAVE_STRTOL -DHAVE_SYS_PARAM_H +CPPFLAGS+= -DHAVE_SYS_SELECT_H -DHAVE_SYS_STAT_H -DHAVE_SYS_TYPES_H +CPPFLAGS+= -DHAVE_UNISTD_H + +CPPFLAGS+= -DUSE_XCB +SRCS+= \ + xcb_disp.c \ + xcb_io.c + +CMS_DEFINES= -DXCMS -DXCMSDB=\"${X11LIBDIR}/Xcms.txt\" +CONN_DEFINES= ${X11FLAGS.CONNECTION} +EDB_DEFINES= -DERRORDB=\"${X11LIBDIR}/XErrorDB\" +KDB_DEFINES= -DKEYSYMDB=\"${X11LIBDIR}/XKeysymDB\" +LC_DYNDEFINES= -DUSE_DYNAMIC_LC +OPEN_DEFINES= -I${DESTDIR}${X11INCDIR}/X11/extensions +.if !defined(__MINIX) +POLL_DEFINES= -DUSE_POLL +.endif # !defined(__MINIX) +SETID_DEFINES= -DHASSETUGID +SHM_DEFINES= -DHAS_SHM +SOCK_DEFINES= -DBSD44SOCKETS +TRANS_INCLUDES= -I${X11SRCDIR.xc}/lib/xtrans +XCURSOR_DEFINES= -DUSE_DYNAMIC_XCURSOR -DLIBXCURSOR=\"libXcursor.so.1\" +XDMAUTHDEFS= -DHASXDMAUTH +XF86BIGFONT_DEFINES= -DXF86BIGFONT +XKB_DEFINES= -DXKB +XLC_DEFINES= ${XLOCALE.DEFINES} +XTRANS_XIM_DEFINES= -DXIM_t -DTRANS_CLIENT +XTRANS_X_DEFINES= -DX11_t -DTRANS_CLIENT -DLOCAL_TRANSPORT_LIST=UNIX_TRANS,TCP_TRANS + +CPPFLAGS.CopyCmap.c= $(CMS_DEFINES) +CPPFLAGS.ConnDis.c= $(XDMAUTHDEFS) $(CONN_DEFINES) $(SOCK_DEFINES) $(POLL_DEFINES) $(XTRANS_X_DEFINES) +CPPFLAGS.CrCmap.c= $(CMS_DEFINES) +CPPFLAGS.ErrDes.c= $(EDB_DEFINES) +CPPFLAGS.Font.c= $(SHM_DEFINES) $(XF86BIGFONT_DEFINES) +CPPFLAGS.FontInfo.c= $(SHM_DEFINES) $(XF86BIGFONT_DEFINES) +CPPFLAGS.FreeCmap.c= $(CMS_DEFINES) +CPPFLAGS.GetColor.c= $(CMS_DEFINES) +CPPFLAGS.KeyBind.c= $(XKB_DEFINES) +CPPFLAGS.LookupCol.c= $(CMS_DEFINES) +CPPFLAGS.OpenDis.c= $(OPEN_DEFINES) $(XTRANS_X_DEFINES) $(XKB_DEFINES) +CPPFLAGS.ParseCol.c= $(CMS_DEFINES) +CPPFLAGS.SetStCmap.c= $(CMS_DEFINES) +CPPFLAGS.StNColor.c= $(CMS_DEFINES) +CPPFLAGS.StrKeysym.c= $(KDB_DEFINES) +CPPFLAGS.Wrap.c= $(XDMAUTHDEFS) +CPPFLAGS.XKBBind.c= $(XKB_DEFINES) +CPPFLAGS.XlibInt.c= $(CONN_DEFINES) $(POLL_DEFINES) $(XTRANS_X_DEFINES) +CPPFLAGS.cmsColNm.c= $(CMS_DEFINES) +CPPFLAGS.globals.c= $(CONN_DEFINES) +CPPFLAGS.imConv.c= $(XKB_DEFINES) +CPPFLAGS.imTrans.c= $(CONN_DEFINES) $(XTRANS_XIM_DEFINES) +CPPFLAGS.imTransR.c= $(CONN_DEFINES) $(XTRANS_XIM_DEFINES) +CPPFLAGS.lcFile.c= $(XLC_DEFINES) $(SETID_DEFINES) +CPPFLAGS.x11trans.c= $(TRANS_INCLUDES) $(CONN_DEFINES) $(SOCK_DEFINES) $(XTRANS_X_DEFINES) $(POLL_DEFINES) +CPPFLAGS.ximtrans.c= $(TRANS_INCLUDES) $(CONN_DEFINES) $(SOCK_DEFINES) $(XTRANS_XIM_DEFINES) $(POLL_DEFINES) + +#BUILDSYMLINKS= transport.c x11trans.c \ +# transport.c ximtrans.c + +COPTS.StBytes.c+= -Wno-error +COPTS.lcUTF8.c+= -Wno-error +COPTS.Font.c+= -Wno-error # XXX xf86bigfstr.h +COPTS.OpenDis.c+= -Wno-error # XXX xf86bigfstr.h +COPTS.XlibInt.c+= -Wno-error # XXX xcmiscstr.h +COPTS.XKBBind.c+= -Wno-error # uses XKeycodeToKeysym +.if defined(HAVE_GCC) && ${HAVE_GCC} < 45 +COPTS.LiHosts.c+= -Wno-error # XXX: old gcc figures out that const + # cond because nHosts < max_hosts +.endif + +CWARNFLAGS.clang+= -Wno-string-plus-int + +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/makekeys/Makefile.makekeys" diff --git a/external/mit/xorg/lib/libX11/Makefile.ximcp b/external/mit/xorg/lib/libX11/Makefile.ximcp new file mode 100644 index 000000000..30f8e499d --- /dev/null +++ b/external/mit/xorg/lib/libX11/Makefile.ximcp @@ -0,0 +1,47 @@ +# $NetBSD: Makefile.ximcp,v 1.2 2008/10/06 16:24:33 tron Exp $ + +.PATH: ${X11SRCDIR.X11}/modules/im/ximcp +SRCS.ximcp= \ + imCallbk.c \ + imDefFlt.c \ + imDefIc.c \ + imDefIm.c \ + imDefLkup.c \ + imDispch.c \ + imEvToWire.c \ + imExten.c \ + imImSw.c \ + imInsClbk.c \ + imInt.c \ + imLcFlt.c \ + imLcGIc.c \ + imLcIc.c \ + imLcIm.c \ + imLcLkup.c \ + imLcPrs.c \ + imLcSIc.c \ + imRmAttr.c \ + imRm.c \ + imThaiFlt.c \ + imThaiIc.c \ + imThaiIm.c \ + imTrans.c \ + imTransR.c \ + imTrX.c + +CPPFLAGS+= \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.X11}/src/xlibi18n + +CPPFLAGS+= \ + ${X11FLAGS.CONNECTION} \ + -DXIM_t \ + -DTRANS_CLIENT \ + -DHASXDMAUTH + +CPPFLAGS.imDefLkup.c= -Wno-error +CPPFLAGS.imRm.c= -Wno-error +CPPFLAGS.imTrans.c= -Wno-error +CPPFLAGS.imLcLkup.c= -Wno-stack-protector + +.include diff --git a/external/mit/xorg/lib/libX11/Makefile.xlcDef b/external/mit/xorg/lib/libX11/Makefile.xlcDef new file mode 100644 index 000000000..da7f7fafc --- /dev/null +++ b/external/mit/xorg/lib/libX11/Makefile.xlcDef @@ -0,0 +1,13 @@ +# $NetBSD: Makefile.xlcDef,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +.PATH: ${X11SRCDIR.X11}/modules/lc/def +SRCS.xlcDef= lcDefConv.c + +CPPFLAGS+= \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.X11}/src/xlibi18n + +CPPFLAGS+= \ + -DHASXDMAUTH + +.include diff --git a/external/mit/xorg/lib/libX11/Makefile.xlcUTF8Load b/external/mit/xorg/lib/libX11/Makefile.xlcUTF8Load new file mode 100644 index 000000000..a4e5c217a --- /dev/null +++ b/external/mit/xorg/lib/libX11/Makefile.xlcUTF8Load @@ -0,0 +1,15 @@ +# $NetBSD: Makefile.xlcUTF8Load,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +.PATH: ${X11SRCDIR.X11}/modules/lc/Utf8 + +SRCS.xlcUTF8Load= \ + lcUTF8Load.c + +CPPFLAGS+= \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.X11}/src/xlibi18n + +CPPFLAGS+= \ + -DHASXDMAUTH + +.include diff --git a/external/mit/xorg/lib/libX11/Makefile.xlibi18n b/external/mit/xorg/lib/libX11/Makefile.xlibi18n new file mode 100644 index 000000000..ddffca6cb --- /dev/null +++ b/external/mit/xorg/lib/libX11/Makefile.xlibi18n @@ -0,0 +1,14 @@ +# $NetBSD: Makefile.xlibi18n,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +.PATH: ${X11SRCDIR.X11}/modules/lc/gen +SRCS.xlibi18n= lcGenConv.c + +CPPFLAGS+= \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.X11}/src/xlibi18n + +CPPFLAGS+= \ + ${XLOCALE.DEFINES} \ + -DHASXDMAUTH + +.include diff --git a/external/mit/xorg/lib/libX11/Makefile.xlocale b/external/mit/xorg/lib/libX11/Makefile.xlocale new file mode 100644 index 000000000..9d826e63b --- /dev/null +++ b/external/mit/xorg/lib/libX11/Makefile.xlocale @@ -0,0 +1,18 @@ +# $NetBSD: Makefile.xlocale,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +.PATH: ${X11SRCDIR.X11}/modules/lc/xlocale + +SRCS.xlocale= \ + lcEuc.c \ + lcJis.c \ + lcSjis.c + +CPPFLAGS+= \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.X11}/src/xlocale + +CPPFLAGS+= \ + ${X11FLAGS.THREADS} \ + -DHASXDMAUTH + +.include diff --git a/external/mit/xorg/lib/libX11/Makefile.xomGeneric b/external/mit/xorg/lib/libX11/Makefile.xomGeneric new file mode 100644 index 000000000..36bef9972 --- /dev/null +++ b/external/mit/xorg/lib/libX11/Makefile.xomGeneric @@ -0,0 +1,23 @@ +# $NetBSD: Makefile.xomGeneric,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +.PATH: ${X11SRCDIR.X11}/modules/om/generic + +SRCS.xomGeneric= \ + omDefault.c \ + omGeneric.c \ + omImText.c \ + omText.c \ + omTextEsc.c \ + omTextExt.c \ + omTextPer.c \ + omXChar.c + +CPPFLAGS+= \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.X11}/src \ + -I${X11SRCDIR.X11}/src/xlibi18n + +CPPFLAGS+= \ + -DHASXDMAUTH + +.include diff --git a/external/mit/xorg/lib/libX11/dynamic/Makefile b/external/mit/xorg/lib/libX11/dynamic/Makefile new file mode 100644 index 000000000..53ba5e076 --- /dev/null +++ b/external/mit/xorg/lib/libX11/dynamic/Makefile @@ -0,0 +1,29 @@ +# $NetBSD: Makefile,v 1.3 2011/08/11 23:15:38 joerg Exp $ + +NOLINT= 1 +NOPROFILE= 1 +NOSTATICLIB= 1 + +.include + +.include "../Makefile.libx11" + +SRCS+= XlcDL.c XlcSL.c XDefaultIMIF.c XDefaultOMIF.c + +CPPFLAGS.lcInit.c= $(LC_DYNDEFINES) +CPPFLAGS.lcGeneric.c= $(LC_DYNDEFINES) +CPPFLAGS.lcPublic.c= $(LC_DYNDEFINES) +CPPFLAGS.CrCursor.c= $(XCURSOR_DEFINES) +CPPFLAGS.CrGlCur.c= $(XCURSOR_DEFINES) +CPPFLAGS.CrPixmap.c= $(XCURSOR_DEFINES) +CPPFLAGS.PutImage.c= $(XCURSOR_DEFINES) + +LIBDPLIBS+= \ + xcb ${.CURDIR}/../../libxcb/libxcb \ + Xdmcp ${.CURDIR}/../../libXdmcp \ + Xau ${.CURDIR}/../../libXau + +CWARNFLAGS.clang+= -Wno-parentheses + +.include +.include diff --git a/external/mit/xorg/lib/libX11/dynamic/shlib_version b/external/mit/xorg/lib/libX11/dynamic/shlib_version new file mode 100644 index 000000000..7b9723451 --- /dev/null +++ b/external/mit/xorg/lib/libX11/dynamic/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libX11/libX11-xcb/Makefile b/external/mit/xorg/lib/libX11/libX11-xcb/Makefile new file mode 100644 index 000000000..a5bb4f4f1 --- /dev/null +++ b/external/mit/xorg/lib/libX11/libX11-xcb/Makefile @@ -0,0 +1,21 @@ +# $NetBSD: Makefile,v 1.2 2011/02/26 09:27:20 mrg Exp $ + +NOLINT= 1 + +.include + +LIB= X11-xcb + +.PATH: ${X11SRCDIR.X11}/src +SRCS+= x11_xcb.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 + +LIBDPLIBS+= \ + X11 ${.CURDIR}/../../libX11/dynamic + +PKGDIST= X11 +PKGCONFIG= x11-xcb + +.include +.include diff --git a/external/mit/xorg/lib/libX11/libX11-xcb/shlib_version b/external/mit/xorg/lib/libX11/libX11-xcb/shlib_version new file mode 100644 index 000000000..e5503f594 --- /dev/null +++ b/external/mit/xorg/lib/libX11/libX11-xcb/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.1 2011/02/23 07:53:30 mrg Exp $ +# +major=1 +minor=0 diff --git a/external/mit/xorg/lib/libX11/static/Makefile b/external/mit/xorg/lib/libX11/static/Makefile new file mode 100644 index 000000000..ea54526dd --- /dev/null +++ b/external/mit/xorg/lib/libX11/static/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.2 2011/08/11 23:15:38 joerg Exp $ + +NOPIC= 1 + +.include + +.include "../Makefile.libx11" + +.if 0 +SRCS+= imCallbk.c imDefFlt.c imDefIc.c imDefIm.c imDefLkup.c imDispch.c \ + imEvToWire.c imExten.c imImSw.c imInsClbk.c imInt.c imLcFlt.c \ + imLcGIc.c imLcIc.c imLcIm.c imLcLkup.c imLcPrs.c imLcSIc.c imRm.c \ + imRmAttr.c imThaiFlt.c imThaiIc.c imThaiIm.c imTrX.c imTrans.c \ + imTransR.c lcEuc.c lcGenConv.c lcJis.c lcSjis.c lcUTF8Load.c \ + omDefault.c omGeneric.c omImText.c omText.c omTextEsc.c omTextExt.c \ + omTextPer.c omXChar.c +.endif + +SRCS+= \ + XlcDL.c \ + XlcSL.c + +CWARNFLAGS.clang+= -Wno-parentheses + +.include +.include diff --git a/external/mit/xorg/lib/libX11/ximcp/Makefile b/external/mit/xorg/lib/libX11/ximcp/Makefile new file mode 100644 index 000000000..0bea0e997 --- /dev/null +++ b/external/mit/xorg/lib/libX11/ximcp/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2013/05/30 23:42:19 mrg Exp $ + +LIBISMODULE= yes +SHLIB_MAJOR= 2 # XXX +SHLIB_MINOR= 0 + +.include +.include + +LIB= ximcp +LIBDIR= ${X11LIBDIR}/locale/lib/common +SRCS= ${SRCS.ximcp} +CFLAGS+=-I${X11SRCDIR.X11}/src + +CWARNFLAGS.clang+= -Wno-unused + +.include "../Makefile.ximcp" diff --git a/external/mit/xorg/lib/libX11/xlcDef/Makefile b/external/mit/xorg/lib/libX11/xlcDef/Makefile new file mode 100644 index 000000000..e844162f9 --- /dev/null +++ b/external/mit/xorg/lib/libX11/xlcDef/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +LIBISMODULE= yes +SHLIB_MAJOR= 2 # XXX +SHLIB_MINOR= 0 + +.include +.include + +LIB= xlcDef +LIBDIR= ${X11LIBDIR}/locale/lib/common +SRCS= ${SRCS.xlcDef} + +.include "../Makefile.xlcDef" diff --git a/external/mit/xorg/lib/libX11/xlcUTF8Load/Makefile b/external/mit/xorg/lib/libX11/xlcUTF8Load/Makefile new file mode 100644 index 000000000..9be166f87 --- /dev/null +++ b/external/mit/xorg/lib/libX11/xlcUTF8Load/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +LIBISMODULE= yes +SHLIB_MAJOR= 2 # XXX +SHLIB_MINOR= 0 + +.include +.include + +LIB= xlcUTF8Load +LIBDIR= ${X11LIBDIR}/locale/lib/common +SRCS= ${SRCS.xlcUTF8Load} + +.include "../Makefile.xlcUTF8Load" diff --git a/external/mit/xorg/lib/libX11/xlibi18n/Makefile b/external/mit/xorg/lib/libX11/xlibi18n/Makefile new file mode 100644 index 000000000..03f410ae6 --- /dev/null +++ b/external/mit/xorg/lib/libX11/xlibi18n/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +LIBISMODULE= yes +SHLIB_MAJOR= 2 # XXX +SHLIB_MINOR= 0 + +.include +.include + +LIB= xlibi18n +LIBDIR= ${X11LIBDIR}/locale/lib/common +SRCS= ${SRCS.xlibi18n} + +.include "../Makefile.xlibi18n" diff --git a/external/mit/xorg/lib/libX11/xlocale/Makefile b/external/mit/xorg/lib/libX11/xlocale/Makefile new file mode 100644 index 000000000..bbcccbf24 --- /dev/null +++ b/external/mit/xorg/lib/libX11/xlocale/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +LIBISMODULE= yes +SHLIB_MAJOR= 2 # XXX +SHLIB_MINOR= 0 + +.include +.include + +LIB= xlocale +LIBDIR= ${X11LIBDIR}/locale/lib/common +SRCS= ${SRCS.xlocale} + +.include "../Makefile.xlocale" diff --git a/external/mit/xorg/lib/libX11/xomGeneric/Makefile b/external/mit/xorg/lib/libX11/xomGeneric/Makefile new file mode 100644 index 000000000..5b60633e9 --- /dev/null +++ b/external/mit/xorg/lib/libX11/xomGeneric/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2008/09/07 13:15:11 rtr Exp $ + +LIBISMODULE= yes +SHLIB_MAJOR= 2 # XXX +SHLIB_MINOR= 0 + +.include +.include + +LIB= xomGeneric +LIBDIR= ${X11LIBDIR}/locale/lib/common +SRCS= ${SRCS.xomGeneric} + +.include "../Makefile.xomGeneric" diff --git a/external/mit/xorg/lib/libXScrnSaver/Makefile b/external/mit/xorg/lib/libXScrnSaver/Makefile new file mode 100644 index 000000000..7b1bc4be7 --- /dev/null +++ b/external/mit/xorg/lib/libXScrnSaver/Makefile @@ -0,0 +1,37 @@ +# $NetBSD: Makefile,v 1.5 2010/05/22 09:22:15 mrg Exp $ + +.include + +LIB= Xss +.PATH: ${X11SRCDIR.XScrnSaver}/src +.PATH: ${X11SRCDIR.XScrnSaver}/man +.PATH: ${X11SRCDIR.XScrnSaver}/include/X11/extensions + +SRCS= XScrnSaver.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +#CPPFLAGS+= -I${DESTDIR}${X11INCDIR} + +LIBDPLIBS= X11 ${.CURDIR}/../libX11/dynamic \ + Xext ${.CURDIR}/../libXext + +MAN= Xss.3 +MLINKS= Xss.3 XScreenSaverAllocInfo.3 \ + Xss.3 XScreenSaverGetRegistered.3 \ + Xss.3 XScreenSaverQueryExtension.3 \ + Xss.3 XScreenSaverQueryInfo.3 \ + Xss.3 XScreenSaverQueryVersion.3 \ + Xss.3 XScreenSaverRegister.3 \ + Xss.3 XScreenSaverSelectInput.3 \ + Xss.3 XScreenSaverSetAttributes.3 \ + Xss.3 XScreenSaverSuspend.3 \ + Xss.3 XScreenSaverUnregister.3 \ + Xss.3 XScreenSaverUnsetAttributes.3 + +PKGDIST= XScrnSaver + +INCS= scrnsaver.h +INCSDIR=${X11INCDIR}/X11/extensions + +.include +.include diff --git a/external/mit/xorg/lib/libXScrnSaver/shlib_version b/external/mit/xorg/lib/libXScrnSaver/shlib_version new file mode 100644 index 000000000..67d20a0a8 --- /dev/null +++ b/external/mit/xorg/lib/libXScrnSaver/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXTrap/Makefile b/external/mit/xorg/lib/libXTrap/Makefile new file mode 100644 index 000000000..e176ff46a --- /dev/null +++ b/external/mit/xorg/lib/libXTrap/Makefile @@ -0,0 +1,25 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:30 cube Exp $ + +.include + +LIB= XTrap +.PATH: ${X11SRCDIR.${LIB}}/src + +SRCS= XECallBcks.c XEConTxt.c XEDsptch.c XEPrInfo.c XERqsts.c \ + XEStrMap.c XETrapInit.c XEWrappers.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} + +CPPFLAGS.XEWrappers.c= -I${DESTDIR}${X11INCDIR}/X11 + +LIBDPLIBS=\ + Xt ${.CURDIR}/../libXt \ + SM ${.CURDIR}/../libSM \ + ICE ${.CURDIR}/../libICE \ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXTrap/shlib_version b/external/mit/xorg/lib/libXTrap/shlib_version new file mode 100644 index 000000000..7b9723451 --- /dev/null +++ b/external/mit/xorg/lib/libXTrap/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libXau/Makefile b/external/mit/xorg/lib/libXau/Makefile new file mode 100644 index 000000000..2e74fe95f --- /dev/null +++ b/external/mit/xorg/lib/libXau/Makefile @@ -0,0 +1,33 @@ +# $NetBSD: Makefile,v 1.5 2013/05/31 00:38:16 mrg Exp $ + +.include + +LIB= Xau +.PATH: ${X11SRCDIR.${LIB}} +.PATH: ${X11SRCDIR.${LIB}}/man +.PATH: ${X11SRCDIR.${LIB}}/include/X11 + +SRCS= AuDispose.c AuFileName.c AuGetAddr.c AuGetBest.c AuLock.c \ + AuRead.c AuUnlock.c AuWrite.c + +INCS= Xauth.h +INCSDIR=${X11INCDIR}/X11 + +CPPFLAGS+= ${X11FLAGS.THREADLIB} + +MAN= Xau.3 +MLINKS= Xau.3 XauDisposeAuth.3 \ + Xau.3 XauFileName.3 \ + Xau.3 XauGetAuthByAddr.3 \ + Xau.3 XauGetBestAuthByAddr.3 \ + Xau.3 XauLockAuth.3 \ + Xau.3 XauReadAuth.3 \ + Xau.3 XauUnlockAuth.3 \ + Xau.3 XauWriteAuth.3 + +PKGDIST= ${LIB} + +# libXaw 1.0.7 has 'spec' subdir with docs, maybe install them? + +.include +.include diff --git a/external/mit/xorg/lib/libXau/shlib_version b/external/mit/xorg/lib/libXau/shlib_version new file mode 100644 index 000000000..7b9723451 --- /dev/null +++ b/external/mit/xorg/lib/libXau/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libXaw/Makefile b/external/mit/xorg/lib/libXaw/Makefile new file mode 100644 index 000000000..4a0abf8ab --- /dev/null +++ b/external/mit/xorg/lib/libXaw/Makefile @@ -0,0 +1,79 @@ +# $NetBSD: Makefile,v 1.9 2011/08/11 23:15:38 joerg Exp $ + +.include + +LIB= Xaw7 +LIBOLD= Xaw + +.if ${MKSTATICLIB} != "no" +SYMLINKS= lib${LIB}.a ${X11USRLIBDIR}/lib${LIBOLD}.a +.endif + +.if ${MKPROFILE} != "no" +SYMLINKS+= lib${LIB}_p.a ${X11USRLIBDIR}/lib${LIBOLD}_p.a +.endif + +.if ${MKPIC} != "no" +SYMLINKS+= lib${LIB}.so ${X11USRLIBDIR}/lib${LIBOLD}.so +.endif + +.PATH: ${X11SRCDIR.Xaw}/src +SRCS= Actions.c AllWidgets.c AsciiSink.c AsciiSrc.c \ + AsciiText.c Box.c Command.c Converters.c Dialog.c \ + DisplayList.c Form.c Grip.c Label.c List.c MenuButton.c \ + MultiSrc.c MultiSink.c OS.c Paned.c Panner.c Pixmap.c \ + Porthole.c Repeater.c Scrollbar.c Simple.c \ + SimpleMenu.c Sme.c SmeBSB.c SmeLine.c StripChart.c \ + Text.c TextSink.c TextSrc.c TextAction.c TextPop.c \ + TextTr.c Tip.c Toggle.c Tree.c Vendor.c Viewport.c \ + XawIm.c XawInit.c XawI18n.c sharedlib.c + +.PATH: ${X11SRCDIR.Xaw}/man +MAN= Xaw.3 + +.PATH: ${X11SRCDIR.Xaw}/include/X11/Xaw +INCS= AllWidgets.h AsciiSink.h AsciiSinkP.h AsciiSrc.h \ + AsciiSrcP.h AsciiText.h AsciiTextP.h Box.h BoxP.h \ + Cardinals.h Command.h CommandP.h Dialog.h DialogP.h \ + Form.h FormP.h Grip.h GripP.h Label.h LabelP.h List.h \ + ListP.h MenuButton.h MenuButtoP.h MultiSrc.h MultiSrcP.h \ + MultiSink.h MultiSinkP.h Paned.h PanedP.h Panner.h \ + PannerP.h Porthole.h PortholeP.h Print.h PrintSP.h \ + Repeater.h RepeaterP.h Reports.h Scrollbar.h ScrollbarP.h \ + Simple.h SimpleP.h SimpleMenu.h SimpleMenP.h Sme.h SmeP.h \ + SmeBSB.h SmeBSBP.h SmeLine.h SmeLineP.h StripChart.h \ + StripCharP.h Template.c Template.h TemplateP.h Text.h \ + TextP.h TextSink.h TextSinkP.h TextSrc.h TextSrcP.h \ + Tip.h TipP.h Toggle.h ToggleP.h Tree.h TreeP.h VendorEP.h \ + Viewport.h ViewportP.h XawImP.h XawInit.h + +INCSDIR=${X11INCDIR}/X11/Xaw + + +CPPFLAGS+= -DHAVE_WCHAR_H -DHAVE_WCTYPE_H -DNO_WIDEC_H -DHAVE_ISWALNUM +CPPFLAGS+= -DHAVE_GETPAGESIZE +CPPFLAGS+= -DPROJECT_ROOT=\"${X11ROOTDIR}\" -DXAW7 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/Xaw +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/extensions + +LIBDPLIBS=\ + Xmu ${.CURDIR}/../libXmu \ + Xt ${.CURDIR}/../libXt \ + SM ${.CURDIR}/../libSM \ + ICE ${.CURDIR}/../libICE \ + Xpm ${.CURDIR}/../libXpm \ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGCONFIG= xaw7 +PKGDIST= ${LIBOLD} + +.include +.include + +# XXX +.if defined(HAVE_GCC) +COPTS.XawIm.c+= -Wno-error +.endif + +CWARNFLAGS.clang+= -Wno-format diff --git a/external/mit/xorg/lib/libXaw/shlib_version b/external/mit/xorg/lib/libXaw/shlib_version new file mode 100644 index 000000000..09309ab93 --- /dev/null +++ b/external/mit/xorg/lib/libXaw/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.3 2009/04/19 21:36:47 mrg Exp $ +# +major=10 +minor=0 diff --git a/external/mit/xorg/lib/libXaw6/Makefile b/external/mit/xorg/lib/libXaw6/Makefile new file mode 100644 index 000000000..4dc26fb49 --- /dev/null +++ b/external/mit/xorg/lib/libXaw6/Makefile @@ -0,0 +1,43 @@ +# $NetBSD: Makefile,v 1.8 2011/07/01 01:25:52 mrg Exp $ + +NOCHECKVER= yes # we want to install an older version ... +MKLINKLIB= no + +.include + +LIB= Xaw6 +LIBOLD= Xaw + +.PATH: ${X11SRCDIR.Xaw}/src + +SRCS= Actions.c AllWidgets.c AsciiSink.c AsciiSrc.c AsciiText.c \ + Box.c Command.c Converters.c Dialog.c DisplayList.c Form.c \ + Grip.c Label.c List.c MenuButton.c MultiSink.c MultiSrc.c \ + OS.c Paned.c Panner.c Pixmap.c Porthole.c Repeater.c \ + Scrollbar.c Simple.c SimpleMenu.c Sme.c SmeBSB.c SmeLine.c \ + StripChart.c Text.c TextAction.c TextPop.c TextSink.c \ + TextSrc.c TextTr.c Toggle.c Tree.c Vendor.c Viewport.c \ + XawI18n.c XawIm.c XawInit.c + +CPPFLAGS+= -DHAVE_WCHAR_H -DHAVE_WCTYPE_H -DNO_WIDEC_H -DOLDXAW \ + -DHAVE_GETPAGESIZE \ + -DHAVE_ISWALNUM -DPROJECT_ROOT=\"${X11ROOTDIR}\" + +LIBDPLIBS=\ + Xmu ${.CURDIR}/../libXmu \ + Xt ${.CURDIR}/../libXt \ + SM ${.CURDIR}/../libSM \ + ICE ${.CURDIR}/../libICE \ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGCONFIG= xaw6 +PKGDIST= ${LIBOLD} + +.include +.include + +# XXX +.if defined(HAVE_GCC) +COPTS.XawIm.c+= -Wno-error +.endif diff --git a/external/mit/xorg/lib/libXaw6/shlib_version b/external/mit/xorg/lib/libXaw6/shlib_version new file mode 100644 index 000000000..7b9723451 --- /dev/null +++ b/external/mit/xorg/lib/libXaw6/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libXcomposite/Makefile b/external/mit/xorg/lib/libXcomposite/Makefile new file mode 100644 index 000000000..1628c1bcd --- /dev/null +++ b/external/mit/xorg/lib/libXcomposite/Makefile @@ -0,0 +1,34 @@ +# $NetBSD: Makefile,v 1.4 2008/11/06 22:28:25 veego Exp $ + +.include + +LIB= Xcomposite + +XCOMPOSITEDIR= ${X11SRCDIR.${LIB}} +.PATH: ${XCOMPOSITEDIR}/src +.PATH: ${XCOMPOSITEDIR}/man +.PATH: ${XCOMPOSITEDIR}/include/X11/extensions +SRCS= Xcomposite.c + +INCS= Xcomposite.h +INCSDIR=${X11INCDIR}/X11/extensions + +LIBDPLIBS= X11 ${.CURDIR}/../libX11/dynamic + +MAN= Xcomposite.3 +MLINKS= Xcomposite.3 XCompositeCreateRegionFromBorderClip.3 \ + Xcomposite.3 XCompositeGetOverlayWindow.3 \ + Xcomposite.3 XCompositeNameWindowPixmap.3 \ + Xcomposite.3 XCompositeQueryExtension.3 \ + Xcomposite.3 XCompositeQueryVersion.3 \ + Xcomposite.3 XCompositeRedirectSubwindows.3 \ + Xcomposite.3 XCompositeRedirectWindow.3 \ + Xcomposite.3 XCompositeReleaseOverlayWindow.3 \ + Xcomposite.3 XCompositeUnredirectSubwindows.3 \ + Xcomposite.3 XCompositeUnredirectWindow.3 \ + Xcomposite.3 XCompositeVersion.3 + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXcomposite/shlib_version b/external/mit/xorg/lib/libXcomposite/shlib_version new file mode 100644 index 000000000..67d20a0a8 --- /dev/null +++ b/external/mit/xorg/lib/libXcomposite/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXcursor/Makefile b/external/mit/xorg/lib/libXcursor/Makefile new file mode 100644 index 000000000..27c4b87c8 --- /dev/null +++ b/external/mit/xorg/lib/libXcursor/Makefile @@ -0,0 +1,33 @@ +# $NetBSD: Makefile,v 1.4 2008/10/14 23:37:19 cube Exp $ + +.include + +LIB= Xcursor + +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/Xcursor +.PATH: ${X11SRCDIR.${LIB}}/man +SRCS= cursor.c display.c file.c library.c xlib.c + +INCS= Xcursor.h +INCSDIR=${X11INCDIR}/X11/Xcursor + +MAN= Xcursor.3 +X11EXTRAMANDEFS+= -e 's%__XCURSORPATH__%~/.icons, \ + /usr/share/icons, /usr/share/pixmaps, \ + ${X11LIBDIR}/icons%g' + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -DICONDIR=\"${X11LIBDIR}/icons\" +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/Xcursor +CPPFLAGS+= -I${X11SRCDIR.${LIB}}/../include + +LIBDPLIBS=\ + Xrender ${.CURDIR}/../libXrender \ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXcursor/shlib_version b/external/mit/xorg/lib/libXcursor/shlib_version new file mode 100644 index 000000000..67d20a0a8 --- /dev/null +++ b/external/mit/xorg/lib/libXcursor/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXdamage/Makefile b/external/mit/xorg/lib/libXdamage/Makefile new file mode 100644 index 000000000..59a7fe6f2 --- /dev/null +++ b/external/mit/xorg/lib/libXdamage/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.3 2008/11/06 22:28:25 veego Exp $ + +.include + +LIB= Xdamage + +XDAMAGEDIR= ${X11SRCDIR.${LIB}} +.PATH: ${XDAMAGEDIR}/src +.PATH: ${XDAMAGEDIR}/include/X11/extensions +SRCS= Xdamage.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/extensions + +INCS= Xdamage.h +INCSDIR=${X11INCDIR}/X11/extensions + +LIBDPLIBS= X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXdamage/shlib_version b/external/mit/xorg/lib/libXdamage/shlib_version new file mode 100644 index 000000000..67d20a0a8 --- /dev/null +++ b/external/mit/xorg/lib/libXdamage/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXdmGreet/Makefile b/external/mit/xorg/lib/libXdmGreet/Makefile new file mode 100644 index 000000000..2efd5db47 --- /dev/null +++ b/external/mit/xorg/lib/libXdmGreet/Makefile @@ -0,0 +1,40 @@ +# $NetBSD: Makefile,v 1.4 2013/09/12 04:42:49 dholland Exp $ + +.include + +LIB= XdmGreet +.PATH: ${X11SRCDIR.xdm}/greeter + +SRCS= \ + Login.c \ + greet.c \ + verify.c + +CPPFLAGS+= -I${X11SRCDIR.xdm}/include -DRETSIGTYPE=void +# XXX: Enabling this, which should allow --export-dynamic to +# be elided, causes xdm to fail to accept password input and +# then crash at login "failure". +#CPPFLAGS+= -DGREET_LIB + +LIBDPLIBS=\ + Xext ${.CURDIR}/../libXext \ + Xt ${.CURDIR}/../libXt \ + Xdmcp ${.CURDIR}/../libXdmcp \ + Xinerama ${.CURDIR}/../libXinerama \ + Xft ${.CURDIR}/../libXft \ + Xpm ${.CURDIR}/../libXpm \ + X11 ${.CURDIR}/../libX11/dynamic + +.if ${USE_PAM} != "no" +LIBDPLIBS+=\ + pam ${.CURDIR}/../../../../../lib/libpam/libpam +.endif + +LIBDPLIBS+=\ + crypt ${.CURDIR}/../../../../../lib/libcrypt \ + util ${.CURDIR}/../../../../../lib/libutil + +.include "../../bin/xdm/Makefile.xdm" + +.include +.include diff --git a/external/mit/xorg/lib/libXdmGreet/shlib_version b/external/mit/xorg/lib/libXdmGreet/shlib_version new file mode 100644 index 000000000..819cc113a --- /dev/null +++ b/external/mit/xorg/lib/libXdmGreet/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.1 2013/06/03 23:25:43 mrg Exp $ +# +major=0 +minor=0 diff --git a/external/mit/xorg/lib/libXdmcp/Makefile b/external/mit/xorg/lib/libXdmcp/Makefile new file mode 100644 index 000000000..3d9ad5aab --- /dev/null +++ b/external/mit/xorg/lib/libXdmcp/Makefile @@ -0,0 +1,28 @@ +# $NetBSD: Makefile,v 1.3 2010/11/21 23:52:15 mrg Exp $ + +.include + +LIB= Xdmcp +.PATH: ${X11SRCDIR.${LIB}} +.PATH: ${X11SRCDIR.${LIB}}/include/X11 + +SRCS= Array.c \ + Fill.c \ + Flush.c \ + Key.c \ + Read.c \ + Unwrap.c \ + Wrap.c \ + Write.c \ + Wraphelp.c + +INCS= Xdmcp.h +INCSDIR=${X11INCDIR}/X11 + +CPPFLAGS+=${X11FLAGS.THREADLIB} +CPPFLAGS+=-DHASXDMAUTH + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXdmcp/shlib_version b/external/mit/xorg/lib/libXdmcp/shlib_version new file mode 100644 index 000000000..7b9723451 --- /dev/null +++ b/external/mit/xorg/lib/libXdmcp/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libXevie/Makefile b/external/mit/xorg/lib/libXevie/Makefile new file mode 100644 index 000000000..8299c1205 --- /dev/null +++ b/external/mit/xorg/lib/libXevie/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.5 2010/05/22 02:40:40 mrg Exp $ + +.include + +LIB= Xevie + +XEVIEDIR= ${X11SRCDIR.${LIB}} +.PATH: ${XEVIEDIR}/src +.PATH: ${XEVIEDIR}/man +.PATH: ${XEVIEDIR}/include/X11/extensions +SRCS= Xevie.c + +INCS= Xevie.h +INCSDIR=${X11INCDIR}/X11/extensions + +MAN= Xevie.3 +MLINKS= Xevie.3 XevieQueryVersion.3 \ + Xevie.3 XevieStart.3 \ + Xevie.3 XevieSelectInput.3 \ + Xevie.3 XevieSendEvent.3 \ + Xevie.3 XevieEnd.3 + +LIBDPLIBS= X11 ${.CURDIR}/../libX11/dynamic \ + Xext ${.CURDIR}/../libXext + +PKGDIST= ${LIB} + +COPTS.Xevie.c+= -Wno-error # XXX + +.include +.include diff --git a/external/mit/xorg/lib/libXevie/shlib_version b/external/mit/xorg/lib/libXevie/shlib_version new file mode 100644 index 000000000..67d20a0a8 --- /dev/null +++ b/external/mit/xorg/lib/libXevie/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXext/Makefile b/external/mit/xorg/lib/libXext/Makefile new file mode 100644 index 000000000..902554d5b --- /dev/null +++ b/external/mit/xorg/lib/libXext/Makefile @@ -0,0 +1,104 @@ +# $NetBSD: Makefile,v 1.8 2013/06/01 07:53:11 mrg Exp $ + +.include + +LIB= Xext +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/man +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions/ + +SRCS= DPMS.c \ + MITMisc.c \ + XAppgroup.c \ + XEVI.c \ + XLbx.c \ + XMultibuf.c \ + XSecurity.c \ + XShape.c \ + XShm.c \ + XSync.c \ + XTestExt1.c \ + Xcup.c \ + Xdbe.c \ + Xge.c \ + extutil.c \ + globals.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -DHAVE__XEATDATAWORDS + +LIBDPLIBS= X11 ${.CURDIR}/../libX11/dynamic + +# XXX +COPTS.extutil.c+= -Wno-error + +MAN= DBE.3 DPMSCapable.3 DPMSDisable.3 DPMSEnable.3 DPMSForceLevel.3 \ + DPMSGetTimeouts.3 DPMSGetVersion.3 DPMSInfo.3 DPMSQueryExtension.3 \ + DPMSSetTimeouts.3 XShape.3 XShm.3 XcupGetReservedColormapEntries.3 \ + XcupQueryVersion.3 XcupStoreColors.3 XdbeAllocateBackBufferName.3 \ + XdbeBeginIdiom.3 XdbeDeallocateBackBufferName.3 XdbeEndIdiom.3 \ + XdbeFreeVisualInfo.3 XdbeGetBackBufferAttributes.3 \ + XdbeGetVisualInfo.3 XdbeQueryExtension.3 XdbeSwapBuffers.3 Xevi.3 \ + Xmbuf.3 + +MLINKS= XShape.3 XShapeQueryExtensionXShapeQueryVersion.3 \ + XShape.3 XShapeCombineRegion.3 \ + XShape.3 XShapeCombineRectangles.3 \ + XShape.3 XShapeCombineMask.3 \ + XShape.3 XShapeCombineShape.3 \ + XShape.3 XShapeOffsetShape.3 \ + XShape.3 XShapeQueryExtents.3 \ + XShape.3 XShapeSelectInput.3 \ + XShape.3 XShapeInputSelected.3 \ + XShape.3 XShapeGetRectangles.3 + +MLINKS+= XShm.3 XShmQueryExtension.3 \ + XShm.3 XShmQueryVersion.3 \ + XShm.3 XShmPixmapFormat.3 \ + XShm.3 XShmAttach.3 \ + XShm.3 XShmDetach.3 \ + XShm.3 XShmCreateImage.3 \ + XShm.3 XShmPutImage.3 \ + XShm.3 XShmGetImage.3 \ + XShm.3 XShmCreatePixmap.3 \ + XShm.3 XShmGetEventBase.3 + +MLINKS+= Xmbuf.3 XmbufQueryExtension.3 \ + Xmbuf.3 XmbufGetVersion.3 \ + Xmbuf.3 XmbufCreateBuffers.3 \ + Xmbuf.3 XmbufDestroyBuffers.3 \ + Xmbuf.3 XmbufDisplayBuffers.3 \ + Xmbuf.3 XmbufGetWindowAttributes.3 \ + Xmbuf.3 XmbufChangeWindowAttributes.3 \ + Xmbuf.3 XmbufGetBufferAttributes.3 \ + Xmbuf.3 XmbufChangeBufferAttributes.3 \ + Xmbuf.3 XmbufGetScreenInfo.3 \ + Xmbuf.3 XmbufCreateStereoWindow.3 + +MLINKS+= Xevi.3 XeviQueryVersion.3 \ + Xevi.3 XeviGetVisualInfo.3 \ + Xevi.3 XeviQueryExtension.3 + +INCS= MITMisc.h \ + XEVI.h \ + XLbx.h \ + XShm.h \ + Xag.h \ + Xcup.h \ + Xdbe.h \ + Xext.h \ + Xge.h \ + dpms.h \ + extutil.h \ + multibuf.h \ + security.h \ + shape.h \ + sync.h \ + xtestext1.h + +INCSDIR=${X11INCDIR}/X11/extensions + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXext/shlib_version b/external/mit/xorg/lib/libXext/shlib_version new file mode 100644 index 000000000..a10ca0049 --- /dev/null +++ b/external/mit/xorg/lib/libXext/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.3 2011/02/24 08:18:40 mrg Exp $ +# +major=7 +minor=1 diff --git a/external/mit/xorg/lib/libXfixes/Makefile b/external/mit/xorg/lib/libXfixes/Makefile new file mode 100644 index 000000000..f4aea750d --- /dev/null +++ b/external/mit/xorg/lib/libXfixes/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.5 2013/05/31 00:47:53 mrg Exp $ + +.include + +LIB= Xfixes + +XFIXESDIR= ${X11SRCDIR.${LIB}} +.PATH: ${XFIXESDIR}/src +.PATH: ${XFIXESDIR}/man +.PATH: ${XFIXESDIR}/include/X11/extensions +SRCS= Cursor.c Region.c SaveSet.c Selection.c Xfixes.c + +INCS= Xfixes.h +INCSDIR=${X11INCDIR}/X11/extensions + +CPPFLAGS+= -DHAVE__XEATDATAWORDS + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/extensions + +MAN= Xfixes.3 + +LIBDPLIBS= X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXfixes/shlib_version b/external/mit/xorg/lib/libXfixes/shlib_version new file mode 100644 index 000000000..03edcb8f3 --- /dev/null +++ b/external/mit/xorg/lib/libXfixes/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=4 +minor=0 diff --git a/external/mit/xorg/lib/libXfont/Makefile b/external/mit/xorg/lib/libXfont/Makefile new file mode 100644 index 000000000..8e7a25a1b --- /dev/null +++ b/external/mit/xorg/lib/libXfont/Makefile @@ -0,0 +1,74 @@ +# $NetBSD: Makefile,v 1.9 2012/04/04 10:59:45 joerg Exp $ + +.include +.if defined(__MINIX) +NOCLANGERROR= yes +NOGCCERROR= yes +.endif # defined(__MINIX) + +LIB= Xfont +XFONTDIR= ${X11SRCDIR.${LIB}} +.PATH: ${XFONTDIR}/src +.PATH: ${XFONTDIR}/src/FreeType +#.PATH: ${XFONTDIR}/src/Speedo +#.PATH: ${XFONTDIR}/src/Type1 +.PATH: ${XFONTDIR}/src/bitmap +.PATH: ${XFONTDIR}/src/builtins +.PATH: ${XFONTDIR}/src/fc +.PATH: ${XFONTDIR}/src/fontcache +.PATH: ${XFONTDIR}/src/fontfile +.PATH: ${XFONTDIR}/src/stubs +.PATH: ${XFONTDIR}/src/util +.PATH: ${XFONTDIR}/include/X11/fonts +.PATH: ${XFONTDIR}/../include + +SRCS= ftenc.c ftfuncs.c fttools.c xttcap.c \ + bdfread.c bdfutils.c bitmap.c bitmapfunc.c bitmaputil.c \ + bitscale.c fontink.c pcfread.c pcfwrite.c snfread.c dir.c file.c \ + fonts.c fpe.c render.c fsconvert.c fserve.c fsio.c fstrans.c \ + bitsource.c bufio.c catalogue.c decompress.c defaults.c \ + dirfile.c fileio.c filewr.c fontdir.c fontencc.c fontfile.c \ + fontscale.c gunzip.c register.c renderers.c bunzip2.c cauthgen.c \ + csignal.c delfntcid.c errorf.c fatalerror.c findoldfnt.c \ + getcres.c getdefptsize.c getnewfntcid.c gettime.c initfshdl.c \ + regfpefunc.c rmfshdl.c servclient.c setfntauth.c stfntcfnt.c \ + atom.c fontaccel.c fontnames.c fontutil.c fontxlfd.c \ + format.c miscutil.c patcache.c private.c utilbitmap.c + +INCS= bdfint.h bitmap.h bufio.h fntfil.h fntfilio.h fntfilst.h \ + fontconf.h fontencc.h fontmisc.h fontshow.h \ + fontutil.h fontxlfd.h ft.h ftfuncs.h pcf.h +INCSDIR=${X11INCDIR}/X11/fonts + +CPPFLAGS+= ${X11FLAGS.THREADLIB} ${X11FLAGS.CONNECTION} +CPPFLAGS+= -DHAS_SNPRINTF -DHAVE_CONFIG_H +CPPFLAGS+= -DBDFFORMAT -DSNFFORMAT -DPCFFORMAT -DX_GZIP_FONT_COMPRESSION -DX_BZIP2_FONT_COMPRESSION +CPPFLAGS+= -DFONT_ENCODINGS_DIRECTORY=\"${X11LIBDIR}/X11/fonts/encodings/encodings.dir\" +CPPFLAGS+= -I${DESTDIR}${X11INCDIR} +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/fonts +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/freetype2 +CPPFLAGS+= -I${XFONTDIR}/src/stubs +CPPFLAGS+= -I${XFONTDIR}/../include + +LIBDPLIBS=\ + Xt ${.CURDIR}/../libXt \ + SM ${.CURDIR}/../libSM \ + ICE ${.CURDIR}/../libICE \ + Xext ${.CURDIR}/../libXext \ + fontenc ${.CURDIR}/../libfontenc \ + freetype ${.CURDIR}/../freetype \ + X11 ${.CURDIR}/../libX11/dynamic \ + m ${.CURDIR}/../../../../../lib/libm \ + z ${.CURDIR}/../../../../../lib/libz \ + bz2 ${.CURDIR}/../../../../../lib/libbz2 + +# XXX +COPTS.ffcheck.c+= -Wno-error +COPTS.register.c+= -Wno-error + +PKGDIST= ${LIB} + +CWARNFLAGS.clang+= -Wno-tautological-compare -Wno-string-plus-int + +.include +.include diff --git a/external/mit/xorg/lib/libXfont/shlib_version b/external/mit/xorg/lib/libXfont/shlib_version new file mode 100644 index 000000000..94cb9efd1 --- /dev/null +++ b/external/mit/xorg/lib/libXfont/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.3 2009/06/10 07:52:07 mrg Exp $ +# +major=3 +minor=0 diff --git a/external/mit/xorg/lib/libXfontcache/Makefile b/external/mit/xorg/lib/libXfontcache/Makefile new file mode 100644 index 000000000..bb111e6a0 --- /dev/null +++ b/external/mit/xorg/lib/libXfontcache/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:30 cube Exp $ + +.include + +LIB= Xfontcache +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/man + +LIBDPLIBS=\ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +SRCS= FontCache.c + +MAN= Xfontcache.3 +MLINKS= Xfontcache.3 FontCacheChangeCacheSettings.3 \ + Xfontcache.3 FontCacheGetCacheSettings.3 \ + Xfontcache.3 FontCacheGetCacheStatistics.3 \ + Xfontcache.3 FontCacheQueryExtension.3 \ + Xfontcache.3 FontCacheQueryVersion.3 + +#CPPFLAGS+= ${X11FLAGS.THREADS} + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXfontcache/shlib_version b/external/mit/xorg/lib/libXfontcache/shlib_version new file mode 100644 index 000000000..67d20a0a8 --- /dev/null +++ b/external/mit/xorg/lib/libXfontcache/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXft/Makefile b/external/mit/xorg/lib/libXft/Makefile new file mode 100644 index 000000000..bbcfdfeb1 --- /dev/null +++ b/external/mit/xorg/lib/libXft/Makefile @@ -0,0 +1,32 @@ +# $NetBSD: Makefile,v 1.5 2008/11/06 22:28:26 veego Exp $ + +.include + +LIB= Xft + +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/Xft +.PATH: ${X11SRCDIR.${LIB}}/man +SRCS= xftcolor.c xftcore.c xftdbg.c xftdpy.c xftdraw.c xftextent.c \ + xftfont.c xftfreetype.c xftglyphs.c xftinit.c xftlist.c \ + xftname.c xftrender.c xftstr.c xftswap.c xftxlfd.c + +INCS= Xft.h XftCompat.h +INCSDIR=${X11INCDIR}/X11/Xft + +MAN= Xft.3 + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -DFREETYPE2 -I${DESTDIR}${X11INCDIR}/freetype2 -DXFREE86_FT2 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/Xft + +LIBDPLIBS= X11 ${.CURDIR}/../libX11/dynamic \ + fontconfig ${.CURDIR}/../fontconfig/src \ + freetype ${.CURDIR}/../freetype \ + Xrandr ${.CURDIR}/../libXrandr \ + Xrender ${.CURDIR}/../libXrender + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXft/shlib_version b/external/mit/xorg/lib/libXft/shlib_version new file mode 100644 index 000000000..c9cc5aa4e --- /dev/null +++ b/external/mit/xorg/lib/libXft/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=3 +minor=0 diff --git a/external/mit/xorg/lib/libXi/Makefile b/external/mit/xorg/lib/libXi/Makefile new file mode 100644 index 000000000..adc01bb44 --- /dev/null +++ b/external/mit/xorg/lib/libXi/Makefile @@ -0,0 +1,92 @@ +# $NetBSD: Makefile,v 1.11 2013/10/18 01:12:00 riz Exp $ + +.include + +LIB= Xi +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions + +SRCS= XIAllowEvents.c \ + XIBarrier.c \ + XIGrabDevice.c \ + XIQueryVersion.c \ + XIQueryDevice.c \ + XISetDevFocus.c \ + XIGetDevFocus.c \ + XIPassiveGrab.c \ + XIProperties.c \ + XISelEv.c \ + XISetCPtr.c \ + XIWarpPointer.c \ + XIHierarchy.c \ + XIDefineCursor.c \ + XIQueryPointer.c +SRCS+= XAllowDv.c \ + XChDProp.c \ + XChgDCtl.c \ + XChgFCtl.c \ + XChgKbd.c \ + XChgKMap.c \ + XChgPnt.c \ + XChgProp.c \ + XCloseDev.c \ + XDelDProp.c \ + XDevBell.c \ + XExtToWire.c \ + XGetBMap.c \ + XGetCPtr.c \ + XGetDCtl.c \ + XGetDProp.c \ + XGetFCtl.c \ + XGetKMap.c \ + XGetMMap.c \ + XGetProp.c \ + XGetVers.c \ + XGMotion.c \ + XGrabDev.c \ + XGrDvBut.c \ + XGrDvKey.c \ + XGtFocus.c \ + XGtSelect.c \ + XListDev.c \ + XListDProp.c \ + XOpenDev.c \ + XQueryDv.c \ + XSelect.c \ + XSetBMap.c \ + XSetDVal.c \ + XSetMMap.c \ + XSetMode.c \ + XSndExEv.c \ + XStFocus.c \ + XUngrDev.c \ + XUngrDvB.c \ + XUngrDvK.c \ + XExtInt.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} + +LIBDPLIBS=\ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +INCS= XInput.h \ + XInput2.h + +INCSDIR=${X11INCDIR}/X11/extensions + +PKGDIST= ${LIB} + +COPTS.XExtInt.c+= -Wno-error # XXX +COPTS.XSndExEv.c+= -Wno-error # XXX + +.if defined(HAVE_GCC) && ${HAVE_GCC} < 45 +COPTS.XGetFCtl.c+= -Wno-error # XXX +.endif + +CWARNFLAGS.clang+= -Wno-pointer-sign + +# XXX manuals + +.include +.include diff --git a/external/mit/xorg/lib/libXi/shlib_version b/external/mit/xorg/lib/libXi/shlib_version new file mode 100644 index 000000000..f63685074 --- /dev/null +++ b/external/mit/xorg/lib/libXi/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.3 2013/06/05 00:52:22 mrg Exp $ +# +major=7 +minor=1 diff --git a/external/mit/xorg/lib/libXinerama/Makefile b/external/mit/xorg/lib/libXinerama/Makefile new file mode 100644 index 000000000..f6d3bae5d --- /dev/null +++ b/external/mit/xorg/lib/libXinerama/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.5 2009/11/09 03:27:05 mrg Exp $ + +.include + +LIB= Xinerama +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/man +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions + +SRCS= Xinerama.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} + +MAN= Xinerama.3 +MLINKS= Xinerama.3 XineramaQueryExtension.3 \ + Xinerama.3 XineramaQueryVersion.3 \ + Xinerama.3 XineramaIsActive.3 \ + Xinerama.3 XineramaQueryScreens.3 + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +INCS= Xinerama.h panoramiXext.h +INCSDIR=${X11INCDIR}/X11/extensions + +NOOBJ= # defined + +.include +.include diff --git a/external/mit/xorg/lib/libXinerama/shlib_version b/external/mit/xorg/lib/libXinerama/shlib_version new file mode 100644 index 000000000..67d20a0a8 --- /dev/null +++ b/external/mit/xorg/lib/libXinerama/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXmu/Makefile b/external/mit/xorg/lib/libXmu/Makefile new file mode 100644 index 000000000..26d130765 --- /dev/null +++ b/external/mit/xorg/lib/libXmu/Makefile @@ -0,0 +1,45 @@ +# $NetBSD: Makefile,v 1.3 2010/11/21 06:01:50 mrg Exp $ + +.include + +LIB= Xmu +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/Xmu + +SRCS= AllCmap.c Atoms.c ClientWin.c Clip.c CloseHook.c CmapAlloc.c \ + CrCmap.c CrPixFBit.c CursorName.c CvtCache.c CvtStdSel.c \ + DefErrMsg.c DelCmap.c DisplayQue.c Distinct.c DrRndRect.c \ + DrawLogo.c EditresCom.c ExtAgent.c FToCback.c GetHost.c \ + GrayPixmap.c Initer.c LocBitmap.c Lookup.c LookupCmap.c \ + Lower.c RdBitF.c ScrOfWin.c ShapeWidg.c StdCmap.c StrToBS.c \ + StrToBmap.c StrToCurs.c StrToGrav.c StrToJust.c StrToLong.c \ + StrToOrnt.c StrToShap.c StrToWidg.c UpdMapHint.c VisCmap.c \ + WidgetNode.c Xct.c + +INCS= Atoms.h CharSet.h CloseHook.h Converters.h CurUtil.h \ + CvtCache.h DisplayQue.h Drawing.h Editres.h EditresP.h \ + Error.h ExtAgent.h Initer.h Lookup.h Misc.h StdCmap.h \ + StdSel.h SysUtil.h WidgetNode.h WinUtil.h Xct.h Xmu.h \ + WhitePoint.h +INCSDIR=${X11INCDIR}/X11/Xmu + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -DHAS_SNPRINTF +CPPFLAGS+= -DXTSTRINGDEFINES #XTODO is this correct? +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/Xmu + +CPPFLAGS.CvtStdSel.c= ${X11FLAGS.CONNECTION} +CPPFLAGS.LocBitmap.c= -DBITMAPDIR=\"${X11INCDIR}/X11/bitmaps\" + +LIBDPLIBS=\ + Xt ${.CURDIR}/../libXt \ + SM ${.CURDIR}/../libSM \ + ICE ${.CURDIR}/../libICE \ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGCONFIG= xmu xmuu +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXmu/shlib_version b/external/mit/xorg/lib/libXmu/shlib_version new file mode 100644 index 000000000..7b9723451 --- /dev/null +++ b/external/mit/xorg/lib/libXmu/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libXmuu/Makefile b/external/mit/xorg/lib/libXmuu/Makefile new file mode 100644 index 000000000..90a8deed5 --- /dev/null +++ b/external/mit/xorg/lib/libXmuu/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +.include + +LIB= Xmuu +.PATH: ${X11SRCDIR.Xmu}/src + +SRCS= ClientWin.c CursorName.c DefErrMsg.c GetHost.c Lower.c + +CPPFLAGS+=-DHAS_SNPRINTF + +LIBDPLIBS=\ + Xt ${.CURDIR}/../libXt \ + SM ${.CURDIR}/../libSM \ + ICE ${.CURDIR}/../libICE \ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +.include +.include diff --git a/external/mit/xorg/lib/libXmuu/shlib_version b/external/mit/xorg/lib/libXmuu/shlib_version new file mode 100644 index 000000000..67d20a0a8 --- /dev/null +++ b/external/mit/xorg/lib/libXmuu/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:11 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXpm/Makefile b/external/mit/xorg/lib/libXpm/Makefile new file mode 100644 index 000000000..1d9c37c60 --- /dev/null +++ b/external/mit/xorg/lib/libXpm/Makefile @@ -0,0 +1,28 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:30 cube Exp $ + +.include + +LIB= Xpm +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11 + +SRCS= Attrib.c CrBufFrI.c CrBufFrP.c CrDatFrI.c CrDatFrP.c \ + CrIFrBuf.c CrIFrDat.c CrIFrP.c CrPFrBuf.c CrPFrDat.c CrPFrI.c \ + Image.c Info.c RdFToBuf.c RdFToDat.c RdFToI.c RdFToP.c \ + WrFFrBuf.c WrFFrDat.c WrFFrI.c WrFFrP.c create.c data.c \ + hashtab.c misc.c parse.c rgb.c scan.c + +INCS= xpm.h +INCSDIR=${X11INCDIR}/X11 + +CPPFLAGS+=-DHAS_SNPRINTF +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 + +LIBDPLIBS=\ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXpm/shlib_version b/external/mit/xorg/lib/libXpm/shlib_version new file mode 100644 index 000000000..4641fb932 --- /dev/null +++ b/external/mit/xorg/lib/libXpm/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:12 christos Exp $ +# +major=5 +minor=0 diff --git a/external/mit/xorg/lib/libXrandr/Makefile b/external/mit/xorg/lib/libXrandr/Makefile new file mode 100644 index 000000000..61757a6fc --- /dev/null +++ b/external/mit/xorg/lib/libXrandr/Makefile @@ -0,0 +1,33 @@ +# $NetBSD: Makefile,v 1.5 2013/06/01 08:03:26 mrg Exp $ + +.include + +LIB= Xrandr +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions +.PATH: ${X11SRCDIR.${LIB}}/man + +SRCS= Xrandr.c XrrConfig.c XrrCrtc.c XrrMode.c XrrOutput.c \ + XrrProperty.c XrrScreen.c XrrProvider.c XrrProviderProperty.c + +INCS= Xrandr.h +INCSDIR=${X11INCDIR}/X11/extensions + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/extensions +CPPFLAGS+= -DHAVE__XEATDATAWORDS + + +MAN= Xrandr.3 + +LIBDPLIBS=\ + Xrender ${.CURDIR}/../libXrender \ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +CWARNFLAGS.clang+= -Wno-pointer-sign + +.include +.include diff --git a/external/mit/xorg/lib/libXrandr/shlib_version b/external/mit/xorg/lib/libXrandr/shlib_version new file mode 100644 index 000000000..96cc5af1b --- /dev/null +++ b/external/mit/xorg/lib/libXrandr/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.3 2013/05/31 09:14:19 mrg Exp $ +# +major=3 +minor=1 diff --git a/external/mit/xorg/lib/libXrender/Makefile b/external/mit/xorg/lib/libXrender/Makefile new file mode 100644 index 000000000..7315d183b --- /dev/null +++ b/external/mit/xorg/lib/libXrender/Makefile @@ -0,0 +1,29 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:31 cube Exp $ + +.include + +LIB= Xrender + +XRENDERDIR= ${X11SRCDIR.${LIB}} +.PATH: ${XRENDERDIR}/src +.PATH: ${XRENDERDIR}/include/X11/extensions +SRCS= Xrender.c AddTrap.c Color.c Composite.c Cursor.c \ + Glyph.c Picture.c FillRect.c FillRects.c Filter.c \ + Poly.c Trap.c Tri.c + +INCS= Xrender.h +INCSDIR=${X11INCDIR}/X11/extensions + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/extensions +CPPFLAGS+= -I${XRENDERDIR}/../include +#CPPFLAGS+= -I${X11SRCDIR.xc}/lib/X11 + +LIBDPLIBS=\ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXrender/shlib_version b/external/mit/xorg/lib/libXrender/shlib_version new file mode 100644 index 000000000..6d5fa04e8 --- /dev/null +++ b/external/mit/xorg/lib/libXrender/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:12 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXres/Makefile b/external/mit/xorg/lib/libXres/Makefile new file mode 100644 index 000000000..581d7912e --- /dev/null +++ b/external/mit/xorg/lib/libXres/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.8 2013/05/31 09:33:17 mrg Exp $ + +.include + +LIB= XRes + +XRESDIR= ${X11SRCDIR.Xres} +.PATH: ${XRESDIR}/src +.PATH: ${XRESDIR}/man +.PATH: ${XRESDIR}/include/X11/extensions +SRCS= XRes.c + +CPPFLAGS+= -DHAVE__XEATDATAWORDS + +INCS= XRes.h +INCSDIR=${X11INCDIR}/X11/extensions + +MAN= XRes.3 +MLINKS= XRes.3 XResQueryExtension.3 \ + XRes.3 XResQueryVersion.3 \ + XRes.3 XResQueryClients.3 \ + XRes.3 XResQueryClientResources.3 \ + XRes.3 XResQueryClientPixmapBytes.3 + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= Xres + +.include +.include diff --git a/external/mit/xorg/lib/libXres/shlib_version b/external/mit/xorg/lib/libXres/shlib_version new file mode 100644 index 000000000..6d5fa04e8 --- /dev/null +++ b/external/mit/xorg/lib/libXres/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:12 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXt/Makefile b/external/mit/xorg/lib/libXt/Makefile new file mode 100644 index 000000000..0b2097929 --- /dev/null +++ b/external/mit/xorg/lib/libXt/Makefile @@ -0,0 +1,318 @@ +# $NetBSD: Makefile,v 1.5 2011/08/11 23:15:39 joerg Exp $ + +.include + +LIB= Xt +.PATH: ${X11SRCDIR.${LIB}}/include/X11 +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/man +.PATH: ${X11SRCDIR.${LIB}} + +SRCS= ActionHook.c Alloc.c ArgList.c Callback.c ClickTime.c \ + Composite.c Constraint.c Convert.c Converters.c Core.c \ + Create.c Destroy.c Display.c Error.c Event.c EventUtil.c \ + Functions.c GCManager.c Geometry.c GetActKey.c GetResList.c \ + GetValues.c HookObj.c Hooks.c Initialize.c Intrinsic.c \ + Keyboard.c Manage.c NextEvent.c Object.c PassivGrab.c \ + Pointer.c Popup.c PopupCB.c RectObj.c ResConfig.c Resources.c \ + Selection.c SetSens.c SetValues.c SetWMCW.c Shell.c \ + StringDefs.c TMaction.c TMgrab.c TMkey.c TMparse.c TMprint.c \ + TMstate.c Threads.c VarCreate.c VarGet.c Varargs.c Vendor.c + +INCS= CallbackI.h Composite.h CompositeP.h ConstrainP.h Constraint.h \ + ConvertI.h Core.h CoreP.h CreateI.h EventI.h HookObjI.h InitialI.h \ + Intrinsic.h IntrinsicI.h IntrinsicP.h Object.h ObjectP.h \ + PassivGraI.h RectObj.h RectObjP.h ResConfigP.h ResourceI.h \ + SelectionI.h Shell.h ShellI.h ShellP.h StringDefs.h ThreadsI.h \ + TranslateI.h VarargsI.h Vendor.h VendorP.h Xtos.h +INCSDIR=${X11INCDIR}/X11 + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +.if defined(__MINIX) +CPPFLAGS+= -DUSE_SNPRINTF -DLIBXT -I. +.else +CPPFLAGS+= -DUSE_POLL -DUSE_SNPRINTF -DLIBXT -I. +.endif # defined(__MINIX) + +CPPFLAGS.Intrinsic.c= -DXFILESEARCHPATHDEFAULT=\"${X11LIBDIR}/%L/%T/%N%C%S:${X11LIBDIR}/%l/%T/%N%C%S:${X11LIBDIR}/%T/%N%C%S:${X11LIBDIR}/%L/%T/%N%S:${X11LIBDIR}/%l/%T/%N%S:${X11LIBDIR}/%T/%N%S\" +CPPFLAGS.Error.c= -DERRORDB=\"${X11LIBDIR}/XtErrorDB\" \ + -DXTERROR_PREFIX=\"\" -DXTWARNING_PREFIX=\"\" +CPPFLAGS.TMkey.c= -DXKB + +LIBDPLIBS=\ + X11 ${.CURDIR}/../libX11/dynamic \ + SM ${.CURDIR}/../libSM \ + ICE ${.CURDIR}/../libICE + +.if defined(__MINIX) +LIBDPLIBS+=\ + mthread ${NETBSDSRCDIR}/minix/lib/libmthread +.endif # defined(__MINIX) + +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/makestrs/Makefile.makestrs" + +STRINGS_FILES= StringDefs.c StringDefs.h Shell.h +STRINGS_TMPLS= util/StrDefs.ct util/StrDefs.ht util/Shell.ht +STRINGS_LIST= util/string.list + +${STRINGS_FILES}: strings_files.stamp +strings_files.stamp: ${MAKESTRS} ${STRINGS_LIST} ${STRINGS_TMPLS} + ${_MKMSG_CREATE} ${STRINGS_FILES} + rm -f ${.TARGET} ${STRINGS_FILES} + rm -f util + ln -s ${X11SRCDIR.Xt}/util util + ${MAKESTRS} -i . < ${STRINGS_LIST} > StringDefs.c + touch ${.TARGET} +CLEANFILES+= ${STRINGS_FILES} util strings_files.stamp +DPSRCS+= ${STRINGS_FILES} + +MAN= XtAddActions.3 XtAddCallback.3 XtAddEventHandler.3 \ + XtAddExposureToRegion.3 XtAddGrab.3 XtAddInput.3 XtAllocateGC.3 \ + XtAppAddActionHook.3 XtAppAddActions.3 XtAppAddBlockHook.3 \ + XtAppAddConverter.3 XtAppAddInput.3 XtAppAddSignal.3 \ + XtAppAddTimeOut.3 XtAppAddWorkProc.3 XtAppCreateShell.3 \ + XtAppError.3 XtAppErrorMsg.3 XtAppGetErrorDatabase.3 \ + XtAppGetSelectionTimeout.3 XtAppInitialize.3 XtAppLock.3 \ + XtAppNextEvent.3 XtAppReleaseCacheRefs.3 XtAppSetExitFlag.3 \ + XtAppSetFallbackResources.3 XtAppSetTypeConverter.3 \ + XtBuildEventMask.3 XtCallAcceptFocus.3 XtCallActionProc.3 \ + XtCallCallbacks.3 XtClass.3 XtConfigureWidget.3 XtConvert.3 \ + XtConvertAndStore.3 XtCreateApplicationContext.3 \ + XtCreateApplicationShell.3 XtCreatePopupShell.3 \ + XtCreateSelectionRequest.3 XtCreateWidget.3 XtCreateWindow.3 \ + XtDisplay.3 XtDisplayInitialize.3 XtDisplayStringConversionWarning.3 \ + XtDisplayToApplicationContext.3 XtError.3 XtErrorMsg.3 XtFindFile.3 \ + XtGetActionKeysym.3 XtGetActionList.3 XtGetApplicationNameAndClass.3 \ + XtGetApplicationResources.3 XtGetClassExtension.3 XtGetDisplays.3 \ + XtGetErrorDatabase.3 XtGetGC.3 XtGetKeyboardFocusWidget.3 \ + XtGetKeysymTable.3 XtGetResourceList.3 XtGetSelectionParameters.3 \ + XtGetSelectionRequest.3 XtGetSelectionTimeout.3 XtGetSelectionValue.3 \ + XtGetSelectionValueIncremental.3 XtGetSubresources.3 XtGrabKey.3 \ + XtHooksOfDisplay.3 XtInitialize.3 XtInitializeWidgetClass.3 \ + XtInsertEventTypeHandler.3 XtLastEventProcessed.3 \ + XtMakeGeometryRequest.3 XtMalloc.3 XtManageChildren.3 XtMapWidget.3 \ + XtName.3 XtNameToWidget.3 XtNextEvent.3 XtOffset.3 \ + XtOpenApplication.3 XtOwnSelection.3 XtParent.3 \ + XtParseAcceleratorTable.3 XtParseTranslationTable.3 XtPopdown.3 \ + XtPopup.3 XtProcessLock.3 XtQueryGeometry.3 XtRealizeWidget.3 \ + XtRegisterDrawable.3 XtRegisterGrabAction.3 XtReservePropertyAtom.3 \ + XtResolvePathname.3 XtSessionGetToken.3 XtSetArg.3 \ + XtSetKeyTranslator.3 XtSetKeyboardFocus.3 XtSetLanguageProc.3 \ + XtSetMultiClickTime.3 XtSetSelectionParameters.3 XtSetSensitive.3 \ + XtSetValues.3 XtSetWMColormapWindows.3 XtStringConversionWarning.3 \ + XtToolkitThreadInitialize.3 XtTranslateCoords.3 XtVaCreateArgsList.3 + +MLINKS= XtAddCallback.3 XtAddCallbacks.3 \ + XtAddCallback.3 XtRemoveCallback.3 \ + XtAddCallback.3 XtRemoveCallbacks.3 \ + XtAddCallback.3 XtRemoveAllCallbacks.3 + +MLINKS+= XtAddEventHandler.3 XtAddRawEventHandler.3 \ + XtAddEventHandler.3 XtRemoveEventHandler.3 \ + XtAddEventHandler.3 XtRemoveRawEventHandler.3 \ + XtAddEventHandler.3 XtInsertEventHandler.3 \ + XtAddEventHandler.3 XtInsertRawEventHandler.3 + +MLINKS+= XtAddGrab.3 XtRemoveGrab.3 \ + XtAppAddConverter.3 XtAddConverter.3 \ + XtAppAddInput.3 XtRemoveInput.3 \ + XtAppAddTimeOut.3 XtRemoveTimeOut.3 \ + XtAppAddWorkProc.3 XtRemoveWorkProc.3 \ + XtAppCreateShell.3 XtVaAppCreateShell.3 + +MLINKS+= XtAppError.3 XtAppSetErrorHandler.3 \ + XtAppError.3 XtAppSetWarningHandler.3 \ + XtAppError.3 XtAppWarning.3 + +MLINKS+= XtAppErrorMsg.3 XtAppSetErrorMsgHandler.3 \ + XtAppErrorMsg.3 XtAppSetWarningMsgHandler.3 \ + XtAppErrorMsg.3 XtAppWarningMsg.3 + +MLINKS+= XtAppGetErrorDatabase.3 XtAppGetErrorDatabaseText.3 \ + XtAppGetSelectionTimeout.3 XtAppSetSelectionTimeout.3 + +MLINKS+= XtAppNextEvent.3 XtAppPending.3 \ + XtAppNextEvent.3 XtAppPeekEvent.3 \ + XtAppNextEvent.3 XtAppProcessEvent.3 \ + XtAppNextEvent.3 XtDispatchEvent.3 \ + XtAppNextEvent.3 XtAppMainLoop.3 + +MLINKS+= XtNextEvent.3 XtPending.3 \ + XtNextEvent.3 XtPeekEvent.3 \ + XtNextEvent.3 XtProcessEvent.3 \ + XtNextEvent.3 XtMainLoop.3 + +MLINKS+= XtCallCallbacks.3 XtCallCallbackList.3 \ + XtCallCallbacks.3 XtHasCallbacks.3 + +MLINKS+= XtClass.3 XtSuperclass.3 \ + XtClass.3 XtIsSubclass.3 \ + XtClass.3 XtCheckSubclass.3 \ + XtClass.3 XtIsObject.3 \ + XtClass.3 XtIsRectObj.3 \ + XtClass.3 XtIsWidget.3 \ + XtClass.3 XtIsComposite.3 \ + XtClass.3 XtIsConstraint.3 \ + XtClass.3 XtIsShell.3 \ + XtClass.3 XtIsOverrideShell.3 \ + XtClass.3 XtIsWMShell.3 \ + XtClass.3 XtIsVendorShell.3 \ + XtClass.3 XtIsTransientShell.3 \ + XtClass.3 XtIsTopLevelShell.3 \ + XtClass.3 XtIsApplicationShell.3 \ + XtClass.3 XtIsSessionShell.3 + +MLINKS+= XtConfigureWidget.3 XtMoveWidget.3 \ + XtConfigureWidget.3 XtResizeWidget.3 + +MLINKS+= XtConvert.3 XtDirectConvert.3 \ + XtConvertAndStore.3 XtCallConverter.3 + +MLINKS+= XtCreateApplicationContext.3 XtDestroyApplicationContext.3 \ + XtCreateApplicationContext.3 XtWidgetToApplicationContext.3 \ + XtCreateApplicationContext.3 XtToolkitInitialize.3 + +MLINKS+= XtCreatePopupShell.3 XtVaCreatePopupShell.3 + +MLINKS+= XtCreateWidget.3 XtVaCreateWidget.3 \ + XtCreateWidget.3 XtCreateManagedWidget.3 \ + XtCreateWidget.3 XtVaCreateManagedWidget.3 \ + XtCreateWidget.3 XtDestroyWidget.3 + +MLINKS+= XtDisplay.3 XtDisplayOfObject.3 \ + XtDisplay.3 XtScreen.3 \ + XtDisplay.3 XtScreenOfObject.3 \ + XtDisplay.3 XtWindow.3 \ + XtDisplay.3 XtWindowOfObject.3 + +MLINKS+= XtDisplayInitialize.3 XtOpenDisplay.3 \ + XtDisplayInitialize.3 XtCloseDisplay.3 \ + XtDisplayInitialize.3 XtDatabase.3 \ + XtDisplayInitialize.3 XtScreenDatabase.3 + +MLINKS+= XtGetGC.3 XtReleaseGC.3 \ + XtGetResourceList.3 XtGetConstraintResourceList.3 \ + XtGetSelectionValue.3 XtGetSelectionValues.3 \ + XtGetSubresources.3 XtVaGetSubresources.3 \ + XtGetApplicationResources.3 XtVaGetApplicationResources.3 \ + XtMakeGeometryRequest.3 XtMakeResizeRequest.3 + +MLINKS+= XtMalloc.3 XtCalloc.3 \ + XtMalloc.3 XtRealloc.3 \ + XtMalloc.3 XtFree.3 \ + XtMalloc.3 XtNew.3 \ + XtMalloc.3 XtNewString.3 \ + XtMalloc.3 XtAsprintf.3 + +MLINKS+= XtManageChildren.3 XtManageChild.3 \ + XtManageChildren.3 XtUnmanageChildren.3 \ + XtManageChildren.3 XtUnmanageChild.3 \ + XtManageChildren.3 XtIsManaged.3 \ + XtManageChildren.3 XtChangeManagedSet.3 + +MLINKS+= XtMapWidget.3 XtSetMappedWhenManaged.3 \ + XtMapWidget.3 XtUnmapWidget.3 + +MLINKS+= XtNameToWidget.3 XtWindowToWidget.3 + +MLINKS+= XtOffset.3 XtOffsetOf.3 \ + XtOffset.3 XtNumber.3 + +MLINKS+= XtOwnSelection.3 XtOwnSelectionIncremental.3 \ + XtOwnSelection.3 XtDisownSelection.3 + +MLINKS+= XtParseAcceleratorTable.3 XtInstallAccelerators.3 \ + XtParseAcceleratorTable.3 XtInstallAllAccelerators.3 + +MLINKS+= XtParseTranslationTable.3 XtAugmentTranslations.3 \ + XtParseTranslationTable.3 XtOverrideTranslations.3 \ + XtParseTranslationTable.3 XtUninstallTranslations.3 + +MLINKS+= XtPopdown.3 XtCallbackPopdown.3 \ + XtPopdown.3 MenuPopdown.3 + +MLINKS+= XtPopup.3 XtPopupSpringLoaded.3 \ + XtPopup.3 XtCallbackNone.3 \ + XtPopup.3 XtCallbackNonexclusive.3 \ + XtPopup.3 XtCallbackExclusive.3 \ + XtPopup.3 MenuPopup.3 + +MLINKS+= XtRealizeWidget.3 XtIsRealized.3 \ + XtRealizeWidget.3 XtUnrealizeWidget.3 + +MLINKS+= XtSetArg.3 XtMergeArgLists.3 + +MLINKS+= XtSetKeyTranslator.3 XtTranslateKeycode.3 \ + XtSetKeyTranslator.3 XtRegisterCaseConverter.3 \ + XtSetKeyTranslator.3 XtConvertCase.3 + +MLINKS+= XtSetSensitive.3 XtIsSensitive.3 + +MLINKS+= XtSetValues.3 XtVaSetValues.3 \ + XtSetValues.3 XtSetSubvalues.3 \ + XtSetValues.3 XtGetValues.3 \ + XtSetValues.3 XtVaGetValues.3 \ + XtSetValues.3 XtGetSubvalues.3 \ + XtSetValues.3 XtVaGetSubvalues.3 \ + XtSetValues.3 XtVaSetSubvalues.3 + +MLINKS+= XtGetKeysymTable.3 XtKeysymToKeycodeList.3 \ + XtAppSetTypeConverter.3 XtSetTypeConverter.3 \ + XtAppAddActionHook.3 XtRemoveActionHook.3 \ + XtSetMultiClickTime.3 XtGetMultiClickTime.3 + +MLINKS+= XtInsertEventTypeHandler.3 XtRemoveEventTypeHandler.3 \ + XtInsertEventTypeHandler.3 XtRegisterExtensionSelector.3 \ + XtInsertEventTypeHandler.3 XtSetEventDispatcher.3 \ + XtInsertEventTypeHandler.3 XtDispatchEventToWidget.3 + +MLINKS+= XtLastEventProcessed.3 XtLastTimestampProcessed.3 + +MLINKS+= XtAppAddSignal.3 XtNoticeSignal.3 \ + XtAppAddSignal.3 XtRemoveSignal.3 + +MLINKS+= XtAddInput.3 XtAddTimeOut.3 \ + XtAddInput.3 XtAddWorkProc.3 + +MLINKS+= XtAppAddBlockHook.3 XtRemoveBlockHook.3 \ + XtAppInitialize.3 XtVaAppInitialize.3 \ + XtSessionGetToken.3 XtSessionReturnToken.3 + +MLINKS+= XtErrorMsg.3 XtSetErrorMsgHandler.3 \ + XtErrorMsg.3 XtSetWarningMsgHandler.3 \ + XtErrorMsg.3 XtWarningMsg.3 + +MLINKS+= XtError.3 XtSetErrorHandler.3 \ + XtError.3 XtSetWarningHandler.3 \ + XtError.3 XtWarning.3 + +MLINKS+= XtGetErrorDatabase.3 XtGetErrorDatabaseText.3 \ + XtGetSelectionValueIncremental.3 XtGetSelectionValuesIncremental.3 \ + XtGetSelectionTimeout.3 XtSetSelectionTimeout.3 + +MLINKS+= XtCreateSelectionRequest.3 XtSendSelectionRequest.3 \ + XtCreateSelectionRequest.3 XtCancelSelectionRequest.3 + +MLINKS+= XtReservePropertyAtom.3 XtReleasePropertyAtom.3 + +MLINKS+= XtGrabKey.3 XtUngrabKey.3 \ + XtGrabKey.3 XtGrabKeyboard.3 \ + XtGrabKey.3 XtUngrabKeyboard.3 \ + XtGrabKey.3 XtGrabButton.3 \ + XtGrabKey.3 XtUngrabButton.3 \ + XtGrabKey.3 XtGrabPointer.3 \ + XtGrabKey.3 XtUngrabPointer.3 + +MLINKS+= XtRegisterDrawable.3 XtUnregisterDrawable.3 \ + XtAppSetExitFlag.3 XtAppGetExitFlag.3 \ + XtAppLock.3 XtAppUnlock.3 \ + XtProcessLock.3 XtProcessUnlock.3 \ + XtOpenApplication.3 XtVaOpenApplication.3 + +PKGDIST= ${LIB} + +CWARNFLAGS.clang+= -Wno-tautological-compare + +.include +.include diff --git a/external/mit/xorg/lib/libXt/shlib_version b/external/mit/xorg/lib/libXt/shlib_version new file mode 100644 index 000000000..21f83da11 --- /dev/null +++ b/external/mit/xorg/lib/libXt/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:12 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libXtst/Makefile b/external/mit/xorg/lib/libXtst/Makefile new file mode 100644 index 000000000..37ef30670 --- /dev/null +++ b/external/mit/xorg/lib/libXtst/Makefile @@ -0,0 +1,28 @@ +# $NetBSD: Makefile,v 1.5 2013/05/31 09:33:17 mrg Exp $ + +.include + +LIB= Xtst +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/man +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions + +SRCS= XTest.c XRecord.c + +CPPFLAGS+= -DHAVE__XEATDATAWORDS + +CPPFLAGS+= ${X11FLAGS.THREADLIB} + +LIBDPLIBS=\ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +INCS= XTest.h \ + record.h + +INCSDIR=${X11INCDIR}/X11/extensions + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXtst/shlib_version b/external/mit/xorg/lib/libXtst/shlib_version new file mode 100644 index 000000000..21f83da11 --- /dev/null +++ b/external/mit/xorg/lib/libXtst/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:12 christos Exp $ +# +major=7 +minor=0 diff --git a/external/mit/xorg/lib/libXv/Makefile b/external/mit/xorg/lib/libXv/Makefile new file mode 100644 index 000000000..cb0fe1086 --- /dev/null +++ b/external/mit/xorg/lib/libXv/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.4 2013/06/01 08:03:26 mrg Exp $ + +.include + +LIB= Xv +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions +.PATH: ${X11SRCDIR.${LIB}}/man + +SRCS= Xv.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -DHAVE__XEATDATAWORDS + +INCS= Xvlib.h +INCSDIR=${X11INCDIR}/X11/extensions + +LIBDPLIBS=\ + Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +MAN= Xv.3 XvFreeAdaptorInfo.3 XvFreeEncodingInfo.3 XvGetPortAttribute.3 \ + XvGetStill.3 XvGetVideo.3 XvGrabPort.3 XvPortNotify.3 XvPutStill.3 \ + XvPutVideo.3 XvQueryAdaptors.3 XvQueryBestSize.3 XvQueryEncodings.3 \ + XvQueryExtension.3 XvSelectPortNotify.3 XvSelectVideoNotify.3 \ + XvSetPortAttribute.3 XvStopVideo.3 XvUngrabPort.3 XvVideoNotify.3 + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXv/shlib_version b/external/mit/xorg/lib/libXv/shlib_version new file mode 100644 index 000000000..6d5fa04e8 --- /dev/null +++ b/external/mit/xorg/lib/libXv/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:12 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXvMC/Makefile b/external/mit/xorg/lib/libXvMC/Makefile new file mode 100644 index 000000000..366e2ddc3 --- /dev/null +++ b/external/mit/xorg/lib/libXvMC/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.3 2008/11/06 22:28:26 veego Exp $ + +.include + +LIB= XvMC +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions + +SRCS= XvMC.c + +INCS= XvMClib.h +INCSDIR=${X11INCDIR}/X11/extensions + +CPPFLAGS+= ${X11FLAGS.THREADLIB} + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXvMC/shlib_version b/external/mit/xorg/lib/libXvMC/shlib_version new file mode 100644 index 000000000..6d5fa04e8 --- /dev/null +++ b/external/mit/xorg/lib/libXvMC/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:12 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXvMCW/Makefile b/external/mit/xorg/lib/libXvMCW/Makefile new file mode 100644 index 000000000..7365d316c --- /dev/null +++ b/external/mit/xorg/lib/libXvMCW/Makefile @@ -0,0 +1,21 @@ +# $NetBSD: Makefile,v 1.2 2013/06/06 06:18:15 mrg Exp $ + +.include + +LIB= XvMCW +.PATH: ${X11SRCDIR.XvMC}/wrapper + +SRCS= XvMCWrapper.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} +CPPFLAGS+= -DXVMC_CONFIGDIR=${X11ETCDIR} +CPPFLAGS+= -DXVMC_SOVERSION=\".2.0\" +CPPFLAGS+= -DXVMC_CLIENTSOVERSION=\".1.0\" +CPPFLAGS+= -DXV_SOVERSION=\".2.0\" +CPPFLAGS+= -I${X11SRCDIR.XvMC}/include + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +.include +.include diff --git a/external/mit/xorg/lib/libXvMCW/shlib_version b/external/mit/xorg/lib/libXvMCW/shlib_version new file mode 100644 index 000000000..d9e68aa63 --- /dev/null +++ b/external/mit/xorg/lib/libXvMCW/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.1 2011/01/19 16:31:24 jmcneill Exp $ +# +major=1 +minor=0 diff --git a/external/mit/xorg/lib/libXxf86dga/Makefile b/external/mit/xorg/lib/libXxf86dga/Makefile new file mode 100644 index 000000000..0dc0a1afe --- /dev/null +++ b/external/mit/xorg/lib/libXxf86dga/Makefile @@ -0,0 +1,51 @@ +# $NetBSD: Makefile,v 1.5 2013/05/31 09:33:17 mrg Exp $ + +.include + +LIB= Xxf86dga +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/man +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions + +SRCS= XF86DGA.c XF86DGA2.c + +MAN= XDGA.3 +MLINKS= XDGA.3 XF86DGA.3 \ + XDGA.3 XFree86-DGA.3 \ + XDGA.3 XDGAChangePixmapMode.3 \ + XDGA.3 XDGACloseFramebuffer.3 \ + XDGA.3 XDGACopyArea.3 \ + XDGA.3 XDGACopyTransparentArea.3 \ + XDGA.3 XDGACreateColormap.3 \ + XDGA.3 XDGAFillRectangle.3 \ + XDGA.3 XDGAGetViewportStatus.3 \ + XDGA.3 XDGAInstallColormap.3 \ + XDGA.3 XDGAKeyEventToXKeyEvent.3 \ + XDGA.3 XDGAOpenFramebuffer.3 \ + XDGA.3 XDGAQueryExtension.3 \ + XDGA.3 XDGAQueryModes.3 \ + XDGA.3 XDGAQueryVersion.3 \ + XDGA.3 XDGASelectInput.3 \ + XDGA.3 XDGASetClientVersion.3 \ + XDGA.3 XDGASetMode.3 \ + XDGA.3 XDGASetViewport.3 \ + XDGA.3 XDGASync.3 + +CPPFLAGS+= -DHAVE__XEATDATAWORDS +CPPFLAGS+= ${X11FLAGS.THREADLIB} + +# XXX +CPPFLAGS.XF86DGA2.c= -Wno-error + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +INCS= Xxf86dga.h \ + xf86dga1.h + +INCSDIR=${X11INCDIR}/X11/extensions + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXxf86dga/shlib_version b/external/mit/xorg/lib/libXxf86dga/shlib_version new file mode 100644 index 000000000..e06fc0e9f --- /dev/null +++ b/external/mit/xorg/lib/libXxf86dga/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:13 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXxf86misc/Makefile b/external/mit/xorg/lib/libXxf86misc/Makefile new file mode 100644 index 000000000..d1b580e6c --- /dev/null +++ b/external/mit/xorg/lib/libXxf86misc/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.5 2010/05/22 02:41:49 mrg Exp $ + +.include + +LIB= Xxf86misc +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/man + +SRCS= XF86Misc.c + +MAN= XF86Misc.3 +MLINKS= XF86Misc.3 XF86MiscGetKbdSettings.3 \ + XF86Misc.3 XF86MiscGetMouseSettings.3 \ + XF86Misc.3 XF86MiscGetSaver.3 \ + XF86Misc.3 XF86MiscQueryExtension.3 \ + XF86Misc.3 XF86MiscQueryVersion.3 \ + XF86Misc.3 XF86MiscSetKbdSettings.3 \ + XF86Misc.3 XF86MiscSetMouseSettings.3 \ + XF86Misc.3 XF86MiscSetSaver.3 + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXxf86misc/shlib_version b/external/mit/xorg/lib/libXxf86misc/shlib_version new file mode 100644 index 000000000..e06fc0e9f --- /dev/null +++ b/external/mit/xorg/lib/libXxf86misc/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:13 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libXxf86vm/Makefile b/external/mit/xorg/lib/libXxf86vm/Makefile new file mode 100644 index 000000000..46b64d2db --- /dev/null +++ b/external/mit/xorg/lib/libXxf86vm/Makefile @@ -0,0 +1,47 @@ +# $NetBSD: Makefile,v 1.6 2013/05/31 09:33:18 mrg Exp $ + +.include + +LIB= Xxf86vm +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/man +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions + +SRCS= XF86VMode.c + +CPPFLAGS+= -DHAVE__XEATDATAWORDS + +MAN= XF86VM.3 +MLINKS= XF86VM.3 XF86VidModeQueryExtension.3 \ + XF86VM.3 XF86VidModeQueryVersion.3 \ + XF86VM.3 XF86VidModeSetClientVersion.3 \ + XF86VM.3 XF86VidModeGetModeLine.3 \ + XF86VM.3 XF86VidModeGetAllModeLines.3 \ + XF86VM.3 XF86VidModeDeleteModeLine.3 \ + XF86VM.3 XF86VidModeModModeLine.3 \ + XF86VM.3 XF86VidModeValidateModeLine.3 \ + XF86VM.3 XF86VidModeSwitchMode.3 \ + XF86VM.3 XF86VidModeSwitchToMode.3 \ + XF86VM.3 XF86VidModeLockModeSwitch.3 \ + XF86VM.3 XF86VidModeGetMonitor.3 \ + XF86VM.3 XF86VidModeGetViewPort.3 \ + XF86VM.3 XF86VidModeSetViewPort.3 \ + XF86VM.3 XF86VidModeGetDotClocks.3 \ + XF86VM.3 XF86VidModeGetGamma.3 \ + XF86VM.3 XF86VidModeSetGamma.3 \ + XF86VM.3 XF86VidModeGetGammaRamp.3 \ + XF86VM.3 XF86VidModeSetGammaRamp.3 \ + XF86VM.3 XF86VidModeGetGammaRampSize.3 \ + XF86VM.3 XF86VidModeGetPermissions.3 + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic + +INCS= xf86vmode.h + +INCSDIR=${X11INCDIR}/X11/extensions + +PKGDIST= ${LIB} + +.include +.include diff --git a/external/mit/xorg/lib/libXxf86vm/shlib_version b/external/mit/xorg/lib/libXxf86vm/shlib_version new file mode 100644 index 000000000..e06fc0e9f --- /dev/null +++ b/external/mit/xorg/lib/libXxf86vm/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:13 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libchromeXvMC/Makefile b/external/mit/xorg/lib/libchromeXvMC/Makefile new file mode 100644 index 000000000..94cb7a265 --- /dev/null +++ b/external/mit/xorg/lib/libchromeXvMC/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.3 2013/06/02 03:15:49 christos Exp $ + +.include + +LIB= chromeXvMC +.PATH: ${X11SRCDIR.xf86-video-openchrome}/libxvmc +.PATH: ${X11SRCDIR.xf86-video-openchrome}/src +.PATH: ${X11SRCDIR.xf86-video-openchrome}/src/xvmc + +SRCS= viaLowLevel.c \ + driDrawable.c \ + viaXvMC.c \ + xf86dri.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} \ + -DHAVE_XEXTPROTO_71 \ + -DXSERVER_LIBPCIACCESS \ + -DTRUE=1 -DFALSE=0 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xf86-video-openchrome}/src + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic \ + Xv ${.CURDIR}/../libXv \ + XvMC ${.CURDIR}/../libXvMC \ + drm ${.CURDIR}/../libdrm + +.include +.include diff --git a/external/mit/xorg/lib/libchromeXvMC/shlib_version b/external/mit/xorg/lib/libchromeXvMC/shlib_version new file mode 100644 index 000000000..8ed623e60 --- /dev/null +++ b/external/mit/xorg/lib/libchromeXvMC/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2011/01/20 18:55:38 jmcneill Exp $ +# +major=1 +minor=0 diff --git a/external/mit/xorg/lib/libchromeXvMCPro/Makefile b/external/mit/xorg/lib/libchromeXvMCPro/Makefile new file mode 100644 index 000000000..79f8e40fa --- /dev/null +++ b/external/mit/xorg/lib/libchromeXvMCPro/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.2 2013/06/02 03:13:41 christos Exp $ + +.include + +LIB= chromeXvMCPro +.PATH: ${X11SRCDIR.xf86-video-openchrome}/libxvmc +.PATH: ${X11SRCDIR.xf86-video-openchrome}/src +.PATH: ${X11SRCDIR.xf86-video-openchrome}/src/xvmc + +SRCS= viaLowLevelPro.c \ + driDrawable.c \ + viaXvMC.c \ + xf86dri.c + +CPPFLAGS+= ${X11FLAGS.THREADLIB} \ + -DHAVE_XEXTPROTO_71 \ + -DXSERVER_LIBPCIACCESS \ + -DTRUE=1 -DFALSE=0 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xf86-video-openchrome}/src + +LIBDPLIBS= Xext ${.CURDIR}/../libXext \ + X11 ${.CURDIR}/../libX11/dynamic \ + Xv ${.CURDIR}/../libXv \ + XvMC ${.CURDIR}/../libXvMC \ + drm ${.CURDIR}/../libdrm + +.include +.include diff --git a/external/mit/xorg/lib/libchromeXvMCPro/shlib_version b/external/mit/xorg/lib/libchromeXvMCPro/shlib_version new file mode 100644 index 000000000..8cae1f9e1 --- /dev/null +++ b/external/mit/xorg/lib/libchromeXvMCPro/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.1 2011/01/20 18:36:46 jmcneill Exp $ +# +major=1 +minor=0 diff --git a/external/mit/xorg/lib/libdrm/Makefile b/external/mit/xorg/lib/libdrm/Makefile new file mode 100644 index 000000000..8974ace73 --- /dev/null +++ b/external/mit/xorg/lib/libdrm/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.8 2011/08/11 23:15:39 joerg Exp $ + +.include + +LIB= drm +.PATH: ${X11SRCDIR.${LIB}} + +SRCS= xf86drm.c xf86drmHash.c xf86drmRandom.c xf86drmSL.c + +INCS= xf86drm.h xf86drmMode.h +INCSDIR=${X11INCDIR} + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm + +SUBDIR= drm kms + +PKGCONFIG= libdrm +PKGDIST= ${LIB} + +CWARNFLAGS.clang+= -Wno-conversion -Wno-tautological-compare + +.include +.include +.include diff --git a/external/mit/xorg/lib/libdrm/drm/Makefile b/external/mit/xorg/lib/libdrm/drm/Makefile new file mode 100644 index 000000000..13f1adea2 --- /dev/null +++ b/external/mit/xorg/lib/libdrm/drm/Makefile @@ -0,0 +1,34 @@ +# $NetBSD: Makefile,v 1.5 2010/05/22 23:19:24 mrg Exp $ + +# install include/libdrm files + +.include + +.PATH: ${X11SRCDIR.drm}/include/drm +.PATH: ${X11SRCDIR.drm}/intel +.PATH: ${X11SRCDIR.drm}/radeon + +INCS= drm.h \ + drm_mode.h \ + drm_sarea.h \ + i915_drm.h \ + intel_bufmgr.h \ + mach64_drm.h \ + mga_drm.h \ + nouveau_drm.h \ + r128_drm.h \ + radeon_bo.h \ + radeon_bo_gem.h \ + radeon_bo_int.h \ + radeon_cs.h \ + radeon_cs_gem.h \ + radeon_cs_int.h \ + radeon_drm.h \ + savage_drm.h \ + sis_drm.h \ + via_drm.h + +INCSDIR=${X11INCDIR}/libdrm + +.include +.include diff --git a/external/mit/xorg/lib/libdrm/kms/Makefile b/external/mit/xorg/lib/libdrm/kms/Makefile new file mode 100644 index 000000000..fe103adad --- /dev/null +++ b/external/mit/xorg/lib/libdrm/kms/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2010/05/22 23:19:24 mrg Exp $ + +# install include/libkms files + +.include + +.PATH: ${X11SRCDIR.drm}/libkms + +INCS= libkms.h + +INCSDIR=${X11INCDIR}/libkms + +.include +.include diff --git a/external/mit/xorg/lib/libdrm/shlib_version b/external/mit/xorg/lib/libdrm/shlib_version new file mode 100644 index 000000000..e36f676a3 --- /dev/null +++ b/external/mit/xorg/lib/libdrm/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.4 2010/05/22 22:43:57 mrg Exp $ +# +major=3 +minor=2 diff --git a/external/mit/xorg/lib/libdrm_intel/Makefile b/external/mit/xorg/lib/libdrm_intel/Makefile new file mode 100644 index 000000000..f779b042a --- /dev/null +++ b/external/mit/xorg/lib/libdrm_intel/Makefile @@ -0,0 +1,21 @@ +# $NetBSD: Makefile,v 1.7 2011/08/11 23:15:39 joerg Exp $ + +.include + +LIB= drm_intel +.PATH: ${X11SRCDIR.drm}/intel + +SRCS= intel_bufmgr.c intel_bufmgr_fake.c intel_bufmgr_gem.c mm.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 -I${X11SRCDIR.drm} + +LIBDPLIBS= drm ${.CURDIR}/../libdrm + +PKGCONFIG= libdrm_intel +PKGDIST= drm + +CWARNFLAGS.clang+= -Wno-pointer-sign + +.include +.include diff --git a/external/mit/xorg/lib/libdrm_intel/shlib_version b/external/mit/xorg/lib/libdrm_intel/shlib_version new file mode 100644 index 000000000..6de659128 --- /dev/null +++ b/external/mit/xorg/lib/libdrm_intel/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.1 2009/06/09 03:05:37 mrg Exp $ +# +major=0 +minor=0 diff --git a/external/mit/xorg/lib/libdrm_radeon/Makefile b/external/mit/xorg/lib/libdrm_radeon/Makefile new file mode 100644 index 000000000..1e65b89ec --- /dev/null +++ b/external/mit/xorg/lib/libdrm_radeon/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.4 2010/08/14 10:29:43 mrg Exp $ + +.include + +LIB= drm_radeon +.PATH: ${X11SRCDIR.drm} +.PATH: ${X11SRCDIR.drm}/radeon + +SRCS= radeon_bo.c \ + radeon_bo_gem.c \ + radeon_cs.c \ + radeon_cs_gem.c \ + radeon_cs_space.c \ + bof.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 -I${X11SRCDIR.drm} + +COPTS.radeon_cs_gem.c+= -Wno-error # XXX + +LIBDPLIBS= drm ${.CURDIR}/../libdrm + +PKGCONFIG= libdrm_radeon +PKGDIST= drm + +.include +.include diff --git a/external/mit/xorg/lib/libdrm_radeon/shlib_version b/external/mit/xorg/lib/libdrm_radeon/shlib_version new file mode 100644 index 000000000..0f91ca043 --- /dev/null +++ b/external/mit/xorg/lib/libdrm_radeon/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.1 2010/05/22 22:48:19 mrg Exp $ +# +major=0 +minor=0 diff --git a/external/mit/xorg/lib/libfontenc/Makefile b/external/mit/xorg/lib/libfontenc/Makefile new file mode 100644 index 000000000..5f92282e5 --- /dev/null +++ b/external/mit/xorg/lib/libfontenc/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 04:32:31 cube Exp $ + +.include + +LIB= fontenc +.PATH: ${X11SRCDIR.${LIB}}/src + +SRCS= encparse.c fontenc.c + +INCS= fontenc.h +INCSDIR=${X11INCDIR}/X11/fonts +.PATH: ${X11SRCDIR.${LIB}}/include/X11/fonts + +CPPFLAGS+= -DFONTENC_NO_LIBFONT +CPPFLAGS+= -DFONT_ENCODINGS_DIRECTORY=\"${X11FONTDIR}/encodings/encodings.dir\" +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/fonts + +LDADD+= -lz +DPADD+= ${LIBZ} + +PKGCONFIG= fontenc + +.include +.include diff --git a/external/mit/xorg/lib/libfontenc/shlib_version b/external/mit/xorg/lib/libfontenc/shlib_version new file mode 100644 index 000000000..e06fc0e9f --- /dev/null +++ b/external/mit/xorg/lib/libfontenc/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:13 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libglut/Makefile b/external/mit/xorg/lib/libglut/Makefile new file mode 100644 index 000000000..dd4a70b18 --- /dev/null +++ b/external/mit/xorg/lib/libglut/Makefile @@ -0,0 +1,81 @@ +# $NetBSD: Makefile,v 1.7 2010/11/22 21:05:29 mrg Exp $ + +.include + +LIB= glut + +.PATH: ${X11SRCDIR.MesaGLUT}/src/glut/glx +SRCS= \ + glut_8x13.c \ + glut_9x15.c \ + glut_bitmap.c \ + glut_bwidth.c \ + glut_cindex.c \ + glut_cmap.c \ + glut_cursor.c \ + glut_dials.c \ + glut_dstr.c \ + glut_event.c \ + glut_ext.c \ + glut_fcb.c \ + glut_fullscrn.c \ + glut_gamemode.c \ + glut_get.c \ + glut_glxext.c \ + glut_hel10.c \ + glut_hel12.c \ + glut_hel18.c \ + glut_init.c \ + glut_input.c \ + glut_joy.c \ + glut_key.c \ + glut_keyctrl.c \ + glut_keyup.c \ + glut_menu.c \ + glut_menu2.c \ + glut_mesa.c \ + glut_modifier.c \ + glut_mroman.c \ + glut_overlay.c \ + glut_ppm.c \ + glut_roman.c \ + glut_shapes.c \ + glut_space.c \ + glut_stroke.c \ + glut_swap.c \ + glut_swidth.c \ + glut_tablet.c \ + glut_teapot.c \ + glut_tr10.c \ + glut_tr24.c \ + glut_util.c \ + glut_vidresize.c \ + glut_warp.c \ + glut_win.c \ + glut_winmisc.c \ + layerutil.c + +CPPFLAGS+= -I${X11SRCDIR.MesaGLUT}/include -I${X11SRCDIR.MesaLib}/include +CFLAGS+= -fno-strict-aliasing -fexceptions + +.PATH: ${X11SRCDIR.MesaGLUT}/include/GL +INCS= glut.h glutf90.h +INCSDIR=${X11INCDIR}/GL + +LIBDPLIBS= Xi ${.CURDIR}/../libXi \ + Xmu ${.CURDIR}/../libXmu \ + Xt ${.CURDIR}/../libXt \ + X11 ${.CURDIR}/../libX11/dynamic \ + GL ${.CURDIR}/../libGL \ + GLU ${.CURDIR}/../libGLU + +LDADD+= -lm +DPADD+= ${LIBM} + +PKGCONFIG= glut +PKGDIST.glut= ${X11SRCDIR.MesaGLUT}/src/glut/glx +.include "${.CURDIR}/../libGL/mesa-ver.mk" +PKGCONFIG_VERSION.glut= ${MESA_VER} + +.include +.include diff --git a/external/mit/xorg/lib/libglut/shlib_version b/external/mit/xorg/lib/libglut/shlib_version new file mode 100644 index 000000000..041242625 --- /dev/null +++ b/external/mit/xorg/lib/libglut/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:13 christos Exp $ +# +major=4 +minor=0 diff --git a/external/mit/xorg/lib/libpciaccess/Makefile b/external/mit/xorg/lib/libpciaccess/Makefile new file mode 100644 index 000000000..5c7ce7e0c --- /dev/null +++ b/external/mit/xorg/lib/libpciaccess/Makefile @@ -0,0 +1,51 @@ +# $NetBSD: Makefile,v 1.6 2011/01/14 16:04:49 jmcneill Exp $ + +.include + +LIB= pciaccess +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include + +SRCS= common_bridge.c \ + common_io.c \ + common_iterator.c \ + common_init.c \ + common_interface.c \ + common_capability.c \ + common_device_name.c \ + common_map.c \ + common_vgaarb_stub.c \ + minix_pci.c + +CPPFLAGS+= ${X11FLAGS} -I${X11SRCDIR.${LIB}}/include -DHAVE_ZLIB \ + -DHAVE_STRING_H -DHAVE_STDINT_H -DHAVE_INTTYPES_H \ + -DPCIIDS_PATH=\"${X11ROOTDIR}/share/pciids\" + +COPTS.common_init.c= -Wno-error + +INCS= pciaccess.h +INCSDIR=${X11INCDIR} + +PKGDIST= ${LIB} + +LDADD+= -lpci -lz +DPADD+= ${LIBPCI} ${LIBZ} + +.if !defined(__MINIX) +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +CPPFLAGS+= -DHAVE_MTRR +.endif + +.if ${MACHINE_ARCH} == "i386" +LDADD+= -li386 +DPADD+= ${LIBI386} +.endif + +.if ${MACHINE_ARCH} == "x86_64" +LDADD+= -lx86_64 +DPADD+= ${LIBX86_64} +.endif +.endif # !defined(__MINIX) + +.include +.include diff --git a/external/mit/xorg/lib/libpciaccess/shlib_version b/external/mit/xorg/lib/libpciaccess/shlib_version new file mode 100644 index 000000000..6c06f3413 --- /dev/null +++ b/external/mit/xorg/lib/libpciaccess/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.4 2013/06/01 09:08:01 mrg Exp $ +# +major=0 +minor=3 diff --git a/external/mit/xorg/lib/libxcb/Makefile b/external/mit/xorg/lib/libxcb/Makefile new file mode 100644 index 000000000..dd99be3d9 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:27 mrg Exp $ + +SUBDIR= libxcb .WAIT + +SUBDIR+= \ + composite \ + damage \ + dpms \ + dri2 \ + glx \ + randr \ + record \ + render \ + res \ + screensaver \ + shape \ + shm \ + sync \ + xevie \ + xf86dri \ + xfixes \ + xinerama \ + xtest \ + xv \ + xvmc \ + +.include diff --git a/external/mit/xorg/lib/libxcb/bigreq/Makefile b/external/mit/xorg/lib/libxcb/bigreq/Makefile new file mode 100644 index 000000000..21e6947fe --- /dev/null +++ b/external/mit/xorg/lib/libxcb/bigreq/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:27 mrg Exp $ + +XCBEXT= bigreq + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/composite/Makefile b/external/mit/xorg/lib/libxcb/composite/Makefile new file mode 100644 index 000000000..874072ece --- /dev/null +++ b/external/mit/xorg/lib/libxcb/composite/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:27 mrg Exp $ + +XCBEXT= composite + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/damage/Makefile b/external/mit/xorg/lib/libxcb/damage/Makefile new file mode 100644 index 000000000..fd7a3d120 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/damage/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:27 mrg Exp $ + +XCBEXT= damage + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/dpms/Makefile b/external/mit/xorg/lib/libxcb/dpms/Makefile new file mode 100644 index 000000000..dd0636b6c --- /dev/null +++ b/external/mit/xorg/lib/libxcb/dpms/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:28 mrg Exp $ + +XCBEXT= dpms + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/dri2/Makefile b/external/mit/xorg/lib/libxcb/dri2/Makefile new file mode 100644 index 000000000..0f2a5f27b --- /dev/null +++ b/external/mit/xorg/lib/libxcb/dri2/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:28 mrg Exp $ + +XCBEXT= dri2 + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/files/Makefile b/external/mit/xorg/lib/libxcb/files/Makefile new file mode 100644 index 000000000..ed7fc12ce --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:28 mrg Exp $ + +# This makefile is used to generate the libxcb xml/python generated files. +# For now it is broken, and these files were copied from a normal libxcb +# build. + +.include +.include "Makefile.xmlsrcs" + +PYTHON?= /usr/pkg/bin/python2.6 +PYTHONLIB?= /usr/pkg/lib/python2.6 +C_CLIENT?= ${X11SRCDIR.xcb}/src/c_client.py + +.SUFFIXES: .c .xml + +# this doesn't work; needs to run in the xcb tree for some reason? +.xml.c: + ${PYTHON} ${C_CLIENT} -p ${PYTHONLIB}/site-packages ${.IMPSRC} + +generate_from_xml: ${XMLSRCS} + +all: generate_from_xml + +.include + +.PATH: ${X11SRCDIR.xcb-proto}/src diff --git a/external/mit/xorg/lib/libxcb/files/Makefile.xmlsrcs b/external/mit/xorg/lib/libxcb/files/Makefile.xmlsrcs new file mode 100644 index 000000000..19eaaca82 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/Makefile.xmlsrcs @@ -0,0 +1,40 @@ +# $NetBSD: Makefile.xmlsrcs,v 1.2 2013/05/31 10:56:16 mrg Exp $ + +# list of the libxcb xml-generated .c files. + +XMLSRCS= \ + bigreq.c \ + composite.c \ + damage.c \ + dpms.c \ + dri2.c \ + glx.c \ + randr.c \ + record.c \ + render.c \ + res.c \ + screensaver.c \ + shape.c \ + shm.c \ + sync.c \ + xc_misc.c \ + xcb_auth.c \ + xcb_conn.c \ + xcb_ext.c \ + xcb_in.c \ + xcb_list.c \ + xcb_out.c \ + xcb_util.c \ + xcb_xid.c \ + xevie.c \ + xf86dri.c \ + xfixes.c \ + xinerama.c \ + xinput.c \ + xkb.c \ + xprint.c \ + xproto.c \ + xselinux.c \ + xtest.c \ + xv.c \ + xvmc.c diff --git a/external/mit/xorg/lib/libxcb/files/bigreq.c b/external/mit/xorg/lib/libxcb/files/bigreq.c new file mode 100644 index 000000000..e8f9131ad --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/bigreq.c @@ -0,0 +1,107 @@ +/* + * This file generated automatically from bigreq.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "bigreq.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) + +xcb_extension_t xcb_big_requests_id = { "BIG-REQUESTS", 0 }; + + +/***************************************************************************** + ** + ** xcb_big_requests_enable_cookie_t xcb_big_requests_enable + ** + ** @param xcb_connection_t *c + ** @returns xcb_big_requests_enable_cookie_t + ** + *****************************************************************************/ + +xcb_big_requests_enable_cookie_t +xcb_big_requests_enable (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_big_requests_id, + /* opcode */ XCB_BIG_REQUESTS_ENABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_big_requests_enable_cookie_t xcb_ret; + xcb_big_requests_enable_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_big_requests_enable_cookie_t xcb_big_requests_enable_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_big_requests_enable_cookie_t + ** + *****************************************************************************/ + +xcb_big_requests_enable_cookie_t +xcb_big_requests_enable_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_big_requests_id, + /* opcode */ XCB_BIG_REQUESTS_ENABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_big_requests_enable_cookie_t xcb_ret; + xcb_big_requests_enable_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_big_requests_enable_reply_t * xcb_big_requests_enable_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_big_requests_enable_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_big_requests_enable_reply_t * + ** + *****************************************************************************/ + +xcb_big_requests_enable_reply_t * +xcb_big_requests_enable_reply (xcb_connection_t *c /**< */, + xcb_big_requests_enable_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_big_requests_enable_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/bigreq.h b/external/mit/xorg/lib/libxcb/files/bigreq.h new file mode 100644 index 000000000..7f84f63e9 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/bigreq.h @@ -0,0 +1,141 @@ +/* + * This file generated automatically from bigreq.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_BigRequests_API XCB BigRequests API + * @brief BigRequests XCB Protocol Implementation. + * @{ + **/ + +#ifndef __BIGREQ_H +#define __BIGREQ_H + +#include "xcb.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_BIGREQUESTS_MAJOR_VERSION 0 +#define XCB_BIGREQUESTS_MINOR_VERSION 0 + +extern xcb_extension_t xcb_big_requests_id; + +/** + * @brief xcb_big_requests_enable_cookie_t + **/ +typedef struct xcb_big_requests_enable_cookie_t { + unsigned int sequence; /**< */ +} xcb_big_requests_enable_cookie_t; + +/** Opcode for xcb_big_requests_enable. */ +#define XCB_BIG_REQUESTS_ENABLE 0 + +/** + * @brief xcb_big_requests_enable_request_t + **/ +typedef struct xcb_big_requests_enable_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_big_requests_enable_request_t; + +/** + * @brief xcb_big_requests_enable_reply_t + **/ +typedef struct xcb_big_requests_enable_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t maximum_request_length; /**< */ +} xcb_big_requests_enable_reply_t; + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_big_requests_enable_cookie_t xcb_big_requests_enable + ** + ** @param xcb_connection_t *c + ** @returns xcb_big_requests_enable_cookie_t + ** + *****************************************************************************/ + +xcb_big_requests_enable_cookie_t +xcb_big_requests_enable (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_big_requests_enable_cookie_t xcb_big_requests_enable_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_big_requests_enable_cookie_t + ** + *****************************************************************************/ + +xcb_big_requests_enable_cookie_t +xcb_big_requests_enable_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_big_requests_enable_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_big_requests_enable_reply_t * xcb_big_requests_enable_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_big_requests_enable_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_big_requests_enable_reply_t * + ** + *****************************************************************************/ + +xcb_big_requests_enable_reply_t * +xcb_big_requests_enable_reply (xcb_connection_t *c /**< */, + xcb_big_requests_enable_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/composite.c b/external/mit/xorg/lib/libxcb/files/composite.c new file mode 100644 index 000000000..35862a57f --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/composite.c @@ -0,0 +1,779 @@ +/* + * This file generated automatically from composite.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "composite.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" +#include "render.h" +#include "shape.h" +#include "xfixes.h" + +xcb_extension_t xcb_composite_id = { "Composite", 0 }; + + +/***************************************************************************** + ** + ** xcb_composite_query_version_cookie_t xcb_composite_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_composite_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_composite_query_version_cookie_t +xcb_composite_query_version (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_composite_query_version_cookie_t xcb_ret; + xcb_composite_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_composite_query_version_cookie_t xcb_composite_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_composite_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_composite_query_version_cookie_t +xcb_composite_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_composite_query_version_cookie_t xcb_ret; + xcb_composite_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_composite_query_version_reply_t * xcb_composite_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_composite_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_composite_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_composite_query_version_reply_t * +xcb_composite_query_version_reply (xcb_connection_t *c /**< */, + xcb_composite_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_composite_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_redirect_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_redirect_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_REDIRECT_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_redirect_window_request_t xcb_out; + + xcb_out.window = window; + xcb_out.update = update; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_redirect_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_redirect_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_REDIRECT_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_redirect_window_request_t xcb_out; + + xcb_out.window = window; + xcb_out.update = update; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_redirect_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_redirect_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_REDIRECT_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_redirect_subwindows_request_t xcb_out; + + xcb_out.window = window; + xcb_out.update = update; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_redirect_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_redirect_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_REDIRECT_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_redirect_subwindows_request_t xcb_out; + + xcb_out.window = window; + xcb_out.update = update; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_unredirect_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_unredirect_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_UNREDIRECT_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_unredirect_window_request_t xcb_out; + + xcb_out.window = window; + xcb_out.update = update; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_unredirect_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_unredirect_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_UNREDIRECT_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_unredirect_window_request_t xcb_out; + + xcb_out.window = window; + xcb_out.update = update; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_unredirect_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_unredirect_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_unredirect_subwindows_request_t xcb_out; + + xcb_out.window = window; + xcb_out.update = update; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_unredirect_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_unredirect_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_unredirect_subwindows_request_t xcb_out; + + xcb_out.window = window; + xcb_out.update = update; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_create_region_from_border_clip_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_create_region_from_border_clip_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_create_region_from_border_clip_request_t xcb_out; + + xcb_out.region = region; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_create_region_from_border_clip + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_create_region_from_border_clip (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_create_region_from_border_clip_request_t xcb_out; + + xcb_out.region = region; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_name_window_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_pixmap_t pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_name_window_pixmap_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_pixmap_t pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_NAME_WINDOW_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_name_window_pixmap_request_t xcb_out; + + xcb_out.window = window; + xcb_out.pixmap = pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_name_window_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_pixmap_t pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_name_window_pixmap (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_pixmap_t pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_NAME_WINDOW_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_name_window_pixmap_request_t xcb_out; + + xcb_out.window = window; + xcb_out.pixmap = pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_composite_get_overlay_window_cookie_t xcb_composite_get_overlay_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_composite_get_overlay_window_cookie_t + ** + *****************************************************************************/ + +xcb_composite_get_overlay_window_cookie_t +xcb_composite_get_overlay_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_GET_OVERLAY_WINDOW, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_composite_get_overlay_window_cookie_t xcb_ret; + xcb_composite_get_overlay_window_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_composite_get_overlay_window_cookie_t xcb_composite_get_overlay_window_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_composite_get_overlay_window_cookie_t + ** + *****************************************************************************/ + +xcb_composite_get_overlay_window_cookie_t +xcb_composite_get_overlay_window_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_GET_OVERLAY_WINDOW, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_composite_get_overlay_window_cookie_t xcb_ret; + xcb_composite_get_overlay_window_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_composite_get_overlay_window_reply_t * xcb_composite_get_overlay_window_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_composite_get_overlay_window_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_composite_get_overlay_window_reply_t * + ** + *****************************************************************************/ + +xcb_composite_get_overlay_window_reply_t * +xcb_composite_get_overlay_window_reply (xcb_connection_t *c /**< */, + xcb_composite_get_overlay_window_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_composite_get_overlay_window_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_release_overlay_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_release_overlay_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_release_overlay_window_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_release_overlay_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_release_overlay_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_composite_id, + /* opcode */ XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_composite_release_overlay_window_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/composite.h b/external/mit/xorg/lib/libxcb/files/composite.h new file mode 100644 index 000000000..f9231454b --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/composite.h @@ -0,0 +1,742 @@ +/* + * This file generated automatically from composite.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Composite_API XCB Composite API + * @brief Composite XCB Protocol Implementation. + * @{ + **/ + +#ifndef __COMPOSITE_H +#define __COMPOSITE_H + +#include "xcb.h" +#include "xproto.h" +#include "render.h" +#include "shape.h" +#include "xfixes.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_COMPOSITE_MAJOR_VERSION 0 +#define XCB_COMPOSITE_MINOR_VERSION 3 + +extern xcb_extension_t xcb_composite_id; + +typedef enum xcb_composite_redirect_t { + XCB_COMPOSITE_REDIRECT_AUTOMATIC, + XCB_COMPOSITE_REDIRECT_MANUAL +} xcb_composite_redirect_t; + +/** + * @brief xcb_composite_query_version_cookie_t + **/ +typedef struct xcb_composite_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_composite_query_version_cookie_t; + +/** Opcode for xcb_composite_query_version. */ +#define XCB_COMPOSITE_QUERY_VERSION 0 + +/** + * @brief xcb_composite_query_version_request_t + **/ +typedef struct xcb_composite_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t client_major_version; /**< */ + uint32_t client_minor_version; /**< */ +} xcb_composite_query_version_request_t; + +/** + * @brief xcb_composite_query_version_reply_t + **/ +typedef struct xcb_composite_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_composite_query_version_reply_t; + +/** Opcode for xcb_composite_redirect_window. */ +#define XCB_COMPOSITE_REDIRECT_WINDOW 1 + +/** + * @brief xcb_composite_redirect_window_request_t + **/ +typedef struct xcb_composite_redirect_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint8_t update; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_composite_redirect_window_request_t; + +/** Opcode for xcb_composite_redirect_subwindows. */ +#define XCB_COMPOSITE_REDIRECT_SUBWINDOWS 2 + +/** + * @brief xcb_composite_redirect_subwindows_request_t + **/ +typedef struct xcb_composite_redirect_subwindows_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint8_t update; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_composite_redirect_subwindows_request_t; + +/** Opcode for xcb_composite_unredirect_window. */ +#define XCB_COMPOSITE_UNREDIRECT_WINDOW 3 + +/** + * @brief xcb_composite_unredirect_window_request_t + **/ +typedef struct xcb_composite_unredirect_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint8_t update; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_composite_unredirect_window_request_t; + +/** Opcode for xcb_composite_unredirect_subwindows. */ +#define XCB_COMPOSITE_UNREDIRECT_SUBWINDOWS 4 + +/** + * @brief xcb_composite_unredirect_subwindows_request_t + **/ +typedef struct xcb_composite_unredirect_subwindows_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint8_t update; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_composite_unredirect_subwindows_request_t; + +/** Opcode for xcb_composite_create_region_from_border_clip. */ +#define XCB_COMPOSITE_CREATE_REGION_FROM_BORDER_CLIP 5 + +/** + * @brief xcb_composite_create_region_from_border_clip_request_t + **/ +typedef struct xcb_composite_create_region_from_border_clip_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ + xcb_window_t window; /**< */ +} xcb_composite_create_region_from_border_clip_request_t; + +/** Opcode for xcb_composite_name_window_pixmap. */ +#define XCB_COMPOSITE_NAME_WINDOW_PIXMAP 6 + +/** + * @brief xcb_composite_name_window_pixmap_request_t + **/ +typedef struct xcb_composite_name_window_pixmap_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_pixmap_t pixmap; /**< */ +} xcb_composite_name_window_pixmap_request_t; + +/** + * @brief xcb_composite_get_overlay_window_cookie_t + **/ +typedef struct xcb_composite_get_overlay_window_cookie_t { + unsigned int sequence; /**< */ +} xcb_composite_get_overlay_window_cookie_t; + +/** Opcode for xcb_composite_get_overlay_window. */ +#define XCB_COMPOSITE_GET_OVERLAY_WINDOW 7 + +/** + * @brief xcb_composite_get_overlay_window_request_t + **/ +typedef struct xcb_composite_get_overlay_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_composite_get_overlay_window_request_t; + +/** + * @brief xcb_composite_get_overlay_window_reply_t + **/ +typedef struct xcb_composite_get_overlay_window_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t overlay_win; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_composite_get_overlay_window_reply_t; + +/** Opcode for xcb_composite_release_overlay_window. */ +#define XCB_COMPOSITE_RELEASE_OVERLAY_WINDOW 8 + +/** + * @brief xcb_composite_release_overlay_window_request_t + **/ +typedef struct xcb_composite_release_overlay_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_composite_release_overlay_window_request_t; + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_composite_query_version_cookie_t xcb_composite_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_composite_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_composite_query_version_cookie_t +xcb_composite_query_version (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_composite_query_version_cookie_t xcb_composite_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_composite_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_composite_query_version_cookie_t +xcb_composite_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_composite_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_composite_query_version_reply_t * xcb_composite_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_composite_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_composite_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_composite_query_version_reply_t * +xcb_composite_query_version_reply (xcb_connection_t *c /**< */, + xcb_composite_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_redirect_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_redirect_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_redirect_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_redirect_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_redirect_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_redirect_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_redirect_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_redirect_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_unredirect_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_unredirect_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_unredirect_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_unredirect_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_unredirect_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_unredirect_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_unredirect_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint8_t update + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_unredirect_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint8_t update /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_create_region_from_border_clip_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_create_region_from_border_clip_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_create_region_from_border_clip + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_create_region_from_border_clip (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_name_window_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_pixmap_t pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_name_window_pixmap_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_pixmap_t pixmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_name_window_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_pixmap_t pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_name_window_pixmap (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_pixmap_t pixmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_composite_get_overlay_window_cookie_t xcb_composite_get_overlay_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_composite_get_overlay_window_cookie_t + ** + *****************************************************************************/ + +xcb_composite_get_overlay_window_cookie_t +xcb_composite_get_overlay_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_composite_get_overlay_window_cookie_t xcb_composite_get_overlay_window_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_composite_get_overlay_window_cookie_t + ** + *****************************************************************************/ + +xcb_composite_get_overlay_window_cookie_t +xcb_composite_get_overlay_window_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_composite_get_overlay_window_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_composite_get_overlay_window_reply_t * xcb_composite_get_overlay_window_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_composite_get_overlay_window_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_composite_get_overlay_window_reply_t * + ** + *****************************************************************************/ + +xcb_composite_get_overlay_window_reply_t * +xcb_composite_get_overlay_window_reply (xcb_connection_t *c /**< */, + xcb_composite_get_overlay_window_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_release_overlay_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_release_overlay_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_composite_release_overlay_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_composite_release_overlay_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/config.h b/external/mit/xorg/lib/libxcb/files/config.h new file mode 100644 index 000000000..eb41a61b4 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/config.h @@ -0,0 +1,130 @@ +/* src/config.h. Generated from config.h.in by configure. */ +/* src/config.h.in. Generated from configure.ac by autoheader. */ + +/* Defined if GCC supports the visibility feature */ +#define GCC_HAS_VISIBILITY /**/ + +/* Has Wraphelp.c needed for XDM AUTH protocols */ +#define HASXDMAUTH 1 + +/* Define if your platform supports abstract sockets */ +/* #undef HAVE_ABSTRACT_SOCKETS */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* getaddrinfo() function is available */ +#define HAVE_GETADDRINFO 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `is_system_labeled' function. */ +/* #undef HAVE_IS_SYSTEM_LABELED */ + +/* launchd support available */ +/* #undef HAVE_LAUNCHD */ + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Have the sockaddr_un.sun_len member. */ +#define HAVE_SOCKADDR_SUN_LEN 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_TSOL_LABEL_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define if not provided by */ +/* #undef IOV_MAX */ + +/* Define to the sub-directory in which libtool stores uninstalled libraries. + */ +#define LT_OBJDIR ".libs/" + +/* Name of package */ +#define PACKAGE "libxcb" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "xcb@lists.freedesktop.org" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "libxcb" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "libxcb 1.9" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "libxcb" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "1.9" + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +#if !defined(__minix) +/* poll() function is available */ +#define USE_POLL 1 +#endif /* !defined(__minix) */ + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# define _ALL_SOURCE 1 +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# define _POSIX_PTHREAD_SEMANTICS 1 +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# define _TANDEM_SOURCE 1 +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# define __EXTENSIONS__ 1 +#endif + + +/* Version number of package */ +#define VERSION "1.9" + +/* XCB buffer queue size */ +#define XCB_QUEUE_BUFFER_SIZE 16384 + +/* Define to 1 if on MINIX. */ +/* #undef _MINIX */ + +/* Define to 2 if the system does not provide POSIX.1 features except with + this defined. */ +/* #undef _POSIX_1_SOURCE */ + +/* Define to 1 if you need to in order for `stat' and other things to work. */ +/* #undef _POSIX_SOURCE */ diff --git a/external/mit/xorg/lib/libxcb/files/damage.c b/external/mit/xorg/lib/libxcb/files/damage.c new file mode 100644 index 000000000..6b385384b --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/damage.c @@ -0,0 +1,489 @@ +/* + * This file generated automatically from damage.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "damage.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" +#include "render.h" +#include "shape.h" +#include "xfixes.h" + +xcb_extension_t xcb_damage_id = { "DAMAGE", 0 }; + + +/***************************************************************************** + ** + ** void xcb_damage_damage_next + ** + ** @param xcb_damage_damage_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_damage_damage_next (xcb_damage_damage_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_damage_damage_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_damage_damage_end + ** + ** @param xcb_damage_damage_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_damage_damage_end (xcb_damage_damage_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_damage_query_version_cookie_t xcb_damage_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_damage_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_damage_query_version_cookie_t +xcb_damage_query_version (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_damage_query_version_cookie_t xcb_ret; + xcb_damage_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_damage_query_version_cookie_t xcb_damage_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_damage_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_damage_query_version_cookie_t +xcb_damage_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_damage_query_version_cookie_t xcb_ret; + xcb_damage_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_damage_query_version_reply_t * xcb_damage_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_damage_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_damage_query_version_reply_t * +xcb_damage_query_version_reply (xcb_connection_t *c /**< */, + xcb_damage_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_damage_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_create_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @param xcb_drawable_t drawable + ** @param uint8_t level + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_create_checked (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */, + xcb_drawable_t drawable /**< */, + uint8_t level /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_CREATE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_damage_create_request_t xcb_out; + + xcb_out.damage = damage; + xcb_out.drawable = drawable; + xcb_out.level = level; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_create + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @param xcb_drawable_t drawable + ** @param uint8_t level + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_create (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */, + xcb_drawable_t drawable /**< */, + uint8_t level /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_CREATE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_damage_create_request_t xcb_out; + + xcb_out.damage = damage; + xcb_out.drawable = drawable; + xcb_out.level = level; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_destroy_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_destroy_checked (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_DESTROY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_damage_destroy_request_t xcb_out; + + xcb_out.damage = damage; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_destroy + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_destroy (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_DESTROY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_damage_destroy_request_t xcb_out; + + xcb_out.damage = damage; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_subtract_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @param xcb_xfixes_region_t repair + ** @param xcb_xfixes_region_t parts + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_subtract_checked (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */, + xcb_xfixes_region_t repair /**< */, + xcb_xfixes_region_t parts /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_SUBTRACT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_damage_subtract_request_t xcb_out; + + xcb_out.damage = damage; + xcb_out.repair = repair; + xcb_out.parts = parts; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_subtract + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @param xcb_xfixes_region_t repair + ** @param xcb_xfixes_region_t parts + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_subtract (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */, + xcb_xfixes_region_t repair /**< */, + xcb_xfixes_region_t parts /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_SUBTRACT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_damage_subtract_request_t xcb_out; + + xcb_out.damage = damage; + xcb_out.repair = repair; + xcb_out.parts = parts; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_add_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_add_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_xfixes_region_t region /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_ADD, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_damage_add_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_add + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_add (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_xfixes_region_t region /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_damage_id, + /* opcode */ XCB_DAMAGE_ADD, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_damage_add_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/damage.h b/external/mit/xorg/lib/libxcb/files/damage.h new file mode 100644 index 000000000..545e530e5 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/damage.h @@ -0,0 +1,521 @@ +/* + * This file generated automatically from damage.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Damage_API XCB Damage API + * @brief Damage XCB Protocol Implementation. + * @{ + **/ + +#ifndef __DAMAGE_H +#define __DAMAGE_H + +#include "xcb.h" +#include "xproto.h" +#include "render.h" +#include "shape.h" +#include "xfixes.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_DAMAGE_MAJOR_VERSION 1 +#define XCB_DAMAGE_MINOR_VERSION 1 + +extern xcb_extension_t xcb_damage_id; + +typedef uint32_t xcb_damage_damage_t; + +/** + * @brief xcb_damage_damage_iterator_t + **/ +typedef struct xcb_damage_damage_iterator_t { + xcb_damage_damage_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_damage_damage_iterator_t; + +typedef enum xcb_damage_report_level_t { + XCB_DAMAGE_REPORT_LEVEL_RAW_RECTANGLES, + XCB_DAMAGE_REPORT_LEVEL_DELTA_RECTANGLES, + XCB_DAMAGE_REPORT_LEVEL_BOUNDING_BOX, + XCB_DAMAGE_REPORT_LEVEL_NON_EMPTY +} xcb_damage_report_level_t; + +/** Opcode for xcb_damage_bad_damage. */ +#define XCB_DAMAGE_BAD_DAMAGE 0 + +/** + * @brief xcb_damage_bad_damage_error_t + **/ +typedef struct xcb_damage_bad_damage_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_damage_bad_damage_error_t; + +/** + * @brief xcb_damage_query_version_cookie_t + **/ +typedef struct xcb_damage_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_damage_query_version_cookie_t; + +/** Opcode for xcb_damage_query_version. */ +#define XCB_DAMAGE_QUERY_VERSION 0 + +/** + * @brief xcb_damage_query_version_request_t + **/ +typedef struct xcb_damage_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t client_major_version; /**< */ + uint32_t client_minor_version; /**< */ +} xcb_damage_query_version_request_t; + +/** + * @brief xcb_damage_query_version_reply_t + **/ +typedef struct xcb_damage_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_damage_query_version_reply_t; + +/** Opcode for xcb_damage_create. */ +#define XCB_DAMAGE_CREATE 1 + +/** + * @brief xcb_damage_create_request_t + **/ +typedef struct xcb_damage_create_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_damage_damage_t damage; /**< */ + xcb_drawable_t drawable; /**< */ + uint8_t level; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_damage_create_request_t; + +/** Opcode for xcb_damage_destroy. */ +#define XCB_DAMAGE_DESTROY 2 + +/** + * @brief xcb_damage_destroy_request_t + **/ +typedef struct xcb_damage_destroy_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_damage_damage_t damage; /**< */ +} xcb_damage_destroy_request_t; + +/** Opcode for xcb_damage_subtract. */ +#define XCB_DAMAGE_SUBTRACT 3 + +/** + * @brief xcb_damage_subtract_request_t + **/ +typedef struct xcb_damage_subtract_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_damage_damage_t damage; /**< */ + xcb_xfixes_region_t repair; /**< */ + xcb_xfixes_region_t parts; /**< */ +} xcb_damage_subtract_request_t; + +/** Opcode for xcb_damage_add. */ +#define XCB_DAMAGE_ADD 4 + +/** + * @brief xcb_damage_add_request_t + **/ +typedef struct xcb_damage_add_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_xfixes_region_t region; /**< */ +} xcb_damage_add_request_t; + +/** Opcode for xcb_damage_notify. */ +#define XCB_DAMAGE_NOTIFY 0 + +/** + * @brief xcb_damage_notify_event_t + **/ +typedef struct xcb_damage_notify_event_t { + uint8_t response_type; /**< */ + uint8_t level; /**< */ + uint16_t sequence; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_damage_damage_t damage; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_rectangle_t area; /**< */ + xcb_rectangle_t geometry; /**< */ +} xcb_damage_notify_event_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_damage_damage_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_damage_damage_t) + */ + +/***************************************************************************** + ** + ** void xcb_damage_damage_next + ** + ** @param xcb_damage_damage_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_damage_damage_next (xcb_damage_damage_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_damage_damage_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_damage_damage_end + ** + ** @param xcb_damage_damage_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_damage_damage_end (xcb_damage_damage_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_damage_query_version_cookie_t xcb_damage_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_damage_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_damage_query_version_cookie_t +xcb_damage_query_version (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_damage_query_version_cookie_t xcb_damage_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_damage_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_damage_query_version_cookie_t +xcb_damage_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_damage_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_damage_query_version_reply_t * xcb_damage_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_damage_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_damage_query_version_reply_t * +xcb_damage_query_version_reply (xcb_connection_t *c /**< */, + xcb_damage_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_create_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @param xcb_drawable_t drawable + ** @param uint8_t level + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_create_checked (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */, + xcb_drawable_t drawable /**< */, + uint8_t level /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_create + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @param xcb_drawable_t drawable + ** @param uint8_t level + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_create (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */, + xcb_drawable_t drawable /**< */, + uint8_t level /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_destroy_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_destroy_checked (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_destroy + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_destroy (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_subtract_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @param xcb_xfixes_region_t repair + ** @param xcb_xfixes_region_t parts + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_subtract_checked (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */, + xcb_xfixes_region_t repair /**< */, + xcb_xfixes_region_t parts /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_subtract + ** + ** @param xcb_connection_t *c + ** @param xcb_damage_damage_t damage + ** @param xcb_xfixes_region_t repair + ** @param xcb_xfixes_region_t parts + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_subtract (xcb_connection_t *c /**< */, + xcb_damage_damage_t damage /**< */, + xcb_xfixes_region_t repair /**< */, + xcb_xfixes_region_t parts /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_add_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_add_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_xfixes_region_t region /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_damage_add + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_damage_add (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_xfixes_region_t region /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/dpms.c b/external/mit/xorg/lib/libxcb/files/dpms.c new file mode 100644 index 000000000..952809f0c --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/dpms.c @@ -0,0 +1,679 @@ +/* + * This file generated automatically from dpms.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "dpms.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) + +xcb_extension_t xcb_dpms_id = { "DPMS", 0 }; + + +/***************************************************************************** + ** + ** xcb_dpms_get_version_cookie_t xcb_dpms_get_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_dpms_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_get_version_cookie_t +xcb_dpms_get_version (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_GET_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dpms_get_version_cookie_t xcb_ret; + xcb_dpms_get_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dpms_get_version_cookie_t xcb_dpms_get_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_dpms_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_get_version_cookie_t +xcb_dpms_get_version_unchecked (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_GET_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dpms_get_version_cookie_t xcb_ret; + xcb_dpms_get_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dpms_get_version_reply_t * xcb_dpms_get_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dpms_get_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dpms_get_version_reply_t * + ** + *****************************************************************************/ + +xcb_dpms_get_version_reply_t * +xcb_dpms_get_version_reply (xcb_connection_t *c /**< */, + xcb_dpms_get_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dpms_get_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_dpms_capable_cookie_t xcb_dpms_capable + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_capable_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_capable_cookie_t +xcb_dpms_capable (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_CAPABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dpms_capable_cookie_t xcb_ret; + xcb_dpms_capable_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dpms_capable_cookie_t xcb_dpms_capable_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_capable_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_capable_cookie_t +xcb_dpms_capable_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_CAPABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dpms_capable_cookie_t xcb_ret; + xcb_dpms_capable_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dpms_capable_reply_t * xcb_dpms_capable_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dpms_capable_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dpms_capable_reply_t * + ** + *****************************************************************************/ + +xcb_dpms_capable_reply_t * +xcb_dpms_capable_reply (xcb_connection_t *c /**< */, + xcb_dpms_capable_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dpms_capable_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_dpms_get_timeouts_cookie_t xcb_dpms_get_timeouts + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_get_timeouts_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_get_timeouts_cookie_t +xcb_dpms_get_timeouts (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_GET_TIMEOUTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dpms_get_timeouts_cookie_t xcb_ret; + xcb_dpms_get_timeouts_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dpms_get_timeouts_cookie_t xcb_dpms_get_timeouts_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_get_timeouts_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_get_timeouts_cookie_t +xcb_dpms_get_timeouts_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_GET_TIMEOUTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dpms_get_timeouts_cookie_t xcb_ret; + xcb_dpms_get_timeouts_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dpms_get_timeouts_reply_t * xcb_dpms_get_timeouts_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dpms_get_timeouts_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dpms_get_timeouts_reply_t * + ** + *****************************************************************************/ + +xcb_dpms_get_timeouts_reply_t * +xcb_dpms_get_timeouts_reply (xcb_connection_t *c /**< */, + xcb_dpms_get_timeouts_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dpms_get_timeouts_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_set_timeouts_checked + ** + ** @param xcb_connection_t *c + ** @param uint16_t standby_timeout + ** @param uint16_t suspend_timeout + ** @param uint16_t off_timeout + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_set_timeouts_checked (xcb_connection_t *c /**< */, + uint16_t standby_timeout /**< */, + uint16_t suspend_timeout /**< */, + uint16_t off_timeout /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_SET_TIMEOUTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dpms_set_timeouts_request_t xcb_out; + + xcb_out.standby_timeout = standby_timeout; + xcb_out.suspend_timeout = suspend_timeout; + xcb_out.off_timeout = off_timeout; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_set_timeouts + ** + ** @param xcb_connection_t *c + ** @param uint16_t standby_timeout + ** @param uint16_t suspend_timeout + ** @param uint16_t off_timeout + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_set_timeouts (xcb_connection_t *c /**< */, + uint16_t standby_timeout /**< */, + uint16_t suspend_timeout /**< */, + uint16_t off_timeout /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_SET_TIMEOUTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dpms_set_timeouts_request_t xcb_out; + + xcb_out.standby_timeout = standby_timeout; + xcb_out.suspend_timeout = suspend_timeout; + xcb_out.off_timeout = off_timeout; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_enable_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_enable_checked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_ENABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dpms_enable_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_enable + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_enable (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_ENABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dpms_enable_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_disable_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_disable_checked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_DISABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dpms_disable_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_disable + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_disable (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_DISABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dpms_disable_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_force_level_checked + ** + ** @param xcb_connection_t *c + ** @param uint16_t power_level + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_force_level_checked (xcb_connection_t *c /**< */, + uint16_t power_level /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_FORCE_LEVEL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dpms_force_level_request_t xcb_out; + + xcb_out.power_level = power_level; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_force_level + ** + ** @param xcb_connection_t *c + ** @param uint16_t power_level + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_force_level (xcb_connection_t *c /**< */, + uint16_t power_level /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_FORCE_LEVEL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dpms_force_level_request_t xcb_out; + + xcb_out.power_level = power_level; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dpms_info_cookie_t xcb_dpms_info + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_info_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_info_cookie_t +xcb_dpms_info (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dpms_info_cookie_t xcb_ret; + xcb_dpms_info_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dpms_info_cookie_t xcb_dpms_info_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_info_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_info_cookie_t +xcb_dpms_info_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dpms_id, + /* opcode */ XCB_DPMS_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dpms_info_cookie_t xcb_ret; + xcb_dpms_info_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dpms_info_reply_t * xcb_dpms_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dpms_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dpms_info_reply_t * + ** + *****************************************************************************/ + +xcb_dpms_info_reply_t * +xcb_dpms_info_reply (xcb_connection_t *c /**< */, + xcb_dpms_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dpms_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/dpms.h b/external/mit/xorg/lib/libxcb/files/dpms.h new file mode 100644 index 000000000..38f2e95d7 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/dpms.h @@ -0,0 +1,731 @@ +/* + * This file generated automatically from dpms.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_DPMS_API XCB DPMS API + * @brief DPMS XCB Protocol Implementation. + * @{ + **/ + +#ifndef __DPMS_H +#define __DPMS_H + +#include "xcb.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_DPMS_MAJOR_VERSION 0 +#define XCB_DPMS_MINOR_VERSION 0 + +extern xcb_extension_t xcb_dpms_id; + +/** + * @brief xcb_dpms_get_version_cookie_t + **/ +typedef struct xcb_dpms_get_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_dpms_get_version_cookie_t; + +/** Opcode for xcb_dpms_get_version. */ +#define XCB_DPMS_GET_VERSION 0 + +/** + * @brief xcb_dpms_get_version_request_t + **/ +typedef struct xcb_dpms_get_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t client_major_version; /**< */ + uint16_t client_minor_version; /**< */ +} xcb_dpms_get_version_request_t; + +/** + * @brief xcb_dpms_get_version_reply_t + **/ +typedef struct xcb_dpms_get_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t server_major_version; /**< */ + uint16_t server_minor_version; /**< */ +} xcb_dpms_get_version_reply_t; + +/** + * @brief xcb_dpms_capable_cookie_t + **/ +typedef struct xcb_dpms_capable_cookie_t { + unsigned int sequence; /**< */ +} xcb_dpms_capable_cookie_t; + +/** Opcode for xcb_dpms_capable. */ +#define XCB_DPMS_CAPABLE 1 + +/** + * @brief xcb_dpms_capable_request_t + **/ +typedef struct xcb_dpms_capable_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_dpms_capable_request_t; + +/** + * @brief xcb_dpms_capable_reply_t + **/ +typedef struct xcb_dpms_capable_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t capable; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_dpms_capable_reply_t; + +/** + * @brief xcb_dpms_get_timeouts_cookie_t + **/ +typedef struct xcb_dpms_get_timeouts_cookie_t { + unsigned int sequence; /**< */ +} xcb_dpms_get_timeouts_cookie_t; + +/** Opcode for xcb_dpms_get_timeouts. */ +#define XCB_DPMS_GET_TIMEOUTS 2 + +/** + * @brief xcb_dpms_get_timeouts_request_t + **/ +typedef struct xcb_dpms_get_timeouts_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_dpms_get_timeouts_request_t; + +/** + * @brief xcb_dpms_get_timeouts_reply_t + **/ +typedef struct xcb_dpms_get_timeouts_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t standby_timeout; /**< */ + uint16_t suspend_timeout; /**< */ + uint16_t off_timeout; /**< */ + uint8_t pad1[18]; /**< */ +} xcb_dpms_get_timeouts_reply_t; + +/** Opcode for xcb_dpms_set_timeouts. */ +#define XCB_DPMS_SET_TIMEOUTS 3 + +/** + * @brief xcb_dpms_set_timeouts_request_t + **/ +typedef struct xcb_dpms_set_timeouts_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t standby_timeout; /**< */ + uint16_t suspend_timeout; /**< */ + uint16_t off_timeout; /**< */ +} xcb_dpms_set_timeouts_request_t; + +/** Opcode for xcb_dpms_enable. */ +#define XCB_DPMS_ENABLE 4 + +/** + * @brief xcb_dpms_enable_request_t + **/ +typedef struct xcb_dpms_enable_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_dpms_enable_request_t; + +/** Opcode for xcb_dpms_disable. */ +#define XCB_DPMS_DISABLE 5 + +/** + * @brief xcb_dpms_disable_request_t + **/ +typedef struct xcb_dpms_disable_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_dpms_disable_request_t; + +typedef enum xcb_dpms_dpms_mode_t { + XCB_DPMS_DPMS_MODE_ON, + XCB_DPMS_DPMS_MODE_STANDBY, + XCB_DPMS_DPMS_MODE_SUSPEND, + XCB_DPMS_DPMS_MODE_OFF +} xcb_dpms_dpms_mode_t; + +/** Opcode for xcb_dpms_force_level. */ +#define XCB_DPMS_FORCE_LEVEL 6 + +/** + * @brief xcb_dpms_force_level_request_t + **/ +typedef struct xcb_dpms_force_level_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t power_level; /**< */ +} xcb_dpms_force_level_request_t; + +/** + * @brief xcb_dpms_info_cookie_t + **/ +typedef struct xcb_dpms_info_cookie_t { + unsigned int sequence; /**< */ +} xcb_dpms_info_cookie_t; + +/** Opcode for xcb_dpms_info. */ +#define XCB_DPMS_INFO 7 + +/** + * @brief xcb_dpms_info_request_t + **/ +typedef struct xcb_dpms_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_dpms_info_request_t; + +/** + * @brief xcb_dpms_info_reply_t + **/ +typedef struct xcb_dpms_info_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t power_level; /**< */ + uint8_t state; /**< */ + uint8_t pad1[21]; /**< */ +} xcb_dpms_info_reply_t; + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dpms_get_version_cookie_t xcb_dpms_get_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_dpms_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_get_version_cookie_t +xcb_dpms_get_version (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dpms_get_version_cookie_t xcb_dpms_get_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_dpms_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_get_version_cookie_t +xcb_dpms_get_version_unchecked (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dpms_get_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dpms_get_version_reply_t * xcb_dpms_get_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dpms_get_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dpms_get_version_reply_t * + ** + *****************************************************************************/ + +xcb_dpms_get_version_reply_t * +xcb_dpms_get_version_reply (xcb_connection_t *c /**< */, + xcb_dpms_get_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dpms_capable_cookie_t xcb_dpms_capable + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_capable_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_capable_cookie_t +xcb_dpms_capable (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dpms_capable_cookie_t xcb_dpms_capable_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_capable_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_capable_cookie_t +xcb_dpms_capable_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dpms_capable_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dpms_capable_reply_t * xcb_dpms_capable_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dpms_capable_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dpms_capable_reply_t * + ** + *****************************************************************************/ + +xcb_dpms_capable_reply_t * +xcb_dpms_capable_reply (xcb_connection_t *c /**< */, + xcb_dpms_capable_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dpms_get_timeouts_cookie_t xcb_dpms_get_timeouts + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_get_timeouts_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_get_timeouts_cookie_t +xcb_dpms_get_timeouts (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dpms_get_timeouts_cookie_t xcb_dpms_get_timeouts_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_get_timeouts_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_get_timeouts_cookie_t +xcb_dpms_get_timeouts_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dpms_get_timeouts_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dpms_get_timeouts_reply_t * xcb_dpms_get_timeouts_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dpms_get_timeouts_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dpms_get_timeouts_reply_t * + ** + *****************************************************************************/ + +xcb_dpms_get_timeouts_reply_t * +xcb_dpms_get_timeouts_reply (xcb_connection_t *c /**< */, + xcb_dpms_get_timeouts_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_set_timeouts_checked + ** + ** @param xcb_connection_t *c + ** @param uint16_t standby_timeout + ** @param uint16_t suspend_timeout + ** @param uint16_t off_timeout + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_set_timeouts_checked (xcb_connection_t *c /**< */, + uint16_t standby_timeout /**< */, + uint16_t suspend_timeout /**< */, + uint16_t off_timeout /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_set_timeouts + ** + ** @param xcb_connection_t *c + ** @param uint16_t standby_timeout + ** @param uint16_t suspend_timeout + ** @param uint16_t off_timeout + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_set_timeouts (xcb_connection_t *c /**< */, + uint16_t standby_timeout /**< */, + uint16_t suspend_timeout /**< */, + uint16_t off_timeout /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_enable_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_enable_checked (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_enable + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_enable (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_disable_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_disable_checked (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_disable + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_disable (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_force_level_checked + ** + ** @param xcb_connection_t *c + ** @param uint16_t power_level + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_force_level_checked (xcb_connection_t *c /**< */, + uint16_t power_level /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dpms_force_level + ** + ** @param xcb_connection_t *c + ** @param uint16_t power_level + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dpms_force_level (xcb_connection_t *c /**< */, + uint16_t power_level /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dpms_info_cookie_t xcb_dpms_info + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_info_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_info_cookie_t +xcb_dpms_info (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dpms_info_cookie_t xcb_dpms_info_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_dpms_info_cookie_t + ** + *****************************************************************************/ + +xcb_dpms_info_cookie_t +xcb_dpms_info_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dpms_info_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dpms_info_reply_t * xcb_dpms_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dpms_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dpms_info_reply_t * + ** + *****************************************************************************/ + +xcb_dpms_info_reply_t * +xcb_dpms_info_reply (xcb_connection_t *c /**< */, + xcb_dpms_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/dri2.c b/external/mit/xorg/lib/libxcb/files/dri2.c new file mode 100644 index 000000000..524bcb71a --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/dri2.c @@ -0,0 +1,1907 @@ +/* + * This file generated automatically from dri2.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "dri2.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_dri2_id = { "DRI2", 0 }; + + +/***************************************************************************** + ** + ** void xcb_dri2_dri2_buffer_next + ** + ** @param xcb_dri2_dri2_buffer_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_dri2_dri2_buffer_next (xcb_dri2_dri2_buffer_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_dri2_dri2_buffer_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_dri2_buffer_end + ** + ** @param xcb_dri2_dri2_buffer_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_dri2_buffer_end (xcb_dri2_dri2_buffer_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_dri2_attach_format_next + ** + ** @param xcb_dri2_attach_format_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_dri2_attach_format_next (xcb_dri2_attach_format_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_dri2_attach_format_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_attach_format_end + ** + ** @param xcb_dri2_attach_format_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_attach_format_end (xcb_dri2_attach_format_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_query_version_cookie_t xcb_dri2_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_dri2_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_query_version_cookie_t +xcb_dri2_query_version (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_query_version_cookie_t xcb_ret; + xcb_dri2_query_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_query_version_cookie_t xcb_dri2_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_dri2_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_query_version_cookie_t +xcb_dri2_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_query_version_cookie_t xcb_ret; + xcb_dri2_query_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_query_version_reply_t * xcb_dri2_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_query_version_reply_t * +xcb_dri2_query_version_reply (xcb_connection_t *c /**< */, + xcb_dri2_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_dri2_connect_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_dri2_connect_reply_t *_aux = (xcb_dri2_connect_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_dri2_connect_reply_t); + xcb_tmp += xcb_block_len; + /* driver_name */ + xcb_block_len += _aux->driver_name_length * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* alignment_pad */ + xcb_block_len += (((_aux->driver_name_length + 3) & (~3)) - _aux->driver_name_length) * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* device_name */ + xcb_block_len += _aux->device_name_length * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_dri2_connect_cookie_t xcb_dri2_connect + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t driver_type + ** @returns xcb_dri2_connect_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_connect_cookie_t +xcb_dri2_connect (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t driver_type /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_CONNECT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_connect_cookie_t xcb_ret; + xcb_dri2_connect_request_t xcb_out; + + xcb_out.window = window; + xcb_out.driver_type = driver_type; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_connect_cookie_t xcb_dri2_connect_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t driver_type + ** @returns xcb_dri2_connect_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_connect_cookie_t +xcb_dri2_connect_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t driver_type /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_CONNECT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_connect_cookie_t xcb_ret; + xcb_dri2_connect_request_t xcb_out; + + xcb_out.window = window; + xcb_out.driver_type = driver_type; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_dri2_connect_driver_name + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_dri2_connect_driver_name (const xcb_dri2_connect_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_dri2_connect_driver_name_length + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_connect_driver_name_length (const xcb_dri2_connect_reply_t *R /**< */) +{ + return R->driver_name_length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_connect_driver_name_end + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_connect_driver_name_end (const xcb_dri2_connect_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->driver_name_length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void * xcb_dri2_connect_alignment_pad + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns void * + ** + *****************************************************************************/ + +void * +xcb_dri2_connect_alignment_pad (const xcb_dri2_connect_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_dri2_connect_driver_name_end(R); + return (void *) ((char *) prev.data + XCB_TYPE_PAD(char, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_dri2_connect_alignment_pad_length + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_connect_alignment_pad_length (const xcb_dri2_connect_reply_t *R /**< */) +{ + return (((R->driver_name_length + 3) & (~3)) - R->driver_name_length); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_connect_alignment_pad_end + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_connect_alignment_pad_end (const xcb_dri2_connect_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_dri2_connect_driver_name_end(R); + i.data = ((char *) child.data) + ((((R->driver_name_length + 3) & (~3)) - R->driver_name_length)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** char * xcb_dri2_connect_device_name + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_dri2_connect_device_name (const xcb_dri2_connect_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_dri2_connect_alignment_pad_end(R); + return (char *) ((char *) prev.data + XCB_TYPE_PAD(char, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_dri2_connect_device_name_length + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_connect_device_name_length (const xcb_dri2_connect_reply_t *R /**< */) +{ + return R->device_name_length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_connect_device_name_end + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_connect_device_name_end (const xcb_dri2_connect_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_dri2_connect_alignment_pad_end(R); + i.data = ((char *) child.data) + (R->device_name_length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_dri2_connect_reply_t * xcb_dri2_connect_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_connect_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_connect_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_connect_reply_t * +xcb_dri2_connect_reply (xcb_connection_t *c /**< */, + xcb_dri2_connect_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_connect_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_dri2_authenticate_cookie_t xcb_dri2_authenticate + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t magic + ** @returns xcb_dri2_authenticate_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_authenticate_cookie_t +xcb_dri2_authenticate (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t magic /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_AUTHENTICATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_authenticate_cookie_t xcb_ret; + xcb_dri2_authenticate_request_t xcb_out; + + xcb_out.window = window; + xcb_out.magic = magic; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_authenticate_cookie_t xcb_dri2_authenticate_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t magic + ** @returns xcb_dri2_authenticate_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_authenticate_cookie_t +xcb_dri2_authenticate_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t magic /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_AUTHENTICATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_authenticate_cookie_t xcb_ret; + xcb_dri2_authenticate_request_t xcb_out; + + xcb_out.window = window; + xcb_out.magic = magic; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_authenticate_reply_t * xcb_dri2_authenticate_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_authenticate_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_authenticate_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_authenticate_reply_t * +xcb_dri2_authenticate_reply (xcb_connection_t *c /**< */, + xcb_dri2_authenticate_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_authenticate_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_create_drawable_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_create_drawable_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_CREATE_DRAWABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dri2_create_drawable_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_create_drawable + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_create_drawable (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_CREATE_DRAWABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dri2_create_drawable_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_destroy_drawable_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_destroy_drawable_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_DESTROY_DRAWABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dri2_destroy_drawable_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_destroy_drawable + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_destroy_drawable (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_DESTROY_DRAWABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dri2_destroy_drawable_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_dri2_get_buffers_sizeof (const void *_buffer /**< */, + uint32_t attachments_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_dri2_get_buffers_request_t); + xcb_tmp += xcb_block_len; + /* attachments */ + xcb_block_len += attachments_len * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_cookie_t xcb_dri2_get_buffers + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t count + ** @param uint32_t attachments_len + ** @param const uint32_t *attachments + ** @returns xcb_dri2_get_buffers_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_cookie_t +xcb_dri2_get_buffers (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t count /**< */, + uint32_t attachments_len /**< */, + const uint32_t *attachments /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_GET_BUFFERS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_dri2_get_buffers_cookie_t xcb_ret; + xcb_dri2_get_buffers_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attachments */ + xcb_parts[4].iov_base = (char *) attachments; + xcb_parts[4].iov_len = attachments_len * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_cookie_t xcb_dri2_get_buffers_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t count + ** @param uint32_t attachments_len + ** @param const uint32_t *attachments + ** @returns xcb_dri2_get_buffers_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_cookie_t +xcb_dri2_get_buffers_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t count /**< */, + uint32_t attachments_len /**< */, + const uint32_t *attachments /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_GET_BUFFERS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_dri2_get_buffers_cookie_t xcb_ret; + xcb_dri2_get_buffers_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attachments */ + xcb_parts[4].iov_base = (char *) attachments; + xcb_parts[4].iov_len = attachments_len * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_dri2_buffer_t * xcb_dri2_get_buffers_buffers + ** + ** @param const xcb_dri2_get_buffers_reply_t *R + ** @returns xcb_dri2_dri2_buffer_t * + ** + *****************************************************************************/ + +xcb_dri2_dri2_buffer_t * +xcb_dri2_get_buffers_buffers (const xcb_dri2_get_buffers_reply_t *R /**< */) +{ + return (xcb_dri2_dri2_buffer_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_dri2_get_buffers_buffers_length + ** + ** @param const xcb_dri2_get_buffers_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_get_buffers_buffers_length (const xcb_dri2_get_buffers_reply_t *R /**< */) +{ + return R->count; +} + + +/***************************************************************************** + ** + ** xcb_dri2_dri2_buffer_iterator_t xcb_dri2_get_buffers_buffers_iterator + ** + ** @param const xcb_dri2_get_buffers_reply_t *R + ** @returns xcb_dri2_dri2_buffer_iterator_t + ** + *****************************************************************************/ + +xcb_dri2_dri2_buffer_iterator_t +xcb_dri2_get_buffers_buffers_iterator (const xcb_dri2_get_buffers_reply_t *R /**< */) +{ + xcb_dri2_dri2_buffer_iterator_t i; + i.data = (xcb_dri2_dri2_buffer_t *) (R + 1); + i.rem = R->count; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_reply_t * xcb_dri2_get_buffers_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_get_buffers_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_get_buffers_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_reply_t * +xcb_dri2_get_buffers_reply (xcb_connection_t *c /**< */, + xcb_dri2_get_buffers_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_get_buffers_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_dri2_copy_region_cookie_t xcb_dri2_copy_region + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t region + ** @param uint32_t dest + ** @param uint32_t src + ** @returns xcb_dri2_copy_region_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_copy_region_cookie_t +xcb_dri2_copy_region (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t region /**< */, + uint32_t dest /**< */, + uint32_t src /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_COPY_REGION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_copy_region_cookie_t xcb_ret; + xcb_dri2_copy_region_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.region = region; + xcb_out.dest = dest; + xcb_out.src = src; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_copy_region_cookie_t xcb_dri2_copy_region_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t region + ** @param uint32_t dest + ** @param uint32_t src + ** @returns xcb_dri2_copy_region_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_copy_region_cookie_t +xcb_dri2_copy_region_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t region /**< */, + uint32_t dest /**< */, + uint32_t src /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_COPY_REGION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_copy_region_cookie_t xcb_ret; + xcb_dri2_copy_region_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.region = region; + xcb_out.dest = dest; + xcb_out.src = src; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_copy_region_reply_t * xcb_dri2_copy_region_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_copy_region_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_copy_region_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_copy_region_reply_t * +xcb_dri2_copy_region_reply (xcb_connection_t *c /**< */, + xcb_dri2_copy_region_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_copy_region_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_dri2_get_buffers_with_format_sizeof (const void *_buffer /**< */, + uint32_t attachments_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_dri2_get_buffers_with_format_request_t); + xcb_tmp += xcb_block_len; + /* attachments */ + xcb_block_len += attachments_len * sizeof(xcb_dri2_attach_format_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_dri2_attach_format_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_with_format_cookie_t xcb_dri2_get_buffers_with_format + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t count + ** @param uint32_t attachments_len + ** @param const xcb_dri2_attach_format_t *attachments + ** @returns xcb_dri2_get_buffers_with_format_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_with_format_cookie_t +xcb_dri2_get_buffers_with_format (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t count /**< */, + uint32_t attachments_len /**< */, + const xcb_dri2_attach_format_t *attachments /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_GET_BUFFERS_WITH_FORMAT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_dri2_get_buffers_with_format_cookie_t xcb_ret; + xcb_dri2_get_buffers_with_format_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_dri2_attach_format_t attachments */ + xcb_parts[4].iov_base = (char *) attachments; + xcb_parts[4].iov_len = attachments_len * sizeof(xcb_dri2_attach_format_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_with_format_cookie_t xcb_dri2_get_buffers_with_format_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t count + ** @param uint32_t attachments_len + ** @param const xcb_dri2_attach_format_t *attachments + ** @returns xcb_dri2_get_buffers_with_format_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_with_format_cookie_t +xcb_dri2_get_buffers_with_format_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t count /**< */, + uint32_t attachments_len /**< */, + const xcb_dri2_attach_format_t *attachments /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_GET_BUFFERS_WITH_FORMAT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_dri2_get_buffers_with_format_cookie_t xcb_ret; + xcb_dri2_get_buffers_with_format_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_dri2_attach_format_t attachments */ + xcb_parts[4].iov_base = (char *) attachments; + xcb_parts[4].iov_len = attachments_len * sizeof(xcb_dri2_attach_format_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_dri2_buffer_t * xcb_dri2_get_buffers_with_format_buffers + ** + ** @param const xcb_dri2_get_buffers_with_format_reply_t *R + ** @returns xcb_dri2_dri2_buffer_t * + ** + *****************************************************************************/ + +xcb_dri2_dri2_buffer_t * +xcb_dri2_get_buffers_with_format_buffers (const xcb_dri2_get_buffers_with_format_reply_t *R /**< */) +{ + return (xcb_dri2_dri2_buffer_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_dri2_get_buffers_with_format_buffers_length + ** + ** @param const xcb_dri2_get_buffers_with_format_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_get_buffers_with_format_buffers_length (const xcb_dri2_get_buffers_with_format_reply_t *R /**< */) +{ + return R->count; +} + + +/***************************************************************************** + ** + ** xcb_dri2_dri2_buffer_iterator_t xcb_dri2_get_buffers_with_format_buffers_iterator + ** + ** @param const xcb_dri2_get_buffers_with_format_reply_t *R + ** @returns xcb_dri2_dri2_buffer_iterator_t + ** + *****************************************************************************/ + +xcb_dri2_dri2_buffer_iterator_t +xcb_dri2_get_buffers_with_format_buffers_iterator (const xcb_dri2_get_buffers_with_format_reply_t *R /**< */) +{ + xcb_dri2_dri2_buffer_iterator_t i; + i.data = (xcb_dri2_dri2_buffer_t *) (R + 1); + i.rem = R->count; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_with_format_reply_t * xcb_dri2_get_buffers_with_format_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_get_buffers_with_format_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_get_buffers_with_format_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_with_format_reply_t * +xcb_dri2_get_buffers_with_format_reply (xcb_connection_t *c /**< */, + xcb_dri2_get_buffers_with_format_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_get_buffers_with_format_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_dri2_swap_buffers_cookie_t xcb_dri2_swap_buffers + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_msc_hi + ** @param uint32_t target_msc_lo + ** @param uint32_t divisor_hi + ** @param uint32_t divisor_lo + ** @param uint32_t remainder_hi + ** @param uint32_t remainder_lo + ** @returns xcb_dri2_swap_buffers_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_swap_buffers_cookie_t +xcb_dri2_swap_buffers (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_msc_hi /**< */, + uint32_t target_msc_lo /**< */, + uint32_t divisor_hi /**< */, + uint32_t divisor_lo /**< */, + uint32_t remainder_hi /**< */, + uint32_t remainder_lo /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_SWAP_BUFFERS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_swap_buffers_cookie_t xcb_ret; + xcb_dri2_swap_buffers_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.target_msc_hi = target_msc_hi; + xcb_out.target_msc_lo = target_msc_lo; + xcb_out.divisor_hi = divisor_hi; + xcb_out.divisor_lo = divisor_lo; + xcb_out.remainder_hi = remainder_hi; + xcb_out.remainder_lo = remainder_lo; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_swap_buffers_cookie_t xcb_dri2_swap_buffers_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_msc_hi + ** @param uint32_t target_msc_lo + ** @param uint32_t divisor_hi + ** @param uint32_t divisor_lo + ** @param uint32_t remainder_hi + ** @param uint32_t remainder_lo + ** @returns xcb_dri2_swap_buffers_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_swap_buffers_cookie_t +xcb_dri2_swap_buffers_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_msc_hi /**< */, + uint32_t target_msc_lo /**< */, + uint32_t divisor_hi /**< */, + uint32_t divisor_lo /**< */, + uint32_t remainder_hi /**< */, + uint32_t remainder_lo /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_SWAP_BUFFERS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_swap_buffers_cookie_t xcb_ret; + xcb_dri2_swap_buffers_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.target_msc_hi = target_msc_hi; + xcb_out.target_msc_lo = target_msc_lo; + xcb_out.divisor_hi = divisor_hi; + xcb_out.divisor_lo = divisor_lo; + xcb_out.remainder_hi = remainder_hi; + xcb_out.remainder_lo = remainder_lo; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_swap_buffers_reply_t * xcb_dri2_swap_buffers_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_swap_buffers_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_swap_buffers_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_swap_buffers_reply_t * +xcb_dri2_swap_buffers_reply (xcb_connection_t *c /**< */, + xcb_dri2_swap_buffers_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_swap_buffers_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_msc_cookie_t xcb_dri2_get_msc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_dri2_get_msc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_msc_cookie_t +xcb_dri2_get_msc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_GET_MSC, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_get_msc_cookie_t xcb_ret; + xcb_dri2_get_msc_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_msc_cookie_t xcb_dri2_get_msc_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_dri2_get_msc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_msc_cookie_t +xcb_dri2_get_msc_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_GET_MSC, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_get_msc_cookie_t xcb_ret; + xcb_dri2_get_msc_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_msc_reply_t * xcb_dri2_get_msc_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_get_msc_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_get_msc_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_get_msc_reply_t * +xcb_dri2_get_msc_reply (xcb_connection_t *c /**< */, + xcb_dri2_get_msc_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_get_msc_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_dri2_wait_msc_cookie_t xcb_dri2_wait_msc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_msc_hi + ** @param uint32_t target_msc_lo + ** @param uint32_t divisor_hi + ** @param uint32_t divisor_lo + ** @param uint32_t remainder_hi + ** @param uint32_t remainder_lo + ** @returns xcb_dri2_wait_msc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_wait_msc_cookie_t +xcb_dri2_wait_msc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_msc_hi /**< */, + uint32_t target_msc_lo /**< */, + uint32_t divisor_hi /**< */, + uint32_t divisor_lo /**< */, + uint32_t remainder_hi /**< */, + uint32_t remainder_lo /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_WAIT_MSC, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_wait_msc_cookie_t xcb_ret; + xcb_dri2_wait_msc_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.target_msc_hi = target_msc_hi; + xcb_out.target_msc_lo = target_msc_lo; + xcb_out.divisor_hi = divisor_hi; + xcb_out.divisor_lo = divisor_lo; + xcb_out.remainder_hi = remainder_hi; + xcb_out.remainder_lo = remainder_lo; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_wait_msc_cookie_t xcb_dri2_wait_msc_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_msc_hi + ** @param uint32_t target_msc_lo + ** @param uint32_t divisor_hi + ** @param uint32_t divisor_lo + ** @param uint32_t remainder_hi + ** @param uint32_t remainder_lo + ** @returns xcb_dri2_wait_msc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_wait_msc_cookie_t +xcb_dri2_wait_msc_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_msc_hi /**< */, + uint32_t target_msc_lo /**< */, + uint32_t divisor_hi /**< */, + uint32_t divisor_lo /**< */, + uint32_t remainder_hi /**< */, + uint32_t remainder_lo /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_WAIT_MSC, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_wait_msc_cookie_t xcb_ret; + xcb_dri2_wait_msc_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.target_msc_hi = target_msc_hi; + xcb_out.target_msc_lo = target_msc_lo; + xcb_out.divisor_hi = divisor_hi; + xcb_out.divisor_lo = divisor_lo; + xcb_out.remainder_hi = remainder_hi; + xcb_out.remainder_lo = remainder_lo; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_wait_msc_reply_t * xcb_dri2_wait_msc_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_wait_msc_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_wait_msc_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_wait_msc_reply_t * +xcb_dri2_wait_msc_reply (xcb_connection_t *c /**< */, + xcb_dri2_wait_msc_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_wait_msc_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_dri2_wait_sbc_cookie_t xcb_dri2_wait_sbc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_sbc_hi + ** @param uint32_t target_sbc_lo + ** @returns xcb_dri2_wait_sbc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_wait_sbc_cookie_t +xcb_dri2_wait_sbc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_sbc_hi /**< */, + uint32_t target_sbc_lo /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_WAIT_SBC, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_wait_sbc_cookie_t xcb_ret; + xcb_dri2_wait_sbc_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.target_sbc_hi = target_sbc_hi; + xcb_out.target_sbc_lo = target_sbc_lo; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_wait_sbc_cookie_t xcb_dri2_wait_sbc_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_sbc_hi + ** @param uint32_t target_sbc_lo + ** @returns xcb_dri2_wait_sbc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_wait_sbc_cookie_t +xcb_dri2_wait_sbc_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_sbc_hi /**< */, + uint32_t target_sbc_lo /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_WAIT_SBC, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_wait_sbc_cookie_t xcb_ret; + xcb_dri2_wait_sbc_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.target_sbc_hi = target_sbc_hi; + xcb_out.target_sbc_lo = target_sbc_lo; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_wait_sbc_reply_t * xcb_dri2_wait_sbc_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_wait_sbc_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_wait_sbc_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_wait_sbc_reply_t * +xcb_dri2_wait_sbc_reply (xcb_connection_t *c /**< */, + xcb_dri2_wait_sbc_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_wait_sbc_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_swap_interval_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t interval + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_swap_interval_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t interval /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_SWAP_INTERVAL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dri2_swap_interval_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.interval = interval; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_swap_interval + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t interval + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_swap_interval (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t interval /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_SWAP_INTERVAL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_dri2_swap_interval_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.interval = interval; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_param_cookie_t xcb_dri2_get_param + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t param + ** @returns xcb_dri2_get_param_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_param_cookie_t +xcb_dri2_get_param (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t param /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_GET_PARAM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_get_param_cookie_t xcb_ret; + xcb_dri2_get_param_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.param = param; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_param_cookie_t xcb_dri2_get_param_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t param + ** @returns xcb_dri2_get_param_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_param_cookie_t +xcb_dri2_get_param_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t param /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_dri2_id, + /* opcode */ XCB_DRI2_GET_PARAM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_dri2_get_param_cookie_t xcb_ret; + xcb_dri2_get_param_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.param = param; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_dri2_get_param_reply_t * xcb_dri2_get_param_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_get_param_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_get_param_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_get_param_reply_t * +xcb_dri2_get_param_reply (xcb_connection_t *c /**< */, + xcb_dri2_get_param_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_dri2_get_param_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/dri2.h b/external/mit/xorg/lib/libxcb/files/dri2.h new file mode 100644 index 000000000..a3c1bc638 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/dri2.h @@ -0,0 +1,1991 @@ +/* + * This file generated automatically from dri2.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_DRI2_API XCB DRI2 API + * @brief DRI2 XCB Protocol Implementation. + * @{ + **/ + +#ifndef __DRI2_H +#define __DRI2_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_DRI2_MAJOR_VERSION 1 +#define XCB_DRI2_MINOR_VERSION 4 + +extern xcb_extension_t xcb_dri2_id; + +typedef enum xcb_dri2_attachment_t { + XCB_DRI2_ATTACHMENT_BUFFER_FRONT_LEFT, + XCB_DRI2_ATTACHMENT_BUFFER_BACK_LEFT, + XCB_DRI2_ATTACHMENT_BUFFER_FRONT_RIGHT, + XCB_DRI2_ATTACHMENT_BUFFER_BACK_RIGHT, + XCB_DRI2_ATTACHMENT_BUFFER_DEPTH, + XCB_DRI2_ATTACHMENT_BUFFER_STENCIL, + XCB_DRI2_ATTACHMENT_BUFFER_ACCUM, + XCB_DRI2_ATTACHMENT_BUFFER_FAKE_FRONT_LEFT, + XCB_DRI2_ATTACHMENT_BUFFER_FAKE_FRONT_RIGHT, + XCB_DRI2_ATTACHMENT_BUFFER_DEPTH_STENCIL, + XCB_DRI2_ATTACHMENT_BUFFER_HIZ +} xcb_dri2_attachment_t; + +typedef enum xcb_dri2_driver_type_t { + XCB_DRI2_DRIVER_TYPE_DRI, + XCB_DRI2_DRIVER_TYPE_VDPAU +} xcb_dri2_driver_type_t; + +typedef enum xcb_dri2_event_type_t { + XCB_DRI2_EVENT_TYPE_EXCHANGE_COMPLETE = 1, + XCB_DRI2_EVENT_TYPE_BLIT_COMPLETE = 2, + XCB_DRI2_EVENT_TYPE_FLIP_COMPLETE = 3 +} xcb_dri2_event_type_t; + +/** + * @brief xcb_dri2_dri2_buffer_t + **/ +typedef struct xcb_dri2_dri2_buffer_t { + uint32_t attachment; /**< */ + uint32_t name; /**< */ + uint32_t pitch; /**< */ + uint32_t cpp; /**< */ + uint32_t flags; /**< */ +} xcb_dri2_dri2_buffer_t; + +/** + * @brief xcb_dri2_dri2_buffer_iterator_t + **/ +typedef struct xcb_dri2_dri2_buffer_iterator_t { + xcb_dri2_dri2_buffer_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_dri2_dri2_buffer_iterator_t; + +/** + * @brief xcb_dri2_attach_format_t + **/ +typedef struct xcb_dri2_attach_format_t { + uint32_t attachment; /**< */ + uint32_t format; /**< */ +} xcb_dri2_attach_format_t; + +/** + * @brief xcb_dri2_attach_format_iterator_t + **/ +typedef struct xcb_dri2_attach_format_iterator_t { + xcb_dri2_attach_format_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_dri2_attach_format_iterator_t; + +/** + * @brief xcb_dri2_query_version_cookie_t + **/ +typedef struct xcb_dri2_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_query_version_cookie_t; + +/** Opcode for xcb_dri2_query_version. */ +#define XCB_DRI2_QUERY_VERSION 0 + +/** + * @brief xcb_dri2_query_version_request_t + **/ +typedef struct xcb_dri2_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ +} xcb_dri2_query_version_request_t; + +/** + * @brief xcb_dri2_query_version_reply_t + **/ +typedef struct xcb_dri2_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ +} xcb_dri2_query_version_reply_t; + +/** + * @brief xcb_dri2_connect_cookie_t + **/ +typedef struct xcb_dri2_connect_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_connect_cookie_t; + +/** Opcode for xcb_dri2_connect. */ +#define XCB_DRI2_CONNECT 1 + +/** + * @brief xcb_dri2_connect_request_t + **/ +typedef struct xcb_dri2_connect_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint32_t driver_type; /**< */ +} xcb_dri2_connect_request_t; + +/** + * @brief xcb_dri2_connect_reply_t + **/ +typedef struct xcb_dri2_connect_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t driver_name_length; /**< */ + uint32_t device_name_length; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_dri2_connect_reply_t; + +/** + * @brief xcb_dri2_authenticate_cookie_t + **/ +typedef struct xcb_dri2_authenticate_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_authenticate_cookie_t; + +/** Opcode for xcb_dri2_authenticate. */ +#define XCB_DRI2_AUTHENTICATE 2 + +/** + * @brief xcb_dri2_authenticate_request_t + **/ +typedef struct xcb_dri2_authenticate_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint32_t magic; /**< */ +} xcb_dri2_authenticate_request_t; + +/** + * @brief xcb_dri2_authenticate_reply_t + **/ +typedef struct xcb_dri2_authenticate_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t authenticated; /**< */ +} xcb_dri2_authenticate_reply_t; + +/** Opcode for xcb_dri2_create_drawable. */ +#define XCB_DRI2_CREATE_DRAWABLE 3 + +/** + * @brief xcb_dri2_create_drawable_request_t + **/ +typedef struct xcb_dri2_create_drawable_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ +} xcb_dri2_create_drawable_request_t; + +/** Opcode for xcb_dri2_destroy_drawable. */ +#define XCB_DRI2_DESTROY_DRAWABLE 4 + +/** + * @brief xcb_dri2_destroy_drawable_request_t + **/ +typedef struct xcb_dri2_destroy_drawable_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ +} xcb_dri2_destroy_drawable_request_t; + +/** + * @brief xcb_dri2_get_buffers_cookie_t + **/ +typedef struct xcb_dri2_get_buffers_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_get_buffers_cookie_t; + +/** Opcode for xcb_dri2_get_buffers. */ +#define XCB_DRI2_GET_BUFFERS 5 + +/** + * @brief xcb_dri2_get_buffers_request_t + **/ +typedef struct xcb_dri2_get_buffers_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t count; /**< */ +} xcb_dri2_get_buffers_request_t; + +/** + * @brief xcb_dri2_get_buffers_reply_t + **/ +typedef struct xcb_dri2_get_buffers_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t width; /**< */ + uint32_t height; /**< */ + uint32_t count; /**< */ + uint8_t pad1[12]; /**< */ +} xcb_dri2_get_buffers_reply_t; + +/** + * @brief xcb_dri2_copy_region_cookie_t + **/ +typedef struct xcb_dri2_copy_region_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_copy_region_cookie_t; + +/** Opcode for xcb_dri2_copy_region. */ +#define XCB_DRI2_COPY_REGION 6 + +/** + * @brief xcb_dri2_copy_region_request_t + **/ +typedef struct xcb_dri2_copy_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t region; /**< */ + uint32_t dest; /**< */ + uint32_t src; /**< */ +} xcb_dri2_copy_region_request_t; + +/** + * @brief xcb_dri2_copy_region_reply_t + **/ +typedef struct xcb_dri2_copy_region_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ +} xcb_dri2_copy_region_reply_t; + +/** + * @brief xcb_dri2_get_buffers_with_format_cookie_t + **/ +typedef struct xcb_dri2_get_buffers_with_format_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_get_buffers_with_format_cookie_t; + +/** Opcode for xcb_dri2_get_buffers_with_format. */ +#define XCB_DRI2_GET_BUFFERS_WITH_FORMAT 7 + +/** + * @brief xcb_dri2_get_buffers_with_format_request_t + **/ +typedef struct xcb_dri2_get_buffers_with_format_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t count; /**< */ +} xcb_dri2_get_buffers_with_format_request_t; + +/** + * @brief xcb_dri2_get_buffers_with_format_reply_t + **/ +typedef struct xcb_dri2_get_buffers_with_format_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t width; /**< */ + uint32_t height; /**< */ + uint32_t count; /**< */ + uint8_t pad1[12]; /**< */ +} xcb_dri2_get_buffers_with_format_reply_t; + +/** + * @brief xcb_dri2_swap_buffers_cookie_t + **/ +typedef struct xcb_dri2_swap_buffers_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_swap_buffers_cookie_t; + +/** Opcode for xcb_dri2_swap_buffers. */ +#define XCB_DRI2_SWAP_BUFFERS 8 + +/** + * @brief xcb_dri2_swap_buffers_request_t + **/ +typedef struct xcb_dri2_swap_buffers_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t target_msc_hi; /**< */ + uint32_t target_msc_lo; /**< */ + uint32_t divisor_hi; /**< */ + uint32_t divisor_lo; /**< */ + uint32_t remainder_hi; /**< */ + uint32_t remainder_lo; /**< */ +} xcb_dri2_swap_buffers_request_t; + +/** + * @brief xcb_dri2_swap_buffers_reply_t + **/ +typedef struct xcb_dri2_swap_buffers_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t swap_hi; /**< */ + uint32_t swap_lo; /**< */ +} xcb_dri2_swap_buffers_reply_t; + +/** + * @brief xcb_dri2_get_msc_cookie_t + **/ +typedef struct xcb_dri2_get_msc_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_get_msc_cookie_t; + +/** Opcode for xcb_dri2_get_msc. */ +#define XCB_DRI2_GET_MSC 9 + +/** + * @brief xcb_dri2_get_msc_request_t + **/ +typedef struct xcb_dri2_get_msc_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ +} xcb_dri2_get_msc_request_t; + +/** + * @brief xcb_dri2_get_msc_reply_t + **/ +typedef struct xcb_dri2_get_msc_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t ust_hi; /**< */ + uint32_t ust_lo; /**< */ + uint32_t msc_hi; /**< */ + uint32_t msc_lo; /**< */ + uint32_t sbc_hi; /**< */ + uint32_t sbc_lo; /**< */ +} xcb_dri2_get_msc_reply_t; + +/** + * @brief xcb_dri2_wait_msc_cookie_t + **/ +typedef struct xcb_dri2_wait_msc_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_wait_msc_cookie_t; + +/** Opcode for xcb_dri2_wait_msc. */ +#define XCB_DRI2_WAIT_MSC 10 + +/** + * @brief xcb_dri2_wait_msc_request_t + **/ +typedef struct xcb_dri2_wait_msc_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t target_msc_hi; /**< */ + uint32_t target_msc_lo; /**< */ + uint32_t divisor_hi; /**< */ + uint32_t divisor_lo; /**< */ + uint32_t remainder_hi; /**< */ + uint32_t remainder_lo; /**< */ +} xcb_dri2_wait_msc_request_t; + +/** + * @brief xcb_dri2_wait_msc_reply_t + **/ +typedef struct xcb_dri2_wait_msc_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t ust_hi; /**< */ + uint32_t ust_lo; /**< */ + uint32_t msc_hi; /**< */ + uint32_t msc_lo; /**< */ + uint32_t sbc_hi; /**< */ + uint32_t sbc_lo; /**< */ +} xcb_dri2_wait_msc_reply_t; + +/** + * @brief xcb_dri2_wait_sbc_cookie_t + **/ +typedef struct xcb_dri2_wait_sbc_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_wait_sbc_cookie_t; + +/** Opcode for xcb_dri2_wait_sbc. */ +#define XCB_DRI2_WAIT_SBC 11 + +/** + * @brief xcb_dri2_wait_sbc_request_t + **/ +typedef struct xcb_dri2_wait_sbc_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t target_sbc_hi; /**< */ + uint32_t target_sbc_lo; /**< */ +} xcb_dri2_wait_sbc_request_t; + +/** + * @brief xcb_dri2_wait_sbc_reply_t + **/ +typedef struct xcb_dri2_wait_sbc_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t ust_hi; /**< */ + uint32_t ust_lo; /**< */ + uint32_t msc_hi; /**< */ + uint32_t msc_lo; /**< */ + uint32_t sbc_hi; /**< */ + uint32_t sbc_lo; /**< */ +} xcb_dri2_wait_sbc_reply_t; + +/** Opcode for xcb_dri2_swap_interval. */ +#define XCB_DRI2_SWAP_INTERVAL 12 + +/** + * @brief xcb_dri2_swap_interval_request_t + **/ +typedef struct xcb_dri2_swap_interval_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t interval; /**< */ +} xcb_dri2_swap_interval_request_t; + +/** + * @brief xcb_dri2_get_param_cookie_t + **/ +typedef struct xcb_dri2_get_param_cookie_t { + unsigned int sequence; /**< */ +} xcb_dri2_get_param_cookie_t; + +/** Opcode for xcb_dri2_get_param. */ +#define XCB_DRI2_GET_PARAM 13 + +/** + * @brief xcb_dri2_get_param_request_t + **/ +typedef struct xcb_dri2_get_param_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t param; /**< */ +} xcb_dri2_get_param_request_t; + +/** + * @brief xcb_dri2_get_param_reply_t + **/ +typedef struct xcb_dri2_get_param_reply_t { + uint8_t response_type; /**< */ + uint8_t is_param_recognized; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t value_hi; /**< */ + uint32_t value_lo; /**< */ +} xcb_dri2_get_param_reply_t; + +/** Opcode for xcb_dri2_buffer_swap_complete. */ +#define XCB_DRI2_BUFFER_SWAP_COMPLETE 0 + +/** + * @brief xcb_dri2_buffer_swap_complete_event_t + **/ +typedef struct xcb_dri2_buffer_swap_complete_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint16_t event_type; /**< */ + uint8_t pad1[2]; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t ust_hi; /**< */ + uint32_t ust_lo; /**< */ + uint32_t msc_hi; /**< */ + uint32_t msc_lo; /**< */ + uint32_t sbc; /**< */ +} xcb_dri2_buffer_swap_complete_event_t; + +/** Opcode for xcb_dri2_invalidate_buffers. */ +#define XCB_DRI2_INVALIDATE_BUFFERS 1 + +/** + * @brief xcb_dri2_invalidate_buffers_event_t + **/ +typedef struct xcb_dri2_invalidate_buffers_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_drawable_t drawable; /**< */ +} xcb_dri2_invalidate_buffers_event_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_dri2_dri2_buffer_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_dri2_dri2_buffer_t) + */ + +/***************************************************************************** + ** + ** void xcb_dri2_dri2_buffer_next + ** + ** @param xcb_dri2_dri2_buffer_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_dri2_dri2_buffer_next (xcb_dri2_dri2_buffer_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_dri2_dri2_buffer_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_dri2_buffer_end + ** + ** @param xcb_dri2_dri2_buffer_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_dri2_buffer_end (xcb_dri2_dri2_buffer_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_dri2_attach_format_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_dri2_attach_format_t) + */ + +/***************************************************************************** + ** + ** void xcb_dri2_attach_format_next + ** + ** @param xcb_dri2_attach_format_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_dri2_attach_format_next (xcb_dri2_attach_format_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_dri2_attach_format_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_attach_format_end + ** + ** @param xcb_dri2_attach_format_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_attach_format_end (xcb_dri2_attach_format_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_query_version_cookie_t xcb_dri2_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_dri2_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_query_version_cookie_t +xcb_dri2_query_version (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_query_version_cookie_t xcb_dri2_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_dri2_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_query_version_cookie_t +xcb_dri2_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_query_version_reply_t * xcb_dri2_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_query_version_reply_t * +xcb_dri2_query_version_reply (xcb_connection_t *c /**< */, + xcb_dri2_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_dri2_connect_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_connect_cookie_t xcb_dri2_connect + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t driver_type + ** @returns xcb_dri2_connect_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_connect_cookie_t +xcb_dri2_connect (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t driver_type /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_connect_cookie_t xcb_dri2_connect_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t driver_type + ** @returns xcb_dri2_connect_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_connect_cookie_t +xcb_dri2_connect_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t driver_type /**< */); + + +/***************************************************************************** + ** + ** char * xcb_dri2_connect_driver_name + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_dri2_connect_driver_name (const xcb_dri2_connect_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_dri2_connect_driver_name_length + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_connect_driver_name_length (const xcb_dri2_connect_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_connect_driver_name_end + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_connect_driver_name_end (const xcb_dri2_connect_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** void * xcb_dri2_connect_alignment_pad + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns void * + ** + *****************************************************************************/ + +void * +xcb_dri2_connect_alignment_pad (const xcb_dri2_connect_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_dri2_connect_alignment_pad_length + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_connect_alignment_pad_length (const xcb_dri2_connect_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_connect_alignment_pad_end + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_connect_alignment_pad_end (const xcb_dri2_connect_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** char * xcb_dri2_connect_device_name + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_dri2_connect_device_name (const xcb_dri2_connect_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_dri2_connect_device_name_length + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_connect_device_name_length (const xcb_dri2_connect_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_dri2_connect_device_name_end + ** + ** @param const xcb_dri2_connect_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_dri2_connect_device_name_end (const xcb_dri2_connect_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_connect_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_connect_reply_t * xcb_dri2_connect_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_connect_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_connect_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_connect_reply_t * +xcb_dri2_connect_reply (xcb_connection_t *c /**< */, + xcb_dri2_connect_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_authenticate_cookie_t xcb_dri2_authenticate + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t magic + ** @returns xcb_dri2_authenticate_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_authenticate_cookie_t +xcb_dri2_authenticate (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t magic /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_authenticate_cookie_t xcb_dri2_authenticate_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t magic + ** @returns xcb_dri2_authenticate_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_authenticate_cookie_t +xcb_dri2_authenticate_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t magic /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_authenticate_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_authenticate_reply_t * xcb_dri2_authenticate_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_authenticate_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_authenticate_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_authenticate_reply_t * +xcb_dri2_authenticate_reply (xcb_connection_t *c /**< */, + xcb_dri2_authenticate_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_create_drawable_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_create_drawable_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_create_drawable + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_create_drawable (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_destroy_drawable_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_destroy_drawable_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_destroy_drawable + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_destroy_drawable (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +int +xcb_dri2_get_buffers_sizeof (const void *_buffer /**< */, + uint32_t attachments_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_cookie_t xcb_dri2_get_buffers + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t count + ** @param uint32_t attachments_len + ** @param const uint32_t *attachments + ** @returns xcb_dri2_get_buffers_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_cookie_t +xcb_dri2_get_buffers (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t count /**< */, + uint32_t attachments_len /**< */, + const uint32_t *attachments /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_cookie_t xcb_dri2_get_buffers_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t count + ** @param uint32_t attachments_len + ** @param const uint32_t *attachments + ** @returns xcb_dri2_get_buffers_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_cookie_t +xcb_dri2_get_buffers_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t count /**< */, + uint32_t attachments_len /**< */, + const uint32_t *attachments /**< */); + + +/***************************************************************************** + ** + ** xcb_dri2_dri2_buffer_t * xcb_dri2_get_buffers_buffers + ** + ** @param const xcb_dri2_get_buffers_reply_t *R + ** @returns xcb_dri2_dri2_buffer_t * + ** + *****************************************************************************/ + +xcb_dri2_dri2_buffer_t * +xcb_dri2_get_buffers_buffers (const xcb_dri2_get_buffers_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_dri2_get_buffers_buffers_length + ** + ** @param const xcb_dri2_get_buffers_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_get_buffers_buffers_length (const xcb_dri2_get_buffers_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_dri2_dri2_buffer_iterator_t xcb_dri2_get_buffers_buffers_iterator + ** + ** @param const xcb_dri2_get_buffers_reply_t *R + ** @returns xcb_dri2_dri2_buffer_iterator_t + ** + *****************************************************************************/ + +xcb_dri2_dri2_buffer_iterator_t +xcb_dri2_get_buffers_buffers_iterator (const xcb_dri2_get_buffers_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_get_buffers_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_reply_t * xcb_dri2_get_buffers_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_get_buffers_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_get_buffers_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_reply_t * +xcb_dri2_get_buffers_reply (xcb_connection_t *c /**< */, + xcb_dri2_get_buffers_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_copy_region_cookie_t xcb_dri2_copy_region + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t region + ** @param uint32_t dest + ** @param uint32_t src + ** @returns xcb_dri2_copy_region_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_copy_region_cookie_t +xcb_dri2_copy_region (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t region /**< */, + uint32_t dest /**< */, + uint32_t src /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_copy_region_cookie_t xcb_dri2_copy_region_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t region + ** @param uint32_t dest + ** @param uint32_t src + ** @returns xcb_dri2_copy_region_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_copy_region_cookie_t +xcb_dri2_copy_region_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t region /**< */, + uint32_t dest /**< */, + uint32_t src /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_copy_region_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_copy_region_reply_t * xcb_dri2_copy_region_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_copy_region_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_copy_region_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_copy_region_reply_t * +xcb_dri2_copy_region_reply (xcb_connection_t *c /**< */, + xcb_dri2_copy_region_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_dri2_get_buffers_with_format_sizeof (const void *_buffer /**< */, + uint32_t attachments_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_with_format_cookie_t xcb_dri2_get_buffers_with_format + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t count + ** @param uint32_t attachments_len + ** @param const xcb_dri2_attach_format_t *attachments + ** @returns xcb_dri2_get_buffers_with_format_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_with_format_cookie_t +xcb_dri2_get_buffers_with_format (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t count /**< */, + uint32_t attachments_len /**< */, + const xcb_dri2_attach_format_t *attachments /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_with_format_cookie_t xcb_dri2_get_buffers_with_format_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t count + ** @param uint32_t attachments_len + ** @param const xcb_dri2_attach_format_t *attachments + ** @returns xcb_dri2_get_buffers_with_format_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_with_format_cookie_t +xcb_dri2_get_buffers_with_format_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t count /**< */, + uint32_t attachments_len /**< */, + const xcb_dri2_attach_format_t *attachments /**< */); + + +/***************************************************************************** + ** + ** xcb_dri2_dri2_buffer_t * xcb_dri2_get_buffers_with_format_buffers + ** + ** @param const xcb_dri2_get_buffers_with_format_reply_t *R + ** @returns xcb_dri2_dri2_buffer_t * + ** + *****************************************************************************/ + +xcb_dri2_dri2_buffer_t * +xcb_dri2_get_buffers_with_format_buffers (const xcb_dri2_get_buffers_with_format_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_dri2_get_buffers_with_format_buffers_length + ** + ** @param const xcb_dri2_get_buffers_with_format_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_dri2_get_buffers_with_format_buffers_length (const xcb_dri2_get_buffers_with_format_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_dri2_dri2_buffer_iterator_t xcb_dri2_get_buffers_with_format_buffers_iterator + ** + ** @param const xcb_dri2_get_buffers_with_format_reply_t *R + ** @returns xcb_dri2_dri2_buffer_iterator_t + ** + *****************************************************************************/ + +xcb_dri2_dri2_buffer_iterator_t +xcb_dri2_get_buffers_with_format_buffers_iterator (const xcb_dri2_get_buffers_with_format_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_get_buffers_with_format_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_buffers_with_format_reply_t * xcb_dri2_get_buffers_with_format_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_get_buffers_with_format_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_get_buffers_with_format_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_get_buffers_with_format_reply_t * +xcb_dri2_get_buffers_with_format_reply (xcb_connection_t *c /**< */, + xcb_dri2_get_buffers_with_format_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_swap_buffers_cookie_t xcb_dri2_swap_buffers + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_msc_hi + ** @param uint32_t target_msc_lo + ** @param uint32_t divisor_hi + ** @param uint32_t divisor_lo + ** @param uint32_t remainder_hi + ** @param uint32_t remainder_lo + ** @returns xcb_dri2_swap_buffers_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_swap_buffers_cookie_t +xcb_dri2_swap_buffers (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_msc_hi /**< */, + uint32_t target_msc_lo /**< */, + uint32_t divisor_hi /**< */, + uint32_t divisor_lo /**< */, + uint32_t remainder_hi /**< */, + uint32_t remainder_lo /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_swap_buffers_cookie_t xcb_dri2_swap_buffers_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_msc_hi + ** @param uint32_t target_msc_lo + ** @param uint32_t divisor_hi + ** @param uint32_t divisor_lo + ** @param uint32_t remainder_hi + ** @param uint32_t remainder_lo + ** @returns xcb_dri2_swap_buffers_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_swap_buffers_cookie_t +xcb_dri2_swap_buffers_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_msc_hi /**< */, + uint32_t target_msc_lo /**< */, + uint32_t divisor_hi /**< */, + uint32_t divisor_lo /**< */, + uint32_t remainder_hi /**< */, + uint32_t remainder_lo /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_swap_buffers_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_swap_buffers_reply_t * xcb_dri2_swap_buffers_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_swap_buffers_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_swap_buffers_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_swap_buffers_reply_t * +xcb_dri2_swap_buffers_reply (xcb_connection_t *c /**< */, + xcb_dri2_swap_buffers_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_msc_cookie_t xcb_dri2_get_msc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_dri2_get_msc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_msc_cookie_t +xcb_dri2_get_msc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_msc_cookie_t xcb_dri2_get_msc_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_dri2_get_msc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_msc_cookie_t +xcb_dri2_get_msc_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_get_msc_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_msc_reply_t * xcb_dri2_get_msc_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_get_msc_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_get_msc_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_get_msc_reply_t * +xcb_dri2_get_msc_reply (xcb_connection_t *c /**< */, + xcb_dri2_get_msc_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_wait_msc_cookie_t xcb_dri2_wait_msc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_msc_hi + ** @param uint32_t target_msc_lo + ** @param uint32_t divisor_hi + ** @param uint32_t divisor_lo + ** @param uint32_t remainder_hi + ** @param uint32_t remainder_lo + ** @returns xcb_dri2_wait_msc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_wait_msc_cookie_t +xcb_dri2_wait_msc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_msc_hi /**< */, + uint32_t target_msc_lo /**< */, + uint32_t divisor_hi /**< */, + uint32_t divisor_lo /**< */, + uint32_t remainder_hi /**< */, + uint32_t remainder_lo /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_wait_msc_cookie_t xcb_dri2_wait_msc_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_msc_hi + ** @param uint32_t target_msc_lo + ** @param uint32_t divisor_hi + ** @param uint32_t divisor_lo + ** @param uint32_t remainder_hi + ** @param uint32_t remainder_lo + ** @returns xcb_dri2_wait_msc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_wait_msc_cookie_t +xcb_dri2_wait_msc_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_msc_hi /**< */, + uint32_t target_msc_lo /**< */, + uint32_t divisor_hi /**< */, + uint32_t divisor_lo /**< */, + uint32_t remainder_hi /**< */, + uint32_t remainder_lo /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_wait_msc_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_wait_msc_reply_t * xcb_dri2_wait_msc_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_wait_msc_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_wait_msc_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_wait_msc_reply_t * +xcb_dri2_wait_msc_reply (xcb_connection_t *c /**< */, + xcb_dri2_wait_msc_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_wait_sbc_cookie_t xcb_dri2_wait_sbc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_sbc_hi + ** @param uint32_t target_sbc_lo + ** @returns xcb_dri2_wait_sbc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_wait_sbc_cookie_t +xcb_dri2_wait_sbc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_sbc_hi /**< */, + uint32_t target_sbc_lo /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_wait_sbc_cookie_t xcb_dri2_wait_sbc_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t target_sbc_hi + ** @param uint32_t target_sbc_lo + ** @returns xcb_dri2_wait_sbc_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_wait_sbc_cookie_t +xcb_dri2_wait_sbc_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t target_sbc_hi /**< */, + uint32_t target_sbc_lo /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_wait_sbc_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_wait_sbc_reply_t * xcb_dri2_wait_sbc_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_wait_sbc_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_wait_sbc_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_wait_sbc_reply_t * +xcb_dri2_wait_sbc_reply (xcb_connection_t *c /**< */, + xcb_dri2_wait_sbc_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_swap_interval_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t interval + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_swap_interval_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t interval /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_dri2_swap_interval + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t interval + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_dri2_swap_interval (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t interval /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_param_cookie_t xcb_dri2_get_param + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t param + ** @returns xcb_dri2_get_param_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_param_cookie_t +xcb_dri2_get_param (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t param /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_param_cookie_t xcb_dri2_get_param_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t param + ** @returns xcb_dri2_get_param_cookie_t + ** + *****************************************************************************/ + +xcb_dri2_get_param_cookie_t +xcb_dri2_get_param_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t param /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_dri2_get_param_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_dri2_get_param_reply_t * xcb_dri2_get_param_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_dri2_get_param_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_dri2_get_param_reply_t * + ** + *****************************************************************************/ + +xcb_dri2_get_param_reply_t * +xcb_dri2_get_param_reply (xcb_connection_t *c /**< */, + xcb_dri2_get_param_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/glx.c b/external/mit/xorg/lib/libxcb/files/glx.c new file mode 100644 index 000000000..26971c4e7 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/glx.c @@ -0,0 +1,15382 @@ +/* + * This file generated automatically from glx.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "glx.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_glx_id = { "GLX", 0 }; + + +/***************************************************************************** + ** + ** void xcb_glx_pixmap_next + ** + ** @param xcb_glx_pixmap_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_pixmap_next (xcb_glx_pixmap_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_pixmap_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_pixmap_end + ** + ** @param xcb_glx_pixmap_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_pixmap_end (xcb_glx_pixmap_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_glx_context_next + ** + ** @param xcb_glx_context_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_context_next (xcb_glx_context_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_context_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_context_end + ** + ** @param xcb_glx_context_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_context_end (xcb_glx_context_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_glx_pbuffer_next + ** + ** @param xcb_glx_pbuffer_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_pbuffer_next (xcb_glx_pbuffer_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_pbuffer_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_pbuffer_end + ** + ** @param xcb_glx_pbuffer_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_pbuffer_end (xcb_glx_pbuffer_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_glx_window_next + ** + ** @param xcb_glx_window_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_window_next (xcb_glx_window_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_window_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_window_end + ** + ** @param xcb_glx_window_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_window_end (xcb_glx_window_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_glx_fbconfig_next + ** + ** @param xcb_glx_fbconfig_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_fbconfig_next (xcb_glx_fbconfig_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_fbconfig_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_fbconfig_end + ** + ** @param xcb_glx_fbconfig_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_fbconfig_end (xcb_glx_fbconfig_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_glx_drawable_next + ** + ** @param xcb_glx_drawable_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_drawable_next (xcb_glx_drawable_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_drawable_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_drawable_end + ** + ** @param xcb_glx_drawable_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_drawable_end (xcb_glx_drawable_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_glx_float32_next + ** + ** @param xcb_glx_float32_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_float32_next (xcb_glx_float32_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_float32_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_float32_end + ** + ** @param xcb_glx_float32_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_float32_end (xcb_glx_float32_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_glx_float64_next + ** + ** @param xcb_glx_float64_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_float64_next (xcb_glx_float64_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_float64_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_float64_end + ** + ** @param xcb_glx_float64_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_float64_end (xcb_glx_float64_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_glx_bool32_next + ** + ** @param xcb_glx_bool32_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_bool32_next (xcb_glx_bool32_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_bool32_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_bool32_end + ** + ** @param xcb_glx_bool32_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_bool32_end (xcb_glx_bool32_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_glx_context_tag_next + ** + ** @param xcb_glx_context_tag_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_context_tag_next (xcb_glx_context_tag_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_glx_context_tag_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_context_tag_end + ** + ** @param xcb_glx_context_tag_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_context_tag_end (xcb_glx_context_tag_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_glx_render_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_render_request_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += data_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_render_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_render_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_RENDER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_render_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_render + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_render (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_RENDER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_render_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_render_large_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_render_large_request_t *_aux = (xcb_glx_render_large_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_render_large_request_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->data_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_render_large_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint16_t request_num + ** @param uint16_t request_total + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_render_large_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint16_t request_num /**< */, + uint16_t request_total /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_RENDER_LARGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_render_large_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.request_num = request_num; + xcb_out.request_total = request_total; + xcb_out.data_len = data_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_render_large + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint16_t request_num + ** @param uint16_t request_total + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_render_large (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint16_t request_num /**< */, + uint16_t request_total /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_RENDER_LARGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_render_large_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.request_num = request_num; + xcb_out.request_total = request_total; + xcb_out.data_len = data_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_visualid_t visual + ** @param uint32_t screen + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_context_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_visualid_t visual /**< */, + uint32_t screen /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_context_request_t xcb_out; + + xcb_out.context = context; + xcb_out.visual = visual; + xcb_out.screen = screen; + xcb_out.share_list = share_list; + xcb_out.is_direct = is_direct; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_visualid_t visual + ** @param uint32_t screen + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_context (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_visualid_t visual /**< */, + uint32_t screen /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_context_request_t xcb_out; + + xcb_out.context = context; + xcb_out.visual = visual; + xcb_out.screen = screen; + xcb_out.share_list = share_list; + xcb_out.is_direct = is_direct; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_context_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DESTROY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_destroy_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_context (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DESTROY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_destroy_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_make_current_cookie_t xcb_glx_make_current + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @param xcb_glx_context_t context + ** @param xcb_glx_context_tag_t old_context_tag + ** @returns xcb_glx_make_current_cookie_t + ** + *****************************************************************************/ + +xcb_glx_make_current_cookie_t +xcb_glx_make_current (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_context_tag_t old_context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_MAKE_CURRENT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_make_current_cookie_t xcb_ret; + xcb_glx_make_current_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.context = context; + xcb_out.old_context_tag = old_context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_make_current_cookie_t xcb_glx_make_current_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @param xcb_glx_context_t context + ** @param xcb_glx_context_tag_t old_context_tag + ** @returns xcb_glx_make_current_cookie_t + ** + *****************************************************************************/ + +xcb_glx_make_current_cookie_t +xcb_glx_make_current_unchecked (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_context_tag_t old_context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_MAKE_CURRENT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_make_current_cookie_t xcb_ret; + xcb_glx_make_current_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.context = context; + xcb_out.old_context_tag = old_context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_make_current_reply_t * xcb_glx_make_current_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_make_current_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_make_current_reply_t * + ** + *****************************************************************************/ + +xcb_glx_make_current_reply_t * +xcb_glx_make_current_reply (xcb_connection_t *c /**< */, + xcb_glx_make_current_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_make_current_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_glx_is_direct_cookie_t xcb_glx_is_direct + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_glx_is_direct_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_direct_cookie_t +xcb_glx_is_direct (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_IS_DIRECT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_is_direct_cookie_t xcb_ret; + xcb_glx_is_direct_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_is_direct_cookie_t xcb_glx_is_direct_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_glx_is_direct_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_direct_cookie_t +xcb_glx_is_direct_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_IS_DIRECT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_is_direct_cookie_t xcb_ret; + xcb_glx_is_direct_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_is_direct_reply_t * xcb_glx_is_direct_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_is_direct_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_is_direct_reply_t * + ** + *****************************************************************************/ + +xcb_glx_is_direct_reply_t * +xcb_glx_is_direct_reply (xcb_connection_t *c /**< */, + xcb_glx_is_direct_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_is_direct_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_glx_query_version_cookie_t xcb_glx_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_glx_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_version_cookie_t +xcb_glx_query_version (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_query_version_cookie_t xcb_ret; + xcb_glx_query_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_version_cookie_t xcb_glx_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_glx_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_version_cookie_t +xcb_glx_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_query_version_cookie_t xcb_ret; + xcb_glx_query_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_version_reply_t * xcb_glx_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_glx_query_version_reply_t * +xcb_glx_query_version_reply (xcb_connection_t *c /**< */, + xcb_glx_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_wait_gl_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_wait_gl_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_WAIT_GL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_wait_gl_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_wait_gl + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_wait_gl (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_WAIT_GL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_wait_gl_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_wait_x_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_wait_x_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_WAIT_X, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_wait_x_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_wait_x + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_wait_x (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_WAIT_X, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_wait_x_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_copy_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t src + ** @param xcb_glx_context_t dest + ** @param uint32_t mask + ** @param xcb_glx_context_tag_t src_context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_copy_context_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t src /**< */, + xcb_glx_context_t dest /**< */, + uint32_t mask /**< */, + xcb_glx_context_tag_t src_context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_COPY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_copy_context_request_t xcb_out; + + xcb_out.src = src; + xcb_out.dest = dest; + xcb_out.mask = mask; + xcb_out.src_context_tag = src_context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_copy_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t src + ** @param xcb_glx_context_t dest + ** @param uint32_t mask + ** @param xcb_glx_context_tag_t src_context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_copy_context (xcb_connection_t *c /**< */, + xcb_glx_context_t src /**< */, + xcb_glx_context_t dest /**< */, + uint32_t mask /**< */, + xcb_glx_context_tag_t src_context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_COPY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_copy_context_request_t xcb_out; + + xcb_out.src = src; + xcb_out.dest = dest; + xcb_out.mask = mask; + xcb_out.src_context_tag = src_context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_swap_buffers_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param xcb_glx_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_swap_buffers_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + xcb_glx_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_SWAP_BUFFERS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_swap_buffers_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_swap_buffers + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param xcb_glx_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_swap_buffers (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + xcb_glx_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_SWAP_BUFFERS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_swap_buffers_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_use_x_font_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param xcb_font_t font + ** @param uint32_t first + ** @param uint32_t count + ** @param uint32_t list_base + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_use_x_font_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + xcb_font_t font /**< */, + uint32_t first /**< */, + uint32_t count /**< */, + uint32_t list_base /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_USE_X_FONT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_use_x_font_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.font = font; + xcb_out.first = first; + xcb_out.count = count; + xcb_out.list_base = list_base; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_use_x_font + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param xcb_font_t font + ** @param uint32_t first + ** @param uint32_t count + ** @param uint32_t list_base + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_use_x_font (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + xcb_font_t font /**< */, + uint32_t first /**< */, + uint32_t count /**< */, + uint32_t list_base /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_USE_X_FONT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_use_x_font_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.font = font; + xcb_out.first = first; + xcb_out.count = count; + xcb_out.list_base = list_base; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_glx_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_visualid_t visual + ** @param xcb_pixmap_t pixmap + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_glx_pixmap_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_visualid_t visual /**< */, + xcb_pixmap_t pixmap /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_GLX_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_glx_pixmap_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.visual = visual; + xcb_out.pixmap = pixmap; + xcb_out.glx_pixmap = glx_pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_glx_pixmap + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_visualid_t visual + ** @param xcb_pixmap_t pixmap + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_glx_pixmap (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_visualid_t visual /**< */, + xcb_pixmap_t pixmap /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_GLX_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_glx_pixmap_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.visual = visual; + xcb_out.pixmap = pixmap; + xcb_out.glx_pixmap = glx_pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_get_visual_configs_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_visual_configs_reply_t *_aux = (xcb_glx_get_visual_configs_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_visual_configs_reply_t); + xcb_tmp += xcb_block_len; + /* property_list */ + xcb_block_len += _aux->length * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_visual_configs_cookie_t xcb_glx_get_visual_configs + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_get_visual_configs_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_visual_configs_cookie_t +xcb_glx_get_visual_configs (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_VISUAL_CONFIGS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_visual_configs_cookie_t xcb_ret; + xcb_glx_get_visual_configs_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_visual_configs_cookie_t xcb_glx_get_visual_configs_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_get_visual_configs_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_visual_configs_cookie_t +xcb_glx_get_visual_configs_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_VISUAL_CONFIGS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_visual_configs_cookie_t xcb_ret; + xcb_glx_get_visual_configs_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_visual_configs_property_list + ** + ** @param const xcb_glx_get_visual_configs_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_visual_configs_property_list (const xcb_glx_get_visual_configs_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_visual_configs_property_list_length + ** + ** @param const xcb_glx_get_visual_configs_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_visual_configs_property_list_length (const xcb_glx_get_visual_configs_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_visual_configs_property_list_end + ** + ** @param const xcb_glx_get_visual_configs_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_visual_configs_property_list_end (const xcb_glx_get_visual_configs_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_visual_configs_reply_t * xcb_glx_get_visual_configs_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_visual_configs_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_visual_configs_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_visual_configs_reply_t * +xcb_glx_get_visual_configs_reply (xcb_connection_t *c /**< */, + xcb_glx_get_visual_configs_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_visual_configs_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_glx_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_glx_pixmap_checked (xcb_connection_t *c /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DESTROY_GLX_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_destroy_glx_pixmap_request_t xcb_out; + + xcb_out.glx_pixmap = glx_pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_glx_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_glx_pixmap (xcb_connection_t *c /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DESTROY_GLX_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_destroy_glx_pixmap_request_t xcb_out; + + xcb_out.glx_pixmap = glx_pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_vendor_private_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_vendor_private_request_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += data_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_vendor_private_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t vendor_code + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_vendor_private_checked (xcb_connection_t *c /**< */, + uint32_t vendor_code /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_VENDOR_PRIVATE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_vendor_private_request_t xcb_out; + + xcb_out.vendor_code = vendor_code; + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_vendor_private + ** + ** @param xcb_connection_t *c + ** @param uint32_t vendor_code + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_vendor_private (xcb_connection_t *c /**< */, + uint32_t vendor_code /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_VENDOR_PRIVATE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_vendor_private_request_t xcb_out; + + xcb_out.vendor_code = vendor_code; + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_vendor_private_with_reply_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_vendor_private_with_reply_request_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += data_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_vendor_private_with_reply_cookie_t xcb_glx_vendor_private_with_reply + ** + ** @param xcb_connection_t *c + ** @param uint32_t vendor_code + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_glx_vendor_private_with_reply_cookie_t + ** + *****************************************************************************/ + +xcb_glx_vendor_private_with_reply_cookie_t +xcb_glx_vendor_private_with_reply (xcb_connection_t *c /**< */, + uint32_t vendor_code /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_VENDOR_PRIVATE_WITH_REPLY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_glx_vendor_private_with_reply_cookie_t xcb_ret; + xcb_glx_vendor_private_with_reply_request_t xcb_out; + + xcb_out.vendor_code = vendor_code; + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_vendor_private_with_reply_cookie_t xcb_glx_vendor_private_with_reply_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t vendor_code + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_glx_vendor_private_with_reply_cookie_t + ** + *****************************************************************************/ + +xcb_glx_vendor_private_with_reply_cookie_t +xcb_glx_vendor_private_with_reply_unchecked (xcb_connection_t *c /**< */, + uint32_t vendor_code /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_VENDOR_PRIVATE_WITH_REPLY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_glx_vendor_private_with_reply_cookie_t xcb_ret; + xcb_glx_vendor_private_with_reply_request_t xcb_out; + + xcb_out.vendor_code = vendor_code; + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_vendor_private_with_reply_data_2 + ** + ** @param const xcb_glx_vendor_private_with_reply_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_vendor_private_with_reply_data_2 (const xcb_glx_vendor_private_with_reply_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_vendor_private_with_reply_data_2_length + ** + ** @param const xcb_glx_vendor_private_with_reply_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_vendor_private_with_reply_data_2_length (const xcb_glx_vendor_private_with_reply_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_vendor_private_with_reply_data_2_end + ** + ** @param const xcb_glx_vendor_private_with_reply_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_vendor_private_with_reply_data_2_end (const xcb_glx_vendor_private_with_reply_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_vendor_private_with_reply_reply_t * xcb_glx_vendor_private_with_reply_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_vendor_private_with_reply_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_vendor_private_with_reply_reply_t * + ** + *****************************************************************************/ + +xcb_glx_vendor_private_with_reply_reply_t * +xcb_glx_vendor_private_with_reply_reply (xcb_connection_t *c /**< */, + xcb_glx_vendor_private_with_reply_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_vendor_private_with_reply_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_glx_query_extensions_string_cookie_t xcb_glx_query_extensions_string + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_query_extensions_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_extensions_string_cookie_t +xcb_glx_query_extensions_string (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_QUERY_EXTENSIONS_STRING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_query_extensions_string_cookie_t xcb_ret; + xcb_glx_query_extensions_string_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_extensions_string_cookie_t xcb_glx_query_extensions_string_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_query_extensions_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_extensions_string_cookie_t +xcb_glx_query_extensions_string_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_QUERY_EXTENSIONS_STRING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_query_extensions_string_cookie_t xcb_ret; + xcb_glx_query_extensions_string_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_extensions_string_reply_t * xcb_glx_query_extensions_string_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_query_extensions_string_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_query_extensions_string_reply_t * + ** + *****************************************************************************/ + +xcb_glx_query_extensions_string_reply_t * +xcb_glx_query_extensions_string_reply (xcb_connection_t *c /**< */, + xcb_glx_query_extensions_string_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_query_extensions_string_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_query_server_string_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_query_server_string_reply_t *_aux = (xcb_glx_query_server_string_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_query_server_string_reply_t); + xcb_tmp += xcb_block_len; + /* string */ + xcb_block_len += _aux->str_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_server_string_cookie_t xcb_glx_query_server_string + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t name + ** @returns xcb_glx_query_server_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_server_string_cookie_t +xcb_glx_query_server_string (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_QUERY_SERVER_STRING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_query_server_string_cookie_t xcb_ret; + xcb_glx_query_server_string_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.name = name; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_server_string_cookie_t xcb_glx_query_server_string_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t name + ** @returns xcb_glx_query_server_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_server_string_cookie_t +xcb_glx_query_server_string_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_QUERY_SERVER_STRING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_query_server_string_cookie_t xcb_ret; + xcb_glx_query_server_string_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.name = name; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_glx_query_server_string_string + ** + ** @param const xcb_glx_query_server_string_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_glx_query_server_string_string (const xcb_glx_query_server_string_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_query_server_string_string_length + ** + ** @param const xcb_glx_query_server_string_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_query_server_string_string_length (const xcb_glx_query_server_string_reply_t *R /**< */) +{ + return R->str_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_query_server_string_string_end + ** + ** @param const xcb_glx_query_server_string_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_query_server_string_string_end (const xcb_glx_query_server_string_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->str_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_server_string_reply_t * xcb_glx_query_server_string_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_query_server_string_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_query_server_string_reply_t * + ** + *****************************************************************************/ + +xcb_glx_query_server_string_reply_t * +xcb_glx_query_server_string_reply (xcb_connection_t *c /**< */, + xcb_glx_query_server_string_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_query_server_string_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_client_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_client_info_request_t *_aux = (xcb_glx_client_info_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_client_info_request_t); + xcb_tmp += xcb_block_len; + /* string */ + xcb_block_len += _aux->str_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_client_info_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t str_len + ** @param const char *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_client_info_checked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t str_len /**< */, + const char *string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CLIENT_INFO, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_client_info_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + xcb_out.str_len = str_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char string */ + xcb_parts[4].iov_base = (char *) string; + xcb_parts[4].iov_len = str_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_client_info + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t str_len + ** @param const char *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_client_info (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t str_len /**< */, + const char *string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CLIENT_INFO, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_client_info_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + xcb_out.str_len = str_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char string */ + xcb_parts[4].iov_base = (char *) string; + xcb_parts[4].iov_len = str_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_get_fb_configs_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_fb_configs_reply_t *_aux = (xcb_glx_get_fb_configs_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_fb_configs_reply_t); + xcb_tmp += xcb_block_len; + /* property_list */ + xcb_block_len += _aux->length * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_fb_configs_cookie_t xcb_glx_get_fb_configs + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_get_fb_configs_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_fb_configs_cookie_t +xcb_glx_get_fb_configs (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_FB_CONFIGS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_fb_configs_cookie_t xcb_ret; + xcb_glx_get_fb_configs_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_fb_configs_cookie_t xcb_glx_get_fb_configs_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_get_fb_configs_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_fb_configs_cookie_t +xcb_glx_get_fb_configs_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_FB_CONFIGS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_fb_configs_cookie_t xcb_ret; + xcb_glx_get_fb_configs_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_fb_configs_property_list + ** + ** @param const xcb_glx_get_fb_configs_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_fb_configs_property_list (const xcb_glx_get_fb_configs_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_fb_configs_property_list_length + ** + ** @param const xcb_glx_get_fb_configs_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_fb_configs_property_list_length (const xcb_glx_get_fb_configs_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_fb_configs_property_list_end + ** + ** @param const xcb_glx_get_fb_configs_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_fb_configs_property_list_end (const xcb_glx_get_fb_configs_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_fb_configs_reply_t * xcb_glx_get_fb_configs_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_fb_configs_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_fb_configs_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_fb_configs_reply_t * +xcb_glx_get_fb_configs_reply (xcb_connection_t *c /**< */, + xcb_glx_get_fb_configs_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_fb_configs_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_create_pixmap_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_create_pixmap_request_t *_aux = (xcb_glx_create_pixmap_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_create_pixmap_request_t); + xcb_tmp += xcb_block_len; + /* attribs */ + xcb_block_len += (_aux->num_attribs * 2) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_pixmap_t pixmap + ** @param xcb_glx_pixmap_t glx_pixmap + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_pixmap_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_pixmap_t pixmap /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_pixmap_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.fbconfig = fbconfig; + xcb_out.pixmap = pixmap; + xcb_out.glx_pixmap = glx_pixmap; + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_pixmap + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_pixmap_t pixmap + ** @param xcb_glx_pixmap_t glx_pixmap + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_pixmap (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_pixmap_t pixmap /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_pixmap_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.fbconfig = fbconfig; + xcb_out.pixmap = pixmap; + xcb_out.glx_pixmap = glx_pixmap; + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_pixmap_checked (xcb_connection_t *c /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DESTROY_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_destroy_pixmap_request_t xcb_out; + + xcb_out.glx_pixmap = glx_pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_pixmap (xcb_connection_t *c /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DESTROY_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_destroy_pixmap_request_t xcb_out; + + xcb_out.glx_pixmap = glx_pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_new_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_glx_fbconfig_t fbconfig + ** @param uint32_t screen + ** @param uint32_t render_type + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_new_context_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + uint32_t screen /**< */, + uint32_t render_type /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_NEW_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_new_context_request_t xcb_out; + + xcb_out.context = context; + xcb_out.fbconfig = fbconfig; + xcb_out.screen = screen; + xcb_out.render_type = render_type; + xcb_out.share_list = share_list; + xcb_out.is_direct = is_direct; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_new_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_glx_fbconfig_t fbconfig + ** @param uint32_t screen + ** @param uint32_t render_type + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_new_context (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + uint32_t screen /**< */, + uint32_t render_type /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_NEW_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_new_context_request_t xcb_out; + + xcb_out.context = context; + xcb_out.fbconfig = fbconfig; + xcb_out.screen = screen; + xcb_out.render_type = render_type; + xcb_out.share_list = share_list; + xcb_out.is_direct = is_direct; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_query_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_query_context_reply_t *_aux = (xcb_glx_query_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_query_context_reply_t); + xcb_tmp += xcb_block_len; + /* attribs */ + xcb_block_len += (_aux->num_attribs * 2) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_context_cookie_t xcb_glx_query_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_glx_query_context_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_context_cookie_t +xcb_glx_query_context (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_QUERY_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_query_context_cookie_t xcb_ret; + xcb_glx_query_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_context_cookie_t xcb_glx_query_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_glx_query_context_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_context_cookie_t +xcb_glx_query_context_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_QUERY_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_query_context_cookie_t xcb_ret; + xcb_glx_query_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_query_context_attribs + ** + ** @param const xcb_glx_query_context_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_query_context_attribs (const xcb_glx_query_context_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_query_context_attribs_length + ** + ** @param const xcb_glx_query_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_query_context_attribs_length (const xcb_glx_query_context_reply_t *R /**< */) +{ + return (R->num_attribs * 2); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_query_context_attribs_end + ** + ** @param const xcb_glx_query_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_query_context_attribs_end (const xcb_glx_query_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + ((R->num_attribs * 2)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_query_context_reply_t * xcb_glx_query_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_query_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_query_context_reply_t * + ** + *****************************************************************************/ + +xcb_glx_query_context_reply_t * +xcb_glx_query_context_reply (xcb_connection_t *c /**< */, + xcb_glx_query_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_query_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_glx_make_context_current_cookie_t xcb_glx_make_context_current + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t old_context_tag + ** @param xcb_glx_drawable_t drawable + ** @param xcb_glx_drawable_t read_drawable + ** @param xcb_glx_context_t context + ** @returns xcb_glx_make_context_current_cookie_t + ** + *****************************************************************************/ + +xcb_glx_make_context_current_cookie_t +xcb_glx_make_context_current (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t old_context_tag /**< */, + xcb_glx_drawable_t drawable /**< */, + xcb_glx_drawable_t read_drawable /**< */, + xcb_glx_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_MAKE_CONTEXT_CURRENT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_make_context_current_cookie_t xcb_ret; + xcb_glx_make_context_current_request_t xcb_out; + + xcb_out.old_context_tag = old_context_tag; + xcb_out.drawable = drawable; + xcb_out.read_drawable = read_drawable; + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_make_context_current_cookie_t xcb_glx_make_context_current_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t old_context_tag + ** @param xcb_glx_drawable_t drawable + ** @param xcb_glx_drawable_t read_drawable + ** @param xcb_glx_context_t context + ** @returns xcb_glx_make_context_current_cookie_t + ** + *****************************************************************************/ + +xcb_glx_make_context_current_cookie_t +xcb_glx_make_context_current_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t old_context_tag /**< */, + xcb_glx_drawable_t drawable /**< */, + xcb_glx_drawable_t read_drawable /**< */, + xcb_glx_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_MAKE_CONTEXT_CURRENT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_make_context_current_cookie_t xcb_ret; + xcb_glx_make_context_current_request_t xcb_out; + + xcb_out.old_context_tag = old_context_tag; + xcb_out.drawable = drawable; + xcb_out.read_drawable = read_drawable; + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_make_context_current_reply_t * xcb_glx_make_context_current_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_make_context_current_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_make_context_current_reply_t * + ** + *****************************************************************************/ + +xcb_glx_make_context_current_reply_t * +xcb_glx_make_context_current_reply (xcb_connection_t *c /**< */, + xcb_glx_make_context_current_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_make_context_current_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_create_pbuffer_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_create_pbuffer_request_t *_aux = (xcb_glx_create_pbuffer_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_create_pbuffer_request_t); + xcb_tmp += xcb_block_len; + /* attribs */ + xcb_block_len += (_aux->num_attribs * 2) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_pbuffer_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_glx_pbuffer_t pbuffer + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_pbuffer_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_glx_pbuffer_t pbuffer /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_PBUFFER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_pbuffer_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.fbconfig = fbconfig; + xcb_out.pbuffer = pbuffer; + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_pbuffer + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_glx_pbuffer_t pbuffer + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_pbuffer (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_glx_pbuffer_t pbuffer /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_PBUFFER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_pbuffer_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.fbconfig = fbconfig; + xcb_out.pbuffer = pbuffer; + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_pbuffer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pbuffer_t pbuffer + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_pbuffer_checked (xcb_connection_t *c /**< */, + xcb_glx_pbuffer_t pbuffer /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DESTROY_PBUFFER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_destroy_pbuffer_request_t xcb_out; + + xcb_out.pbuffer = pbuffer; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_pbuffer + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pbuffer_t pbuffer + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_pbuffer (xcb_connection_t *c /**< */, + xcb_glx_pbuffer_t pbuffer /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DESTROY_PBUFFER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_destroy_pbuffer_request_t xcb_out; + + xcb_out.pbuffer = pbuffer; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_get_drawable_attributes_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_drawable_attributes_reply_t *_aux = (xcb_glx_get_drawable_attributes_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_drawable_attributes_reply_t); + xcb_tmp += xcb_block_len; + /* attribs */ + xcb_block_len += (_aux->num_attribs * 2) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_drawable_attributes_cookie_t xcb_glx_get_drawable_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @returns xcb_glx_get_drawable_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_drawable_attributes_cookie_t +xcb_glx_get_drawable_attributes (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_DRAWABLE_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_drawable_attributes_cookie_t xcb_ret; + xcb_glx_get_drawable_attributes_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_drawable_attributes_cookie_t xcb_glx_get_drawable_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @returns xcb_glx_get_drawable_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_drawable_attributes_cookie_t +xcb_glx_get_drawable_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_DRAWABLE_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_drawable_attributes_cookie_t xcb_ret; + xcb_glx_get_drawable_attributes_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_drawable_attributes_attribs + ** + ** @param const xcb_glx_get_drawable_attributes_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_drawable_attributes_attribs (const xcb_glx_get_drawable_attributes_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_drawable_attributes_attribs_length + ** + ** @param const xcb_glx_get_drawable_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_drawable_attributes_attribs_length (const xcb_glx_get_drawable_attributes_reply_t *R /**< */) +{ + return (R->num_attribs * 2); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_drawable_attributes_attribs_end + ** + ** @param const xcb_glx_get_drawable_attributes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_drawable_attributes_attribs_end (const xcb_glx_get_drawable_attributes_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + ((R->num_attribs * 2)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_drawable_attributes_reply_t * xcb_glx_get_drawable_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_drawable_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_drawable_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_drawable_attributes_reply_t * +xcb_glx_get_drawable_attributes_reply (xcb_connection_t *c /**< */, + xcb_glx_get_drawable_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_drawable_attributes_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_change_drawable_attributes_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_change_drawable_attributes_request_t *_aux = (xcb_glx_change_drawable_attributes_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_change_drawable_attributes_request_t); + xcb_tmp += xcb_block_len; + /* attribs */ + xcb_block_len += (_aux->num_attribs * 2) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_change_drawable_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_change_drawable_attributes_checked (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CHANGE_DRAWABLE_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_change_drawable_attributes_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_change_drawable_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_change_drawable_attributes (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CHANGE_DRAWABLE_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_change_drawable_attributes_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_create_window_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_create_window_request_t *_aux = (xcb_glx_create_window_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_create_window_request_t); + xcb_tmp += xcb_block_len; + /* attribs */ + xcb_block_len += (_aux->num_attribs * 2) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_window_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_window_t window + ** @param xcb_glx_window_t glx_window + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_window_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_window_t window /**< */, + xcb_glx_window_t glx_window /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_window_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.fbconfig = fbconfig; + xcb_out.window = window; + xcb_out.glx_window = glx_window; + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_window + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_window_t window + ** @param xcb_glx_window_t glx_window + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_window (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_window_t window /**< */, + xcb_glx_window_t glx_window /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_window_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.fbconfig = fbconfig; + xcb_out.window = window; + xcb_out.glx_window = glx_window; + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_window_t glxwindow + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_window_checked (xcb_connection_t *c /**< */, + xcb_glx_window_t glxwindow /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DELETE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_delete_window_request_t xcb_out; + + xcb_out.glxwindow = glxwindow; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_window + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_window_t glxwindow + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_window (xcb_connection_t *c /**< */, + xcb_glx_window_t glxwindow /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DELETE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_delete_window_request_t xcb_out; + + xcb_out.glxwindow = glxwindow; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_set_client_info_arb_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_set_client_info_arb_request_t *_aux = (xcb_glx_set_client_info_arb_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_set_client_info_arb_request_t); + xcb_tmp += xcb_block_len; + /* gl_versions */ + xcb_block_len += (_aux->num_versions * 2) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* gl_extension_string */ + xcb_block_len += _aux->gl_str_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* glx_extension_string */ + xcb_block_len += _aux->glx_str_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_set_client_info_arb_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t num_versions + ** @param uint32_t gl_str_len + ** @param uint32_t glx_str_len + ** @param const uint32_t *gl_versions + ** @param const char *gl_extension_string + ** @param const char *glx_extension_string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_set_client_info_arb_checked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t num_versions /**< */, + uint32_t gl_str_len /**< */, + uint32_t glx_str_len /**< */, + const uint32_t *gl_versions /**< */, + const char *gl_extension_string /**< */, + const char *glx_extension_string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_SET_CLIENT_INFO_ARB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_glx_set_client_info_arb_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + xcb_out.num_versions = num_versions; + xcb_out.gl_str_len = gl_str_len; + xcb_out.glx_str_len = glx_str_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t gl_versions */ + xcb_parts[4].iov_base = (char *) gl_versions; + xcb_parts[4].iov_len = (num_versions * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* char gl_extension_string */ + xcb_parts[6].iov_base = (char *) gl_extension_string; + xcb_parts[6].iov_len = gl_str_len * sizeof(char); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* char glx_extension_string */ + xcb_parts[8].iov_base = (char *) glx_extension_string; + xcb_parts[8].iov_len = glx_str_len * sizeof(char); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_set_client_info_arb + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t num_versions + ** @param uint32_t gl_str_len + ** @param uint32_t glx_str_len + ** @param const uint32_t *gl_versions + ** @param const char *gl_extension_string + ** @param const char *glx_extension_string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_set_client_info_arb (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t num_versions /**< */, + uint32_t gl_str_len /**< */, + uint32_t glx_str_len /**< */, + const uint32_t *gl_versions /**< */, + const char *gl_extension_string /**< */, + const char *glx_extension_string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_SET_CLIENT_INFO_ARB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_glx_set_client_info_arb_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + xcb_out.num_versions = num_versions; + xcb_out.gl_str_len = gl_str_len; + xcb_out.glx_str_len = glx_str_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t gl_versions */ + xcb_parts[4].iov_base = (char *) gl_versions; + xcb_parts[4].iov_len = (num_versions * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* char gl_extension_string */ + xcb_parts[6].iov_base = (char *) gl_extension_string; + xcb_parts[6].iov_len = gl_str_len * sizeof(char); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* char glx_extension_string */ + xcb_parts[8].iov_base = (char *) glx_extension_string; + xcb_parts[8].iov_len = glx_str_len * sizeof(char); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_create_context_attribs_arb_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_create_context_attribs_arb_request_t *_aux = (xcb_glx_create_context_attribs_arb_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_create_context_attribs_arb_request_t); + xcb_tmp += xcb_block_len; + /* attribs */ + xcb_block_len += (_aux->num_attribs * 2) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_context_attribs_arb_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_glx_fbconfig_t fbconfig + ** @param uint32_t screen + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_context_attribs_arb_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + uint32_t screen /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_CONTEXT_ATTRIBS_ARB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_context_attribs_arb_request_t xcb_out; + + xcb_out.context = context; + xcb_out.fbconfig = fbconfig; + xcb_out.screen = screen; + xcb_out.share_list = share_list; + xcb_out.is_direct = is_direct; + memset(xcb_out.pad0, 0, 3); + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_context_attribs_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_glx_fbconfig_t fbconfig + ** @param uint32_t screen + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_context_attribs_arb (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + uint32_t screen /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_CREATE_CONTEXT_ATTRIBS_ARB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_create_context_attribs_arb_request_t xcb_out; + + xcb_out.context = context; + xcb_out.fbconfig = fbconfig; + xcb_out.screen = screen; + xcb_out.share_list = share_list; + xcb_out.is_direct = is_direct; + memset(xcb_out.pad0, 0, 3); + xcb_out.num_attribs = num_attribs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t attribs */ + xcb_parts[4].iov_base = (char *) attribs; + xcb_parts[4].iov_len = (num_attribs * 2) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_set_client_info_2arb_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_set_client_info_2arb_request_t *_aux = (xcb_glx_set_client_info_2arb_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_set_client_info_2arb_request_t); + xcb_tmp += xcb_block_len; + /* gl_versions */ + xcb_block_len += (_aux->num_versions * 3) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* gl_extension_string */ + xcb_block_len += _aux->gl_str_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* glx_extension_string */ + xcb_block_len += _aux->glx_str_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_set_client_info_2arb_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t num_versions + ** @param uint32_t gl_str_len + ** @param uint32_t glx_str_len + ** @param const uint32_t *gl_versions + ** @param const char *gl_extension_string + ** @param const char *glx_extension_string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_set_client_info_2arb_checked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t num_versions /**< */, + uint32_t gl_str_len /**< */, + uint32_t glx_str_len /**< */, + const uint32_t *gl_versions /**< */, + const char *gl_extension_string /**< */, + const char *glx_extension_string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_SET_CLIENT_INFO_2ARB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_glx_set_client_info_2arb_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + xcb_out.num_versions = num_versions; + xcb_out.gl_str_len = gl_str_len; + xcb_out.glx_str_len = glx_str_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t gl_versions */ + xcb_parts[4].iov_base = (char *) gl_versions; + xcb_parts[4].iov_len = (num_versions * 3) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* char gl_extension_string */ + xcb_parts[6].iov_base = (char *) gl_extension_string; + xcb_parts[6].iov_len = gl_str_len * sizeof(char); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* char glx_extension_string */ + xcb_parts[8].iov_base = (char *) glx_extension_string; + xcb_parts[8].iov_len = glx_str_len * sizeof(char); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_set_client_info_2arb + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t num_versions + ** @param uint32_t gl_str_len + ** @param uint32_t glx_str_len + ** @param const uint32_t *gl_versions + ** @param const char *gl_extension_string + ** @param const char *glx_extension_string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_set_client_info_2arb (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t num_versions /**< */, + uint32_t gl_str_len /**< */, + uint32_t glx_str_len /**< */, + const uint32_t *gl_versions /**< */, + const char *gl_extension_string /**< */, + const char *glx_extension_string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_SET_CLIENT_INFO_2ARB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_glx_set_client_info_2arb_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + xcb_out.num_versions = num_versions; + xcb_out.gl_str_len = gl_str_len; + xcb_out.glx_str_len = glx_str_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t gl_versions */ + xcb_parts[4].iov_base = (char *) gl_versions; + xcb_parts[4].iov_len = (num_versions * 3) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* char gl_extension_string */ + xcb_parts[6].iov_base = (char *) gl_extension_string; + xcb_parts[6].iov_len = gl_str_len * sizeof(char); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* char glx_extension_string */ + xcb_parts[8].iov_base = (char *) glx_extension_string; + xcb_parts[8].iov_len = glx_str_len * sizeof(char); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_new_list_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @param uint32_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_new_list_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */, + uint32_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_NEW_LIST, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_new_list_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.list = list; + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_new_list + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @param uint32_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_new_list (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */, + uint32_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_NEW_LIST, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_new_list_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.list = list; + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_end_list_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_end_list_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_END_LIST, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_end_list_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_end_list + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_end_list (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_END_LIST, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_end_list_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_lists_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @param int32_t range + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_lists_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */, + int32_t range /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DELETE_LISTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_delete_lists_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.list = list; + xcb_out.range = range; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_lists + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @param int32_t range + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_lists (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */, + int32_t range /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DELETE_LISTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_delete_lists_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.list = list; + xcb_out.range = range; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_gen_lists_cookie_t xcb_glx_gen_lists + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t range + ** @returns xcb_glx_gen_lists_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_lists_cookie_t +xcb_glx_gen_lists (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t range /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GEN_LISTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_gen_lists_cookie_t xcb_ret; + xcb_glx_gen_lists_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.range = range; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_gen_lists_cookie_t xcb_glx_gen_lists_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t range + ** @returns xcb_glx_gen_lists_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_lists_cookie_t +xcb_glx_gen_lists_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t range /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GEN_LISTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_gen_lists_cookie_t xcb_ret; + xcb_glx_gen_lists_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.range = range; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_gen_lists_reply_t * xcb_glx_gen_lists_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_gen_lists_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_gen_lists_reply_t * + ** + *****************************************************************************/ + +xcb_glx_gen_lists_reply_t * +xcb_glx_gen_lists_reply (xcb_connection_t *c /**< */, + xcb_glx_gen_lists_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_gen_lists_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_feedback_buffer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t size + ** @param int32_t type + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_feedback_buffer_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t size /**< */, + int32_t type /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_FEEDBACK_BUFFER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_feedback_buffer_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.size = size; + xcb_out.type = type; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_feedback_buffer + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t size + ** @param int32_t type + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_feedback_buffer (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t size /**< */, + int32_t type /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_FEEDBACK_BUFFER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_feedback_buffer_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.size = size; + xcb_out.type = type; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_select_buffer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t size + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_select_buffer_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t size /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_SELECT_BUFFER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_select_buffer_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.size = size; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_select_buffer + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t size + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_select_buffer (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t size /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_SELECT_BUFFER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_select_buffer_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.size = size; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_render_mode_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_render_mode_reply_t *_aux = (xcb_glx_render_mode_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_render_mode_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_render_mode_cookie_t xcb_glx_render_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t mode + ** @returns xcb_glx_render_mode_cookie_t + ** + *****************************************************************************/ + +xcb_glx_render_mode_cookie_t +xcb_glx_render_mode (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_RENDER_MODE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_render_mode_cookie_t xcb_ret; + xcb_glx_render_mode_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_render_mode_cookie_t xcb_glx_render_mode_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t mode + ** @returns xcb_glx_render_mode_cookie_t + ** + *****************************************************************************/ + +xcb_glx_render_mode_cookie_t +xcb_glx_render_mode_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_RENDER_MODE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_render_mode_cookie_t xcb_ret; + xcb_glx_render_mode_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_render_mode_data + ** + ** @param const xcb_glx_render_mode_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_render_mode_data (const xcb_glx_render_mode_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_render_mode_data_length + ** + ** @param const xcb_glx_render_mode_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_render_mode_data_length (const xcb_glx_render_mode_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_render_mode_data_end + ** + ** @param const xcb_glx_render_mode_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_render_mode_data_end (const xcb_glx_render_mode_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_render_mode_reply_t * xcb_glx_render_mode_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_render_mode_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_render_mode_reply_t * + ** + *****************************************************************************/ + +xcb_glx_render_mode_reply_t * +xcb_glx_render_mode_reply (xcb_connection_t *c /**< */, + xcb_glx_render_mode_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_render_mode_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_glx_finish_cookie_t xcb_glx_finish + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_glx_finish_cookie_t + ** + *****************************************************************************/ + +xcb_glx_finish_cookie_t +xcb_glx_finish (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_FINISH, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_finish_cookie_t xcb_ret; + xcb_glx_finish_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_finish_cookie_t xcb_glx_finish_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_glx_finish_cookie_t + ** + *****************************************************************************/ + +xcb_glx_finish_cookie_t +xcb_glx_finish_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_FINISH, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_finish_cookie_t xcb_ret; + xcb_glx_finish_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_finish_reply_t * xcb_glx_finish_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_finish_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_finish_reply_t * + ** + *****************************************************************************/ + +xcb_glx_finish_reply_t * +xcb_glx_finish_reply (xcb_connection_t *c /**< */, + xcb_glx_finish_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_finish_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_pixel_storef_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @param xcb_glx_float32_t datum + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_pixel_storef_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */, + xcb_glx_float32_t datum /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_PIXEL_STOREF, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_pixel_storef_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + xcb_out.datum = datum; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_pixel_storef + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @param xcb_glx_float32_t datum + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_pixel_storef (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */, + xcb_glx_float32_t datum /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_PIXEL_STOREF, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_pixel_storef_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + xcb_out.datum = datum; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_pixel_storei_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @param int32_t datum + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_pixel_storei_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */, + int32_t datum /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_PIXEL_STOREI, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_pixel_storei_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + xcb_out.datum = datum; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_pixel_storei + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @param int32_t datum + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_pixel_storei (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */, + int32_t datum /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_PIXEL_STOREI, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_pixel_storei_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + xcb_out.datum = datum; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_read_pixels_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_read_pixels_reply_t *_aux = (xcb_glx_read_pixels_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_read_pixels_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_read_pixels_cookie_t xcb_glx_read_pixels + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t x + ** @param int32_t y + ** @param int32_t width + ** @param int32_t height + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t lsb_first + ** @returns xcb_glx_read_pixels_cookie_t + ** + *****************************************************************************/ + +xcb_glx_read_pixels_cookie_t +xcb_glx_read_pixels (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t x /**< */, + int32_t y /**< */, + int32_t width /**< */, + int32_t height /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t lsb_first /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_READ_PIXELS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_read_pixels_cookie_t xcb_ret; + xcb_glx_read_pixels_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + xcb_out.lsb_first = lsb_first; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_read_pixels_cookie_t xcb_glx_read_pixels_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t x + ** @param int32_t y + ** @param int32_t width + ** @param int32_t height + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t lsb_first + ** @returns xcb_glx_read_pixels_cookie_t + ** + *****************************************************************************/ + +xcb_glx_read_pixels_cookie_t +xcb_glx_read_pixels_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t x /**< */, + int32_t y /**< */, + int32_t width /**< */, + int32_t height /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t lsb_first /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_READ_PIXELS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_read_pixels_cookie_t xcb_ret; + xcb_glx_read_pixels_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + xcb_out.lsb_first = lsb_first; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_read_pixels_data + ** + ** @param const xcb_glx_read_pixels_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_read_pixels_data (const xcb_glx_read_pixels_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_read_pixels_data_length + ** + ** @param const xcb_glx_read_pixels_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_read_pixels_data_length (const xcb_glx_read_pixels_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_read_pixels_data_end + ** + ** @param const xcb_glx_read_pixels_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_read_pixels_data_end (const xcb_glx_read_pixels_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_read_pixels_reply_t * xcb_glx_read_pixels_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_read_pixels_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_read_pixels_reply_t * + ** + *****************************************************************************/ + +xcb_glx_read_pixels_reply_t * +xcb_glx_read_pixels_reply (xcb_connection_t *c /**< */, + xcb_glx_read_pixels_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_read_pixels_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_booleanv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_booleanv_reply_t *_aux = (xcb_glx_get_booleanv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_booleanv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_booleanv_cookie_t xcb_glx_get_booleanv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t pname + ** @returns xcb_glx_get_booleanv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_booleanv_cookie_t +xcb_glx_get_booleanv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_BOOLEANV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_booleanv_cookie_t xcb_ret; + xcb_glx_get_booleanv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_booleanv_cookie_t xcb_glx_get_booleanv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t pname + ** @returns xcb_glx_get_booleanv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_booleanv_cookie_t +xcb_glx_get_booleanv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_BOOLEANV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_booleanv_cookie_t xcb_ret; + xcb_glx_get_booleanv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_booleanv_data + ** + ** @param const xcb_glx_get_booleanv_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_booleanv_data (const xcb_glx_get_booleanv_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_booleanv_data_length + ** + ** @param const xcb_glx_get_booleanv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_booleanv_data_length (const xcb_glx_get_booleanv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_booleanv_data_end + ** + ** @param const xcb_glx_get_booleanv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_booleanv_data_end (const xcb_glx_get_booleanv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_booleanv_reply_t * xcb_glx_get_booleanv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_booleanv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_booleanv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_booleanv_reply_t * +xcb_glx_get_booleanv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_booleanv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_booleanv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_clip_plane_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_clip_plane_reply_t *_aux = (xcb_glx_get_clip_plane_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_clip_plane_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length / 2) * sizeof(xcb_glx_float64_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float64_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_clip_plane_cookie_t xcb_glx_get_clip_plane + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t plane + ** @returns xcb_glx_get_clip_plane_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_clip_plane_cookie_t +xcb_glx_get_clip_plane (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t plane /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_CLIP_PLANE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_clip_plane_cookie_t xcb_ret; + xcb_glx_get_clip_plane_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.plane = plane; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_clip_plane_cookie_t xcb_glx_get_clip_plane_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t plane + ** @returns xcb_glx_get_clip_plane_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_clip_plane_cookie_t +xcb_glx_get_clip_plane_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t plane /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_CLIP_PLANE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_clip_plane_cookie_t xcb_ret; + xcb_glx_get_clip_plane_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.plane = plane; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float64_t * xcb_glx_get_clip_plane_data + ** + ** @param const xcb_glx_get_clip_plane_reply_t *R + ** @returns xcb_glx_float64_t * + ** + *****************************************************************************/ + +xcb_glx_float64_t * +xcb_glx_get_clip_plane_data (const xcb_glx_get_clip_plane_reply_t *R /**< */) +{ + return (xcb_glx_float64_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_clip_plane_data_length + ** + ** @param const xcb_glx_get_clip_plane_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_clip_plane_data_length (const xcb_glx_get_clip_plane_reply_t *R /**< */) +{ + return (R->length / 2); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_clip_plane_data_end + ** + ** @param const xcb_glx_get_clip_plane_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_clip_plane_data_end (const xcb_glx_get_clip_plane_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float64_t *) (R + 1)) + ((R->length / 2)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_clip_plane_reply_t * xcb_glx_get_clip_plane_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_clip_plane_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_clip_plane_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_clip_plane_reply_t * +xcb_glx_get_clip_plane_reply (xcb_connection_t *c /**< */, + xcb_glx_get_clip_plane_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_clip_plane_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_doublev_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_doublev_reply_t *_aux = (xcb_glx_get_doublev_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_doublev_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float64_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float64_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_doublev_cookie_t xcb_glx_get_doublev + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_doublev_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_doublev_cookie_t +xcb_glx_get_doublev (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_DOUBLEV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_doublev_cookie_t xcb_ret; + xcb_glx_get_doublev_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_doublev_cookie_t xcb_glx_get_doublev_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_doublev_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_doublev_cookie_t +xcb_glx_get_doublev_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_DOUBLEV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_doublev_cookie_t xcb_ret; + xcb_glx_get_doublev_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float64_t * xcb_glx_get_doublev_data + ** + ** @param const xcb_glx_get_doublev_reply_t *R + ** @returns xcb_glx_float64_t * + ** + *****************************************************************************/ + +xcb_glx_float64_t * +xcb_glx_get_doublev_data (const xcb_glx_get_doublev_reply_t *R /**< */) +{ + return (xcb_glx_float64_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_doublev_data_length + ** + ** @param const xcb_glx_get_doublev_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_doublev_data_length (const xcb_glx_get_doublev_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_doublev_data_end + ** + ** @param const xcb_glx_get_doublev_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_doublev_data_end (const xcb_glx_get_doublev_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float64_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_doublev_reply_t * xcb_glx_get_doublev_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_doublev_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_doublev_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_doublev_reply_t * +xcb_glx_get_doublev_reply (xcb_connection_t *c /**< */, + xcb_glx_get_doublev_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_doublev_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_glx_get_error_cookie_t xcb_glx_get_error + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_glx_get_error_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_error_cookie_t +xcb_glx_get_error (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_ERROR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_error_cookie_t xcb_ret; + xcb_glx_get_error_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_error_cookie_t xcb_glx_get_error_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_glx_get_error_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_error_cookie_t +xcb_glx_get_error_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_ERROR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_error_cookie_t xcb_ret; + xcb_glx_get_error_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_error_reply_t * xcb_glx_get_error_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_error_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_error_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_error_reply_t * +xcb_glx_get_error_reply (xcb_connection_t *c /**< */, + xcb_glx_get_error_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_error_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_floatv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_floatv_reply_t *_aux = (xcb_glx_get_floatv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_floatv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_floatv_cookie_t xcb_glx_get_floatv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_floatv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_floatv_cookie_t +xcb_glx_get_floatv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_FLOATV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_floatv_cookie_t xcb_ret; + xcb_glx_get_floatv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_floatv_cookie_t xcb_glx_get_floatv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_floatv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_floatv_cookie_t +xcb_glx_get_floatv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_FLOATV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_floatv_cookie_t xcb_ret; + xcb_glx_get_floatv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_floatv_data + ** + ** @param const xcb_glx_get_floatv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_floatv_data (const xcb_glx_get_floatv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_floatv_data_length + ** + ** @param const xcb_glx_get_floatv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_floatv_data_length (const xcb_glx_get_floatv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_floatv_data_end + ** + ** @param const xcb_glx_get_floatv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_floatv_data_end (const xcb_glx_get_floatv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_floatv_reply_t * xcb_glx_get_floatv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_floatv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_floatv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_floatv_reply_t * +xcb_glx_get_floatv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_floatv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_floatv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_integerv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_integerv_reply_t *_aux = (xcb_glx_get_integerv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_integerv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_integerv_cookie_t xcb_glx_get_integerv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_integerv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_integerv_cookie_t +xcb_glx_get_integerv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_INTEGERV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_integerv_cookie_t xcb_ret; + xcb_glx_get_integerv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_integerv_cookie_t xcb_glx_get_integerv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_integerv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_integerv_cookie_t +xcb_glx_get_integerv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_INTEGERV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_integerv_cookie_t xcb_ret; + xcb_glx_get_integerv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_integerv_data + ** + ** @param const xcb_glx_get_integerv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_integerv_data (const xcb_glx_get_integerv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_integerv_data_length + ** + ** @param const xcb_glx_get_integerv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_integerv_data_length (const xcb_glx_get_integerv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_integerv_data_end + ** + ** @param const xcb_glx_get_integerv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_integerv_data_end (const xcb_glx_get_integerv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_integerv_reply_t * xcb_glx_get_integerv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_integerv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_integerv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_integerv_reply_t * +xcb_glx_get_integerv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_integerv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_integerv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_lightfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_lightfv_reply_t *_aux = (xcb_glx_get_lightfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_lightfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_lightfv_cookie_t xcb_glx_get_lightfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t light + ** @param uint32_t pname + ** @returns xcb_glx_get_lightfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_lightfv_cookie_t +xcb_glx_get_lightfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t light /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_LIGHTFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_lightfv_cookie_t xcb_ret; + xcb_glx_get_lightfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.light = light; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_lightfv_cookie_t xcb_glx_get_lightfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t light + ** @param uint32_t pname + ** @returns xcb_glx_get_lightfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_lightfv_cookie_t +xcb_glx_get_lightfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t light /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_LIGHTFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_lightfv_cookie_t xcb_ret; + xcb_glx_get_lightfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.light = light; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_lightfv_data + ** + ** @param const xcb_glx_get_lightfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_lightfv_data (const xcb_glx_get_lightfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_lightfv_data_length + ** + ** @param const xcb_glx_get_lightfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_lightfv_data_length (const xcb_glx_get_lightfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_lightfv_data_end + ** + ** @param const xcb_glx_get_lightfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_lightfv_data_end (const xcb_glx_get_lightfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_lightfv_reply_t * xcb_glx_get_lightfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_lightfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_lightfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_lightfv_reply_t * +xcb_glx_get_lightfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_lightfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_lightfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_lightiv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_lightiv_reply_t *_aux = (xcb_glx_get_lightiv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_lightiv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_lightiv_cookie_t xcb_glx_get_lightiv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t light + ** @param uint32_t pname + ** @returns xcb_glx_get_lightiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_lightiv_cookie_t +xcb_glx_get_lightiv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t light /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_LIGHTIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_lightiv_cookie_t xcb_ret; + xcb_glx_get_lightiv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.light = light; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_lightiv_cookie_t xcb_glx_get_lightiv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t light + ** @param uint32_t pname + ** @returns xcb_glx_get_lightiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_lightiv_cookie_t +xcb_glx_get_lightiv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t light /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_LIGHTIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_lightiv_cookie_t xcb_ret; + xcb_glx_get_lightiv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.light = light; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_lightiv_data + ** + ** @param const xcb_glx_get_lightiv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_lightiv_data (const xcb_glx_get_lightiv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_lightiv_data_length + ** + ** @param const xcb_glx_get_lightiv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_lightiv_data_length (const xcb_glx_get_lightiv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_lightiv_data_end + ** + ** @param const xcb_glx_get_lightiv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_lightiv_data_end (const xcb_glx_get_lightiv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_lightiv_reply_t * xcb_glx_get_lightiv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_lightiv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_lightiv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_lightiv_reply_t * +xcb_glx_get_lightiv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_lightiv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_lightiv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_mapdv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_mapdv_reply_t *_aux = (xcb_glx_get_mapdv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_mapdv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float64_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float64_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_mapdv_cookie_t xcb_glx_get_mapdv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapdv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapdv_cookie_t +xcb_glx_get_mapdv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MAPDV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_mapdv_cookie_t xcb_ret; + xcb_glx_get_mapdv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.query = query; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_mapdv_cookie_t xcb_glx_get_mapdv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapdv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapdv_cookie_t +xcb_glx_get_mapdv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MAPDV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_mapdv_cookie_t xcb_ret; + xcb_glx_get_mapdv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.query = query; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float64_t * xcb_glx_get_mapdv_data + ** + ** @param const xcb_glx_get_mapdv_reply_t *R + ** @returns xcb_glx_float64_t * + ** + *****************************************************************************/ + +xcb_glx_float64_t * +xcb_glx_get_mapdv_data (const xcb_glx_get_mapdv_reply_t *R /**< */) +{ + return (xcb_glx_float64_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_mapdv_data_length + ** + ** @param const xcb_glx_get_mapdv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_mapdv_data_length (const xcb_glx_get_mapdv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_mapdv_data_end + ** + ** @param const xcb_glx_get_mapdv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_mapdv_data_end (const xcb_glx_get_mapdv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float64_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_mapdv_reply_t * xcb_glx_get_mapdv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_mapdv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_mapdv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_mapdv_reply_t * +xcb_glx_get_mapdv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_mapdv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_mapdv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_mapfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_mapfv_reply_t *_aux = (xcb_glx_get_mapfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_mapfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_mapfv_cookie_t xcb_glx_get_mapfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapfv_cookie_t +xcb_glx_get_mapfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MAPFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_mapfv_cookie_t xcb_ret; + xcb_glx_get_mapfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.query = query; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_mapfv_cookie_t xcb_glx_get_mapfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapfv_cookie_t +xcb_glx_get_mapfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MAPFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_mapfv_cookie_t xcb_ret; + xcb_glx_get_mapfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.query = query; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_mapfv_data + ** + ** @param const xcb_glx_get_mapfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_mapfv_data (const xcb_glx_get_mapfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_mapfv_data_length + ** + ** @param const xcb_glx_get_mapfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_mapfv_data_length (const xcb_glx_get_mapfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_mapfv_data_end + ** + ** @param const xcb_glx_get_mapfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_mapfv_data_end (const xcb_glx_get_mapfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_mapfv_reply_t * xcb_glx_get_mapfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_mapfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_mapfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_mapfv_reply_t * +xcb_glx_get_mapfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_mapfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_mapfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_mapiv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_mapiv_reply_t *_aux = (xcb_glx_get_mapiv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_mapiv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_mapiv_cookie_t xcb_glx_get_mapiv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapiv_cookie_t +xcb_glx_get_mapiv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MAPIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_mapiv_cookie_t xcb_ret; + xcb_glx_get_mapiv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.query = query; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_mapiv_cookie_t xcb_glx_get_mapiv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapiv_cookie_t +xcb_glx_get_mapiv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MAPIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_mapiv_cookie_t xcb_ret; + xcb_glx_get_mapiv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.query = query; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_mapiv_data + ** + ** @param const xcb_glx_get_mapiv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_mapiv_data (const xcb_glx_get_mapiv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_mapiv_data_length + ** + ** @param const xcb_glx_get_mapiv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_mapiv_data_length (const xcb_glx_get_mapiv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_mapiv_data_end + ** + ** @param const xcb_glx_get_mapiv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_mapiv_data_end (const xcb_glx_get_mapiv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_mapiv_reply_t * xcb_glx_get_mapiv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_mapiv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_mapiv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_mapiv_reply_t * +xcb_glx_get_mapiv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_mapiv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_mapiv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_materialfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_materialfv_reply_t *_aux = (xcb_glx_get_materialfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_materialfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_materialfv_cookie_t xcb_glx_get_materialfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t face + ** @param uint32_t pname + ** @returns xcb_glx_get_materialfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_materialfv_cookie_t +xcb_glx_get_materialfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t face /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MATERIALFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_materialfv_cookie_t xcb_ret; + xcb_glx_get_materialfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.face = face; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_materialfv_cookie_t xcb_glx_get_materialfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t face + ** @param uint32_t pname + ** @returns xcb_glx_get_materialfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_materialfv_cookie_t +xcb_glx_get_materialfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t face /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MATERIALFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_materialfv_cookie_t xcb_ret; + xcb_glx_get_materialfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.face = face; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_materialfv_data + ** + ** @param const xcb_glx_get_materialfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_materialfv_data (const xcb_glx_get_materialfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_materialfv_data_length + ** + ** @param const xcb_glx_get_materialfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_materialfv_data_length (const xcb_glx_get_materialfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_materialfv_data_end + ** + ** @param const xcb_glx_get_materialfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_materialfv_data_end (const xcb_glx_get_materialfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_materialfv_reply_t * xcb_glx_get_materialfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_materialfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_materialfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_materialfv_reply_t * +xcb_glx_get_materialfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_materialfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_materialfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_materialiv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_materialiv_reply_t *_aux = (xcb_glx_get_materialiv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_materialiv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_materialiv_cookie_t xcb_glx_get_materialiv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t face + ** @param uint32_t pname + ** @returns xcb_glx_get_materialiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_materialiv_cookie_t +xcb_glx_get_materialiv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t face /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MATERIALIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_materialiv_cookie_t xcb_ret; + xcb_glx_get_materialiv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.face = face; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_materialiv_cookie_t xcb_glx_get_materialiv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t face + ** @param uint32_t pname + ** @returns xcb_glx_get_materialiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_materialiv_cookie_t +xcb_glx_get_materialiv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t face /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MATERIALIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_materialiv_cookie_t xcb_ret; + xcb_glx_get_materialiv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.face = face; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_materialiv_data + ** + ** @param const xcb_glx_get_materialiv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_materialiv_data (const xcb_glx_get_materialiv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_materialiv_data_length + ** + ** @param const xcb_glx_get_materialiv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_materialiv_data_length (const xcb_glx_get_materialiv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_materialiv_data_end + ** + ** @param const xcb_glx_get_materialiv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_materialiv_data_end (const xcb_glx_get_materialiv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_materialiv_reply_t * xcb_glx_get_materialiv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_materialiv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_materialiv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_materialiv_reply_t * +xcb_glx_get_materialiv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_materialiv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_materialiv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_pixel_mapfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_pixel_mapfv_reply_t *_aux = (xcb_glx_get_pixel_mapfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_pixel_mapfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapfv_cookie_t xcb_glx_get_pixel_mapfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapfv_cookie_t +xcb_glx_get_pixel_mapfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_PIXEL_MAPFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_pixel_mapfv_cookie_t xcb_ret; + xcb_glx_get_pixel_mapfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapfv_cookie_t xcb_glx_get_pixel_mapfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapfv_cookie_t +xcb_glx_get_pixel_mapfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_PIXEL_MAPFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_pixel_mapfv_cookie_t xcb_ret; + xcb_glx_get_pixel_mapfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_pixel_mapfv_data + ** + ** @param const xcb_glx_get_pixel_mapfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_pixel_mapfv_data (const xcb_glx_get_pixel_mapfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_pixel_mapfv_data_length + ** + ** @param const xcb_glx_get_pixel_mapfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_pixel_mapfv_data_length (const xcb_glx_get_pixel_mapfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_pixel_mapfv_data_end + ** + ** @param const xcb_glx_get_pixel_mapfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_pixel_mapfv_data_end (const xcb_glx_get_pixel_mapfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapfv_reply_t * xcb_glx_get_pixel_mapfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_pixel_mapfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_pixel_mapfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapfv_reply_t * +xcb_glx_get_pixel_mapfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_pixel_mapfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_pixel_mapfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_pixel_mapuiv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_pixel_mapuiv_reply_t *_aux = (xcb_glx_get_pixel_mapuiv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_pixel_mapuiv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapuiv_cookie_t xcb_glx_get_pixel_mapuiv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapuiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapuiv_cookie_t +xcb_glx_get_pixel_mapuiv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_PIXEL_MAPUIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_pixel_mapuiv_cookie_t xcb_ret; + xcb_glx_get_pixel_mapuiv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapuiv_cookie_t xcb_glx_get_pixel_mapuiv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapuiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapuiv_cookie_t +xcb_glx_get_pixel_mapuiv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_PIXEL_MAPUIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_pixel_mapuiv_cookie_t xcb_ret; + xcb_glx_get_pixel_mapuiv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_pixel_mapuiv_data + ** + ** @param const xcb_glx_get_pixel_mapuiv_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_pixel_mapuiv_data (const xcb_glx_get_pixel_mapuiv_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_pixel_mapuiv_data_length + ** + ** @param const xcb_glx_get_pixel_mapuiv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_pixel_mapuiv_data_length (const xcb_glx_get_pixel_mapuiv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_pixel_mapuiv_data_end + ** + ** @param const xcb_glx_get_pixel_mapuiv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_pixel_mapuiv_data_end (const xcb_glx_get_pixel_mapuiv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapuiv_reply_t * xcb_glx_get_pixel_mapuiv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_pixel_mapuiv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_pixel_mapuiv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapuiv_reply_t * +xcb_glx_get_pixel_mapuiv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_pixel_mapuiv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_pixel_mapuiv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_pixel_mapusv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_pixel_mapusv_reply_t *_aux = (xcb_glx_get_pixel_mapusv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_pixel_mapusv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(uint16_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapusv_cookie_t xcb_glx_get_pixel_mapusv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapusv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapusv_cookie_t +xcb_glx_get_pixel_mapusv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_PIXEL_MAPUSV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_pixel_mapusv_cookie_t xcb_ret; + xcb_glx_get_pixel_mapusv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapusv_cookie_t xcb_glx_get_pixel_mapusv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapusv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapusv_cookie_t +xcb_glx_get_pixel_mapusv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_PIXEL_MAPUSV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_pixel_mapusv_cookie_t xcb_ret; + xcb_glx_get_pixel_mapusv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint16_t * xcb_glx_get_pixel_mapusv_data + ** + ** @param const xcb_glx_get_pixel_mapusv_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_glx_get_pixel_mapusv_data (const xcb_glx_get_pixel_mapusv_reply_t *R /**< */) +{ + return (uint16_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_pixel_mapusv_data_length + ** + ** @param const xcb_glx_get_pixel_mapusv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_pixel_mapusv_data_length (const xcb_glx_get_pixel_mapusv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_pixel_mapusv_data_end + ** + ** @param const xcb_glx_get_pixel_mapusv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_pixel_mapusv_data_end (const xcb_glx_get_pixel_mapusv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint16_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapusv_reply_t * xcb_glx_get_pixel_mapusv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_pixel_mapusv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_pixel_mapusv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapusv_reply_t * +xcb_glx_get_pixel_mapusv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_pixel_mapusv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_pixel_mapusv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_polygon_stipple_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_polygon_stipple_reply_t *_aux = (xcb_glx_get_polygon_stipple_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_polygon_stipple_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_polygon_stipple_cookie_t xcb_glx_get_polygon_stipple + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint8_t lsb_first + ** @returns xcb_glx_get_polygon_stipple_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_polygon_stipple_cookie_t +xcb_glx_get_polygon_stipple (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint8_t lsb_first /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_POLYGON_STIPPLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_polygon_stipple_cookie_t xcb_ret; + xcb_glx_get_polygon_stipple_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.lsb_first = lsb_first; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_polygon_stipple_cookie_t xcb_glx_get_polygon_stipple_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint8_t lsb_first + ** @returns xcb_glx_get_polygon_stipple_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_polygon_stipple_cookie_t +xcb_glx_get_polygon_stipple_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint8_t lsb_first /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_POLYGON_STIPPLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_polygon_stipple_cookie_t xcb_ret; + xcb_glx_get_polygon_stipple_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.lsb_first = lsb_first; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_polygon_stipple_data + ** + ** @param const xcb_glx_get_polygon_stipple_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_polygon_stipple_data (const xcb_glx_get_polygon_stipple_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_polygon_stipple_data_length + ** + ** @param const xcb_glx_get_polygon_stipple_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_polygon_stipple_data_length (const xcb_glx_get_polygon_stipple_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_polygon_stipple_data_end + ** + ** @param const xcb_glx_get_polygon_stipple_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_polygon_stipple_data_end (const xcb_glx_get_polygon_stipple_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_polygon_stipple_reply_t * xcb_glx_get_polygon_stipple_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_polygon_stipple_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_polygon_stipple_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_polygon_stipple_reply_t * +xcb_glx_get_polygon_stipple_reply (xcb_connection_t *c /**< */, + xcb_glx_get_polygon_stipple_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_polygon_stipple_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_string_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_string_reply_t *_aux = (xcb_glx_get_string_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_string_reply_t); + xcb_tmp += xcb_block_len; + /* string */ + xcb_block_len += _aux->n * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_string_cookie_t xcb_glx_get_string + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t name + ** @returns xcb_glx_get_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_string_cookie_t +xcb_glx_get_string (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_STRING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_string_cookie_t xcb_ret; + xcb_glx_get_string_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.name = name; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_string_cookie_t xcb_glx_get_string_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t name + ** @returns xcb_glx_get_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_string_cookie_t +xcb_glx_get_string_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_STRING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_string_cookie_t xcb_ret; + xcb_glx_get_string_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.name = name; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_glx_get_string_string + ** + ** @param const xcb_glx_get_string_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_glx_get_string_string (const xcb_glx_get_string_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_string_string_length + ** + ** @param const xcb_glx_get_string_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_string_string_length (const xcb_glx_get_string_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_string_string_end + ** + ** @param const xcb_glx_get_string_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_string_string_end (const xcb_glx_get_string_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_string_reply_t * xcb_glx_get_string_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_string_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_string_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_string_reply_t * +xcb_glx_get_string_reply (xcb_connection_t *c /**< */, + xcb_glx_get_string_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_string_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_envfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_envfv_reply_t *_aux = (xcb_glx_get_tex_envfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_envfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_envfv_cookie_t xcb_glx_get_tex_envfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_envfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_envfv_cookie_t +xcb_glx_get_tex_envfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_ENVFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_envfv_cookie_t xcb_ret; + xcb_glx_get_tex_envfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_envfv_cookie_t xcb_glx_get_tex_envfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_envfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_envfv_cookie_t +xcb_glx_get_tex_envfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_ENVFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_envfv_cookie_t xcb_ret; + xcb_glx_get_tex_envfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_tex_envfv_data + ** + ** @param const xcb_glx_get_tex_envfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_tex_envfv_data (const xcb_glx_get_tex_envfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_envfv_data_length + ** + ** @param const xcb_glx_get_tex_envfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_envfv_data_length (const xcb_glx_get_tex_envfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_envfv_data_end + ** + ** @param const xcb_glx_get_tex_envfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_envfv_data_end (const xcb_glx_get_tex_envfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_envfv_reply_t * xcb_glx_get_tex_envfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_envfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_envfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_envfv_reply_t * +xcb_glx_get_tex_envfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_envfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_envfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_enviv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_enviv_reply_t *_aux = (xcb_glx_get_tex_enviv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_enviv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_enviv_cookie_t xcb_glx_get_tex_enviv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_enviv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_enviv_cookie_t +xcb_glx_get_tex_enviv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_ENVIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_enviv_cookie_t xcb_ret; + xcb_glx_get_tex_enviv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_enviv_cookie_t xcb_glx_get_tex_enviv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_enviv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_enviv_cookie_t +xcb_glx_get_tex_enviv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_ENVIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_enviv_cookie_t xcb_ret; + xcb_glx_get_tex_enviv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_tex_enviv_data + ** + ** @param const xcb_glx_get_tex_enviv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_tex_enviv_data (const xcb_glx_get_tex_enviv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_enviv_data_length + ** + ** @param const xcb_glx_get_tex_enviv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_enviv_data_length (const xcb_glx_get_tex_enviv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_enviv_data_end + ** + ** @param const xcb_glx_get_tex_enviv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_enviv_data_end (const xcb_glx_get_tex_enviv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_enviv_reply_t * xcb_glx_get_tex_enviv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_enviv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_enviv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_enviv_reply_t * +xcb_glx_get_tex_enviv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_enviv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_enviv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_gendv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_gendv_reply_t *_aux = (xcb_glx_get_tex_gendv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_gendv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float64_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float64_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_gendv_cookie_t xcb_glx_get_tex_gendv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_gendv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_gendv_cookie_t +xcb_glx_get_tex_gendv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_GENDV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_gendv_cookie_t xcb_ret; + xcb_glx_get_tex_gendv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.coord = coord; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_gendv_cookie_t xcb_glx_get_tex_gendv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_gendv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_gendv_cookie_t +xcb_glx_get_tex_gendv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_GENDV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_gendv_cookie_t xcb_ret; + xcb_glx_get_tex_gendv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.coord = coord; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float64_t * xcb_glx_get_tex_gendv_data + ** + ** @param const xcb_glx_get_tex_gendv_reply_t *R + ** @returns xcb_glx_float64_t * + ** + *****************************************************************************/ + +xcb_glx_float64_t * +xcb_glx_get_tex_gendv_data (const xcb_glx_get_tex_gendv_reply_t *R /**< */) +{ + return (xcb_glx_float64_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_gendv_data_length + ** + ** @param const xcb_glx_get_tex_gendv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_gendv_data_length (const xcb_glx_get_tex_gendv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_gendv_data_end + ** + ** @param const xcb_glx_get_tex_gendv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_gendv_data_end (const xcb_glx_get_tex_gendv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float64_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_gendv_reply_t * xcb_glx_get_tex_gendv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_gendv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_gendv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_gendv_reply_t * +xcb_glx_get_tex_gendv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_gendv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_gendv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_genfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_genfv_reply_t *_aux = (xcb_glx_get_tex_genfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_genfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_genfv_cookie_t xcb_glx_get_tex_genfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_genfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_genfv_cookie_t +xcb_glx_get_tex_genfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_GENFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_genfv_cookie_t xcb_ret; + xcb_glx_get_tex_genfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.coord = coord; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_genfv_cookie_t xcb_glx_get_tex_genfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_genfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_genfv_cookie_t +xcb_glx_get_tex_genfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_GENFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_genfv_cookie_t xcb_ret; + xcb_glx_get_tex_genfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.coord = coord; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_tex_genfv_data + ** + ** @param const xcb_glx_get_tex_genfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_tex_genfv_data (const xcb_glx_get_tex_genfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_genfv_data_length + ** + ** @param const xcb_glx_get_tex_genfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_genfv_data_length (const xcb_glx_get_tex_genfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_genfv_data_end + ** + ** @param const xcb_glx_get_tex_genfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_genfv_data_end (const xcb_glx_get_tex_genfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_genfv_reply_t * xcb_glx_get_tex_genfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_genfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_genfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_genfv_reply_t * +xcb_glx_get_tex_genfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_genfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_genfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_geniv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_geniv_reply_t *_aux = (xcb_glx_get_tex_geniv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_geniv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_geniv_cookie_t xcb_glx_get_tex_geniv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_geniv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_geniv_cookie_t +xcb_glx_get_tex_geniv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_GENIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_geniv_cookie_t xcb_ret; + xcb_glx_get_tex_geniv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.coord = coord; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_geniv_cookie_t xcb_glx_get_tex_geniv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_geniv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_geniv_cookie_t +xcb_glx_get_tex_geniv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_GENIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_geniv_cookie_t xcb_ret; + xcb_glx_get_tex_geniv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.coord = coord; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_tex_geniv_data + ** + ** @param const xcb_glx_get_tex_geniv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_tex_geniv_data (const xcb_glx_get_tex_geniv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_geniv_data_length + ** + ** @param const xcb_glx_get_tex_geniv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_geniv_data_length (const xcb_glx_get_tex_geniv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_geniv_data_end + ** + ** @param const xcb_glx_get_tex_geniv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_geniv_data_end (const xcb_glx_get_tex_geniv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_geniv_reply_t * xcb_glx_get_tex_geniv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_geniv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_geniv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_geniv_reply_t * +xcb_glx_get_tex_geniv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_geniv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_geniv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_image_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_image_reply_t *_aux = (xcb_glx_get_tex_image_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_image_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_image_cookie_t xcb_glx_get_tex_image + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_tex_image_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_image_cookie_t +xcb_glx_get_tex_image (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_IMAGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_image_cookie_t xcb_ret; + xcb_glx_get_tex_image_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.level = level; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_image_cookie_t xcb_glx_get_tex_image_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_tex_image_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_image_cookie_t +xcb_glx_get_tex_image_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_IMAGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_image_cookie_t xcb_ret; + xcb_glx_get_tex_image_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.level = level; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_tex_image_data + ** + ** @param const xcb_glx_get_tex_image_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_tex_image_data (const xcb_glx_get_tex_image_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_image_data_length + ** + ** @param const xcb_glx_get_tex_image_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_image_data_length (const xcb_glx_get_tex_image_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_image_data_end + ** + ** @param const xcb_glx_get_tex_image_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_image_data_end (const xcb_glx_get_tex_image_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_image_reply_t * xcb_glx_get_tex_image_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_image_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_image_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_image_reply_t * +xcb_glx_get_tex_image_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_image_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_image_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_parameterfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_parameterfv_reply_t *_aux = (xcb_glx_get_tex_parameterfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_parameterfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameterfv_cookie_t xcb_glx_get_tex_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameterfv_cookie_t +xcb_glx_get_tex_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_parameterfv_cookie_t xcb_ret; + xcb_glx_get_tex_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameterfv_cookie_t xcb_glx_get_tex_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameterfv_cookie_t +xcb_glx_get_tex_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_parameterfv_cookie_t xcb_ret; + xcb_glx_get_tex_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_tex_parameterfv_data + ** + ** @param const xcb_glx_get_tex_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_tex_parameterfv_data (const xcb_glx_get_tex_parameterfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_parameterfv_data_length + ** + ** @param const xcb_glx_get_tex_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_parameterfv_data_length (const xcb_glx_get_tex_parameterfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_parameterfv_data_end + ** + ** @param const xcb_glx_get_tex_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_parameterfv_data_end (const xcb_glx_get_tex_parameterfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameterfv_reply_t * xcb_glx_get_tex_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameterfv_reply_t * +xcb_glx_get_tex_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_parameterfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_parameteriv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_parameteriv_reply_t *_aux = (xcb_glx_get_tex_parameteriv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_parameteriv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameteriv_cookie_t xcb_glx_get_tex_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameteriv_cookie_t +xcb_glx_get_tex_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_parameteriv_cookie_t xcb_ret; + xcb_glx_get_tex_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameteriv_cookie_t xcb_glx_get_tex_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameteriv_cookie_t +xcb_glx_get_tex_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_parameteriv_cookie_t xcb_ret; + xcb_glx_get_tex_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_tex_parameteriv_data + ** + ** @param const xcb_glx_get_tex_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_tex_parameteriv_data (const xcb_glx_get_tex_parameteriv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_parameteriv_data_length + ** + ** @param const xcb_glx_get_tex_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_parameteriv_data_length (const xcb_glx_get_tex_parameteriv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_parameteriv_data_end + ** + ** @param const xcb_glx_get_tex_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_parameteriv_data_end (const xcb_glx_get_tex_parameteriv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameteriv_reply_t * xcb_glx_get_tex_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameteriv_reply_t * +xcb_glx_get_tex_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_parameteriv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_level_parameterfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_level_parameterfv_reply_t *_aux = (xcb_glx_get_tex_level_parameterfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_level_parameterfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameterfv_cookie_t xcb_glx_get_tex_level_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_level_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameterfv_cookie_t +xcb_glx_get_tex_level_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_LEVEL_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_level_parameterfv_cookie_t xcb_ret; + xcb_glx_get_tex_level_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.level = level; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameterfv_cookie_t xcb_glx_get_tex_level_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_level_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameterfv_cookie_t +xcb_glx_get_tex_level_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_LEVEL_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_level_parameterfv_cookie_t xcb_ret; + xcb_glx_get_tex_level_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.level = level; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_tex_level_parameterfv_data + ** + ** @param const xcb_glx_get_tex_level_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_tex_level_parameterfv_data (const xcb_glx_get_tex_level_parameterfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_level_parameterfv_data_length + ** + ** @param const xcb_glx_get_tex_level_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_level_parameterfv_data_length (const xcb_glx_get_tex_level_parameterfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_level_parameterfv_data_end + ** + ** @param const xcb_glx_get_tex_level_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_level_parameterfv_data_end (const xcb_glx_get_tex_level_parameterfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameterfv_reply_t * xcb_glx_get_tex_level_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_level_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_level_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameterfv_reply_t * +xcb_glx_get_tex_level_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_level_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_level_parameterfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_tex_level_parameteriv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_tex_level_parameteriv_reply_t *_aux = (xcb_glx_get_tex_level_parameteriv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_tex_level_parameteriv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameteriv_cookie_t xcb_glx_get_tex_level_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_level_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameteriv_cookie_t +xcb_glx_get_tex_level_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_LEVEL_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_level_parameteriv_cookie_t xcb_ret; + xcb_glx_get_tex_level_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.level = level; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameteriv_cookie_t xcb_glx_get_tex_level_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_level_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameteriv_cookie_t +xcb_glx_get_tex_level_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_TEX_LEVEL_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_tex_level_parameteriv_cookie_t xcb_ret; + xcb_glx_get_tex_level_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.level = level; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_tex_level_parameteriv_data + ** + ** @param const xcb_glx_get_tex_level_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_tex_level_parameteriv_data (const xcb_glx_get_tex_level_parameteriv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_level_parameteriv_data_length + ** + ** @param const xcb_glx_get_tex_level_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_level_parameteriv_data_length (const xcb_glx_get_tex_level_parameteriv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_level_parameteriv_data_end + ** + ** @param const xcb_glx_get_tex_level_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_level_parameteriv_data_end (const xcb_glx_get_tex_level_parameteriv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameteriv_reply_t * xcb_glx_get_tex_level_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_level_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_level_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameteriv_reply_t * +xcb_glx_get_tex_level_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_level_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_tex_level_parameteriv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_glx_is_list_cookie_t xcb_glx_is_list + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @returns xcb_glx_is_list_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_list_cookie_t +xcb_glx_is_list (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_IS_LIST, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_is_list_cookie_t xcb_ret; + xcb_glx_is_list_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.list = list; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_is_list_cookie_t xcb_glx_is_list_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @returns xcb_glx_is_list_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_list_cookie_t +xcb_glx_is_list_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_IS_LIST, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_is_list_cookie_t xcb_ret; + xcb_glx_is_list_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.list = list; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_is_list_reply_t * xcb_glx_is_list_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_is_list_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_is_list_reply_t * + ** + *****************************************************************************/ + +xcb_glx_is_list_reply_t * +xcb_glx_is_list_reply (xcb_connection_t *c /**< */, + xcb_glx_is_list_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_is_list_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_flush_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_flush_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_FLUSH, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_flush_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_flush + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_flush (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_FLUSH, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_glx_flush_request_t xcb_out; + + xcb_out.context_tag = context_tag; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_are_textures_resident_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_are_textures_resident_request_t *_aux = (xcb_glx_are_textures_resident_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_are_textures_resident_request_t); + xcb_tmp += xcb_block_len; + /* textures */ + xcb_block_len += _aux->n * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_are_textures_resident_cookie_t xcb_glx_are_textures_resident + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *textures + ** @returns xcb_glx_are_textures_resident_cookie_t + ** + *****************************************************************************/ + +xcb_glx_are_textures_resident_cookie_t +xcb_glx_are_textures_resident (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *textures /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_ARE_TEXTURES_RESIDENT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_glx_are_textures_resident_cookie_t xcb_ret; + xcb_glx_are_textures_resident_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t textures */ + xcb_parts[4].iov_base = (char *) textures; + xcb_parts[4].iov_len = n * sizeof(xcb_glx_bool32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_are_textures_resident_cookie_t xcb_glx_are_textures_resident_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *textures + ** @returns xcb_glx_are_textures_resident_cookie_t + ** + *****************************************************************************/ + +xcb_glx_are_textures_resident_cookie_t +xcb_glx_are_textures_resident_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *textures /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_ARE_TEXTURES_RESIDENT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_glx_are_textures_resident_cookie_t xcb_ret; + xcb_glx_are_textures_resident_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t textures */ + xcb_parts[4].iov_base = (char *) textures; + xcb_parts[4].iov_len = n * sizeof(xcb_glx_bool32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_are_textures_resident_data + ** + ** @param const xcb_glx_are_textures_resident_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_are_textures_resident_data (const xcb_glx_are_textures_resident_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_are_textures_resident_data_length + ** + ** @param const xcb_glx_are_textures_resident_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_are_textures_resident_data_length (const xcb_glx_are_textures_resident_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_are_textures_resident_data_end + ** + ** @param const xcb_glx_are_textures_resident_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_are_textures_resident_data_end (const xcb_glx_are_textures_resident_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_are_textures_resident_reply_t * xcb_glx_are_textures_resident_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_are_textures_resident_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_are_textures_resident_reply_t * + ** + *****************************************************************************/ + +xcb_glx_are_textures_resident_reply_t * +xcb_glx_are_textures_resident_reply (xcb_connection_t *c /**< */, + xcb_glx_are_textures_resident_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_are_textures_resident_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_delete_textures_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_delete_textures_request_t *_aux = (xcb_glx_delete_textures_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_delete_textures_request_t); + xcb_tmp += xcb_block_len; + /* textures */ + xcb_block_len += _aux->n * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_textures_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *textures + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_textures_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *textures /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DELETE_TEXTURES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_delete_textures_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t textures */ + xcb_parts[4].iov_base = (char *) textures; + xcb_parts[4].iov_len = n * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_textures + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *textures + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_textures (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *textures /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DELETE_TEXTURES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_delete_textures_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t textures */ + xcb_parts[4].iov_base = (char *) textures; + xcb_parts[4].iov_len = n * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_gen_textures_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_gen_textures_reply_t *_aux = (xcb_glx_gen_textures_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_gen_textures_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->length * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_gen_textures_cookie_t xcb_glx_gen_textures + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @returns xcb_glx_gen_textures_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_textures_cookie_t +xcb_glx_gen_textures (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GEN_TEXTURES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_gen_textures_cookie_t xcb_ret; + xcb_glx_gen_textures_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_gen_textures_cookie_t xcb_glx_gen_textures_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @returns xcb_glx_gen_textures_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_textures_cookie_t +xcb_glx_gen_textures_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GEN_TEXTURES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_gen_textures_cookie_t xcb_ret; + xcb_glx_gen_textures_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_gen_textures_data + ** + ** @param const xcb_glx_gen_textures_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_gen_textures_data (const xcb_glx_gen_textures_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_gen_textures_data_length + ** + ** @param const xcb_glx_gen_textures_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_gen_textures_data_length (const xcb_glx_gen_textures_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_gen_textures_data_end + ** + ** @param const xcb_glx_gen_textures_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_gen_textures_data_end (const xcb_glx_gen_textures_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_gen_textures_reply_t * xcb_glx_gen_textures_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_gen_textures_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_gen_textures_reply_t * + ** + *****************************************************************************/ + +xcb_glx_gen_textures_reply_t * +xcb_glx_gen_textures_reply (xcb_connection_t *c /**< */, + xcb_glx_gen_textures_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_gen_textures_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_glx_is_texture_cookie_t xcb_glx_is_texture + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t texture + ** @returns xcb_glx_is_texture_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_texture_cookie_t +xcb_glx_is_texture (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t texture /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_IS_TEXTURE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_is_texture_cookie_t xcb_ret; + xcb_glx_is_texture_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.texture = texture; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_is_texture_cookie_t xcb_glx_is_texture_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t texture + ** @returns xcb_glx_is_texture_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_texture_cookie_t +xcb_glx_is_texture_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t texture /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_IS_TEXTURE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_is_texture_cookie_t xcb_ret; + xcb_glx_is_texture_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.texture = texture; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_is_texture_reply_t * xcb_glx_is_texture_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_is_texture_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_is_texture_reply_t * + ** + *****************************************************************************/ + +xcb_glx_is_texture_reply_t * +xcb_glx_is_texture_reply (xcb_connection_t *c /**< */, + xcb_glx_is_texture_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_is_texture_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_color_table_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_color_table_reply_t *_aux = (xcb_glx_get_color_table_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_color_table_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_cookie_t xcb_glx_get_color_table + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_color_table_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_cookie_t +xcb_glx_get_color_table (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_COLOR_TABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_color_table_cookie_t xcb_ret; + xcb_glx_get_color_table_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_cookie_t xcb_glx_get_color_table_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_color_table_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_cookie_t +xcb_glx_get_color_table_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_COLOR_TABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_color_table_cookie_t xcb_ret; + xcb_glx_get_color_table_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_color_table_data + ** + ** @param const xcb_glx_get_color_table_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_color_table_data (const xcb_glx_get_color_table_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_color_table_data_length + ** + ** @param const xcb_glx_get_color_table_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_color_table_data_length (const xcb_glx_get_color_table_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_color_table_data_end + ** + ** @param const xcb_glx_get_color_table_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_color_table_data_end (const xcb_glx_get_color_table_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_reply_t * xcb_glx_get_color_table_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_color_table_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_color_table_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_color_table_reply_t * +xcb_glx_get_color_table_reply (xcb_connection_t *c /**< */, + xcb_glx_get_color_table_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_color_table_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_color_table_parameterfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_color_table_parameterfv_reply_t *_aux = (xcb_glx_get_color_table_parameterfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_color_table_parameterfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameterfv_cookie_t xcb_glx_get_color_table_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_color_table_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameterfv_cookie_t +xcb_glx_get_color_table_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_COLOR_TABLE_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_color_table_parameterfv_cookie_t xcb_ret; + xcb_glx_get_color_table_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameterfv_cookie_t xcb_glx_get_color_table_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_color_table_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameterfv_cookie_t +xcb_glx_get_color_table_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_COLOR_TABLE_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_color_table_parameterfv_cookie_t xcb_ret; + xcb_glx_get_color_table_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_color_table_parameterfv_data + ** + ** @param const xcb_glx_get_color_table_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_color_table_parameterfv_data (const xcb_glx_get_color_table_parameterfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_color_table_parameterfv_data_length + ** + ** @param const xcb_glx_get_color_table_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_color_table_parameterfv_data_length (const xcb_glx_get_color_table_parameterfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_color_table_parameterfv_data_end + ** + ** @param const xcb_glx_get_color_table_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_color_table_parameterfv_data_end (const xcb_glx_get_color_table_parameterfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameterfv_reply_t * xcb_glx_get_color_table_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_color_table_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_color_table_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameterfv_reply_t * +xcb_glx_get_color_table_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_color_table_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_color_table_parameterfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_color_table_parameteriv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_color_table_parameteriv_reply_t *_aux = (xcb_glx_get_color_table_parameteriv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_color_table_parameteriv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameteriv_cookie_t xcb_glx_get_color_table_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_color_table_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameteriv_cookie_t +xcb_glx_get_color_table_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_COLOR_TABLE_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_color_table_parameteriv_cookie_t xcb_ret; + xcb_glx_get_color_table_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameteriv_cookie_t xcb_glx_get_color_table_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_color_table_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameteriv_cookie_t +xcb_glx_get_color_table_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_COLOR_TABLE_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_color_table_parameteriv_cookie_t xcb_ret; + xcb_glx_get_color_table_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_color_table_parameteriv_data + ** + ** @param const xcb_glx_get_color_table_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_color_table_parameteriv_data (const xcb_glx_get_color_table_parameteriv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_color_table_parameteriv_data_length + ** + ** @param const xcb_glx_get_color_table_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_color_table_parameteriv_data_length (const xcb_glx_get_color_table_parameteriv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_color_table_parameteriv_data_end + ** + ** @param const xcb_glx_get_color_table_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_color_table_parameteriv_data_end (const xcb_glx_get_color_table_parameteriv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameteriv_reply_t * xcb_glx_get_color_table_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_color_table_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_color_table_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameteriv_reply_t * +xcb_glx_get_color_table_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_color_table_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_color_table_parameteriv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_convolution_filter_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_convolution_filter_reply_t *_aux = (xcb_glx_get_convolution_filter_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_convolution_filter_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_filter_cookie_t xcb_glx_get_convolution_filter + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_convolution_filter_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_filter_cookie_t +xcb_glx_get_convolution_filter (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_CONVOLUTION_FILTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_convolution_filter_cookie_t xcb_ret; + xcb_glx_get_convolution_filter_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_filter_cookie_t xcb_glx_get_convolution_filter_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_convolution_filter_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_filter_cookie_t +xcb_glx_get_convolution_filter_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_CONVOLUTION_FILTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_convolution_filter_cookie_t xcb_ret; + xcb_glx_get_convolution_filter_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_convolution_filter_data + ** + ** @param const xcb_glx_get_convolution_filter_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_convolution_filter_data (const xcb_glx_get_convolution_filter_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_convolution_filter_data_length + ** + ** @param const xcb_glx_get_convolution_filter_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_convolution_filter_data_length (const xcb_glx_get_convolution_filter_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_convolution_filter_data_end + ** + ** @param const xcb_glx_get_convolution_filter_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_convolution_filter_data_end (const xcb_glx_get_convolution_filter_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_filter_reply_t * xcb_glx_get_convolution_filter_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_convolution_filter_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_convolution_filter_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_convolution_filter_reply_t * +xcb_glx_get_convolution_filter_reply (xcb_connection_t *c /**< */, + xcb_glx_get_convolution_filter_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_convolution_filter_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_convolution_parameterfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_convolution_parameterfv_reply_t *_aux = (xcb_glx_get_convolution_parameterfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_convolution_parameterfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameterfv_cookie_t xcb_glx_get_convolution_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_convolution_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameterfv_cookie_t +xcb_glx_get_convolution_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_CONVOLUTION_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_convolution_parameterfv_cookie_t xcb_ret; + xcb_glx_get_convolution_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameterfv_cookie_t xcb_glx_get_convolution_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_convolution_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameterfv_cookie_t +xcb_glx_get_convolution_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_CONVOLUTION_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_convolution_parameterfv_cookie_t xcb_ret; + xcb_glx_get_convolution_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_convolution_parameterfv_data + ** + ** @param const xcb_glx_get_convolution_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_convolution_parameterfv_data (const xcb_glx_get_convolution_parameterfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_convolution_parameterfv_data_length + ** + ** @param const xcb_glx_get_convolution_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_convolution_parameterfv_data_length (const xcb_glx_get_convolution_parameterfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_convolution_parameterfv_data_end + ** + ** @param const xcb_glx_get_convolution_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_convolution_parameterfv_data_end (const xcb_glx_get_convolution_parameterfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameterfv_reply_t * xcb_glx_get_convolution_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_convolution_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_convolution_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameterfv_reply_t * +xcb_glx_get_convolution_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_convolution_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_convolution_parameterfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_convolution_parameteriv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_convolution_parameteriv_reply_t *_aux = (xcb_glx_get_convolution_parameteriv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_convolution_parameteriv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameteriv_cookie_t xcb_glx_get_convolution_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_convolution_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameteriv_cookie_t +xcb_glx_get_convolution_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_CONVOLUTION_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_convolution_parameteriv_cookie_t xcb_ret; + xcb_glx_get_convolution_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameteriv_cookie_t xcb_glx_get_convolution_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_convolution_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameteriv_cookie_t +xcb_glx_get_convolution_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_CONVOLUTION_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_convolution_parameteriv_cookie_t xcb_ret; + xcb_glx_get_convolution_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_convolution_parameteriv_data + ** + ** @param const xcb_glx_get_convolution_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_convolution_parameteriv_data (const xcb_glx_get_convolution_parameteriv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_convolution_parameteriv_data_length + ** + ** @param const xcb_glx_get_convolution_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_convolution_parameteriv_data_length (const xcb_glx_get_convolution_parameteriv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_convolution_parameteriv_data_end + ** + ** @param const xcb_glx_get_convolution_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_convolution_parameteriv_data_end (const xcb_glx_get_convolution_parameteriv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameteriv_reply_t * xcb_glx_get_convolution_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_convolution_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_convolution_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameteriv_reply_t * +xcb_glx_get_convolution_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_convolution_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_convolution_parameteriv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_separable_filter_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_separable_filter_reply_t *_aux = (xcb_glx_get_separable_filter_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_separable_filter_reply_t); + xcb_tmp += xcb_block_len; + /* rows_and_cols */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_separable_filter_cookie_t xcb_glx_get_separable_filter + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_separable_filter_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_separable_filter_cookie_t +xcb_glx_get_separable_filter (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_SEPARABLE_FILTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_separable_filter_cookie_t xcb_ret; + xcb_glx_get_separable_filter_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_separable_filter_cookie_t xcb_glx_get_separable_filter_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_separable_filter_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_separable_filter_cookie_t +xcb_glx_get_separable_filter_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_SEPARABLE_FILTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_separable_filter_cookie_t xcb_ret; + xcb_glx_get_separable_filter_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_separable_filter_rows_and_cols + ** + ** @param const xcb_glx_get_separable_filter_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_separable_filter_rows_and_cols (const xcb_glx_get_separable_filter_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_separable_filter_rows_and_cols_length + ** + ** @param const xcb_glx_get_separable_filter_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_separable_filter_rows_and_cols_length (const xcb_glx_get_separable_filter_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_separable_filter_rows_and_cols_end + ** + ** @param const xcb_glx_get_separable_filter_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_separable_filter_rows_and_cols_end (const xcb_glx_get_separable_filter_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_separable_filter_reply_t * xcb_glx_get_separable_filter_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_separable_filter_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_separable_filter_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_separable_filter_reply_t * +xcb_glx_get_separable_filter_reply (xcb_connection_t *c /**< */, + xcb_glx_get_separable_filter_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_separable_filter_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_histogram_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_histogram_reply_t *_aux = (xcb_glx_get_histogram_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_histogram_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_cookie_t xcb_glx_get_histogram + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t reset + ** @returns xcb_glx_get_histogram_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_cookie_t +xcb_glx_get_histogram (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t reset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_HISTOGRAM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_histogram_cookie_t xcb_ret; + xcb_glx_get_histogram_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + xcb_out.reset = reset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_cookie_t xcb_glx_get_histogram_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t reset + ** @returns xcb_glx_get_histogram_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_cookie_t +xcb_glx_get_histogram_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t reset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_HISTOGRAM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_histogram_cookie_t xcb_ret; + xcb_glx_get_histogram_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + xcb_out.reset = reset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_histogram_data + ** + ** @param const xcb_glx_get_histogram_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_histogram_data (const xcb_glx_get_histogram_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_histogram_data_length + ** + ** @param const xcb_glx_get_histogram_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_histogram_data_length (const xcb_glx_get_histogram_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_histogram_data_end + ** + ** @param const xcb_glx_get_histogram_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_histogram_data_end (const xcb_glx_get_histogram_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_reply_t * xcb_glx_get_histogram_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_histogram_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_histogram_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_histogram_reply_t * +xcb_glx_get_histogram_reply (xcb_connection_t *c /**< */, + xcb_glx_get_histogram_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_histogram_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_histogram_parameterfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_histogram_parameterfv_reply_t *_aux = (xcb_glx_get_histogram_parameterfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_histogram_parameterfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameterfv_cookie_t xcb_glx_get_histogram_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_histogram_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameterfv_cookie_t +xcb_glx_get_histogram_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_HISTOGRAM_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_histogram_parameterfv_cookie_t xcb_ret; + xcb_glx_get_histogram_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameterfv_cookie_t xcb_glx_get_histogram_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_histogram_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameterfv_cookie_t +xcb_glx_get_histogram_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_HISTOGRAM_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_histogram_parameterfv_cookie_t xcb_ret; + xcb_glx_get_histogram_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_histogram_parameterfv_data + ** + ** @param const xcb_glx_get_histogram_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_histogram_parameterfv_data (const xcb_glx_get_histogram_parameterfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_histogram_parameterfv_data_length + ** + ** @param const xcb_glx_get_histogram_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_histogram_parameterfv_data_length (const xcb_glx_get_histogram_parameterfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_histogram_parameterfv_data_end + ** + ** @param const xcb_glx_get_histogram_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_histogram_parameterfv_data_end (const xcb_glx_get_histogram_parameterfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameterfv_reply_t * xcb_glx_get_histogram_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_histogram_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_histogram_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameterfv_reply_t * +xcb_glx_get_histogram_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_histogram_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_histogram_parameterfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_histogram_parameteriv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_histogram_parameteriv_reply_t *_aux = (xcb_glx_get_histogram_parameteriv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_histogram_parameteriv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameteriv_cookie_t xcb_glx_get_histogram_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_histogram_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameteriv_cookie_t +xcb_glx_get_histogram_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_HISTOGRAM_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_histogram_parameteriv_cookie_t xcb_ret; + xcb_glx_get_histogram_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameteriv_cookie_t xcb_glx_get_histogram_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_histogram_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameteriv_cookie_t +xcb_glx_get_histogram_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_HISTOGRAM_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_histogram_parameteriv_cookie_t xcb_ret; + xcb_glx_get_histogram_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_histogram_parameteriv_data + ** + ** @param const xcb_glx_get_histogram_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_histogram_parameteriv_data (const xcb_glx_get_histogram_parameteriv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_histogram_parameteriv_data_length + ** + ** @param const xcb_glx_get_histogram_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_histogram_parameteriv_data_length (const xcb_glx_get_histogram_parameteriv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_histogram_parameteriv_data_end + ** + ** @param const xcb_glx_get_histogram_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_histogram_parameteriv_data_end (const xcb_glx_get_histogram_parameteriv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameteriv_reply_t * xcb_glx_get_histogram_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_histogram_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_histogram_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameteriv_reply_t * +xcb_glx_get_histogram_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_histogram_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_histogram_parameteriv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_minmax_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_minmax_reply_t *_aux = (xcb_glx_get_minmax_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_minmax_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_cookie_t xcb_glx_get_minmax + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t reset + ** @returns xcb_glx_get_minmax_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_cookie_t +xcb_glx_get_minmax (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t reset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MINMAX, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_minmax_cookie_t xcb_ret; + xcb_glx_get_minmax_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + xcb_out.reset = reset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_cookie_t xcb_glx_get_minmax_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t reset + ** @returns xcb_glx_get_minmax_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_cookie_t +xcb_glx_get_minmax_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t reset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MINMAX, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_minmax_cookie_t xcb_ret; + xcb_glx_get_minmax_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.format = format; + xcb_out.type = type; + xcb_out.swap_bytes = swap_bytes; + xcb_out.reset = reset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_minmax_data + ** + ** @param const xcb_glx_get_minmax_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_minmax_data (const xcb_glx_get_minmax_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_minmax_data_length + ** + ** @param const xcb_glx_get_minmax_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_minmax_data_length (const xcb_glx_get_minmax_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_minmax_data_end + ** + ** @param const xcb_glx_get_minmax_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_minmax_data_end (const xcb_glx_get_minmax_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_reply_t * xcb_glx_get_minmax_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_minmax_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_minmax_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_minmax_reply_t * +xcb_glx_get_minmax_reply (xcb_connection_t *c /**< */, + xcb_glx_get_minmax_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_minmax_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_minmax_parameterfv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_minmax_parameterfv_reply_t *_aux = (xcb_glx_get_minmax_parameterfv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_minmax_parameterfv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(xcb_glx_float32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_glx_float32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameterfv_cookie_t xcb_glx_get_minmax_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_minmax_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameterfv_cookie_t +xcb_glx_get_minmax_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MINMAX_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_minmax_parameterfv_cookie_t xcb_ret; + xcb_glx_get_minmax_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameterfv_cookie_t xcb_glx_get_minmax_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_minmax_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameterfv_cookie_t +xcb_glx_get_minmax_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MINMAX_PARAMETERFV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_minmax_parameterfv_cookie_t xcb_ret; + xcb_glx_get_minmax_parameterfv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_minmax_parameterfv_data + ** + ** @param const xcb_glx_get_minmax_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_minmax_parameterfv_data (const xcb_glx_get_minmax_parameterfv_reply_t *R /**< */) +{ + return (xcb_glx_float32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_minmax_parameterfv_data_length + ** + ** @param const xcb_glx_get_minmax_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_minmax_parameterfv_data_length (const xcb_glx_get_minmax_parameterfv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_minmax_parameterfv_data_end + ** + ** @param const xcb_glx_get_minmax_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_minmax_parameterfv_data_end (const xcb_glx_get_minmax_parameterfv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_glx_float32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameterfv_reply_t * xcb_glx_get_minmax_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_minmax_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_minmax_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameterfv_reply_t * +xcb_glx_get_minmax_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_minmax_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_minmax_parameterfv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_minmax_parameteriv_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_minmax_parameteriv_reply_t *_aux = (xcb_glx_get_minmax_parameteriv_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_minmax_parameteriv_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameteriv_cookie_t xcb_glx_get_minmax_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_minmax_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameteriv_cookie_t +xcb_glx_get_minmax_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MINMAX_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_minmax_parameteriv_cookie_t xcb_ret; + xcb_glx_get_minmax_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameteriv_cookie_t xcb_glx_get_minmax_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_minmax_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameteriv_cookie_t +xcb_glx_get_minmax_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_MINMAX_PARAMETERIV, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_minmax_parameteriv_cookie_t xcb_ret; + xcb_glx_get_minmax_parameteriv_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_minmax_parameteriv_data + ** + ** @param const xcb_glx_get_minmax_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_minmax_parameteriv_data (const xcb_glx_get_minmax_parameteriv_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_minmax_parameteriv_data_length + ** + ** @param const xcb_glx_get_minmax_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_minmax_parameteriv_data_length (const xcb_glx_get_minmax_parameteriv_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_minmax_parameteriv_data_end + ** + ** @param const xcb_glx_get_minmax_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_minmax_parameteriv_data_end (const xcb_glx_get_minmax_parameteriv_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameteriv_reply_t * xcb_glx_get_minmax_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_minmax_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_minmax_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameteriv_reply_t * +xcb_glx_get_minmax_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_minmax_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_minmax_parameteriv_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_compressed_tex_image_arb_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_compressed_tex_image_arb_reply_t *_aux = (xcb_glx_get_compressed_tex_image_arb_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_compressed_tex_image_arb_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_compressed_tex_image_arb_cookie_t xcb_glx_get_compressed_tex_image_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @returns xcb_glx_get_compressed_tex_image_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_compressed_tex_image_arb_cookie_t +xcb_glx_get_compressed_tex_image_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_COMPRESSED_TEX_IMAGE_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_compressed_tex_image_arb_cookie_t xcb_ret; + xcb_glx_get_compressed_tex_image_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.level = level; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_compressed_tex_image_arb_cookie_t xcb_glx_get_compressed_tex_image_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @returns xcb_glx_get_compressed_tex_image_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_compressed_tex_image_arb_cookie_t +xcb_glx_get_compressed_tex_image_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_COMPRESSED_TEX_IMAGE_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_compressed_tex_image_arb_cookie_t xcb_ret; + xcb_glx_get_compressed_tex_image_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.level = level; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_compressed_tex_image_arb_data + ** + ** @param const xcb_glx_get_compressed_tex_image_arb_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_compressed_tex_image_arb_data (const xcb_glx_get_compressed_tex_image_arb_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_compressed_tex_image_arb_data_length + ** + ** @param const xcb_glx_get_compressed_tex_image_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_compressed_tex_image_arb_data_length (const xcb_glx_get_compressed_tex_image_arb_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_compressed_tex_image_arb_data_end + ** + ** @param const xcb_glx_get_compressed_tex_image_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_compressed_tex_image_arb_data_end (const xcb_glx_get_compressed_tex_image_arb_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_compressed_tex_image_arb_reply_t * xcb_glx_get_compressed_tex_image_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_compressed_tex_image_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_compressed_tex_image_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_compressed_tex_image_arb_reply_t * +xcb_glx_get_compressed_tex_image_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_get_compressed_tex_image_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_compressed_tex_image_arb_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_delete_queries_arb_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_delete_queries_arb_request_t *_aux = (xcb_glx_delete_queries_arb_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_delete_queries_arb_request_t); + xcb_tmp += xcb_block_len; + /* ids */ + xcb_block_len += _aux->n * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_queries_arb_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *ids + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_queries_arb_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *ids /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DELETE_QUERIES_ARB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_delete_queries_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t ids */ + xcb_parts[4].iov_base = (char *) ids; + xcb_parts[4].iov_len = n * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_queries_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *ids + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_queries_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *ids /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_DELETE_QUERIES_ARB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_glx_delete_queries_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t ids */ + xcb_parts[4].iov_base = (char *) ids; + xcb_parts[4].iov_len = n * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_glx_gen_queries_arb_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_gen_queries_arb_reply_t *_aux = (xcb_glx_gen_queries_arb_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_gen_queries_arb_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->length * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_gen_queries_arb_cookie_t xcb_glx_gen_queries_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @returns xcb_glx_gen_queries_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_queries_arb_cookie_t +xcb_glx_gen_queries_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GEN_QUERIES_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_gen_queries_arb_cookie_t xcb_ret; + xcb_glx_gen_queries_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_gen_queries_arb_cookie_t xcb_glx_gen_queries_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @returns xcb_glx_gen_queries_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_queries_arb_cookie_t +xcb_glx_gen_queries_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GEN_QUERIES_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_gen_queries_arb_cookie_t xcb_ret; + xcb_glx_gen_queries_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.n = n; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_gen_queries_arb_data + ** + ** @param const xcb_glx_gen_queries_arb_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_gen_queries_arb_data (const xcb_glx_gen_queries_arb_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_gen_queries_arb_data_length + ** + ** @param const xcb_glx_gen_queries_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_gen_queries_arb_data_length (const xcb_glx_gen_queries_arb_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_gen_queries_arb_data_end + ** + ** @param const xcb_glx_gen_queries_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_gen_queries_arb_data_end (const xcb_glx_gen_queries_arb_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_gen_queries_arb_reply_t * xcb_glx_gen_queries_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_gen_queries_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_gen_queries_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_gen_queries_arb_reply_t * +xcb_glx_gen_queries_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_gen_queries_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_gen_queries_arb_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_glx_is_query_arb_cookie_t xcb_glx_is_query_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @returns xcb_glx_is_query_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_query_arb_cookie_t +xcb_glx_is_query_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_IS_QUERY_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_is_query_arb_cookie_t xcb_ret; + xcb_glx_is_query_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.id = id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_is_query_arb_cookie_t xcb_glx_is_query_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @returns xcb_glx_is_query_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_query_arb_cookie_t +xcb_glx_is_query_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_IS_QUERY_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_is_query_arb_cookie_t xcb_ret; + xcb_glx_is_query_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.id = id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_is_query_arb_reply_t * xcb_glx_is_query_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_is_query_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_is_query_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_is_query_arb_reply_t * +xcb_glx_is_query_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_is_query_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_is_query_arb_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_queryiv_arb_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_queryiv_arb_reply_t *_aux = (xcb_glx_get_queryiv_arb_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_queryiv_arb_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_queryiv_arb_cookie_t xcb_glx_get_queryiv_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_queryiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_queryiv_arb_cookie_t +xcb_glx_get_queryiv_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_QUERYIV_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_queryiv_arb_cookie_t xcb_ret; + xcb_glx_get_queryiv_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_queryiv_arb_cookie_t xcb_glx_get_queryiv_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_queryiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_queryiv_arb_cookie_t +xcb_glx_get_queryiv_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_QUERYIV_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_queryiv_arb_cookie_t xcb_ret; + xcb_glx_get_queryiv_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.target = target; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_queryiv_arb_data + ** + ** @param const xcb_glx_get_queryiv_arb_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_queryiv_arb_data (const xcb_glx_get_queryiv_arb_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_queryiv_arb_data_length + ** + ** @param const xcb_glx_get_queryiv_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_queryiv_arb_data_length (const xcb_glx_get_queryiv_arb_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_queryiv_arb_data_end + ** + ** @param const xcb_glx_get_queryiv_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_queryiv_arb_data_end (const xcb_glx_get_queryiv_arb_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_queryiv_arb_reply_t * xcb_glx_get_queryiv_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_queryiv_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_queryiv_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_queryiv_arb_reply_t * +xcb_glx_get_queryiv_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_get_queryiv_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_queryiv_arb_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_query_objectiv_arb_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_query_objectiv_arb_reply_t *_aux = (xcb_glx_get_query_objectiv_arb_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_query_objectiv_arb_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectiv_arb_cookie_t xcb_glx_get_query_objectiv_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @param uint32_t pname + ** @returns xcb_glx_get_query_objectiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_query_objectiv_arb_cookie_t +xcb_glx_get_query_objectiv_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_QUERY_OBJECTIV_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_query_objectiv_arb_cookie_t xcb_ret; + xcb_glx_get_query_objectiv_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.id = id; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectiv_arb_cookie_t xcb_glx_get_query_objectiv_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @param uint32_t pname + ** @returns xcb_glx_get_query_objectiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_query_objectiv_arb_cookie_t +xcb_glx_get_query_objectiv_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_QUERY_OBJECTIV_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_query_objectiv_arb_cookie_t xcb_ret; + xcb_glx_get_query_objectiv_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.id = id; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_query_objectiv_arb_data + ** + ** @param const xcb_glx_get_query_objectiv_arb_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_query_objectiv_arb_data (const xcb_glx_get_query_objectiv_arb_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_query_objectiv_arb_data_length + ** + ** @param const xcb_glx_get_query_objectiv_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_query_objectiv_arb_data_length (const xcb_glx_get_query_objectiv_arb_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_query_objectiv_arb_data_end + ** + ** @param const xcb_glx_get_query_objectiv_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_query_objectiv_arb_data_end (const xcb_glx_get_query_objectiv_arb_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectiv_arb_reply_t * xcb_glx_get_query_objectiv_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_query_objectiv_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_query_objectiv_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_query_objectiv_arb_reply_t * +xcb_glx_get_query_objectiv_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_get_query_objectiv_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_query_objectiv_arb_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_glx_get_query_objectuiv_arb_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_glx_get_query_objectuiv_arb_reply_t *_aux = (xcb_glx_get_query_objectuiv_arb_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_glx_get_query_objectuiv_arb_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->n * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectuiv_arb_cookie_t xcb_glx_get_query_objectuiv_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @param uint32_t pname + ** @returns xcb_glx_get_query_objectuiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_query_objectuiv_arb_cookie_t +xcb_glx_get_query_objectuiv_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_QUERY_OBJECTUIV_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_query_objectuiv_arb_cookie_t xcb_ret; + xcb_glx_get_query_objectuiv_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.id = id; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectuiv_arb_cookie_t xcb_glx_get_query_objectuiv_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @param uint32_t pname + ** @returns xcb_glx_get_query_objectuiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_query_objectuiv_arb_cookie_t +xcb_glx_get_query_objectuiv_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */, + uint32_t pname /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_glx_id, + /* opcode */ XCB_GLX_GET_QUERY_OBJECTUIV_ARB, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_glx_get_query_objectuiv_arb_cookie_t xcb_ret; + xcb_glx_get_query_objectuiv_arb_request_t xcb_out; + + xcb_out.context_tag = context_tag; + xcb_out.id = id; + xcb_out.pname = pname; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_query_objectuiv_arb_data + ** + ** @param const xcb_glx_get_query_objectuiv_arb_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_query_objectuiv_arb_data (const xcb_glx_get_query_objectuiv_arb_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_glx_get_query_objectuiv_arb_data_length + ** + ** @param const xcb_glx_get_query_objectuiv_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_query_objectuiv_arb_data_length (const xcb_glx_get_query_objectuiv_arb_reply_t *R /**< */) +{ + return R->n; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_query_objectuiv_arb_data_end + ** + ** @param const xcb_glx_get_query_objectuiv_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_query_objectuiv_arb_data_end (const xcb_glx_get_query_objectuiv_arb_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->n); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectuiv_arb_reply_t * xcb_glx_get_query_objectuiv_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_query_objectuiv_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_query_objectuiv_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_query_objectuiv_arb_reply_t * +xcb_glx_get_query_objectuiv_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_get_query_objectuiv_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_glx_get_query_objectuiv_arb_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/glx.h b/external/mit/xorg/lib/libxcb/files/glx.h new file mode 100644 index 000000000..061dd556b --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/glx.h @@ -0,0 +1,13656 @@ +/* + * This file generated automatically from glx.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Glx_API XCB Glx API + * @brief Glx XCB Protocol Implementation. + * @{ + **/ + +#ifndef __GLX_H +#define __GLX_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_GLX_MAJOR_VERSION 1 +#define XCB_GLX_MINOR_VERSION 3 + +extern xcb_extension_t xcb_glx_id; + +typedef uint32_t xcb_glx_pixmap_t; + +/** + * @brief xcb_glx_pixmap_iterator_t + **/ +typedef struct xcb_glx_pixmap_iterator_t { + xcb_glx_pixmap_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_pixmap_iterator_t; + +typedef uint32_t xcb_glx_context_t; + +/** + * @brief xcb_glx_context_iterator_t + **/ +typedef struct xcb_glx_context_iterator_t { + xcb_glx_context_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_context_iterator_t; + +typedef uint32_t xcb_glx_pbuffer_t; + +/** + * @brief xcb_glx_pbuffer_iterator_t + **/ +typedef struct xcb_glx_pbuffer_iterator_t { + xcb_glx_pbuffer_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_pbuffer_iterator_t; + +typedef uint32_t xcb_glx_window_t; + +/** + * @brief xcb_glx_window_iterator_t + **/ +typedef struct xcb_glx_window_iterator_t { + xcb_glx_window_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_window_iterator_t; + +typedef uint32_t xcb_glx_fbconfig_t; + +/** + * @brief xcb_glx_fbconfig_iterator_t + **/ +typedef struct xcb_glx_fbconfig_iterator_t { + xcb_glx_fbconfig_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_fbconfig_iterator_t; + +typedef uint32_t xcb_glx_drawable_t; + +/** + * @brief xcb_glx_drawable_iterator_t + **/ +typedef struct xcb_glx_drawable_iterator_t { + xcb_glx_drawable_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_drawable_iterator_t; + +typedef float xcb_glx_float32_t; + +/** + * @brief xcb_glx_float32_iterator_t + **/ +typedef struct xcb_glx_float32_iterator_t { + xcb_glx_float32_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_float32_iterator_t; + +typedef double xcb_glx_float64_t; + +/** + * @brief xcb_glx_float64_iterator_t + **/ +typedef struct xcb_glx_float64_iterator_t { + xcb_glx_float64_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_float64_iterator_t; + +typedef uint32_t xcb_glx_bool32_t; + +/** + * @brief xcb_glx_bool32_iterator_t + **/ +typedef struct xcb_glx_bool32_iterator_t { + xcb_glx_bool32_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_bool32_iterator_t; + +typedef uint32_t xcb_glx_context_tag_t; + +/** + * @brief xcb_glx_context_tag_iterator_t + **/ +typedef struct xcb_glx_context_tag_iterator_t { + xcb_glx_context_tag_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_glx_context_tag_iterator_t; + +/** Opcode for xcb_glx_generic. */ +#define XCB_GLX_GENERIC -1 + +/** + * @brief xcb_glx_generic_error_t + **/ +typedef struct xcb_glx_generic_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ + uint32_t bad_value; /**< */ + uint16_t minor_opcode; /**< */ + uint8_t major_opcode; /**< */ + uint8_t pad0[21]; /**< */ +} xcb_glx_generic_error_t; + +/** Opcode for xcb_glx_bad_context. */ +#define XCB_GLX_BAD_CONTEXT 0 + +typedef xcb_glx_generic_error_t xcb_glx_bad_context_error_t; + +/** Opcode for xcb_glx_bad_context_state. */ +#define XCB_GLX_BAD_CONTEXT_STATE 1 + +typedef xcb_glx_generic_error_t xcb_glx_bad_context_state_error_t; + +/** Opcode for xcb_glx_bad_drawable. */ +#define XCB_GLX_BAD_DRAWABLE 2 + +typedef xcb_glx_generic_error_t xcb_glx_bad_drawable_error_t; + +/** Opcode for xcb_glx_bad_pixmap. */ +#define XCB_GLX_BAD_PIXMAP 3 + +typedef xcb_glx_generic_error_t xcb_glx_bad_pixmap_error_t; + +/** Opcode for xcb_glx_bad_context_tag. */ +#define XCB_GLX_BAD_CONTEXT_TAG 4 + +typedef xcb_glx_generic_error_t xcb_glx_bad_context_tag_error_t; + +/** Opcode for xcb_glx_bad_current_window. */ +#define XCB_GLX_BAD_CURRENT_WINDOW 5 + +typedef xcb_glx_generic_error_t xcb_glx_bad_current_window_error_t; + +/** Opcode for xcb_glx_bad_render_request. */ +#define XCB_GLX_BAD_RENDER_REQUEST 6 + +typedef xcb_glx_generic_error_t xcb_glx_bad_render_request_error_t; + +/** Opcode for xcb_glx_bad_large_request. */ +#define XCB_GLX_BAD_LARGE_REQUEST 7 + +typedef xcb_glx_generic_error_t xcb_glx_bad_large_request_error_t; + +/** Opcode for xcb_glx_unsupported_private_request. */ +#define XCB_GLX_UNSUPPORTED_PRIVATE_REQUEST 8 + +typedef xcb_glx_generic_error_t xcb_glx_unsupported_private_request_error_t; + +/** Opcode for xcb_glx_bad_fb_config. */ +#define XCB_GLX_BAD_FB_CONFIG 9 + +typedef xcb_glx_generic_error_t xcb_glx_bad_fb_config_error_t; + +/** Opcode for xcb_glx_bad_pbuffer. */ +#define XCB_GLX_BAD_PBUFFER 10 + +typedef xcb_glx_generic_error_t xcb_glx_bad_pbuffer_error_t; + +/** Opcode for xcb_glx_bad_current_drawable. */ +#define XCB_GLX_BAD_CURRENT_DRAWABLE 11 + +typedef xcb_glx_generic_error_t xcb_glx_bad_current_drawable_error_t; + +/** Opcode for xcb_glx_bad_window. */ +#define XCB_GLX_BAD_WINDOW 12 + +typedef xcb_glx_generic_error_t xcb_glx_bad_window_error_t; + +/** Opcode for xcb_glx_glx_bad_profile_arb. */ +#define XCB_GLX_GLX_BAD_PROFILE_ARB 13 + +typedef xcb_glx_generic_error_t xcb_glx_glx_bad_profile_arb_error_t; + +/** Opcode for xcb_glx_pbuffer_clobber. */ +#define XCB_GLX_PBUFFER_CLOBBER 0 + +/** + * @brief xcb_glx_pbuffer_clobber_event_t + **/ +typedef struct xcb_glx_pbuffer_clobber_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint16_t event_type; /**< */ + uint16_t draw_type; /**< */ + xcb_glx_drawable_t drawable; /**< */ + uint32_t b_mask; /**< */ + uint16_t aux_buffer; /**< */ + uint16_t x; /**< */ + uint16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t count; /**< */ + uint8_t pad1[4]; /**< */ +} xcb_glx_pbuffer_clobber_event_t; + +typedef enum xcb_glx_pbcet_t { + XCB_GLX_PBCET_DAMAGED = 32791, + XCB_GLX_PBCET_SAVED = 32792 +} xcb_glx_pbcet_t; + +typedef enum xcb_glx_pbcdt_t { + XCB_GLX_PBCDT_WINDOW = 32793, + XCB_GLX_PBCDT_PBUFFER = 32794 +} xcb_glx_pbcdt_t; + +/** Opcode for xcb_glx_render. */ +#define XCB_GLX_RENDER 1 + +/** + * @brief xcb_glx_render_request_t + **/ +typedef struct xcb_glx_render_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ +} xcb_glx_render_request_t; + +/** Opcode for xcb_glx_render_large. */ +#define XCB_GLX_RENDER_LARGE 2 + +/** + * @brief xcb_glx_render_large_request_t + **/ +typedef struct xcb_glx_render_large_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint16_t request_num; /**< */ + uint16_t request_total; /**< */ + uint32_t data_len; /**< */ +} xcb_glx_render_large_request_t; + +/** Opcode for xcb_glx_create_context. */ +#define XCB_GLX_CREATE_CONTEXT 3 + +/** + * @brief xcb_glx_create_context_request_t + **/ +typedef struct xcb_glx_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_t context; /**< */ + xcb_visualid_t visual; /**< */ + uint32_t screen; /**< */ + xcb_glx_context_t share_list; /**< */ + uint8_t is_direct; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_glx_create_context_request_t; + +/** Opcode for xcb_glx_destroy_context. */ +#define XCB_GLX_DESTROY_CONTEXT 4 + +/** + * @brief xcb_glx_destroy_context_request_t + **/ +typedef struct xcb_glx_destroy_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_t context; /**< */ +} xcb_glx_destroy_context_request_t; + +/** + * @brief xcb_glx_make_current_cookie_t + **/ +typedef struct xcb_glx_make_current_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_make_current_cookie_t; + +/** Opcode for xcb_glx_make_current. */ +#define XCB_GLX_MAKE_CURRENT 5 + +/** + * @brief xcb_glx_make_current_request_t + **/ +typedef struct xcb_glx_make_current_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_drawable_t drawable; /**< */ + xcb_glx_context_t context; /**< */ + xcb_glx_context_tag_t old_context_tag; /**< */ +} xcb_glx_make_current_request_t; + +/** + * @brief xcb_glx_make_current_reply_t + **/ +typedef struct xcb_glx_make_current_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_glx_make_current_reply_t; + +/** + * @brief xcb_glx_is_direct_cookie_t + **/ +typedef struct xcb_glx_is_direct_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_is_direct_cookie_t; + +/** Opcode for xcb_glx_is_direct. */ +#define XCB_GLX_IS_DIRECT 6 + +/** + * @brief xcb_glx_is_direct_request_t + **/ +typedef struct xcb_glx_is_direct_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_t context; /**< */ +} xcb_glx_is_direct_request_t; + +/** + * @brief xcb_glx_is_direct_reply_t + **/ +typedef struct xcb_glx_is_direct_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t is_direct; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_glx_is_direct_reply_t; + +/** + * @brief xcb_glx_query_version_cookie_t + **/ +typedef struct xcb_glx_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_query_version_cookie_t; + +/** Opcode for xcb_glx_query_version. */ +#define XCB_GLX_QUERY_VERSION 7 + +/** + * @brief xcb_glx_query_version_request_t + **/ +typedef struct xcb_glx_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ +} xcb_glx_query_version_request_t; + +/** + * @brief xcb_glx_query_version_reply_t + **/ +typedef struct xcb_glx_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_glx_query_version_reply_t; + +/** Opcode for xcb_glx_wait_gl. */ +#define XCB_GLX_WAIT_GL 8 + +/** + * @brief xcb_glx_wait_gl_request_t + **/ +typedef struct xcb_glx_wait_gl_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ +} xcb_glx_wait_gl_request_t; + +/** Opcode for xcb_glx_wait_x. */ +#define XCB_GLX_WAIT_X 9 + +/** + * @brief xcb_glx_wait_x_request_t + **/ +typedef struct xcb_glx_wait_x_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ +} xcb_glx_wait_x_request_t; + +/** Opcode for xcb_glx_copy_context. */ +#define XCB_GLX_COPY_CONTEXT 10 + +/** + * @brief xcb_glx_copy_context_request_t + **/ +typedef struct xcb_glx_copy_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_t src; /**< */ + xcb_glx_context_t dest; /**< */ + uint32_t mask; /**< */ + xcb_glx_context_tag_t src_context_tag; /**< */ +} xcb_glx_copy_context_request_t; + +typedef enum xcb_glx_gc_t { + XCB_GLX_GC_GL_CURRENT_BIT = 1, + XCB_GLX_GC_GL_POINT_BIT = 2, + XCB_GLX_GC_GL_LINE_BIT = 4, + XCB_GLX_GC_GL_POLYGON_BIT = 8, + XCB_GLX_GC_GL_POLYGON_STIPPLE_BIT = 16, + XCB_GLX_GC_GL_PIXEL_MODE_BIT = 32, + XCB_GLX_GC_GL_LIGHTING_BIT = 64, + XCB_GLX_GC_GL_FOG_BIT = 128, + XCB_GLX_GC_GL_DEPTH_BUFFER_BIT = 256, + XCB_GLX_GC_GL_ACCUM_BUFFER_BIT = 512, + XCB_GLX_GC_GL_STENCIL_BUFFER_BIT = 1024, + XCB_GLX_GC_GL_VIEWPORT_BIT = 2048, + XCB_GLX_GC_GL_TRANSFORM_BIT = 4096, + XCB_GLX_GC_GL_ENABLE_BIT = 8192, + XCB_GLX_GC_GL_COLOR_BUFFER_BIT = 16384, + XCB_GLX_GC_GL_HINT_BIT = 32768, + XCB_GLX_GC_GL_EVAL_BIT = 65536, + XCB_GLX_GC_GL_LIST_BIT = 131072, + XCB_GLX_GC_GL_TEXTURE_BIT = 262144, + XCB_GLX_GC_GL_SCISSOR_BIT = 524288, + XCB_GLX_GC_GL_ALL_ATTRIB_BITS = 16777215 +} xcb_glx_gc_t; + +/** Opcode for xcb_glx_swap_buffers. */ +#define XCB_GLX_SWAP_BUFFERS 11 + +/** + * @brief xcb_glx_swap_buffers_request_t + **/ +typedef struct xcb_glx_swap_buffers_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + xcb_glx_drawable_t drawable; /**< */ +} xcb_glx_swap_buffers_request_t; + +/** Opcode for xcb_glx_use_x_font. */ +#define XCB_GLX_USE_X_FONT 12 + +/** + * @brief xcb_glx_use_x_font_request_t + **/ +typedef struct xcb_glx_use_x_font_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + xcb_font_t font; /**< */ + uint32_t first; /**< */ + uint32_t count; /**< */ + uint32_t list_base; /**< */ +} xcb_glx_use_x_font_request_t; + +/** Opcode for xcb_glx_create_glx_pixmap. */ +#define XCB_GLX_CREATE_GLX_PIXMAP 13 + +/** + * @brief xcb_glx_create_glx_pixmap_request_t + **/ +typedef struct xcb_glx_create_glx_pixmap_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + xcb_visualid_t visual; /**< */ + xcb_pixmap_t pixmap; /**< */ + xcb_glx_pixmap_t glx_pixmap; /**< */ +} xcb_glx_create_glx_pixmap_request_t; + +/** + * @brief xcb_glx_get_visual_configs_cookie_t + **/ +typedef struct xcb_glx_get_visual_configs_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_visual_configs_cookie_t; + +/** Opcode for xcb_glx_get_visual_configs. */ +#define XCB_GLX_GET_VISUAL_CONFIGS 14 + +/** + * @brief xcb_glx_get_visual_configs_request_t + **/ +typedef struct xcb_glx_get_visual_configs_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ +} xcb_glx_get_visual_configs_request_t; + +/** + * @brief xcb_glx_get_visual_configs_reply_t + **/ +typedef struct xcb_glx_get_visual_configs_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_visuals; /**< */ + uint32_t num_properties; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_glx_get_visual_configs_reply_t; + +/** Opcode for xcb_glx_destroy_glx_pixmap. */ +#define XCB_GLX_DESTROY_GLX_PIXMAP 15 + +/** + * @brief xcb_glx_destroy_glx_pixmap_request_t + **/ +typedef struct xcb_glx_destroy_glx_pixmap_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_pixmap_t glx_pixmap; /**< */ +} xcb_glx_destroy_glx_pixmap_request_t; + +/** Opcode for xcb_glx_vendor_private. */ +#define XCB_GLX_VENDOR_PRIVATE 16 + +/** + * @brief xcb_glx_vendor_private_request_t + **/ +typedef struct xcb_glx_vendor_private_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t vendor_code; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ +} xcb_glx_vendor_private_request_t; + +/** + * @brief xcb_glx_vendor_private_with_reply_cookie_t + **/ +typedef struct xcb_glx_vendor_private_with_reply_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_vendor_private_with_reply_cookie_t; + +/** Opcode for xcb_glx_vendor_private_with_reply. */ +#define XCB_GLX_VENDOR_PRIVATE_WITH_REPLY 17 + +/** + * @brief xcb_glx_vendor_private_with_reply_request_t + **/ +typedef struct xcb_glx_vendor_private_with_reply_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t vendor_code; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ +} xcb_glx_vendor_private_with_reply_request_t; + +/** + * @brief xcb_glx_vendor_private_with_reply_reply_t + **/ +typedef struct xcb_glx_vendor_private_with_reply_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t retval; /**< */ + uint8_t data1[24]; /**< */ +} xcb_glx_vendor_private_with_reply_reply_t; + +/** + * @brief xcb_glx_query_extensions_string_cookie_t + **/ +typedef struct xcb_glx_query_extensions_string_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_query_extensions_string_cookie_t; + +/** Opcode for xcb_glx_query_extensions_string. */ +#define XCB_GLX_QUERY_EXTENSIONS_STRING 18 + +/** + * @brief xcb_glx_query_extensions_string_request_t + **/ +typedef struct xcb_glx_query_extensions_string_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ +} xcb_glx_query_extensions_string_request_t; + +/** + * @brief xcb_glx_query_extensions_string_reply_t + **/ +typedef struct xcb_glx_query_extensions_string_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + uint8_t pad2[16]; /**< */ +} xcb_glx_query_extensions_string_reply_t; + +/** + * @brief xcb_glx_query_server_string_cookie_t + **/ +typedef struct xcb_glx_query_server_string_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_query_server_string_cookie_t; + +/** Opcode for xcb_glx_query_server_string. */ +#define XCB_GLX_QUERY_SERVER_STRING 19 + +/** + * @brief xcb_glx_query_server_string_request_t + **/ +typedef struct xcb_glx_query_server_string_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + uint32_t name; /**< */ +} xcb_glx_query_server_string_request_t; + +/** + * @brief xcb_glx_query_server_string_reply_t + **/ +typedef struct xcb_glx_query_server_string_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t str_len; /**< */ + uint8_t pad2[16]; /**< */ +} xcb_glx_query_server_string_reply_t; + +/** Opcode for xcb_glx_client_info. */ +#define XCB_GLX_CLIENT_INFO 20 + +/** + * @brief xcb_glx_client_info_request_t + **/ +typedef struct xcb_glx_client_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ + uint32_t str_len; /**< */ +} xcb_glx_client_info_request_t; + +/** + * @brief xcb_glx_get_fb_configs_cookie_t + **/ +typedef struct xcb_glx_get_fb_configs_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_fb_configs_cookie_t; + +/** Opcode for xcb_glx_get_fb_configs. */ +#define XCB_GLX_GET_FB_CONFIGS 21 + +/** + * @brief xcb_glx_get_fb_configs_request_t + **/ +typedef struct xcb_glx_get_fb_configs_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ +} xcb_glx_get_fb_configs_request_t; + +/** + * @brief xcb_glx_get_fb_configs_reply_t + **/ +typedef struct xcb_glx_get_fb_configs_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_FB_configs; /**< */ + uint32_t num_properties; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_glx_get_fb_configs_reply_t; + +/** Opcode for xcb_glx_create_pixmap. */ +#define XCB_GLX_CREATE_PIXMAP 22 + +/** + * @brief xcb_glx_create_pixmap_request_t + **/ +typedef struct xcb_glx_create_pixmap_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + xcb_glx_fbconfig_t fbconfig; /**< */ + xcb_pixmap_t pixmap; /**< */ + xcb_glx_pixmap_t glx_pixmap; /**< */ + uint32_t num_attribs; /**< */ +} xcb_glx_create_pixmap_request_t; + +/** Opcode for xcb_glx_destroy_pixmap. */ +#define XCB_GLX_DESTROY_PIXMAP 23 + +/** + * @brief xcb_glx_destroy_pixmap_request_t + **/ +typedef struct xcb_glx_destroy_pixmap_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_pixmap_t glx_pixmap; /**< */ +} xcb_glx_destroy_pixmap_request_t; + +/** Opcode for xcb_glx_create_new_context. */ +#define XCB_GLX_CREATE_NEW_CONTEXT 24 + +/** + * @brief xcb_glx_create_new_context_request_t + **/ +typedef struct xcb_glx_create_new_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_t context; /**< */ + xcb_glx_fbconfig_t fbconfig; /**< */ + uint32_t screen; /**< */ + uint32_t render_type; /**< */ + xcb_glx_context_t share_list; /**< */ + uint8_t is_direct; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_glx_create_new_context_request_t; + +/** + * @brief xcb_glx_query_context_cookie_t + **/ +typedef struct xcb_glx_query_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_query_context_cookie_t; + +/** Opcode for xcb_glx_query_context. */ +#define XCB_GLX_QUERY_CONTEXT 25 + +/** + * @brief xcb_glx_query_context_request_t + **/ +typedef struct xcb_glx_query_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_t context; /**< */ +} xcb_glx_query_context_request_t; + +/** + * @brief xcb_glx_query_context_reply_t + **/ +typedef struct xcb_glx_query_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_attribs; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_glx_query_context_reply_t; + +/** + * @brief xcb_glx_make_context_current_cookie_t + **/ +typedef struct xcb_glx_make_context_current_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_make_context_current_cookie_t; + +/** Opcode for xcb_glx_make_context_current. */ +#define XCB_GLX_MAKE_CONTEXT_CURRENT 26 + +/** + * @brief xcb_glx_make_context_current_request_t + **/ +typedef struct xcb_glx_make_context_current_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t old_context_tag; /**< */ + xcb_glx_drawable_t drawable; /**< */ + xcb_glx_drawable_t read_drawable; /**< */ + xcb_glx_context_t context; /**< */ +} xcb_glx_make_context_current_request_t; + +/** + * @brief xcb_glx_make_context_current_reply_t + **/ +typedef struct xcb_glx_make_context_current_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_glx_make_context_current_reply_t; + +/** Opcode for xcb_glx_create_pbuffer. */ +#define XCB_GLX_CREATE_PBUFFER 27 + +/** + * @brief xcb_glx_create_pbuffer_request_t + **/ +typedef struct xcb_glx_create_pbuffer_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + xcb_glx_fbconfig_t fbconfig; /**< */ + xcb_glx_pbuffer_t pbuffer; /**< */ + uint32_t num_attribs; /**< */ +} xcb_glx_create_pbuffer_request_t; + +/** Opcode for xcb_glx_destroy_pbuffer. */ +#define XCB_GLX_DESTROY_PBUFFER 28 + +/** + * @brief xcb_glx_destroy_pbuffer_request_t + **/ +typedef struct xcb_glx_destroy_pbuffer_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_pbuffer_t pbuffer; /**< */ +} xcb_glx_destroy_pbuffer_request_t; + +/** + * @brief xcb_glx_get_drawable_attributes_cookie_t + **/ +typedef struct xcb_glx_get_drawable_attributes_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_drawable_attributes_cookie_t; + +/** Opcode for xcb_glx_get_drawable_attributes. */ +#define XCB_GLX_GET_DRAWABLE_ATTRIBUTES 29 + +/** + * @brief xcb_glx_get_drawable_attributes_request_t + **/ +typedef struct xcb_glx_get_drawable_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_drawable_t drawable; /**< */ +} xcb_glx_get_drawable_attributes_request_t; + +/** + * @brief xcb_glx_get_drawable_attributes_reply_t + **/ +typedef struct xcb_glx_get_drawable_attributes_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_attribs; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_glx_get_drawable_attributes_reply_t; + +/** Opcode for xcb_glx_change_drawable_attributes. */ +#define XCB_GLX_CHANGE_DRAWABLE_ATTRIBUTES 30 + +/** + * @brief xcb_glx_change_drawable_attributes_request_t + **/ +typedef struct xcb_glx_change_drawable_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_drawable_t drawable; /**< */ + uint32_t num_attribs; /**< */ +} xcb_glx_change_drawable_attributes_request_t; + +/** Opcode for xcb_glx_create_window. */ +#define XCB_GLX_CREATE_WINDOW 31 + +/** + * @brief xcb_glx_create_window_request_t + **/ +typedef struct xcb_glx_create_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + xcb_glx_fbconfig_t fbconfig; /**< */ + xcb_window_t window; /**< */ + xcb_glx_window_t glx_window; /**< */ + uint32_t num_attribs; /**< */ +} xcb_glx_create_window_request_t; + +/** Opcode for xcb_glx_delete_window. */ +#define XCB_GLX_DELETE_WINDOW 32 + +/** + * @brief xcb_glx_delete_window_request_t + **/ +typedef struct xcb_glx_delete_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_window_t glxwindow; /**< */ +} xcb_glx_delete_window_request_t; + +/** Opcode for xcb_glx_set_client_info_arb. */ +#define XCB_GLX_SET_CLIENT_INFO_ARB 33 + +/** + * @brief xcb_glx_set_client_info_arb_request_t + **/ +typedef struct xcb_glx_set_client_info_arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ + uint32_t num_versions; /**< */ + uint32_t gl_str_len; /**< */ + uint32_t glx_str_len; /**< */ +} xcb_glx_set_client_info_arb_request_t; + +/** Opcode for xcb_glx_create_context_attribs_arb. */ +#define XCB_GLX_CREATE_CONTEXT_ATTRIBS_ARB 34 + +/** + * @brief xcb_glx_create_context_attribs_arb_request_t + **/ +typedef struct xcb_glx_create_context_attribs_arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_t context; /**< */ + xcb_glx_fbconfig_t fbconfig; /**< */ + uint32_t screen; /**< */ + xcb_glx_context_t share_list; /**< */ + uint8_t is_direct; /**< */ + uint8_t pad0[3]; /**< */ + uint32_t num_attribs; /**< */ +} xcb_glx_create_context_attribs_arb_request_t; + +/** Opcode for xcb_glx_set_client_info_2arb. */ +#define XCB_GLX_SET_CLIENT_INFO_2ARB 35 + +/** + * @brief xcb_glx_set_client_info_2arb_request_t + **/ +typedef struct xcb_glx_set_client_info_2arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ + uint32_t num_versions; /**< */ + uint32_t gl_str_len; /**< */ + uint32_t glx_str_len; /**< */ +} xcb_glx_set_client_info_2arb_request_t; + +/** Opcode for xcb_glx_new_list. */ +#define XCB_GLX_NEW_LIST 101 + +/** + * @brief xcb_glx_new_list_request_t + **/ +typedef struct xcb_glx_new_list_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t list; /**< */ + uint32_t mode; /**< */ +} xcb_glx_new_list_request_t; + +/** Opcode for xcb_glx_end_list. */ +#define XCB_GLX_END_LIST 102 + +/** + * @brief xcb_glx_end_list_request_t + **/ +typedef struct xcb_glx_end_list_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ +} xcb_glx_end_list_request_t; + +/** Opcode for xcb_glx_delete_lists. */ +#define XCB_GLX_DELETE_LISTS 103 + +/** + * @brief xcb_glx_delete_lists_request_t + **/ +typedef struct xcb_glx_delete_lists_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t list; /**< */ + int32_t range; /**< */ +} xcb_glx_delete_lists_request_t; + +/** + * @brief xcb_glx_gen_lists_cookie_t + **/ +typedef struct xcb_glx_gen_lists_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_gen_lists_cookie_t; + +/** Opcode for xcb_glx_gen_lists. */ +#define XCB_GLX_GEN_LISTS 104 + +/** + * @brief xcb_glx_gen_lists_request_t + **/ +typedef struct xcb_glx_gen_lists_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t range; /**< */ +} xcb_glx_gen_lists_request_t; + +/** + * @brief xcb_glx_gen_lists_reply_t + **/ +typedef struct xcb_glx_gen_lists_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t ret_val; /**< */ +} xcb_glx_gen_lists_reply_t; + +/** Opcode for xcb_glx_feedback_buffer. */ +#define XCB_GLX_FEEDBACK_BUFFER 105 + +/** + * @brief xcb_glx_feedback_buffer_request_t + **/ +typedef struct xcb_glx_feedback_buffer_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t size; /**< */ + int32_t type; /**< */ +} xcb_glx_feedback_buffer_request_t; + +/** Opcode for xcb_glx_select_buffer. */ +#define XCB_GLX_SELECT_BUFFER 106 + +/** + * @brief xcb_glx_select_buffer_request_t + **/ +typedef struct xcb_glx_select_buffer_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t size; /**< */ +} xcb_glx_select_buffer_request_t; + +/** + * @brief xcb_glx_render_mode_cookie_t + **/ +typedef struct xcb_glx_render_mode_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_render_mode_cookie_t; + +/** Opcode for xcb_glx_render_mode. */ +#define XCB_GLX_RENDER_MODE 107 + +/** + * @brief xcb_glx_render_mode_request_t + **/ +typedef struct xcb_glx_render_mode_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t mode; /**< */ +} xcb_glx_render_mode_request_t; + +/** + * @brief xcb_glx_render_mode_reply_t + **/ +typedef struct xcb_glx_render_mode_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t ret_val; /**< */ + uint32_t n; /**< */ + uint32_t new_mode; /**< */ + uint8_t pad1[12]; /**< */ +} xcb_glx_render_mode_reply_t; + +typedef enum xcb_glx_rm_t { + XCB_GLX_RM_GL_RENDER = 7168, + XCB_GLX_RM_GL_FEEDBACK = 7169, + XCB_GLX_RM_GL_SELECT = 7170 +} xcb_glx_rm_t; + +/** + * @brief xcb_glx_finish_cookie_t + **/ +typedef struct xcb_glx_finish_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_finish_cookie_t; + +/** Opcode for xcb_glx_finish. */ +#define XCB_GLX_FINISH 108 + +/** + * @brief xcb_glx_finish_request_t + **/ +typedef struct xcb_glx_finish_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ +} xcb_glx_finish_request_t; + +/** + * @brief xcb_glx_finish_reply_t + **/ +typedef struct xcb_glx_finish_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ +} xcb_glx_finish_reply_t; + +/** Opcode for xcb_glx_pixel_storef. */ +#define XCB_GLX_PIXEL_STOREF 109 + +/** + * @brief xcb_glx_pixel_storef_request_t + **/ +typedef struct xcb_glx_pixel_storef_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t pname; /**< */ + xcb_glx_float32_t datum; /**< */ +} xcb_glx_pixel_storef_request_t; + +/** Opcode for xcb_glx_pixel_storei. */ +#define XCB_GLX_PIXEL_STOREI 110 + +/** + * @brief xcb_glx_pixel_storei_request_t + **/ +typedef struct xcb_glx_pixel_storei_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t pname; /**< */ + int32_t datum; /**< */ +} xcb_glx_pixel_storei_request_t; + +/** + * @brief xcb_glx_read_pixels_cookie_t + **/ +typedef struct xcb_glx_read_pixels_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_read_pixels_cookie_t; + +/** Opcode for xcb_glx_read_pixels. */ +#define XCB_GLX_READ_PIXELS 111 + +/** + * @brief xcb_glx_read_pixels_request_t + **/ +typedef struct xcb_glx_read_pixels_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t x; /**< */ + int32_t y; /**< */ + int32_t width; /**< */ + int32_t height; /**< */ + uint32_t format; /**< */ + uint32_t type; /**< */ + uint8_t swap_bytes; /**< */ + uint8_t lsb_first; /**< */ +} xcb_glx_read_pixels_request_t; + +/** + * @brief xcb_glx_read_pixels_reply_t + **/ +typedef struct xcb_glx_read_pixels_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_glx_read_pixels_reply_t; + +/** + * @brief xcb_glx_get_booleanv_cookie_t + **/ +typedef struct xcb_glx_get_booleanv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_booleanv_cookie_t; + +/** Opcode for xcb_glx_get_booleanv. */ +#define XCB_GLX_GET_BOOLEANV 112 + +/** + * @brief xcb_glx_get_booleanv_request_t + **/ +typedef struct xcb_glx_get_booleanv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t pname; /**< */ +} xcb_glx_get_booleanv_request_t; + +/** + * @brief xcb_glx_get_booleanv_reply_t + **/ +typedef struct xcb_glx_get_booleanv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + uint8_t datum; /**< */ + uint8_t pad2[15]; /**< */ +} xcb_glx_get_booleanv_reply_t; + +/** + * @brief xcb_glx_get_clip_plane_cookie_t + **/ +typedef struct xcb_glx_get_clip_plane_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_clip_plane_cookie_t; + +/** Opcode for xcb_glx_get_clip_plane. */ +#define XCB_GLX_GET_CLIP_PLANE 113 + +/** + * @brief xcb_glx_get_clip_plane_request_t + **/ +typedef struct xcb_glx_get_clip_plane_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t plane; /**< */ +} xcb_glx_get_clip_plane_request_t; + +/** + * @brief xcb_glx_get_clip_plane_reply_t + **/ +typedef struct xcb_glx_get_clip_plane_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_glx_get_clip_plane_reply_t; + +/** + * @brief xcb_glx_get_doublev_cookie_t + **/ +typedef struct xcb_glx_get_doublev_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_doublev_cookie_t; + +/** Opcode for xcb_glx_get_doublev. */ +#define XCB_GLX_GET_DOUBLEV 114 + +/** + * @brief xcb_glx_get_doublev_request_t + **/ +typedef struct xcb_glx_get_doublev_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_doublev_request_t; + +/** + * @brief xcb_glx_get_doublev_reply_t + **/ +typedef struct xcb_glx_get_doublev_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float64_t datum; /**< */ + uint8_t pad2[8]; /**< */ +} xcb_glx_get_doublev_reply_t; + +/** + * @brief xcb_glx_get_error_cookie_t + **/ +typedef struct xcb_glx_get_error_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_error_cookie_t; + +/** Opcode for xcb_glx_get_error. */ +#define XCB_GLX_GET_ERROR 115 + +/** + * @brief xcb_glx_get_error_request_t + **/ +typedef struct xcb_glx_get_error_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ +} xcb_glx_get_error_request_t; + +/** + * @brief xcb_glx_get_error_reply_t + **/ +typedef struct xcb_glx_get_error_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + int32_t error; /**< */ +} xcb_glx_get_error_reply_t; + +/** + * @brief xcb_glx_get_floatv_cookie_t + **/ +typedef struct xcb_glx_get_floatv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_floatv_cookie_t; + +/** Opcode for xcb_glx_get_floatv. */ +#define XCB_GLX_GET_FLOATV 116 + +/** + * @brief xcb_glx_get_floatv_request_t + **/ +typedef struct xcb_glx_get_floatv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_floatv_request_t; + +/** + * @brief xcb_glx_get_floatv_reply_t + **/ +typedef struct xcb_glx_get_floatv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_floatv_reply_t; + +/** + * @brief xcb_glx_get_integerv_cookie_t + **/ +typedef struct xcb_glx_get_integerv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_integerv_cookie_t; + +/** Opcode for xcb_glx_get_integerv. */ +#define XCB_GLX_GET_INTEGERV 117 + +/** + * @brief xcb_glx_get_integerv_request_t + **/ +typedef struct xcb_glx_get_integerv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_integerv_request_t; + +/** + * @brief xcb_glx_get_integerv_reply_t + **/ +typedef struct xcb_glx_get_integerv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_integerv_reply_t; + +/** + * @brief xcb_glx_get_lightfv_cookie_t + **/ +typedef struct xcb_glx_get_lightfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_lightfv_cookie_t; + +/** Opcode for xcb_glx_get_lightfv. */ +#define XCB_GLX_GET_LIGHTFV 118 + +/** + * @brief xcb_glx_get_lightfv_request_t + **/ +typedef struct xcb_glx_get_lightfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t light; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_lightfv_request_t; + +/** + * @brief xcb_glx_get_lightfv_reply_t + **/ +typedef struct xcb_glx_get_lightfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_lightfv_reply_t; + +/** + * @brief xcb_glx_get_lightiv_cookie_t + **/ +typedef struct xcb_glx_get_lightiv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_lightiv_cookie_t; + +/** Opcode for xcb_glx_get_lightiv. */ +#define XCB_GLX_GET_LIGHTIV 119 + +/** + * @brief xcb_glx_get_lightiv_request_t + **/ +typedef struct xcb_glx_get_lightiv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t light; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_lightiv_request_t; + +/** + * @brief xcb_glx_get_lightiv_reply_t + **/ +typedef struct xcb_glx_get_lightiv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_lightiv_reply_t; + +/** + * @brief xcb_glx_get_mapdv_cookie_t + **/ +typedef struct xcb_glx_get_mapdv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_mapdv_cookie_t; + +/** Opcode for xcb_glx_get_mapdv. */ +#define XCB_GLX_GET_MAPDV 120 + +/** + * @brief xcb_glx_get_mapdv_request_t + **/ +typedef struct xcb_glx_get_mapdv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t query; /**< */ +} xcb_glx_get_mapdv_request_t; + +/** + * @brief xcb_glx_get_mapdv_reply_t + **/ +typedef struct xcb_glx_get_mapdv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float64_t datum; /**< */ + uint8_t pad2[8]; /**< */ +} xcb_glx_get_mapdv_reply_t; + +/** + * @brief xcb_glx_get_mapfv_cookie_t + **/ +typedef struct xcb_glx_get_mapfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_mapfv_cookie_t; + +/** Opcode for xcb_glx_get_mapfv. */ +#define XCB_GLX_GET_MAPFV 121 + +/** + * @brief xcb_glx_get_mapfv_request_t + **/ +typedef struct xcb_glx_get_mapfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t query; /**< */ +} xcb_glx_get_mapfv_request_t; + +/** + * @brief xcb_glx_get_mapfv_reply_t + **/ +typedef struct xcb_glx_get_mapfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_mapfv_reply_t; + +/** + * @brief xcb_glx_get_mapiv_cookie_t + **/ +typedef struct xcb_glx_get_mapiv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_mapiv_cookie_t; + +/** Opcode for xcb_glx_get_mapiv. */ +#define XCB_GLX_GET_MAPIV 122 + +/** + * @brief xcb_glx_get_mapiv_request_t + **/ +typedef struct xcb_glx_get_mapiv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t query; /**< */ +} xcb_glx_get_mapiv_request_t; + +/** + * @brief xcb_glx_get_mapiv_reply_t + **/ +typedef struct xcb_glx_get_mapiv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_mapiv_reply_t; + +/** + * @brief xcb_glx_get_materialfv_cookie_t + **/ +typedef struct xcb_glx_get_materialfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_materialfv_cookie_t; + +/** Opcode for xcb_glx_get_materialfv. */ +#define XCB_GLX_GET_MATERIALFV 123 + +/** + * @brief xcb_glx_get_materialfv_request_t + **/ +typedef struct xcb_glx_get_materialfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t face; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_materialfv_request_t; + +/** + * @brief xcb_glx_get_materialfv_reply_t + **/ +typedef struct xcb_glx_get_materialfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_materialfv_reply_t; + +/** + * @brief xcb_glx_get_materialiv_cookie_t + **/ +typedef struct xcb_glx_get_materialiv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_materialiv_cookie_t; + +/** Opcode for xcb_glx_get_materialiv. */ +#define XCB_GLX_GET_MATERIALIV 124 + +/** + * @brief xcb_glx_get_materialiv_request_t + **/ +typedef struct xcb_glx_get_materialiv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t face; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_materialiv_request_t; + +/** + * @brief xcb_glx_get_materialiv_reply_t + **/ +typedef struct xcb_glx_get_materialiv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_materialiv_reply_t; + +/** + * @brief xcb_glx_get_pixel_mapfv_cookie_t + **/ +typedef struct xcb_glx_get_pixel_mapfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_pixel_mapfv_cookie_t; + +/** Opcode for xcb_glx_get_pixel_mapfv. */ +#define XCB_GLX_GET_PIXEL_MAPFV 125 + +/** + * @brief xcb_glx_get_pixel_mapfv_request_t + **/ +typedef struct xcb_glx_get_pixel_mapfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t map; /**< */ +} xcb_glx_get_pixel_mapfv_request_t; + +/** + * @brief xcb_glx_get_pixel_mapfv_reply_t + **/ +typedef struct xcb_glx_get_pixel_mapfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_pixel_mapfv_reply_t; + +/** + * @brief xcb_glx_get_pixel_mapuiv_cookie_t + **/ +typedef struct xcb_glx_get_pixel_mapuiv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_pixel_mapuiv_cookie_t; + +/** Opcode for xcb_glx_get_pixel_mapuiv. */ +#define XCB_GLX_GET_PIXEL_MAPUIV 126 + +/** + * @brief xcb_glx_get_pixel_mapuiv_request_t + **/ +typedef struct xcb_glx_get_pixel_mapuiv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t map; /**< */ +} xcb_glx_get_pixel_mapuiv_request_t; + +/** + * @brief xcb_glx_get_pixel_mapuiv_reply_t + **/ +typedef struct xcb_glx_get_pixel_mapuiv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + uint32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_pixel_mapuiv_reply_t; + +/** + * @brief xcb_glx_get_pixel_mapusv_cookie_t + **/ +typedef struct xcb_glx_get_pixel_mapusv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_pixel_mapusv_cookie_t; + +/** Opcode for xcb_glx_get_pixel_mapusv. */ +#define XCB_GLX_GET_PIXEL_MAPUSV 127 + +/** + * @brief xcb_glx_get_pixel_mapusv_request_t + **/ +typedef struct xcb_glx_get_pixel_mapusv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t map; /**< */ +} xcb_glx_get_pixel_mapusv_request_t; + +/** + * @brief xcb_glx_get_pixel_mapusv_reply_t + **/ +typedef struct xcb_glx_get_pixel_mapusv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + uint16_t datum; /**< */ + uint8_t pad2[16]; /**< */ +} xcb_glx_get_pixel_mapusv_reply_t; + +/** + * @brief xcb_glx_get_polygon_stipple_cookie_t + **/ +typedef struct xcb_glx_get_polygon_stipple_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_polygon_stipple_cookie_t; + +/** Opcode for xcb_glx_get_polygon_stipple. */ +#define XCB_GLX_GET_POLYGON_STIPPLE 128 + +/** + * @brief xcb_glx_get_polygon_stipple_request_t + **/ +typedef struct xcb_glx_get_polygon_stipple_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint8_t lsb_first; /**< */ +} xcb_glx_get_polygon_stipple_request_t; + +/** + * @brief xcb_glx_get_polygon_stipple_reply_t + **/ +typedef struct xcb_glx_get_polygon_stipple_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_glx_get_polygon_stipple_reply_t; + +/** + * @brief xcb_glx_get_string_cookie_t + **/ +typedef struct xcb_glx_get_string_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_string_cookie_t; + +/** Opcode for xcb_glx_get_string. */ +#define XCB_GLX_GET_STRING 129 + +/** + * @brief xcb_glx_get_string_request_t + **/ +typedef struct xcb_glx_get_string_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t name; /**< */ +} xcb_glx_get_string_request_t; + +/** + * @brief xcb_glx_get_string_reply_t + **/ +typedef struct xcb_glx_get_string_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + uint8_t pad2[16]; /**< */ +} xcb_glx_get_string_reply_t; + +/** + * @brief xcb_glx_get_tex_envfv_cookie_t + **/ +typedef struct xcb_glx_get_tex_envfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_envfv_cookie_t; + +/** Opcode for xcb_glx_get_tex_envfv. */ +#define XCB_GLX_GET_TEX_ENVFV 130 + +/** + * @brief xcb_glx_get_tex_envfv_request_t + **/ +typedef struct xcb_glx_get_tex_envfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_tex_envfv_request_t; + +/** + * @brief xcb_glx_get_tex_envfv_reply_t + **/ +typedef struct xcb_glx_get_tex_envfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_tex_envfv_reply_t; + +/** + * @brief xcb_glx_get_tex_enviv_cookie_t + **/ +typedef struct xcb_glx_get_tex_enviv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_enviv_cookie_t; + +/** Opcode for xcb_glx_get_tex_enviv. */ +#define XCB_GLX_GET_TEX_ENVIV 131 + +/** + * @brief xcb_glx_get_tex_enviv_request_t + **/ +typedef struct xcb_glx_get_tex_enviv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_tex_enviv_request_t; + +/** + * @brief xcb_glx_get_tex_enviv_reply_t + **/ +typedef struct xcb_glx_get_tex_enviv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_tex_enviv_reply_t; + +/** + * @brief xcb_glx_get_tex_gendv_cookie_t + **/ +typedef struct xcb_glx_get_tex_gendv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_gendv_cookie_t; + +/** Opcode for xcb_glx_get_tex_gendv. */ +#define XCB_GLX_GET_TEX_GENDV 132 + +/** + * @brief xcb_glx_get_tex_gendv_request_t + **/ +typedef struct xcb_glx_get_tex_gendv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t coord; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_tex_gendv_request_t; + +/** + * @brief xcb_glx_get_tex_gendv_reply_t + **/ +typedef struct xcb_glx_get_tex_gendv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float64_t datum; /**< */ + uint8_t pad2[8]; /**< */ +} xcb_glx_get_tex_gendv_reply_t; + +/** + * @brief xcb_glx_get_tex_genfv_cookie_t + **/ +typedef struct xcb_glx_get_tex_genfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_genfv_cookie_t; + +/** Opcode for xcb_glx_get_tex_genfv. */ +#define XCB_GLX_GET_TEX_GENFV 133 + +/** + * @brief xcb_glx_get_tex_genfv_request_t + **/ +typedef struct xcb_glx_get_tex_genfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t coord; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_tex_genfv_request_t; + +/** + * @brief xcb_glx_get_tex_genfv_reply_t + **/ +typedef struct xcb_glx_get_tex_genfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_tex_genfv_reply_t; + +/** + * @brief xcb_glx_get_tex_geniv_cookie_t + **/ +typedef struct xcb_glx_get_tex_geniv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_geniv_cookie_t; + +/** Opcode for xcb_glx_get_tex_geniv. */ +#define XCB_GLX_GET_TEX_GENIV 134 + +/** + * @brief xcb_glx_get_tex_geniv_request_t + **/ +typedef struct xcb_glx_get_tex_geniv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t coord; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_tex_geniv_request_t; + +/** + * @brief xcb_glx_get_tex_geniv_reply_t + **/ +typedef struct xcb_glx_get_tex_geniv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_tex_geniv_reply_t; + +/** + * @brief xcb_glx_get_tex_image_cookie_t + **/ +typedef struct xcb_glx_get_tex_image_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_image_cookie_t; + +/** Opcode for xcb_glx_get_tex_image. */ +#define XCB_GLX_GET_TEX_IMAGE 135 + +/** + * @brief xcb_glx_get_tex_image_request_t + **/ +typedef struct xcb_glx_get_tex_image_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + int32_t level; /**< */ + uint32_t format; /**< */ + uint32_t type; /**< */ + uint8_t swap_bytes; /**< */ +} xcb_glx_get_tex_image_request_t; + +/** + * @brief xcb_glx_get_tex_image_reply_t + **/ +typedef struct xcb_glx_get_tex_image_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[8]; /**< */ + int32_t width; /**< */ + int32_t height; /**< */ + int32_t depth; /**< */ + uint8_t pad2[4]; /**< */ +} xcb_glx_get_tex_image_reply_t; + +/** + * @brief xcb_glx_get_tex_parameterfv_cookie_t + **/ +typedef struct xcb_glx_get_tex_parameterfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_parameterfv_cookie_t; + +/** Opcode for xcb_glx_get_tex_parameterfv. */ +#define XCB_GLX_GET_TEX_PARAMETERFV 136 + +/** + * @brief xcb_glx_get_tex_parameterfv_request_t + **/ +typedef struct xcb_glx_get_tex_parameterfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_tex_parameterfv_request_t; + +/** + * @brief xcb_glx_get_tex_parameterfv_reply_t + **/ +typedef struct xcb_glx_get_tex_parameterfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_tex_parameterfv_reply_t; + +/** + * @brief xcb_glx_get_tex_parameteriv_cookie_t + **/ +typedef struct xcb_glx_get_tex_parameteriv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_parameteriv_cookie_t; + +/** Opcode for xcb_glx_get_tex_parameteriv. */ +#define XCB_GLX_GET_TEX_PARAMETERIV 137 + +/** + * @brief xcb_glx_get_tex_parameteriv_request_t + **/ +typedef struct xcb_glx_get_tex_parameteriv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_tex_parameteriv_request_t; + +/** + * @brief xcb_glx_get_tex_parameteriv_reply_t + **/ +typedef struct xcb_glx_get_tex_parameteriv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_tex_parameteriv_reply_t; + +/** + * @brief xcb_glx_get_tex_level_parameterfv_cookie_t + **/ +typedef struct xcb_glx_get_tex_level_parameterfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_level_parameterfv_cookie_t; + +/** Opcode for xcb_glx_get_tex_level_parameterfv. */ +#define XCB_GLX_GET_TEX_LEVEL_PARAMETERFV 138 + +/** + * @brief xcb_glx_get_tex_level_parameterfv_request_t + **/ +typedef struct xcb_glx_get_tex_level_parameterfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + int32_t level; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_tex_level_parameterfv_request_t; + +/** + * @brief xcb_glx_get_tex_level_parameterfv_reply_t + **/ +typedef struct xcb_glx_get_tex_level_parameterfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_tex_level_parameterfv_reply_t; + +/** + * @brief xcb_glx_get_tex_level_parameteriv_cookie_t + **/ +typedef struct xcb_glx_get_tex_level_parameteriv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_tex_level_parameteriv_cookie_t; + +/** Opcode for xcb_glx_get_tex_level_parameteriv. */ +#define XCB_GLX_GET_TEX_LEVEL_PARAMETERIV 139 + +/** + * @brief xcb_glx_get_tex_level_parameteriv_request_t + **/ +typedef struct xcb_glx_get_tex_level_parameteriv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + int32_t level; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_tex_level_parameteriv_request_t; + +/** + * @brief xcb_glx_get_tex_level_parameteriv_reply_t + **/ +typedef struct xcb_glx_get_tex_level_parameteriv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_tex_level_parameteriv_reply_t; + +/** + * @brief xcb_glx_is_list_cookie_t + **/ +typedef struct xcb_glx_is_list_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_is_list_cookie_t; + +/** Opcode for xcb_glx_is_list. */ +#define XCB_GLX_IS_LIST 141 + +/** + * @brief xcb_glx_is_list_request_t + **/ +typedef struct xcb_glx_is_list_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t list; /**< */ +} xcb_glx_is_list_request_t; + +/** + * @brief xcb_glx_is_list_reply_t + **/ +typedef struct xcb_glx_is_list_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_glx_bool32_t ret_val; /**< */ +} xcb_glx_is_list_reply_t; + +/** Opcode for xcb_glx_flush. */ +#define XCB_GLX_FLUSH 142 + +/** + * @brief xcb_glx_flush_request_t + **/ +typedef struct xcb_glx_flush_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ +} xcb_glx_flush_request_t; + +/** + * @brief xcb_glx_are_textures_resident_cookie_t + **/ +typedef struct xcb_glx_are_textures_resident_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_are_textures_resident_cookie_t; + +/** Opcode for xcb_glx_are_textures_resident. */ +#define XCB_GLX_ARE_TEXTURES_RESIDENT 143 + +/** + * @brief xcb_glx_are_textures_resident_request_t + **/ +typedef struct xcb_glx_are_textures_resident_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t n; /**< */ +} xcb_glx_are_textures_resident_request_t; + +/** + * @brief xcb_glx_are_textures_resident_reply_t + **/ +typedef struct xcb_glx_are_textures_resident_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_glx_bool32_t ret_val; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_glx_are_textures_resident_reply_t; + +/** Opcode for xcb_glx_delete_textures. */ +#define XCB_GLX_DELETE_TEXTURES 144 + +/** + * @brief xcb_glx_delete_textures_request_t + **/ +typedef struct xcb_glx_delete_textures_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t n; /**< */ +} xcb_glx_delete_textures_request_t; + +/** + * @brief xcb_glx_gen_textures_cookie_t + **/ +typedef struct xcb_glx_gen_textures_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_gen_textures_cookie_t; + +/** Opcode for xcb_glx_gen_textures. */ +#define XCB_GLX_GEN_TEXTURES 145 + +/** + * @brief xcb_glx_gen_textures_request_t + **/ +typedef struct xcb_glx_gen_textures_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t n; /**< */ +} xcb_glx_gen_textures_request_t; + +/** + * @brief xcb_glx_gen_textures_reply_t + **/ +typedef struct xcb_glx_gen_textures_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_glx_gen_textures_reply_t; + +/** + * @brief xcb_glx_is_texture_cookie_t + **/ +typedef struct xcb_glx_is_texture_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_is_texture_cookie_t; + +/** Opcode for xcb_glx_is_texture. */ +#define XCB_GLX_IS_TEXTURE 146 + +/** + * @brief xcb_glx_is_texture_request_t + **/ +typedef struct xcb_glx_is_texture_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t texture; /**< */ +} xcb_glx_is_texture_request_t; + +/** + * @brief xcb_glx_is_texture_reply_t + **/ +typedef struct xcb_glx_is_texture_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_glx_bool32_t ret_val; /**< */ +} xcb_glx_is_texture_reply_t; + +/** + * @brief xcb_glx_get_color_table_cookie_t + **/ +typedef struct xcb_glx_get_color_table_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_color_table_cookie_t; + +/** Opcode for xcb_glx_get_color_table. */ +#define XCB_GLX_GET_COLOR_TABLE 147 + +/** + * @brief xcb_glx_get_color_table_request_t + **/ +typedef struct xcb_glx_get_color_table_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t format; /**< */ + uint32_t type; /**< */ + uint8_t swap_bytes; /**< */ +} xcb_glx_get_color_table_request_t; + +/** + * @brief xcb_glx_get_color_table_reply_t + **/ +typedef struct xcb_glx_get_color_table_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[8]; /**< */ + int32_t width; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_color_table_reply_t; + +/** + * @brief xcb_glx_get_color_table_parameterfv_cookie_t + **/ +typedef struct xcb_glx_get_color_table_parameterfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_color_table_parameterfv_cookie_t; + +/** Opcode for xcb_glx_get_color_table_parameterfv. */ +#define XCB_GLX_GET_COLOR_TABLE_PARAMETERFV 148 + +/** + * @brief xcb_glx_get_color_table_parameterfv_request_t + **/ +typedef struct xcb_glx_get_color_table_parameterfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_color_table_parameterfv_request_t; + +/** + * @brief xcb_glx_get_color_table_parameterfv_reply_t + **/ +typedef struct xcb_glx_get_color_table_parameterfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_color_table_parameterfv_reply_t; + +/** + * @brief xcb_glx_get_color_table_parameteriv_cookie_t + **/ +typedef struct xcb_glx_get_color_table_parameteriv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_color_table_parameteriv_cookie_t; + +/** Opcode for xcb_glx_get_color_table_parameteriv. */ +#define XCB_GLX_GET_COLOR_TABLE_PARAMETERIV 149 + +/** + * @brief xcb_glx_get_color_table_parameteriv_request_t + **/ +typedef struct xcb_glx_get_color_table_parameteriv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_color_table_parameteriv_request_t; + +/** + * @brief xcb_glx_get_color_table_parameteriv_reply_t + **/ +typedef struct xcb_glx_get_color_table_parameteriv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_color_table_parameteriv_reply_t; + +/** + * @brief xcb_glx_get_convolution_filter_cookie_t + **/ +typedef struct xcb_glx_get_convolution_filter_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_convolution_filter_cookie_t; + +/** Opcode for xcb_glx_get_convolution_filter. */ +#define XCB_GLX_GET_CONVOLUTION_FILTER 150 + +/** + * @brief xcb_glx_get_convolution_filter_request_t + **/ +typedef struct xcb_glx_get_convolution_filter_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t format; /**< */ + uint32_t type; /**< */ + uint8_t swap_bytes; /**< */ +} xcb_glx_get_convolution_filter_request_t; + +/** + * @brief xcb_glx_get_convolution_filter_reply_t + **/ +typedef struct xcb_glx_get_convolution_filter_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[8]; /**< */ + int32_t width; /**< */ + int32_t height; /**< */ + uint8_t pad2[8]; /**< */ +} xcb_glx_get_convolution_filter_reply_t; + +/** + * @brief xcb_glx_get_convolution_parameterfv_cookie_t + **/ +typedef struct xcb_glx_get_convolution_parameterfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_convolution_parameterfv_cookie_t; + +/** Opcode for xcb_glx_get_convolution_parameterfv. */ +#define XCB_GLX_GET_CONVOLUTION_PARAMETERFV 151 + +/** + * @brief xcb_glx_get_convolution_parameterfv_request_t + **/ +typedef struct xcb_glx_get_convolution_parameterfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_convolution_parameterfv_request_t; + +/** + * @brief xcb_glx_get_convolution_parameterfv_reply_t + **/ +typedef struct xcb_glx_get_convolution_parameterfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_convolution_parameterfv_reply_t; + +/** + * @brief xcb_glx_get_convolution_parameteriv_cookie_t + **/ +typedef struct xcb_glx_get_convolution_parameteriv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_convolution_parameteriv_cookie_t; + +/** Opcode for xcb_glx_get_convolution_parameteriv. */ +#define XCB_GLX_GET_CONVOLUTION_PARAMETERIV 152 + +/** + * @brief xcb_glx_get_convolution_parameteriv_request_t + **/ +typedef struct xcb_glx_get_convolution_parameteriv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_convolution_parameteriv_request_t; + +/** + * @brief xcb_glx_get_convolution_parameteriv_reply_t + **/ +typedef struct xcb_glx_get_convolution_parameteriv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_convolution_parameteriv_reply_t; + +/** + * @brief xcb_glx_get_separable_filter_cookie_t + **/ +typedef struct xcb_glx_get_separable_filter_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_separable_filter_cookie_t; + +/** Opcode for xcb_glx_get_separable_filter. */ +#define XCB_GLX_GET_SEPARABLE_FILTER 153 + +/** + * @brief xcb_glx_get_separable_filter_request_t + **/ +typedef struct xcb_glx_get_separable_filter_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t format; /**< */ + uint32_t type; /**< */ + uint8_t swap_bytes; /**< */ +} xcb_glx_get_separable_filter_request_t; + +/** + * @brief xcb_glx_get_separable_filter_reply_t + **/ +typedef struct xcb_glx_get_separable_filter_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[8]; /**< */ + int32_t row_w; /**< */ + int32_t col_h; /**< */ + uint8_t pad2[8]; /**< */ +} xcb_glx_get_separable_filter_reply_t; + +/** + * @brief xcb_glx_get_histogram_cookie_t + **/ +typedef struct xcb_glx_get_histogram_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_histogram_cookie_t; + +/** Opcode for xcb_glx_get_histogram. */ +#define XCB_GLX_GET_HISTOGRAM 154 + +/** + * @brief xcb_glx_get_histogram_request_t + **/ +typedef struct xcb_glx_get_histogram_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t format; /**< */ + uint32_t type; /**< */ + uint8_t swap_bytes; /**< */ + uint8_t reset; /**< */ +} xcb_glx_get_histogram_request_t; + +/** + * @brief xcb_glx_get_histogram_reply_t + **/ +typedef struct xcb_glx_get_histogram_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[8]; /**< */ + int32_t width; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_histogram_reply_t; + +/** + * @brief xcb_glx_get_histogram_parameterfv_cookie_t + **/ +typedef struct xcb_glx_get_histogram_parameterfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_histogram_parameterfv_cookie_t; + +/** Opcode for xcb_glx_get_histogram_parameterfv. */ +#define XCB_GLX_GET_HISTOGRAM_PARAMETERFV 155 + +/** + * @brief xcb_glx_get_histogram_parameterfv_request_t + **/ +typedef struct xcb_glx_get_histogram_parameterfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_histogram_parameterfv_request_t; + +/** + * @brief xcb_glx_get_histogram_parameterfv_reply_t + **/ +typedef struct xcb_glx_get_histogram_parameterfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_histogram_parameterfv_reply_t; + +/** + * @brief xcb_glx_get_histogram_parameteriv_cookie_t + **/ +typedef struct xcb_glx_get_histogram_parameteriv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_histogram_parameteriv_cookie_t; + +/** Opcode for xcb_glx_get_histogram_parameteriv. */ +#define XCB_GLX_GET_HISTOGRAM_PARAMETERIV 156 + +/** + * @brief xcb_glx_get_histogram_parameteriv_request_t + **/ +typedef struct xcb_glx_get_histogram_parameteriv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_histogram_parameteriv_request_t; + +/** + * @brief xcb_glx_get_histogram_parameteriv_reply_t + **/ +typedef struct xcb_glx_get_histogram_parameteriv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_histogram_parameteriv_reply_t; + +/** + * @brief xcb_glx_get_minmax_cookie_t + **/ +typedef struct xcb_glx_get_minmax_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_minmax_cookie_t; + +/** Opcode for xcb_glx_get_minmax. */ +#define XCB_GLX_GET_MINMAX 157 + +/** + * @brief xcb_glx_get_minmax_request_t + **/ +typedef struct xcb_glx_get_minmax_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t format; /**< */ + uint32_t type; /**< */ + uint8_t swap_bytes; /**< */ + uint8_t reset; /**< */ +} xcb_glx_get_minmax_request_t; + +/** + * @brief xcb_glx_get_minmax_reply_t + **/ +typedef struct xcb_glx_get_minmax_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_glx_get_minmax_reply_t; + +/** + * @brief xcb_glx_get_minmax_parameterfv_cookie_t + **/ +typedef struct xcb_glx_get_minmax_parameterfv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_minmax_parameterfv_cookie_t; + +/** Opcode for xcb_glx_get_minmax_parameterfv. */ +#define XCB_GLX_GET_MINMAX_PARAMETERFV 158 + +/** + * @brief xcb_glx_get_minmax_parameterfv_request_t + **/ +typedef struct xcb_glx_get_minmax_parameterfv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_minmax_parameterfv_request_t; + +/** + * @brief xcb_glx_get_minmax_parameterfv_reply_t + **/ +typedef struct xcb_glx_get_minmax_parameterfv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + xcb_glx_float32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_minmax_parameterfv_reply_t; + +/** + * @brief xcb_glx_get_minmax_parameteriv_cookie_t + **/ +typedef struct xcb_glx_get_minmax_parameteriv_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_minmax_parameteriv_cookie_t; + +/** Opcode for xcb_glx_get_minmax_parameteriv. */ +#define XCB_GLX_GET_MINMAX_PARAMETERIV 159 + +/** + * @brief xcb_glx_get_minmax_parameteriv_request_t + **/ +typedef struct xcb_glx_get_minmax_parameteriv_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_minmax_parameteriv_request_t; + +/** + * @brief xcb_glx_get_minmax_parameteriv_reply_t + **/ +typedef struct xcb_glx_get_minmax_parameteriv_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_minmax_parameteriv_reply_t; + +/** + * @brief xcb_glx_get_compressed_tex_image_arb_cookie_t + **/ +typedef struct xcb_glx_get_compressed_tex_image_arb_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_compressed_tex_image_arb_cookie_t; + +/** Opcode for xcb_glx_get_compressed_tex_image_arb. */ +#define XCB_GLX_GET_COMPRESSED_TEX_IMAGE_ARB 160 + +/** + * @brief xcb_glx_get_compressed_tex_image_arb_request_t + **/ +typedef struct xcb_glx_get_compressed_tex_image_arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + int32_t level; /**< */ +} xcb_glx_get_compressed_tex_image_arb_request_t; + +/** + * @brief xcb_glx_get_compressed_tex_image_arb_reply_t + **/ +typedef struct xcb_glx_get_compressed_tex_image_arb_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[8]; /**< */ + int32_t size; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_compressed_tex_image_arb_reply_t; + +/** Opcode for xcb_glx_delete_queries_arb. */ +#define XCB_GLX_DELETE_QUERIES_ARB 161 + +/** + * @brief xcb_glx_delete_queries_arb_request_t + **/ +typedef struct xcb_glx_delete_queries_arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t n; /**< */ +} xcb_glx_delete_queries_arb_request_t; + +/** + * @brief xcb_glx_gen_queries_arb_cookie_t + **/ +typedef struct xcb_glx_gen_queries_arb_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_gen_queries_arb_cookie_t; + +/** Opcode for xcb_glx_gen_queries_arb. */ +#define XCB_GLX_GEN_QUERIES_ARB 162 + +/** + * @brief xcb_glx_gen_queries_arb_request_t + **/ +typedef struct xcb_glx_gen_queries_arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + int32_t n; /**< */ +} xcb_glx_gen_queries_arb_request_t; + +/** + * @brief xcb_glx_gen_queries_arb_reply_t + **/ +typedef struct xcb_glx_gen_queries_arb_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_glx_gen_queries_arb_reply_t; + +/** + * @brief xcb_glx_is_query_arb_cookie_t + **/ +typedef struct xcb_glx_is_query_arb_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_is_query_arb_cookie_t; + +/** Opcode for xcb_glx_is_query_arb. */ +#define XCB_GLX_IS_QUERY_ARB 163 + +/** + * @brief xcb_glx_is_query_arb_request_t + **/ +typedef struct xcb_glx_is_query_arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t id; /**< */ +} xcb_glx_is_query_arb_request_t; + +/** + * @brief xcb_glx_is_query_arb_reply_t + **/ +typedef struct xcb_glx_is_query_arb_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_glx_bool32_t ret_val; /**< */ +} xcb_glx_is_query_arb_reply_t; + +/** + * @brief xcb_glx_get_queryiv_arb_cookie_t + **/ +typedef struct xcb_glx_get_queryiv_arb_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_queryiv_arb_cookie_t; + +/** Opcode for xcb_glx_get_queryiv_arb. */ +#define XCB_GLX_GET_QUERYIV_ARB 164 + +/** + * @brief xcb_glx_get_queryiv_arb_request_t + **/ +typedef struct xcb_glx_get_queryiv_arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t target; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_queryiv_arb_request_t; + +/** + * @brief xcb_glx_get_queryiv_arb_reply_t + **/ +typedef struct xcb_glx_get_queryiv_arb_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_queryiv_arb_reply_t; + +/** + * @brief xcb_glx_get_query_objectiv_arb_cookie_t + **/ +typedef struct xcb_glx_get_query_objectiv_arb_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_query_objectiv_arb_cookie_t; + +/** Opcode for xcb_glx_get_query_objectiv_arb. */ +#define XCB_GLX_GET_QUERY_OBJECTIV_ARB 165 + +/** + * @brief xcb_glx_get_query_objectiv_arb_request_t + **/ +typedef struct xcb_glx_get_query_objectiv_arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t id; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_query_objectiv_arb_request_t; + +/** + * @brief xcb_glx_get_query_objectiv_arb_reply_t + **/ +typedef struct xcb_glx_get_query_objectiv_arb_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + int32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_query_objectiv_arb_reply_t; + +/** + * @brief xcb_glx_get_query_objectuiv_arb_cookie_t + **/ +typedef struct xcb_glx_get_query_objectuiv_arb_cookie_t { + unsigned int sequence; /**< */ +} xcb_glx_get_query_objectuiv_arb_cookie_t; + +/** Opcode for xcb_glx_get_query_objectuiv_arb. */ +#define XCB_GLX_GET_QUERY_OBJECTUIV_ARB 166 + +/** + * @brief xcb_glx_get_query_objectuiv_arb_request_t + **/ +typedef struct xcb_glx_get_query_objectuiv_arb_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_glx_context_tag_t context_tag; /**< */ + uint32_t id; /**< */ + uint32_t pname; /**< */ +} xcb_glx_get_query_objectuiv_arb_request_t; + +/** + * @brief xcb_glx_get_query_objectuiv_arb_reply_t + **/ +typedef struct xcb_glx_get_query_objectuiv_arb_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[4]; /**< */ + uint32_t n; /**< */ + uint32_t datum; /**< */ + uint8_t pad2[12]; /**< */ +} xcb_glx_get_query_objectuiv_arb_reply_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_pixmap_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_pixmap_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_pixmap_next + ** + ** @param xcb_glx_pixmap_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_pixmap_next (xcb_glx_pixmap_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_pixmap_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_pixmap_end + ** + ** @param xcb_glx_pixmap_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_pixmap_end (xcb_glx_pixmap_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_context_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_context_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_context_next + ** + ** @param xcb_glx_context_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_context_next (xcb_glx_context_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_context_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_context_end + ** + ** @param xcb_glx_context_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_context_end (xcb_glx_context_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_pbuffer_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_pbuffer_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_pbuffer_next + ** + ** @param xcb_glx_pbuffer_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_pbuffer_next (xcb_glx_pbuffer_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_pbuffer_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_pbuffer_end + ** + ** @param xcb_glx_pbuffer_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_pbuffer_end (xcb_glx_pbuffer_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_window_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_window_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_window_next + ** + ** @param xcb_glx_window_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_window_next (xcb_glx_window_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_window_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_window_end + ** + ** @param xcb_glx_window_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_window_end (xcb_glx_window_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_fbconfig_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_fbconfig_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_fbconfig_next + ** + ** @param xcb_glx_fbconfig_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_fbconfig_next (xcb_glx_fbconfig_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_fbconfig_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_fbconfig_end + ** + ** @param xcb_glx_fbconfig_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_fbconfig_end (xcb_glx_fbconfig_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_drawable_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_drawable_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_drawable_next + ** + ** @param xcb_glx_drawable_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_drawable_next (xcb_glx_drawable_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_drawable_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_drawable_end + ** + ** @param xcb_glx_drawable_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_drawable_end (xcb_glx_drawable_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_float32_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_float32_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_float32_next + ** + ** @param xcb_glx_float32_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_float32_next (xcb_glx_float32_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_float32_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_float32_end + ** + ** @param xcb_glx_float32_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_float32_end (xcb_glx_float32_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_float64_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_float64_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_float64_next + ** + ** @param xcb_glx_float64_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_float64_next (xcb_glx_float64_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_float64_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_float64_end + ** + ** @param xcb_glx_float64_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_float64_end (xcb_glx_float64_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_bool32_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_bool32_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_bool32_next + ** + ** @param xcb_glx_bool32_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_bool32_next (xcb_glx_bool32_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_bool32_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_bool32_end + ** + ** @param xcb_glx_bool32_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_bool32_end (xcb_glx_bool32_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_glx_context_tag_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_glx_context_tag_t) + */ + +/***************************************************************************** + ** + ** void xcb_glx_context_tag_next + ** + ** @param xcb_glx_context_tag_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_glx_context_tag_next (xcb_glx_context_tag_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_glx_context_tag_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_context_tag_end + ** + ** @param xcb_glx_context_tag_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_context_tag_end (xcb_glx_context_tag_iterator_t i /**< */); + +int +xcb_glx_render_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_render_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_render_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_render + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_render (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +int +xcb_glx_render_large_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_render_large_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint16_t request_num + ** @param uint16_t request_total + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_render_large_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint16_t request_num /**< */, + uint16_t request_total /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_render_large + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint16_t request_num + ** @param uint16_t request_total + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_render_large (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint16_t request_num /**< */, + uint16_t request_total /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_visualid_t visual + ** @param uint32_t screen + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_context_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_visualid_t visual /**< */, + uint32_t screen /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_visualid_t visual + ** @param uint32_t screen + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_context (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_visualid_t visual /**< */, + uint32_t screen /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_context_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_context (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_make_current_cookie_t xcb_glx_make_current + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @param xcb_glx_context_t context + ** @param xcb_glx_context_tag_t old_context_tag + ** @returns xcb_glx_make_current_cookie_t + ** + *****************************************************************************/ + +xcb_glx_make_current_cookie_t +xcb_glx_make_current (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_context_tag_t old_context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_make_current_cookie_t xcb_glx_make_current_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @param xcb_glx_context_t context + ** @param xcb_glx_context_tag_t old_context_tag + ** @returns xcb_glx_make_current_cookie_t + ** + *****************************************************************************/ + +xcb_glx_make_current_cookie_t +xcb_glx_make_current_unchecked (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_context_tag_t old_context_tag /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_make_current_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_make_current_reply_t * xcb_glx_make_current_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_make_current_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_make_current_reply_t * + ** + *****************************************************************************/ + +xcb_glx_make_current_reply_t * +xcb_glx_make_current_reply (xcb_connection_t *c /**< */, + xcb_glx_make_current_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_is_direct_cookie_t xcb_glx_is_direct + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_glx_is_direct_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_direct_cookie_t +xcb_glx_is_direct (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_is_direct_cookie_t xcb_glx_is_direct_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_glx_is_direct_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_direct_cookie_t +xcb_glx_is_direct_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_is_direct_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_is_direct_reply_t * xcb_glx_is_direct_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_is_direct_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_is_direct_reply_t * + ** + *****************************************************************************/ + +xcb_glx_is_direct_reply_t * +xcb_glx_is_direct_reply (xcb_connection_t *c /**< */, + xcb_glx_is_direct_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_query_version_cookie_t xcb_glx_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_glx_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_version_cookie_t +xcb_glx_query_version (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_query_version_cookie_t xcb_glx_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_glx_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_version_cookie_t +xcb_glx_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_query_version_reply_t * xcb_glx_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_glx_query_version_reply_t * +xcb_glx_query_version_reply (xcb_connection_t *c /**< */, + xcb_glx_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_wait_gl_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_wait_gl_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_wait_gl + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_wait_gl (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_wait_x_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_wait_x_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_wait_x + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_wait_x (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_copy_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t src + ** @param xcb_glx_context_t dest + ** @param uint32_t mask + ** @param xcb_glx_context_tag_t src_context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_copy_context_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t src /**< */, + xcb_glx_context_t dest /**< */, + uint32_t mask /**< */, + xcb_glx_context_tag_t src_context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_copy_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t src + ** @param xcb_glx_context_t dest + ** @param uint32_t mask + ** @param xcb_glx_context_tag_t src_context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_copy_context (xcb_connection_t *c /**< */, + xcb_glx_context_t src /**< */, + xcb_glx_context_t dest /**< */, + uint32_t mask /**< */, + xcb_glx_context_tag_t src_context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_swap_buffers_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param xcb_glx_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_swap_buffers_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + xcb_glx_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_swap_buffers + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param xcb_glx_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_swap_buffers (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + xcb_glx_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_use_x_font_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param xcb_font_t font + ** @param uint32_t first + ** @param uint32_t count + ** @param uint32_t list_base + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_use_x_font_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + xcb_font_t font /**< */, + uint32_t first /**< */, + uint32_t count /**< */, + uint32_t list_base /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_use_x_font + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param xcb_font_t font + ** @param uint32_t first + ** @param uint32_t count + ** @param uint32_t list_base + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_use_x_font (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + xcb_font_t font /**< */, + uint32_t first /**< */, + uint32_t count /**< */, + uint32_t list_base /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_glx_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_visualid_t visual + ** @param xcb_pixmap_t pixmap + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_glx_pixmap_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_visualid_t visual /**< */, + xcb_pixmap_t pixmap /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_glx_pixmap + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_visualid_t visual + ** @param xcb_pixmap_t pixmap + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_glx_pixmap (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_visualid_t visual /**< */, + xcb_pixmap_t pixmap /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */); + +int +xcb_glx_get_visual_configs_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_visual_configs_cookie_t xcb_glx_get_visual_configs + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_get_visual_configs_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_visual_configs_cookie_t +xcb_glx_get_visual_configs (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_visual_configs_cookie_t xcb_glx_get_visual_configs_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_get_visual_configs_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_visual_configs_cookie_t +xcb_glx_get_visual_configs_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_visual_configs_property_list + ** + ** @param const xcb_glx_get_visual_configs_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_visual_configs_property_list (const xcb_glx_get_visual_configs_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_visual_configs_property_list_length + ** + ** @param const xcb_glx_get_visual_configs_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_visual_configs_property_list_length (const xcb_glx_get_visual_configs_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_visual_configs_property_list_end + ** + ** @param const xcb_glx_get_visual_configs_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_visual_configs_property_list_end (const xcb_glx_get_visual_configs_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_visual_configs_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_visual_configs_reply_t * xcb_glx_get_visual_configs_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_visual_configs_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_visual_configs_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_visual_configs_reply_t * +xcb_glx_get_visual_configs_reply (xcb_connection_t *c /**< */, + xcb_glx_get_visual_configs_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_glx_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_glx_pixmap_checked (xcb_connection_t *c /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_glx_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_glx_pixmap (xcb_connection_t *c /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */); + +int +xcb_glx_vendor_private_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_vendor_private_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t vendor_code + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_vendor_private_checked (xcb_connection_t *c /**< */, + uint32_t vendor_code /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_vendor_private + ** + ** @param xcb_connection_t *c + ** @param uint32_t vendor_code + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_vendor_private (xcb_connection_t *c /**< */, + uint32_t vendor_code /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +int +xcb_glx_vendor_private_with_reply_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_vendor_private_with_reply_cookie_t xcb_glx_vendor_private_with_reply + ** + ** @param xcb_connection_t *c + ** @param uint32_t vendor_code + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_glx_vendor_private_with_reply_cookie_t + ** + *****************************************************************************/ + +xcb_glx_vendor_private_with_reply_cookie_t +xcb_glx_vendor_private_with_reply (xcb_connection_t *c /**< */, + uint32_t vendor_code /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_vendor_private_with_reply_cookie_t xcb_glx_vendor_private_with_reply_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t vendor_code + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_glx_vendor_private_with_reply_cookie_t + ** + *****************************************************************************/ + +xcb_glx_vendor_private_with_reply_cookie_t +xcb_glx_vendor_private_with_reply_unchecked (xcb_connection_t *c /**< */, + uint32_t vendor_code /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_vendor_private_with_reply_data_2 + ** + ** @param const xcb_glx_vendor_private_with_reply_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_vendor_private_with_reply_data_2 (const xcb_glx_vendor_private_with_reply_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_vendor_private_with_reply_data_2_length + ** + ** @param const xcb_glx_vendor_private_with_reply_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_vendor_private_with_reply_data_2_length (const xcb_glx_vendor_private_with_reply_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_vendor_private_with_reply_data_2_end + ** + ** @param const xcb_glx_vendor_private_with_reply_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_vendor_private_with_reply_data_2_end (const xcb_glx_vendor_private_with_reply_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_vendor_private_with_reply_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_vendor_private_with_reply_reply_t * xcb_glx_vendor_private_with_reply_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_vendor_private_with_reply_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_vendor_private_with_reply_reply_t * + ** + *****************************************************************************/ + +xcb_glx_vendor_private_with_reply_reply_t * +xcb_glx_vendor_private_with_reply_reply (xcb_connection_t *c /**< */, + xcb_glx_vendor_private_with_reply_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_query_extensions_string_cookie_t xcb_glx_query_extensions_string + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_query_extensions_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_extensions_string_cookie_t +xcb_glx_query_extensions_string (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_query_extensions_string_cookie_t xcb_glx_query_extensions_string_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_query_extensions_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_extensions_string_cookie_t +xcb_glx_query_extensions_string_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_query_extensions_string_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_query_extensions_string_reply_t * xcb_glx_query_extensions_string_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_query_extensions_string_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_query_extensions_string_reply_t * + ** + *****************************************************************************/ + +xcb_glx_query_extensions_string_reply_t * +xcb_glx_query_extensions_string_reply (xcb_connection_t *c /**< */, + xcb_glx_query_extensions_string_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_query_server_string_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_query_server_string_cookie_t xcb_glx_query_server_string + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t name + ** @returns xcb_glx_query_server_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_server_string_cookie_t +xcb_glx_query_server_string (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_query_server_string_cookie_t xcb_glx_query_server_string_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t name + ** @returns xcb_glx_query_server_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_server_string_cookie_t +xcb_glx_query_server_string_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t name /**< */); + + +/***************************************************************************** + ** + ** char * xcb_glx_query_server_string_string + ** + ** @param const xcb_glx_query_server_string_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_glx_query_server_string_string (const xcb_glx_query_server_string_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_query_server_string_string_length + ** + ** @param const xcb_glx_query_server_string_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_query_server_string_string_length (const xcb_glx_query_server_string_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_query_server_string_string_end + ** + ** @param const xcb_glx_query_server_string_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_query_server_string_string_end (const xcb_glx_query_server_string_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_query_server_string_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_query_server_string_reply_t * xcb_glx_query_server_string_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_query_server_string_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_query_server_string_reply_t * + ** + *****************************************************************************/ + +xcb_glx_query_server_string_reply_t * +xcb_glx_query_server_string_reply (xcb_connection_t *c /**< */, + xcb_glx_query_server_string_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_client_info_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_client_info_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t str_len + ** @param const char *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_client_info_checked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t str_len /**< */, + const char *string /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_client_info + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t str_len + ** @param const char *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_client_info (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t str_len /**< */, + const char *string /**< */); + +int +xcb_glx_get_fb_configs_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_fb_configs_cookie_t xcb_glx_get_fb_configs + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_get_fb_configs_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_fb_configs_cookie_t +xcb_glx_get_fb_configs (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_fb_configs_cookie_t xcb_glx_get_fb_configs_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_glx_get_fb_configs_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_fb_configs_cookie_t +xcb_glx_get_fb_configs_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_fb_configs_property_list + ** + ** @param const xcb_glx_get_fb_configs_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_fb_configs_property_list (const xcb_glx_get_fb_configs_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_fb_configs_property_list_length + ** + ** @param const xcb_glx_get_fb_configs_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_fb_configs_property_list_length (const xcb_glx_get_fb_configs_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_fb_configs_property_list_end + ** + ** @param const xcb_glx_get_fb_configs_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_fb_configs_property_list_end (const xcb_glx_get_fb_configs_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_fb_configs_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_fb_configs_reply_t * xcb_glx_get_fb_configs_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_fb_configs_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_fb_configs_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_fb_configs_reply_t * +xcb_glx_get_fb_configs_reply (xcb_connection_t *c /**< */, + xcb_glx_get_fb_configs_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_create_pixmap_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_pixmap_t pixmap + ** @param xcb_glx_pixmap_t glx_pixmap + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_pixmap_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_pixmap_t pixmap /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_pixmap + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_pixmap_t pixmap + ** @param xcb_glx_pixmap_t glx_pixmap + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_pixmap (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_pixmap_t pixmap /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_pixmap_checked (xcb_connection_t *c /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pixmap_t glx_pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_pixmap (xcb_connection_t *c /**< */, + xcb_glx_pixmap_t glx_pixmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_new_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_glx_fbconfig_t fbconfig + ** @param uint32_t screen + ** @param uint32_t render_type + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_new_context_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + uint32_t screen /**< */, + uint32_t render_type /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_new_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_glx_fbconfig_t fbconfig + ** @param uint32_t screen + ** @param uint32_t render_type + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_new_context (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + uint32_t screen /**< */, + uint32_t render_type /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */); + +int +xcb_glx_query_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_query_context_cookie_t xcb_glx_query_context + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_glx_query_context_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_context_cookie_t +xcb_glx_query_context (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_query_context_cookie_t xcb_glx_query_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @returns xcb_glx_query_context_cookie_t + ** + *****************************************************************************/ + +xcb_glx_query_context_cookie_t +xcb_glx_query_context_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_query_context_attribs + ** + ** @param const xcb_glx_query_context_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_query_context_attribs (const xcb_glx_query_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_query_context_attribs_length + ** + ** @param const xcb_glx_query_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_query_context_attribs_length (const xcb_glx_query_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_query_context_attribs_end + ** + ** @param const xcb_glx_query_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_query_context_attribs_end (const xcb_glx_query_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_query_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_query_context_reply_t * xcb_glx_query_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_query_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_query_context_reply_t * + ** + *****************************************************************************/ + +xcb_glx_query_context_reply_t * +xcb_glx_query_context_reply (xcb_connection_t *c /**< */, + xcb_glx_query_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_make_context_current_cookie_t xcb_glx_make_context_current + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t old_context_tag + ** @param xcb_glx_drawable_t drawable + ** @param xcb_glx_drawable_t read_drawable + ** @param xcb_glx_context_t context + ** @returns xcb_glx_make_context_current_cookie_t + ** + *****************************************************************************/ + +xcb_glx_make_context_current_cookie_t +xcb_glx_make_context_current (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t old_context_tag /**< */, + xcb_glx_drawable_t drawable /**< */, + xcb_glx_drawable_t read_drawable /**< */, + xcb_glx_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_make_context_current_cookie_t xcb_glx_make_context_current_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t old_context_tag + ** @param xcb_glx_drawable_t drawable + ** @param xcb_glx_drawable_t read_drawable + ** @param xcb_glx_context_t context + ** @returns xcb_glx_make_context_current_cookie_t + ** + *****************************************************************************/ + +xcb_glx_make_context_current_cookie_t +xcb_glx_make_context_current_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t old_context_tag /**< */, + xcb_glx_drawable_t drawable /**< */, + xcb_glx_drawable_t read_drawable /**< */, + xcb_glx_context_t context /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_make_context_current_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_make_context_current_reply_t * xcb_glx_make_context_current_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_make_context_current_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_make_context_current_reply_t * + ** + *****************************************************************************/ + +xcb_glx_make_context_current_reply_t * +xcb_glx_make_context_current_reply (xcb_connection_t *c /**< */, + xcb_glx_make_context_current_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_create_pbuffer_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_pbuffer_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_glx_pbuffer_t pbuffer + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_pbuffer_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_glx_pbuffer_t pbuffer /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_pbuffer + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_glx_pbuffer_t pbuffer + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_pbuffer (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_glx_pbuffer_t pbuffer /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_pbuffer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pbuffer_t pbuffer + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_pbuffer_checked (xcb_connection_t *c /**< */, + xcb_glx_pbuffer_t pbuffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_destroy_pbuffer + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_pbuffer_t pbuffer + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_destroy_pbuffer (xcb_connection_t *c /**< */, + xcb_glx_pbuffer_t pbuffer /**< */); + +int +xcb_glx_get_drawable_attributes_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_drawable_attributes_cookie_t xcb_glx_get_drawable_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @returns xcb_glx_get_drawable_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_drawable_attributes_cookie_t +xcb_glx_get_drawable_attributes (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_drawable_attributes_cookie_t xcb_glx_get_drawable_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @returns xcb_glx_get_drawable_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_drawable_attributes_cookie_t +xcb_glx_get_drawable_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_drawable_attributes_attribs + ** + ** @param const xcb_glx_get_drawable_attributes_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_drawable_attributes_attribs (const xcb_glx_get_drawable_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_drawable_attributes_attribs_length + ** + ** @param const xcb_glx_get_drawable_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_drawable_attributes_attribs_length (const xcb_glx_get_drawable_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_drawable_attributes_attribs_end + ** + ** @param const xcb_glx_get_drawable_attributes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_drawable_attributes_attribs_end (const xcb_glx_get_drawable_attributes_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_drawable_attributes_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_drawable_attributes_reply_t * xcb_glx_get_drawable_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_drawable_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_drawable_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_drawable_attributes_reply_t * +xcb_glx_get_drawable_attributes_reply (xcb_connection_t *c /**< */, + xcb_glx_get_drawable_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_change_drawable_attributes_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_change_drawable_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_change_drawable_attributes_checked (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_change_drawable_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_drawable_t drawable + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_change_drawable_attributes (xcb_connection_t *c /**< */, + xcb_glx_drawable_t drawable /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +int +xcb_glx_create_window_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_window_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_window_t window + ** @param xcb_glx_window_t glx_window + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_window_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_window_t window /**< */, + xcb_glx_window_t glx_window /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_window + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param xcb_glx_fbconfig_t fbconfig + ** @param xcb_window_t window + ** @param xcb_glx_window_t glx_window + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_window (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + xcb_window_t window /**< */, + xcb_glx_window_t glx_window /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_window_t glxwindow + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_window_checked (xcb_connection_t *c /**< */, + xcb_glx_window_t glxwindow /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_window + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_window_t glxwindow + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_window (xcb_connection_t *c /**< */, + xcb_glx_window_t glxwindow /**< */); + +int +xcb_glx_set_client_info_arb_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_set_client_info_arb_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t num_versions + ** @param uint32_t gl_str_len + ** @param uint32_t glx_str_len + ** @param const uint32_t *gl_versions + ** @param const char *gl_extension_string + ** @param const char *glx_extension_string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_set_client_info_arb_checked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t num_versions /**< */, + uint32_t gl_str_len /**< */, + uint32_t glx_str_len /**< */, + const uint32_t *gl_versions /**< */, + const char *gl_extension_string /**< */, + const char *glx_extension_string /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_set_client_info_arb + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t num_versions + ** @param uint32_t gl_str_len + ** @param uint32_t glx_str_len + ** @param const uint32_t *gl_versions + ** @param const char *gl_extension_string + ** @param const char *glx_extension_string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_set_client_info_arb (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t num_versions /**< */, + uint32_t gl_str_len /**< */, + uint32_t glx_str_len /**< */, + const uint32_t *gl_versions /**< */, + const char *gl_extension_string /**< */, + const char *glx_extension_string /**< */); + +int +xcb_glx_create_context_attribs_arb_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_context_attribs_arb_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_glx_fbconfig_t fbconfig + ** @param uint32_t screen + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_context_attribs_arb_checked (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + uint32_t screen /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_create_context_attribs_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_t context + ** @param xcb_glx_fbconfig_t fbconfig + ** @param uint32_t screen + ** @param xcb_glx_context_t share_list + ** @param uint8_t is_direct + ** @param uint32_t num_attribs + ** @param const uint32_t *attribs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_create_context_attribs_arb (xcb_connection_t *c /**< */, + xcb_glx_context_t context /**< */, + xcb_glx_fbconfig_t fbconfig /**< */, + uint32_t screen /**< */, + xcb_glx_context_t share_list /**< */, + uint8_t is_direct /**< */, + uint32_t num_attribs /**< */, + const uint32_t *attribs /**< */); + +int +xcb_glx_set_client_info_2arb_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_set_client_info_2arb_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t num_versions + ** @param uint32_t gl_str_len + ** @param uint32_t glx_str_len + ** @param const uint32_t *gl_versions + ** @param const char *gl_extension_string + ** @param const char *glx_extension_string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_set_client_info_2arb_checked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t num_versions /**< */, + uint32_t gl_str_len /**< */, + uint32_t glx_str_len /**< */, + const uint32_t *gl_versions /**< */, + const char *gl_extension_string /**< */, + const char *glx_extension_string /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_set_client_info_2arb + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @param uint32_t num_versions + ** @param uint32_t gl_str_len + ** @param uint32_t glx_str_len + ** @param const uint32_t *gl_versions + ** @param const char *gl_extension_string + ** @param const char *glx_extension_string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_set_client_info_2arb (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */, + uint32_t num_versions /**< */, + uint32_t gl_str_len /**< */, + uint32_t glx_str_len /**< */, + const uint32_t *gl_versions /**< */, + const char *gl_extension_string /**< */, + const char *glx_extension_string /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_new_list_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @param uint32_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_new_list_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */, + uint32_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_new_list + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @param uint32_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_new_list (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */, + uint32_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_end_list_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_end_list_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_end_list + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_end_list (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_lists_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @param int32_t range + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_lists_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */, + int32_t range /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_lists + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @param int32_t range + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_lists (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */, + int32_t range /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_gen_lists_cookie_t xcb_glx_gen_lists + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t range + ** @returns xcb_glx_gen_lists_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_lists_cookie_t +xcb_glx_gen_lists (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t range /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_gen_lists_cookie_t xcb_glx_gen_lists_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t range + ** @returns xcb_glx_gen_lists_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_lists_cookie_t +xcb_glx_gen_lists_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t range /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_gen_lists_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_gen_lists_reply_t * xcb_glx_gen_lists_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_gen_lists_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_gen_lists_reply_t * + ** + *****************************************************************************/ + +xcb_glx_gen_lists_reply_t * +xcb_glx_gen_lists_reply (xcb_connection_t *c /**< */, + xcb_glx_gen_lists_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_feedback_buffer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t size + ** @param int32_t type + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_feedback_buffer_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t size /**< */, + int32_t type /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_feedback_buffer + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t size + ** @param int32_t type + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_feedback_buffer (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t size /**< */, + int32_t type /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_select_buffer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t size + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_select_buffer_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t size /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_select_buffer + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t size + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_select_buffer (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t size /**< */); + +int +xcb_glx_render_mode_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_render_mode_cookie_t xcb_glx_render_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t mode + ** @returns xcb_glx_render_mode_cookie_t + ** + *****************************************************************************/ + +xcb_glx_render_mode_cookie_t +xcb_glx_render_mode (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_render_mode_cookie_t xcb_glx_render_mode_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t mode + ** @returns xcb_glx_render_mode_cookie_t + ** + *****************************************************************************/ + +xcb_glx_render_mode_cookie_t +xcb_glx_render_mode_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t mode /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_render_mode_data + ** + ** @param const xcb_glx_render_mode_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_render_mode_data (const xcb_glx_render_mode_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_render_mode_data_length + ** + ** @param const xcb_glx_render_mode_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_render_mode_data_length (const xcb_glx_render_mode_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_render_mode_data_end + ** + ** @param const xcb_glx_render_mode_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_render_mode_data_end (const xcb_glx_render_mode_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_render_mode_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_render_mode_reply_t * xcb_glx_render_mode_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_render_mode_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_render_mode_reply_t * + ** + *****************************************************************************/ + +xcb_glx_render_mode_reply_t * +xcb_glx_render_mode_reply (xcb_connection_t *c /**< */, + xcb_glx_render_mode_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_finish_cookie_t xcb_glx_finish + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_glx_finish_cookie_t + ** + *****************************************************************************/ + +xcb_glx_finish_cookie_t +xcb_glx_finish (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_finish_cookie_t xcb_glx_finish_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_glx_finish_cookie_t + ** + *****************************************************************************/ + +xcb_glx_finish_cookie_t +xcb_glx_finish_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_finish_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_finish_reply_t * xcb_glx_finish_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_finish_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_finish_reply_t * + ** + *****************************************************************************/ + +xcb_glx_finish_reply_t * +xcb_glx_finish_reply (xcb_connection_t *c /**< */, + xcb_glx_finish_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_pixel_storef_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @param xcb_glx_float32_t datum + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_pixel_storef_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */, + xcb_glx_float32_t datum /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_pixel_storef + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @param xcb_glx_float32_t datum + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_pixel_storef (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */, + xcb_glx_float32_t datum /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_pixel_storei_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @param int32_t datum + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_pixel_storei_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */, + int32_t datum /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_pixel_storei + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @param int32_t datum + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_pixel_storei (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */, + int32_t datum /**< */); + +int +xcb_glx_read_pixels_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_read_pixels_cookie_t xcb_glx_read_pixels + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t x + ** @param int32_t y + ** @param int32_t width + ** @param int32_t height + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t lsb_first + ** @returns xcb_glx_read_pixels_cookie_t + ** + *****************************************************************************/ + +xcb_glx_read_pixels_cookie_t +xcb_glx_read_pixels (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t x /**< */, + int32_t y /**< */, + int32_t width /**< */, + int32_t height /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t lsb_first /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_read_pixels_cookie_t xcb_glx_read_pixels_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t x + ** @param int32_t y + ** @param int32_t width + ** @param int32_t height + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t lsb_first + ** @returns xcb_glx_read_pixels_cookie_t + ** + *****************************************************************************/ + +xcb_glx_read_pixels_cookie_t +xcb_glx_read_pixels_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t x /**< */, + int32_t y /**< */, + int32_t width /**< */, + int32_t height /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t lsb_first /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_read_pixels_data + ** + ** @param const xcb_glx_read_pixels_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_read_pixels_data (const xcb_glx_read_pixels_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_read_pixels_data_length + ** + ** @param const xcb_glx_read_pixels_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_read_pixels_data_length (const xcb_glx_read_pixels_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_read_pixels_data_end + ** + ** @param const xcb_glx_read_pixels_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_read_pixels_data_end (const xcb_glx_read_pixels_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_read_pixels_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_read_pixels_reply_t * xcb_glx_read_pixels_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_read_pixels_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_read_pixels_reply_t * + ** + *****************************************************************************/ + +xcb_glx_read_pixels_reply_t * +xcb_glx_read_pixels_reply (xcb_connection_t *c /**< */, + xcb_glx_read_pixels_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_booleanv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_booleanv_cookie_t xcb_glx_get_booleanv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t pname + ** @returns xcb_glx_get_booleanv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_booleanv_cookie_t +xcb_glx_get_booleanv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_booleanv_cookie_t xcb_glx_get_booleanv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t pname + ** @returns xcb_glx_get_booleanv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_booleanv_cookie_t +xcb_glx_get_booleanv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t pname /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_booleanv_data + ** + ** @param const xcb_glx_get_booleanv_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_booleanv_data (const xcb_glx_get_booleanv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_booleanv_data_length + ** + ** @param const xcb_glx_get_booleanv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_booleanv_data_length (const xcb_glx_get_booleanv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_booleanv_data_end + ** + ** @param const xcb_glx_get_booleanv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_booleanv_data_end (const xcb_glx_get_booleanv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_booleanv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_booleanv_reply_t * xcb_glx_get_booleanv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_booleanv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_booleanv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_booleanv_reply_t * +xcb_glx_get_booleanv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_booleanv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_clip_plane_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_clip_plane_cookie_t xcb_glx_get_clip_plane + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t plane + ** @returns xcb_glx_get_clip_plane_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_clip_plane_cookie_t +xcb_glx_get_clip_plane (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t plane /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_clip_plane_cookie_t xcb_glx_get_clip_plane_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t plane + ** @returns xcb_glx_get_clip_plane_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_clip_plane_cookie_t +xcb_glx_get_clip_plane_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t plane /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float64_t * xcb_glx_get_clip_plane_data + ** + ** @param const xcb_glx_get_clip_plane_reply_t *R + ** @returns xcb_glx_float64_t * + ** + *****************************************************************************/ + +xcb_glx_float64_t * +xcb_glx_get_clip_plane_data (const xcb_glx_get_clip_plane_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_clip_plane_data_length + ** + ** @param const xcb_glx_get_clip_plane_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_clip_plane_data_length (const xcb_glx_get_clip_plane_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_clip_plane_data_end + ** + ** @param const xcb_glx_get_clip_plane_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_clip_plane_data_end (const xcb_glx_get_clip_plane_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_clip_plane_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_clip_plane_reply_t * xcb_glx_get_clip_plane_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_clip_plane_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_clip_plane_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_clip_plane_reply_t * +xcb_glx_get_clip_plane_reply (xcb_connection_t *c /**< */, + xcb_glx_get_clip_plane_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_doublev_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_doublev_cookie_t xcb_glx_get_doublev + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_doublev_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_doublev_cookie_t +xcb_glx_get_doublev (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_doublev_cookie_t xcb_glx_get_doublev_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_doublev_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_doublev_cookie_t +xcb_glx_get_doublev_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float64_t * xcb_glx_get_doublev_data + ** + ** @param const xcb_glx_get_doublev_reply_t *R + ** @returns xcb_glx_float64_t * + ** + *****************************************************************************/ + +xcb_glx_float64_t * +xcb_glx_get_doublev_data (const xcb_glx_get_doublev_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_doublev_data_length + ** + ** @param const xcb_glx_get_doublev_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_doublev_data_length (const xcb_glx_get_doublev_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_doublev_data_end + ** + ** @param const xcb_glx_get_doublev_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_doublev_data_end (const xcb_glx_get_doublev_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_doublev_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_doublev_reply_t * xcb_glx_get_doublev_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_doublev_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_doublev_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_doublev_reply_t * +xcb_glx_get_doublev_reply (xcb_connection_t *c /**< */, + xcb_glx_get_doublev_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_error_cookie_t xcb_glx_get_error + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_glx_get_error_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_error_cookie_t +xcb_glx_get_error (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_error_cookie_t xcb_glx_get_error_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_glx_get_error_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_error_cookie_t +xcb_glx_get_error_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_error_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_error_reply_t * xcb_glx_get_error_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_error_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_error_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_error_reply_t * +xcb_glx_get_error_reply (xcb_connection_t *c /**< */, + xcb_glx_get_error_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_floatv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_floatv_cookie_t xcb_glx_get_floatv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_floatv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_floatv_cookie_t +xcb_glx_get_floatv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_floatv_cookie_t xcb_glx_get_floatv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_floatv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_floatv_cookie_t +xcb_glx_get_floatv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_floatv_data + ** + ** @param const xcb_glx_get_floatv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_floatv_data (const xcb_glx_get_floatv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_floatv_data_length + ** + ** @param const xcb_glx_get_floatv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_floatv_data_length (const xcb_glx_get_floatv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_floatv_data_end + ** + ** @param const xcb_glx_get_floatv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_floatv_data_end (const xcb_glx_get_floatv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_floatv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_floatv_reply_t * xcb_glx_get_floatv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_floatv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_floatv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_floatv_reply_t * +xcb_glx_get_floatv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_floatv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_integerv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_integerv_cookie_t xcb_glx_get_integerv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_integerv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_integerv_cookie_t +xcb_glx_get_integerv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_integerv_cookie_t xcb_glx_get_integerv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t pname + ** @returns xcb_glx_get_integerv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_integerv_cookie_t +xcb_glx_get_integerv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_integerv_data + ** + ** @param const xcb_glx_get_integerv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_integerv_data (const xcb_glx_get_integerv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_integerv_data_length + ** + ** @param const xcb_glx_get_integerv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_integerv_data_length (const xcb_glx_get_integerv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_integerv_data_end + ** + ** @param const xcb_glx_get_integerv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_integerv_data_end (const xcb_glx_get_integerv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_integerv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_integerv_reply_t * xcb_glx_get_integerv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_integerv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_integerv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_integerv_reply_t * +xcb_glx_get_integerv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_integerv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_lightfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_lightfv_cookie_t xcb_glx_get_lightfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t light + ** @param uint32_t pname + ** @returns xcb_glx_get_lightfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_lightfv_cookie_t +xcb_glx_get_lightfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t light /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_lightfv_cookie_t xcb_glx_get_lightfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t light + ** @param uint32_t pname + ** @returns xcb_glx_get_lightfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_lightfv_cookie_t +xcb_glx_get_lightfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t light /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_lightfv_data + ** + ** @param const xcb_glx_get_lightfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_lightfv_data (const xcb_glx_get_lightfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_lightfv_data_length + ** + ** @param const xcb_glx_get_lightfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_lightfv_data_length (const xcb_glx_get_lightfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_lightfv_data_end + ** + ** @param const xcb_glx_get_lightfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_lightfv_data_end (const xcb_glx_get_lightfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_lightfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_lightfv_reply_t * xcb_glx_get_lightfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_lightfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_lightfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_lightfv_reply_t * +xcb_glx_get_lightfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_lightfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_lightiv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_lightiv_cookie_t xcb_glx_get_lightiv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t light + ** @param uint32_t pname + ** @returns xcb_glx_get_lightiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_lightiv_cookie_t +xcb_glx_get_lightiv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t light /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_lightiv_cookie_t xcb_glx_get_lightiv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t light + ** @param uint32_t pname + ** @returns xcb_glx_get_lightiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_lightiv_cookie_t +xcb_glx_get_lightiv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t light /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_lightiv_data + ** + ** @param const xcb_glx_get_lightiv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_lightiv_data (const xcb_glx_get_lightiv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_lightiv_data_length + ** + ** @param const xcb_glx_get_lightiv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_lightiv_data_length (const xcb_glx_get_lightiv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_lightiv_data_end + ** + ** @param const xcb_glx_get_lightiv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_lightiv_data_end (const xcb_glx_get_lightiv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_lightiv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_lightiv_reply_t * xcb_glx_get_lightiv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_lightiv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_lightiv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_lightiv_reply_t * +xcb_glx_get_lightiv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_lightiv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_mapdv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_mapdv_cookie_t xcb_glx_get_mapdv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapdv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapdv_cookie_t +xcb_glx_get_mapdv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_mapdv_cookie_t xcb_glx_get_mapdv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapdv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapdv_cookie_t +xcb_glx_get_mapdv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float64_t * xcb_glx_get_mapdv_data + ** + ** @param const xcb_glx_get_mapdv_reply_t *R + ** @returns xcb_glx_float64_t * + ** + *****************************************************************************/ + +xcb_glx_float64_t * +xcb_glx_get_mapdv_data (const xcb_glx_get_mapdv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_mapdv_data_length + ** + ** @param const xcb_glx_get_mapdv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_mapdv_data_length (const xcb_glx_get_mapdv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_mapdv_data_end + ** + ** @param const xcb_glx_get_mapdv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_mapdv_data_end (const xcb_glx_get_mapdv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_mapdv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_mapdv_reply_t * xcb_glx_get_mapdv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_mapdv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_mapdv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_mapdv_reply_t * +xcb_glx_get_mapdv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_mapdv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_mapfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_mapfv_cookie_t xcb_glx_get_mapfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapfv_cookie_t +xcb_glx_get_mapfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_mapfv_cookie_t xcb_glx_get_mapfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapfv_cookie_t +xcb_glx_get_mapfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_mapfv_data + ** + ** @param const xcb_glx_get_mapfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_mapfv_data (const xcb_glx_get_mapfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_mapfv_data_length + ** + ** @param const xcb_glx_get_mapfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_mapfv_data_length (const xcb_glx_get_mapfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_mapfv_data_end + ** + ** @param const xcb_glx_get_mapfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_mapfv_data_end (const xcb_glx_get_mapfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_mapfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_mapfv_reply_t * xcb_glx_get_mapfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_mapfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_mapfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_mapfv_reply_t * +xcb_glx_get_mapfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_mapfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_mapiv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_mapiv_cookie_t xcb_glx_get_mapiv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapiv_cookie_t +xcb_glx_get_mapiv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_mapiv_cookie_t xcb_glx_get_mapiv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t query + ** @returns xcb_glx_get_mapiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_mapiv_cookie_t +xcb_glx_get_mapiv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t query /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_mapiv_data + ** + ** @param const xcb_glx_get_mapiv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_mapiv_data (const xcb_glx_get_mapiv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_mapiv_data_length + ** + ** @param const xcb_glx_get_mapiv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_mapiv_data_length (const xcb_glx_get_mapiv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_mapiv_data_end + ** + ** @param const xcb_glx_get_mapiv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_mapiv_data_end (const xcb_glx_get_mapiv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_mapiv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_mapiv_reply_t * xcb_glx_get_mapiv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_mapiv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_mapiv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_mapiv_reply_t * +xcb_glx_get_mapiv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_mapiv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_materialfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_materialfv_cookie_t xcb_glx_get_materialfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t face + ** @param uint32_t pname + ** @returns xcb_glx_get_materialfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_materialfv_cookie_t +xcb_glx_get_materialfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t face /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_materialfv_cookie_t xcb_glx_get_materialfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t face + ** @param uint32_t pname + ** @returns xcb_glx_get_materialfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_materialfv_cookie_t +xcb_glx_get_materialfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t face /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_materialfv_data + ** + ** @param const xcb_glx_get_materialfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_materialfv_data (const xcb_glx_get_materialfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_materialfv_data_length + ** + ** @param const xcb_glx_get_materialfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_materialfv_data_length (const xcb_glx_get_materialfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_materialfv_data_end + ** + ** @param const xcb_glx_get_materialfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_materialfv_data_end (const xcb_glx_get_materialfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_materialfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_materialfv_reply_t * xcb_glx_get_materialfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_materialfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_materialfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_materialfv_reply_t * +xcb_glx_get_materialfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_materialfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_materialiv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_materialiv_cookie_t xcb_glx_get_materialiv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t face + ** @param uint32_t pname + ** @returns xcb_glx_get_materialiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_materialiv_cookie_t +xcb_glx_get_materialiv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t face /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_materialiv_cookie_t xcb_glx_get_materialiv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t face + ** @param uint32_t pname + ** @returns xcb_glx_get_materialiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_materialiv_cookie_t +xcb_glx_get_materialiv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t face /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_materialiv_data + ** + ** @param const xcb_glx_get_materialiv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_materialiv_data (const xcb_glx_get_materialiv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_materialiv_data_length + ** + ** @param const xcb_glx_get_materialiv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_materialiv_data_length (const xcb_glx_get_materialiv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_materialiv_data_end + ** + ** @param const xcb_glx_get_materialiv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_materialiv_data_end (const xcb_glx_get_materialiv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_materialiv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_materialiv_reply_t * xcb_glx_get_materialiv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_materialiv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_materialiv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_materialiv_reply_t * +xcb_glx_get_materialiv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_materialiv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_pixel_mapfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapfv_cookie_t xcb_glx_get_pixel_mapfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapfv_cookie_t +xcb_glx_get_pixel_mapfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapfv_cookie_t xcb_glx_get_pixel_mapfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapfv_cookie_t +xcb_glx_get_pixel_mapfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_pixel_mapfv_data + ** + ** @param const xcb_glx_get_pixel_mapfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_pixel_mapfv_data (const xcb_glx_get_pixel_mapfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_pixel_mapfv_data_length + ** + ** @param const xcb_glx_get_pixel_mapfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_pixel_mapfv_data_length (const xcb_glx_get_pixel_mapfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_pixel_mapfv_data_end + ** + ** @param const xcb_glx_get_pixel_mapfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_pixel_mapfv_data_end (const xcb_glx_get_pixel_mapfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_pixel_mapfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapfv_reply_t * xcb_glx_get_pixel_mapfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_pixel_mapfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_pixel_mapfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapfv_reply_t * +xcb_glx_get_pixel_mapfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_pixel_mapfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_pixel_mapuiv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapuiv_cookie_t xcb_glx_get_pixel_mapuiv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapuiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapuiv_cookie_t +xcb_glx_get_pixel_mapuiv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapuiv_cookie_t xcb_glx_get_pixel_mapuiv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapuiv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapuiv_cookie_t +xcb_glx_get_pixel_mapuiv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_pixel_mapuiv_data + ** + ** @param const xcb_glx_get_pixel_mapuiv_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_pixel_mapuiv_data (const xcb_glx_get_pixel_mapuiv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_pixel_mapuiv_data_length + ** + ** @param const xcb_glx_get_pixel_mapuiv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_pixel_mapuiv_data_length (const xcb_glx_get_pixel_mapuiv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_pixel_mapuiv_data_end + ** + ** @param const xcb_glx_get_pixel_mapuiv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_pixel_mapuiv_data_end (const xcb_glx_get_pixel_mapuiv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_pixel_mapuiv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapuiv_reply_t * xcb_glx_get_pixel_mapuiv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_pixel_mapuiv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_pixel_mapuiv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapuiv_reply_t * +xcb_glx_get_pixel_mapuiv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_pixel_mapuiv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_pixel_mapusv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapusv_cookie_t xcb_glx_get_pixel_mapusv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapusv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapusv_cookie_t +xcb_glx_get_pixel_mapusv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapusv_cookie_t xcb_glx_get_pixel_mapusv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t map + ** @returns xcb_glx_get_pixel_mapusv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapusv_cookie_t +xcb_glx_get_pixel_mapusv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t map /**< */); + + +/***************************************************************************** + ** + ** uint16_t * xcb_glx_get_pixel_mapusv_data + ** + ** @param const xcb_glx_get_pixel_mapusv_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_glx_get_pixel_mapusv_data (const xcb_glx_get_pixel_mapusv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_pixel_mapusv_data_length + ** + ** @param const xcb_glx_get_pixel_mapusv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_pixel_mapusv_data_length (const xcb_glx_get_pixel_mapusv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_pixel_mapusv_data_end + ** + ** @param const xcb_glx_get_pixel_mapusv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_pixel_mapusv_data_end (const xcb_glx_get_pixel_mapusv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_pixel_mapusv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_pixel_mapusv_reply_t * xcb_glx_get_pixel_mapusv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_pixel_mapusv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_pixel_mapusv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_pixel_mapusv_reply_t * +xcb_glx_get_pixel_mapusv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_pixel_mapusv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_polygon_stipple_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_polygon_stipple_cookie_t xcb_glx_get_polygon_stipple + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint8_t lsb_first + ** @returns xcb_glx_get_polygon_stipple_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_polygon_stipple_cookie_t +xcb_glx_get_polygon_stipple (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint8_t lsb_first /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_polygon_stipple_cookie_t xcb_glx_get_polygon_stipple_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint8_t lsb_first + ** @returns xcb_glx_get_polygon_stipple_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_polygon_stipple_cookie_t +xcb_glx_get_polygon_stipple_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint8_t lsb_first /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_polygon_stipple_data + ** + ** @param const xcb_glx_get_polygon_stipple_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_polygon_stipple_data (const xcb_glx_get_polygon_stipple_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_polygon_stipple_data_length + ** + ** @param const xcb_glx_get_polygon_stipple_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_polygon_stipple_data_length (const xcb_glx_get_polygon_stipple_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_polygon_stipple_data_end + ** + ** @param const xcb_glx_get_polygon_stipple_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_polygon_stipple_data_end (const xcb_glx_get_polygon_stipple_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_polygon_stipple_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_polygon_stipple_reply_t * xcb_glx_get_polygon_stipple_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_polygon_stipple_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_polygon_stipple_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_polygon_stipple_reply_t * +xcb_glx_get_polygon_stipple_reply (xcb_connection_t *c /**< */, + xcb_glx_get_polygon_stipple_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_string_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_string_cookie_t xcb_glx_get_string + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t name + ** @returns xcb_glx_get_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_string_cookie_t +xcb_glx_get_string (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_string_cookie_t xcb_glx_get_string_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t name + ** @returns xcb_glx_get_string_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_string_cookie_t +xcb_glx_get_string_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t name /**< */); + + +/***************************************************************************** + ** + ** char * xcb_glx_get_string_string + ** + ** @param const xcb_glx_get_string_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_glx_get_string_string (const xcb_glx_get_string_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_string_string_length + ** + ** @param const xcb_glx_get_string_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_string_string_length (const xcb_glx_get_string_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_string_string_end + ** + ** @param const xcb_glx_get_string_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_string_string_end (const xcb_glx_get_string_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_string_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_string_reply_t * xcb_glx_get_string_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_string_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_string_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_string_reply_t * +xcb_glx_get_string_reply (xcb_connection_t *c /**< */, + xcb_glx_get_string_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_envfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_envfv_cookie_t xcb_glx_get_tex_envfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_envfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_envfv_cookie_t +xcb_glx_get_tex_envfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_envfv_cookie_t xcb_glx_get_tex_envfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_envfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_envfv_cookie_t +xcb_glx_get_tex_envfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_tex_envfv_data + ** + ** @param const xcb_glx_get_tex_envfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_tex_envfv_data (const xcb_glx_get_tex_envfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_envfv_data_length + ** + ** @param const xcb_glx_get_tex_envfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_envfv_data_length (const xcb_glx_get_tex_envfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_envfv_data_end + ** + ** @param const xcb_glx_get_tex_envfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_envfv_data_end (const xcb_glx_get_tex_envfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_envfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_envfv_reply_t * xcb_glx_get_tex_envfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_envfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_envfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_envfv_reply_t * +xcb_glx_get_tex_envfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_envfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_enviv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_enviv_cookie_t xcb_glx_get_tex_enviv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_enviv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_enviv_cookie_t +xcb_glx_get_tex_enviv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_enviv_cookie_t xcb_glx_get_tex_enviv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_enviv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_enviv_cookie_t +xcb_glx_get_tex_enviv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_tex_enviv_data + ** + ** @param const xcb_glx_get_tex_enviv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_tex_enviv_data (const xcb_glx_get_tex_enviv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_enviv_data_length + ** + ** @param const xcb_glx_get_tex_enviv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_enviv_data_length (const xcb_glx_get_tex_enviv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_enviv_data_end + ** + ** @param const xcb_glx_get_tex_enviv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_enviv_data_end (const xcb_glx_get_tex_enviv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_enviv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_enviv_reply_t * xcb_glx_get_tex_enviv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_enviv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_enviv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_enviv_reply_t * +xcb_glx_get_tex_enviv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_enviv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_gendv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_gendv_cookie_t xcb_glx_get_tex_gendv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_gendv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_gendv_cookie_t +xcb_glx_get_tex_gendv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_gendv_cookie_t xcb_glx_get_tex_gendv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_gendv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_gendv_cookie_t +xcb_glx_get_tex_gendv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float64_t * xcb_glx_get_tex_gendv_data + ** + ** @param const xcb_glx_get_tex_gendv_reply_t *R + ** @returns xcb_glx_float64_t * + ** + *****************************************************************************/ + +xcb_glx_float64_t * +xcb_glx_get_tex_gendv_data (const xcb_glx_get_tex_gendv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_gendv_data_length + ** + ** @param const xcb_glx_get_tex_gendv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_gendv_data_length (const xcb_glx_get_tex_gendv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_gendv_data_end + ** + ** @param const xcb_glx_get_tex_gendv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_gendv_data_end (const xcb_glx_get_tex_gendv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_gendv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_gendv_reply_t * xcb_glx_get_tex_gendv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_gendv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_gendv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_gendv_reply_t * +xcb_glx_get_tex_gendv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_gendv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_genfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_genfv_cookie_t xcb_glx_get_tex_genfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_genfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_genfv_cookie_t +xcb_glx_get_tex_genfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_genfv_cookie_t xcb_glx_get_tex_genfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_genfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_genfv_cookie_t +xcb_glx_get_tex_genfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_tex_genfv_data + ** + ** @param const xcb_glx_get_tex_genfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_tex_genfv_data (const xcb_glx_get_tex_genfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_genfv_data_length + ** + ** @param const xcb_glx_get_tex_genfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_genfv_data_length (const xcb_glx_get_tex_genfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_genfv_data_end + ** + ** @param const xcb_glx_get_tex_genfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_genfv_data_end (const xcb_glx_get_tex_genfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_genfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_genfv_reply_t * xcb_glx_get_tex_genfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_genfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_genfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_genfv_reply_t * +xcb_glx_get_tex_genfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_genfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_geniv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_geniv_cookie_t xcb_glx_get_tex_geniv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_geniv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_geniv_cookie_t +xcb_glx_get_tex_geniv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_geniv_cookie_t xcb_glx_get_tex_geniv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t coord + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_geniv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_geniv_cookie_t +xcb_glx_get_tex_geniv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t coord /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_tex_geniv_data + ** + ** @param const xcb_glx_get_tex_geniv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_tex_geniv_data (const xcb_glx_get_tex_geniv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_geniv_data_length + ** + ** @param const xcb_glx_get_tex_geniv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_geniv_data_length (const xcb_glx_get_tex_geniv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_geniv_data_end + ** + ** @param const xcb_glx_get_tex_geniv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_geniv_data_end (const xcb_glx_get_tex_geniv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_geniv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_geniv_reply_t * xcb_glx_get_tex_geniv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_geniv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_geniv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_geniv_reply_t * +xcb_glx_get_tex_geniv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_geniv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_image_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_image_cookie_t xcb_glx_get_tex_image + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_tex_image_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_image_cookie_t +xcb_glx_get_tex_image (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_image_cookie_t xcb_glx_get_tex_image_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_tex_image_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_image_cookie_t +xcb_glx_get_tex_image_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_tex_image_data + ** + ** @param const xcb_glx_get_tex_image_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_tex_image_data (const xcb_glx_get_tex_image_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_image_data_length + ** + ** @param const xcb_glx_get_tex_image_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_image_data_length (const xcb_glx_get_tex_image_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_image_data_end + ** + ** @param const xcb_glx_get_tex_image_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_image_data_end (const xcb_glx_get_tex_image_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_image_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_image_reply_t * xcb_glx_get_tex_image_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_image_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_image_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_image_reply_t * +xcb_glx_get_tex_image_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_image_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_parameterfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameterfv_cookie_t xcb_glx_get_tex_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameterfv_cookie_t +xcb_glx_get_tex_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameterfv_cookie_t xcb_glx_get_tex_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameterfv_cookie_t +xcb_glx_get_tex_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_tex_parameterfv_data + ** + ** @param const xcb_glx_get_tex_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_tex_parameterfv_data (const xcb_glx_get_tex_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_parameterfv_data_length + ** + ** @param const xcb_glx_get_tex_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_parameterfv_data_length (const xcb_glx_get_tex_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_parameterfv_data_end + ** + ** @param const xcb_glx_get_tex_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_parameterfv_data_end (const xcb_glx_get_tex_parameterfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_parameterfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameterfv_reply_t * xcb_glx_get_tex_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameterfv_reply_t * +xcb_glx_get_tex_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_parameteriv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameteriv_cookie_t xcb_glx_get_tex_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameteriv_cookie_t +xcb_glx_get_tex_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameteriv_cookie_t xcb_glx_get_tex_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameteriv_cookie_t +xcb_glx_get_tex_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_tex_parameteriv_data + ** + ** @param const xcb_glx_get_tex_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_tex_parameteriv_data (const xcb_glx_get_tex_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_parameteriv_data_length + ** + ** @param const xcb_glx_get_tex_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_parameteriv_data_length (const xcb_glx_get_tex_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_parameteriv_data_end + ** + ** @param const xcb_glx_get_tex_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_parameteriv_data_end (const xcb_glx_get_tex_parameteriv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_parameteriv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_parameteriv_reply_t * xcb_glx_get_tex_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_parameteriv_reply_t * +xcb_glx_get_tex_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_level_parameterfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameterfv_cookie_t xcb_glx_get_tex_level_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_level_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameterfv_cookie_t +xcb_glx_get_tex_level_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameterfv_cookie_t xcb_glx_get_tex_level_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_level_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameterfv_cookie_t +xcb_glx_get_tex_level_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_tex_level_parameterfv_data + ** + ** @param const xcb_glx_get_tex_level_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_tex_level_parameterfv_data (const xcb_glx_get_tex_level_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_level_parameterfv_data_length + ** + ** @param const xcb_glx_get_tex_level_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_level_parameterfv_data_length (const xcb_glx_get_tex_level_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_level_parameterfv_data_end + ** + ** @param const xcb_glx_get_tex_level_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_level_parameterfv_data_end (const xcb_glx_get_tex_level_parameterfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_level_parameterfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameterfv_reply_t * xcb_glx_get_tex_level_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_level_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_level_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameterfv_reply_t * +xcb_glx_get_tex_level_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_level_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_tex_level_parameteriv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameteriv_cookie_t xcb_glx_get_tex_level_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_level_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameteriv_cookie_t +xcb_glx_get_tex_level_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameteriv_cookie_t xcb_glx_get_tex_level_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @param uint32_t pname + ** @returns xcb_glx_get_tex_level_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameteriv_cookie_t +xcb_glx_get_tex_level_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_tex_level_parameteriv_data + ** + ** @param const xcb_glx_get_tex_level_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_tex_level_parameteriv_data (const xcb_glx_get_tex_level_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_tex_level_parameteriv_data_length + ** + ** @param const xcb_glx_get_tex_level_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_tex_level_parameteriv_data_length (const xcb_glx_get_tex_level_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_tex_level_parameteriv_data_end + ** + ** @param const xcb_glx_get_tex_level_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_tex_level_parameteriv_data_end (const xcb_glx_get_tex_level_parameteriv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_tex_level_parameteriv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_tex_level_parameteriv_reply_t * xcb_glx_get_tex_level_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_tex_level_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_tex_level_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_tex_level_parameteriv_reply_t * +xcb_glx_get_tex_level_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_tex_level_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_is_list_cookie_t xcb_glx_is_list + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @returns xcb_glx_is_list_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_list_cookie_t +xcb_glx_is_list (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_is_list_cookie_t xcb_glx_is_list_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t list + ** @returns xcb_glx_is_list_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_list_cookie_t +xcb_glx_is_list_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t list /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_is_list_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_is_list_reply_t * xcb_glx_is_list_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_is_list_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_is_list_reply_t * + ** + *****************************************************************************/ + +xcb_glx_is_list_reply_t * +xcb_glx_is_list_reply (xcb_connection_t *c /**< */, + xcb_glx_is_list_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_flush_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_flush_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_flush + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_flush (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */); + +int +xcb_glx_are_textures_resident_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_are_textures_resident_cookie_t xcb_glx_are_textures_resident + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *textures + ** @returns xcb_glx_are_textures_resident_cookie_t + ** + *****************************************************************************/ + +xcb_glx_are_textures_resident_cookie_t +xcb_glx_are_textures_resident (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *textures /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_are_textures_resident_cookie_t xcb_glx_are_textures_resident_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *textures + ** @returns xcb_glx_are_textures_resident_cookie_t + ** + *****************************************************************************/ + +xcb_glx_are_textures_resident_cookie_t +xcb_glx_are_textures_resident_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *textures /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_are_textures_resident_data + ** + ** @param const xcb_glx_are_textures_resident_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_are_textures_resident_data (const xcb_glx_are_textures_resident_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_are_textures_resident_data_length + ** + ** @param const xcb_glx_are_textures_resident_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_are_textures_resident_data_length (const xcb_glx_are_textures_resident_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_are_textures_resident_data_end + ** + ** @param const xcb_glx_are_textures_resident_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_are_textures_resident_data_end (const xcb_glx_are_textures_resident_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_are_textures_resident_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_are_textures_resident_reply_t * xcb_glx_are_textures_resident_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_are_textures_resident_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_are_textures_resident_reply_t * + ** + *****************************************************************************/ + +xcb_glx_are_textures_resident_reply_t * +xcb_glx_are_textures_resident_reply (xcb_connection_t *c /**< */, + xcb_glx_are_textures_resident_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_delete_textures_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_textures_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *textures + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_textures_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *textures /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_textures + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *textures + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_textures (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *textures /**< */); + +int +xcb_glx_gen_textures_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_gen_textures_cookie_t xcb_glx_gen_textures + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @returns xcb_glx_gen_textures_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_textures_cookie_t +xcb_glx_gen_textures (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_gen_textures_cookie_t xcb_glx_gen_textures_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @returns xcb_glx_gen_textures_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_textures_cookie_t +xcb_glx_gen_textures_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_gen_textures_data + ** + ** @param const xcb_glx_gen_textures_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_gen_textures_data (const xcb_glx_gen_textures_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_gen_textures_data_length + ** + ** @param const xcb_glx_gen_textures_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_gen_textures_data_length (const xcb_glx_gen_textures_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_gen_textures_data_end + ** + ** @param const xcb_glx_gen_textures_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_gen_textures_data_end (const xcb_glx_gen_textures_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_gen_textures_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_gen_textures_reply_t * xcb_glx_gen_textures_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_gen_textures_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_gen_textures_reply_t * + ** + *****************************************************************************/ + +xcb_glx_gen_textures_reply_t * +xcb_glx_gen_textures_reply (xcb_connection_t *c /**< */, + xcb_glx_gen_textures_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_is_texture_cookie_t xcb_glx_is_texture + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t texture + ** @returns xcb_glx_is_texture_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_texture_cookie_t +xcb_glx_is_texture (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t texture /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_is_texture_cookie_t xcb_glx_is_texture_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t texture + ** @returns xcb_glx_is_texture_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_texture_cookie_t +xcb_glx_is_texture_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t texture /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_is_texture_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_is_texture_reply_t * xcb_glx_is_texture_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_is_texture_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_is_texture_reply_t * + ** + *****************************************************************************/ + +xcb_glx_is_texture_reply_t * +xcb_glx_is_texture_reply (xcb_connection_t *c /**< */, + xcb_glx_is_texture_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_color_table_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_cookie_t xcb_glx_get_color_table + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_color_table_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_cookie_t +xcb_glx_get_color_table (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_cookie_t xcb_glx_get_color_table_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_color_table_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_cookie_t +xcb_glx_get_color_table_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_color_table_data + ** + ** @param const xcb_glx_get_color_table_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_color_table_data (const xcb_glx_get_color_table_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_color_table_data_length + ** + ** @param const xcb_glx_get_color_table_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_color_table_data_length (const xcb_glx_get_color_table_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_color_table_data_end + ** + ** @param const xcb_glx_get_color_table_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_color_table_data_end (const xcb_glx_get_color_table_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_color_table_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_reply_t * xcb_glx_get_color_table_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_color_table_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_color_table_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_color_table_reply_t * +xcb_glx_get_color_table_reply (xcb_connection_t *c /**< */, + xcb_glx_get_color_table_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_color_table_parameterfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameterfv_cookie_t xcb_glx_get_color_table_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_color_table_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameterfv_cookie_t +xcb_glx_get_color_table_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameterfv_cookie_t xcb_glx_get_color_table_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_color_table_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameterfv_cookie_t +xcb_glx_get_color_table_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_color_table_parameterfv_data + ** + ** @param const xcb_glx_get_color_table_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_color_table_parameterfv_data (const xcb_glx_get_color_table_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_color_table_parameterfv_data_length + ** + ** @param const xcb_glx_get_color_table_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_color_table_parameterfv_data_length (const xcb_glx_get_color_table_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_color_table_parameterfv_data_end + ** + ** @param const xcb_glx_get_color_table_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_color_table_parameterfv_data_end (const xcb_glx_get_color_table_parameterfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_color_table_parameterfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameterfv_reply_t * xcb_glx_get_color_table_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_color_table_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_color_table_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameterfv_reply_t * +xcb_glx_get_color_table_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_color_table_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_color_table_parameteriv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameteriv_cookie_t xcb_glx_get_color_table_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_color_table_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameteriv_cookie_t +xcb_glx_get_color_table_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameteriv_cookie_t xcb_glx_get_color_table_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_color_table_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameteriv_cookie_t +xcb_glx_get_color_table_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_color_table_parameteriv_data + ** + ** @param const xcb_glx_get_color_table_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_color_table_parameteriv_data (const xcb_glx_get_color_table_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_color_table_parameteriv_data_length + ** + ** @param const xcb_glx_get_color_table_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_color_table_parameteriv_data_length (const xcb_glx_get_color_table_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_color_table_parameteriv_data_end + ** + ** @param const xcb_glx_get_color_table_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_color_table_parameteriv_data_end (const xcb_glx_get_color_table_parameteriv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_color_table_parameteriv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_color_table_parameteriv_reply_t * xcb_glx_get_color_table_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_color_table_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_color_table_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_color_table_parameteriv_reply_t * +xcb_glx_get_color_table_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_color_table_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_convolution_filter_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_filter_cookie_t xcb_glx_get_convolution_filter + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_convolution_filter_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_filter_cookie_t +xcb_glx_get_convolution_filter (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_filter_cookie_t xcb_glx_get_convolution_filter_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_convolution_filter_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_filter_cookie_t +xcb_glx_get_convolution_filter_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_convolution_filter_data + ** + ** @param const xcb_glx_get_convolution_filter_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_convolution_filter_data (const xcb_glx_get_convolution_filter_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_convolution_filter_data_length + ** + ** @param const xcb_glx_get_convolution_filter_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_convolution_filter_data_length (const xcb_glx_get_convolution_filter_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_convolution_filter_data_end + ** + ** @param const xcb_glx_get_convolution_filter_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_convolution_filter_data_end (const xcb_glx_get_convolution_filter_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_convolution_filter_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_filter_reply_t * xcb_glx_get_convolution_filter_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_convolution_filter_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_convolution_filter_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_convolution_filter_reply_t * +xcb_glx_get_convolution_filter_reply (xcb_connection_t *c /**< */, + xcb_glx_get_convolution_filter_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_convolution_parameterfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameterfv_cookie_t xcb_glx_get_convolution_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_convolution_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameterfv_cookie_t +xcb_glx_get_convolution_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameterfv_cookie_t xcb_glx_get_convolution_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_convolution_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameterfv_cookie_t +xcb_glx_get_convolution_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_convolution_parameterfv_data + ** + ** @param const xcb_glx_get_convolution_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_convolution_parameterfv_data (const xcb_glx_get_convolution_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_convolution_parameterfv_data_length + ** + ** @param const xcb_glx_get_convolution_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_convolution_parameterfv_data_length (const xcb_glx_get_convolution_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_convolution_parameterfv_data_end + ** + ** @param const xcb_glx_get_convolution_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_convolution_parameterfv_data_end (const xcb_glx_get_convolution_parameterfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_convolution_parameterfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameterfv_reply_t * xcb_glx_get_convolution_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_convolution_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_convolution_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameterfv_reply_t * +xcb_glx_get_convolution_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_convolution_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_convolution_parameteriv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameteriv_cookie_t xcb_glx_get_convolution_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_convolution_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameteriv_cookie_t +xcb_glx_get_convolution_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameteriv_cookie_t xcb_glx_get_convolution_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_convolution_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameteriv_cookie_t +xcb_glx_get_convolution_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_convolution_parameteriv_data + ** + ** @param const xcb_glx_get_convolution_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_convolution_parameteriv_data (const xcb_glx_get_convolution_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_convolution_parameteriv_data_length + ** + ** @param const xcb_glx_get_convolution_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_convolution_parameteriv_data_length (const xcb_glx_get_convolution_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_convolution_parameteriv_data_end + ** + ** @param const xcb_glx_get_convolution_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_convolution_parameteriv_data_end (const xcb_glx_get_convolution_parameteriv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_convolution_parameteriv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_convolution_parameteriv_reply_t * xcb_glx_get_convolution_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_convolution_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_convolution_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_convolution_parameteriv_reply_t * +xcb_glx_get_convolution_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_convolution_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_separable_filter_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_separable_filter_cookie_t xcb_glx_get_separable_filter + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_separable_filter_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_separable_filter_cookie_t +xcb_glx_get_separable_filter (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_separable_filter_cookie_t xcb_glx_get_separable_filter_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @returns xcb_glx_get_separable_filter_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_separable_filter_cookie_t +xcb_glx_get_separable_filter_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_separable_filter_rows_and_cols + ** + ** @param const xcb_glx_get_separable_filter_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_separable_filter_rows_and_cols (const xcb_glx_get_separable_filter_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_separable_filter_rows_and_cols_length + ** + ** @param const xcb_glx_get_separable_filter_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_separable_filter_rows_and_cols_length (const xcb_glx_get_separable_filter_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_separable_filter_rows_and_cols_end + ** + ** @param const xcb_glx_get_separable_filter_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_separable_filter_rows_and_cols_end (const xcb_glx_get_separable_filter_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_separable_filter_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_separable_filter_reply_t * xcb_glx_get_separable_filter_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_separable_filter_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_separable_filter_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_separable_filter_reply_t * +xcb_glx_get_separable_filter_reply (xcb_connection_t *c /**< */, + xcb_glx_get_separable_filter_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_histogram_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_cookie_t xcb_glx_get_histogram + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t reset + ** @returns xcb_glx_get_histogram_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_cookie_t +xcb_glx_get_histogram (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t reset /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_cookie_t xcb_glx_get_histogram_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t reset + ** @returns xcb_glx_get_histogram_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_cookie_t +xcb_glx_get_histogram_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t reset /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_histogram_data + ** + ** @param const xcb_glx_get_histogram_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_histogram_data (const xcb_glx_get_histogram_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_histogram_data_length + ** + ** @param const xcb_glx_get_histogram_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_histogram_data_length (const xcb_glx_get_histogram_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_histogram_data_end + ** + ** @param const xcb_glx_get_histogram_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_histogram_data_end (const xcb_glx_get_histogram_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_histogram_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_reply_t * xcb_glx_get_histogram_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_histogram_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_histogram_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_histogram_reply_t * +xcb_glx_get_histogram_reply (xcb_connection_t *c /**< */, + xcb_glx_get_histogram_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_histogram_parameterfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameterfv_cookie_t xcb_glx_get_histogram_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_histogram_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameterfv_cookie_t +xcb_glx_get_histogram_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameterfv_cookie_t xcb_glx_get_histogram_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_histogram_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameterfv_cookie_t +xcb_glx_get_histogram_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_histogram_parameterfv_data + ** + ** @param const xcb_glx_get_histogram_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_histogram_parameterfv_data (const xcb_glx_get_histogram_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_histogram_parameterfv_data_length + ** + ** @param const xcb_glx_get_histogram_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_histogram_parameterfv_data_length (const xcb_glx_get_histogram_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_histogram_parameterfv_data_end + ** + ** @param const xcb_glx_get_histogram_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_histogram_parameterfv_data_end (const xcb_glx_get_histogram_parameterfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_histogram_parameterfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameterfv_reply_t * xcb_glx_get_histogram_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_histogram_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_histogram_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameterfv_reply_t * +xcb_glx_get_histogram_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_histogram_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_histogram_parameteriv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameteriv_cookie_t xcb_glx_get_histogram_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_histogram_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameteriv_cookie_t +xcb_glx_get_histogram_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameteriv_cookie_t xcb_glx_get_histogram_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_histogram_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameteriv_cookie_t +xcb_glx_get_histogram_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_histogram_parameteriv_data + ** + ** @param const xcb_glx_get_histogram_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_histogram_parameteriv_data (const xcb_glx_get_histogram_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_histogram_parameteriv_data_length + ** + ** @param const xcb_glx_get_histogram_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_histogram_parameteriv_data_length (const xcb_glx_get_histogram_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_histogram_parameteriv_data_end + ** + ** @param const xcb_glx_get_histogram_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_histogram_parameteriv_data_end (const xcb_glx_get_histogram_parameteriv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_histogram_parameteriv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_histogram_parameteriv_reply_t * xcb_glx_get_histogram_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_histogram_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_histogram_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_histogram_parameteriv_reply_t * +xcb_glx_get_histogram_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_histogram_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_minmax_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_cookie_t xcb_glx_get_minmax + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t reset + ** @returns xcb_glx_get_minmax_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_cookie_t +xcb_glx_get_minmax (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t reset /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_cookie_t xcb_glx_get_minmax_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t format + ** @param uint32_t type + ** @param uint8_t swap_bytes + ** @param uint8_t reset + ** @returns xcb_glx_get_minmax_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_cookie_t +xcb_glx_get_minmax_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t format /**< */, + uint32_t type /**< */, + uint8_t swap_bytes /**< */, + uint8_t reset /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_minmax_data + ** + ** @param const xcb_glx_get_minmax_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_minmax_data (const xcb_glx_get_minmax_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_minmax_data_length + ** + ** @param const xcb_glx_get_minmax_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_minmax_data_length (const xcb_glx_get_minmax_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_minmax_data_end + ** + ** @param const xcb_glx_get_minmax_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_minmax_data_end (const xcb_glx_get_minmax_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_minmax_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_reply_t * xcb_glx_get_minmax_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_minmax_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_minmax_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_minmax_reply_t * +xcb_glx_get_minmax_reply (xcb_connection_t *c /**< */, + xcb_glx_get_minmax_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_minmax_parameterfv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameterfv_cookie_t xcb_glx_get_minmax_parameterfv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_minmax_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameterfv_cookie_t +xcb_glx_get_minmax_parameterfv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameterfv_cookie_t xcb_glx_get_minmax_parameterfv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_minmax_parameterfv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameterfv_cookie_t +xcb_glx_get_minmax_parameterfv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** xcb_glx_float32_t * xcb_glx_get_minmax_parameterfv_data + ** + ** @param const xcb_glx_get_minmax_parameterfv_reply_t *R + ** @returns xcb_glx_float32_t * + ** + *****************************************************************************/ + +xcb_glx_float32_t * +xcb_glx_get_minmax_parameterfv_data (const xcb_glx_get_minmax_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_minmax_parameterfv_data_length + ** + ** @param const xcb_glx_get_minmax_parameterfv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_minmax_parameterfv_data_length (const xcb_glx_get_minmax_parameterfv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_minmax_parameterfv_data_end + ** + ** @param const xcb_glx_get_minmax_parameterfv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_minmax_parameterfv_data_end (const xcb_glx_get_minmax_parameterfv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_minmax_parameterfv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameterfv_reply_t * xcb_glx_get_minmax_parameterfv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_minmax_parameterfv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_minmax_parameterfv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameterfv_reply_t * +xcb_glx_get_minmax_parameterfv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_minmax_parameterfv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_minmax_parameteriv_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameteriv_cookie_t xcb_glx_get_minmax_parameteriv + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_minmax_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameteriv_cookie_t +xcb_glx_get_minmax_parameteriv (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameteriv_cookie_t xcb_glx_get_minmax_parameteriv_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_minmax_parameteriv_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameteriv_cookie_t +xcb_glx_get_minmax_parameteriv_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_minmax_parameteriv_data + ** + ** @param const xcb_glx_get_minmax_parameteriv_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_minmax_parameteriv_data (const xcb_glx_get_minmax_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_minmax_parameteriv_data_length + ** + ** @param const xcb_glx_get_minmax_parameteriv_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_minmax_parameteriv_data_length (const xcb_glx_get_minmax_parameteriv_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_minmax_parameteriv_data_end + ** + ** @param const xcb_glx_get_minmax_parameteriv_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_minmax_parameteriv_data_end (const xcb_glx_get_minmax_parameteriv_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_minmax_parameteriv_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_minmax_parameteriv_reply_t * xcb_glx_get_minmax_parameteriv_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_minmax_parameteriv_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_minmax_parameteriv_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_minmax_parameteriv_reply_t * +xcb_glx_get_minmax_parameteriv_reply (xcb_connection_t *c /**< */, + xcb_glx_get_minmax_parameteriv_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_compressed_tex_image_arb_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_compressed_tex_image_arb_cookie_t xcb_glx_get_compressed_tex_image_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @returns xcb_glx_get_compressed_tex_image_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_compressed_tex_image_arb_cookie_t +xcb_glx_get_compressed_tex_image_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_compressed_tex_image_arb_cookie_t xcb_glx_get_compressed_tex_image_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param int32_t level + ** @returns xcb_glx_get_compressed_tex_image_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_compressed_tex_image_arb_cookie_t +xcb_glx_get_compressed_tex_image_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + int32_t level /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_glx_get_compressed_tex_image_arb_data + ** + ** @param const xcb_glx_get_compressed_tex_image_arb_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_glx_get_compressed_tex_image_arb_data (const xcb_glx_get_compressed_tex_image_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_compressed_tex_image_arb_data_length + ** + ** @param const xcb_glx_get_compressed_tex_image_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_compressed_tex_image_arb_data_length (const xcb_glx_get_compressed_tex_image_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_compressed_tex_image_arb_data_end + ** + ** @param const xcb_glx_get_compressed_tex_image_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_compressed_tex_image_arb_data_end (const xcb_glx_get_compressed_tex_image_arb_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_compressed_tex_image_arb_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_compressed_tex_image_arb_reply_t * xcb_glx_get_compressed_tex_image_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_compressed_tex_image_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_compressed_tex_image_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_compressed_tex_image_arb_reply_t * +xcb_glx_get_compressed_tex_image_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_get_compressed_tex_image_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_delete_queries_arb_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_queries_arb_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *ids + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_queries_arb_checked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *ids /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_glx_delete_queries_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @param const uint32_t *ids + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_glx_delete_queries_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */, + const uint32_t *ids /**< */); + +int +xcb_glx_gen_queries_arb_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_gen_queries_arb_cookie_t xcb_glx_gen_queries_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @returns xcb_glx_gen_queries_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_queries_arb_cookie_t +xcb_glx_gen_queries_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_gen_queries_arb_cookie_t xcb_glx_gen_queries_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param int32_t n + ** @returns xcb_glx_gen_queries_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_gen_queries_arb_cookie_t +xcb_glx_gen_queries_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + int32_t n /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_gen_queries_arb_data + ** + ** @param const xcb_glx_gen_queries_arb_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_gen_queries_arb_data (const xcb_glx_gen_queries_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_gen_queries_arb_data_length + ** + ** @param const xcb_glx_gen_queries_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_gen_queries_arb_data_length (const xcb_glx_gen_queries_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_gen_queries_arb_data_end + ** + ** @param const xcb_glx_gen_queries_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_gen_queries_arb_data_end (const xcb_glx_gen_queries_arb_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_gen_queries_arb_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_gen_queries_arb_reply_t * xcb_glx_gen_queries_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_gen_queries_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_gen_queries_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_gen_queries_arb_reply_t * +xcb_glx_gen_queries_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_gen_queries_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_is_query_arb_cookie_t xcb_glx_is_query_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @returns xcb_glx_is_query_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_query_arb_cookie_t +xcb_glx_is_query_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_is_query_arb_cookie_t xcb_glx_is_query_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @returns xcb_glx_is_query_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_is_query_arb_cookie_t +xcb_glx_is_query_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_is_query_arb_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_is_query_arb_reply_t * xcb_glx_is_query_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_is_query_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_is_query_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_is_query_arb_reply_t * +xcb_glx_is_query_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_is_query_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_queryiv_arb_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_queryiv_arb_cookie_t xcb_glx_get_queryiv_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_queryiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_queryiv_arb_cookie_t +xcb_glx_get_queryiv_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_queryiv_arb_cookie_t xcb_glx_get_queryiv_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t target + ** @param uint32_t pname + ** @returns xcb_glx_get_queryiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_queryiv_arb_cookie_t +xcb_glx_get_queryiv_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t target /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_queryiv_arb_data + ** + ** @param const xcb_glx_get_queryiv_arb_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_queryiv_arb_data (const xcb_glx_get_queryiv_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_queryiv_arb_data_length + ** + ** @param const xcb_glx_get_queryiv_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_queryiv_arb_data_length (const xcb_glx_get_queryiv_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_queryiv_arb_data_end + ** + ** @param const xcb_glx_get_queryiv_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_queryiv_arb_data_end (const xcb_glx_get_queryiv_arb_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_queryiv_arb_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_queryiv_arb_reply_t * xcb_glx_get_queryiv_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_queryiv_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_queryiv_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_queryiv_arb_reply_t * +xcb_glx_get_queryiv_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_get_queryiv_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_query_objectiv_arb_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectiv_arb_cookie_t xcb_glx_get_query_objectiv_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @param uint32_t pname + ** @returns xcb_glx_get_query_objectiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_query_objectiv_arb_cookie_t +xcb_glx_get_query_objectiv_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectiv_arb_cookie_t xcb_glx_get_query_objectiv_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @param uint32_t pname + ** @returns xcb_glx_get_query_objectiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_query_objectiv_arb_cookie_t +xcb_glx_get_query_objectiv_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_glx_get_query_objectiv_arb_data + ** + ** @param const xcb_glx_get_query_objectiv_arb_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_glx_get_query_objectiv_arb_data (const xcb_glx_get_query_objectiv_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_query_objectiv_arb_data_length + ** + ** @param const xcb_glx_get_query_objectiv_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_query_objectiv_arb_data_length (const xcb_glx_get_query_objectiv_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_query_objectiv_arb_data_end + ** + ** @param const xcb_glx_get_query_objectiv_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_query_objectiv_arb_data_end (const xcb_glx_get_query_objectiv_arb_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_query_objectiv_arb_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectiv_arb_reply_t * xcb_glx_get_query_objectiv_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_query_objectiv_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_query_objectiv_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_query_objectiv_arb_reply_t * +xcb_glx_get_query_objectiv_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_get_query_objectiv_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_glx_get_query_objectuiv_arb_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectuiv_arb_cookie_t xcb_glx_get_query_objectuiv_arb + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @param uint32_t pname + ** @returns xcb_glx_get_query_objectuiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_query_objectuiv_arb_cookie_t +xcb_glx_get_query_objectuiv_arb (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */, + uint32_t pname /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectuiv_arb_cookie_t xcb_glx_get_query_objectuiv_arb_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_context_tag_t context_tag + ** @param uint32_t id + ** @param uint32_t pname + ** @returns xcb_glx_get_query_objectuiv_arb_cookie_t + ** + *****************************************************************************/ + +xcb_glx_get_query_objectuiv_arb_cookie_t +xcb_glx_get_query_objectuiv_arb_unchecked (xcb_connection_t *c /**< */, + xcb_glx_context_tag_t context_tag /**< */, + uint32_t id /**< */, + uint32_t pname /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_glx_get_query_objectuiv_arb_data + ** + ** @param const xcb_glx_get_query_objectuiv_arb_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_glx_get_query_objectuiv_arb_data (const xcb_glx_get_query_objectuiv_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_glx_get_query_objectuiv_arb_data_length + ** + ** @param const xcb_glx_get_query_objectuiv_arb_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_glx_get_query_objectuiv_arb_data_length (const xcb_glx_get_query_objectuiv_arb_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_glx_get_query_objectuiv_arb_data_end + ** + ** @param const xcb_glx_get_query_objectuiv_arb_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_glx_get_query_objectuiv_arb_data_end (const xcb_glx_get_query_objectuiv_arb_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_glx_get_query_objectuiv_arb_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_glx_get_query_objectuiv_arb_reply_t * xcb_glx_get_query_objectuiv_arb_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_glx_get_query_objectuiv_arb_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_glx_get_query_objectuiv_arb_reply_t * + ** + *****************************************************************************/ + +xcb_glx_get_query_objectuiv_arb_reply_t * +xcb_glx_get_query_objectuiv_arb_reply (xcb_connection_t *c /**< */, + xcb_glx_get_query_objectuiv_arb_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/randr.c b/external/mit/xorg/lib/libxcb/files/randr.c new file mode 100644 index 000000000..0232af802 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/randr.c @@ -0,0 +1,5640 @@ +/* + * This file generated automatically from randr.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "randr.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" +#include "render.h" + +xcb_extension_t xcb_randr_id = { "RANDR", 0 }; + + +/***************************************************************************** + ** + ** void xcb_randr_mode_next + ** + ** @param xcb_randr_mode_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_mode_next (xcb_randr_mode_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_randr_mode_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_mode_end + ** + ** @param xcb_randr_mode_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_mode_end (xcb_randr_mode_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_randr_crtc_next + ** + ** @param xcb_randr_crtc_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_crtc_next (xcb_randr_crtc_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_randr_crtc_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_crtc_end + ** + ** @param xcb_randr_crtc_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_crtc_end (xcb_randr_crtc_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_randr_output_next + ** + ** @param xcb_randr_output_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_output_next (xcb_randr_output_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_randr_output_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_output_end + ** + ** @param xcb_randr_output_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_output_end (xcb_randr_output_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_randr_screen_size_next + ** + ** @param xcb_randr_screen_size_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_screen_size_next (xcb_randr_screen_size_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_randr_screen_size_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_screen_size_end + ** + ** @param xcb_randr_screen_size_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_screen_size_end (xcb_randr_screen_size_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_randr_refresh_rates_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_refresh_rates_t *_aux = (xcb_randr_refresh_rates_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_refresh_rates_t); + xcb_tmp += xcb_block_len; + /* rates */ + xcb_block_len += _aux->nRates * sizeof(uint16_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** uint16_t * xcb_randr_refresh_rates_rates + ** + ** @param const xcb_randr_refresh_rates_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_randr_refresh_rates_rates (const xcb_randr_refresh_rates_t *R /**< */) +{ + return (uint16_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_refresh_rates_rates_length + ** + ** @param const xcb_randr_refresh_rates_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_refresh_rates_rates_length (const xcb_randr_refresh_rates_t *R /**< */) +{ + return R->nRates; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_refresh_rates_rates_end + ** + ** @param const xcb_randr_refresh_rates_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_refresh_rates_rates_end (const xcb_randr_refresh_rates_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint16_t *) (R + 1)) + (R->nRates); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_randr_refresh_rates_next + ** + ** @param xcb_randr_refresh_rates_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_refresh_rates_next (xcb_randr_refresh_rates_iterator_t *i /**< */) +{ + xcb_randr_refresh_rates_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_randr_refresh_rates_t *)(((char *)R) + xcb_randr_refresh_rates_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_randr_refresh_rates_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_refresh_rates_end + ** + ** @param xcb_randr_refresh_rates_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_refresh_rates_end (xcb_randr_refresh_rates_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_randr_refresh_rates_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_query_version_cookie_t xcb_randr_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_randr_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_randr_query_version_cookie_t +xcb_randr_query_version (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_query_version_cookie_t xcb_ret; + xcb_randr_query_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_query_version_cookie_t xcb_randr_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_randr_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_randr_query_version_cookie_t +xcb_randr_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_query_version_cookie_t xcb_ret; + xcb_randr_query_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_query_version_reply_t * xcb_randr_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_randr_query_version_reply_t * +xcb_randr_query_version_reply (xcb_connection_t *c /**< */, + xcb_randr_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_randr_set_screen_config_cookie_t xcb_randr_set_screen_config + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_timestamp_t timestamp + ** @param xcb_timestamp_t config_timestamp + ** @param uint16_t sizeID + ** @param uint16_t rotation + ** @param uint16_t rate + ** @returns xcb_randr_set_screen_config_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_screen_config_cookie_t +xcb_randr_set_screen_config (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_timestamp_t timestamp /**< */, + xcb_timestamp_t config_timestamp /**< */, + uint16_t sizeID /**< */, + uint16_t rotation /**< */, + uint16_t rate /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_SCREEN_CONFIG, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_set_screen_config_cookie_t xcb_ret; + xcb_randr_set_screen_config_request_t xcb_out; + + xcb_out.window = window; + xcb_out.timestamp = timestamp; + xcb_out.config_timestamp = config_timestamp; + xcb_out.sizeID = sizeID; + xcb_out.rotation = rotation; + xcb_out.rate = rate; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_set_screen_config_cookie_t xcb_randr_set_screen_config_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_timestamp_t timestamp + ** @param xcb_timestamp_t config_timestamp + ** @param uint16_t sizeID + ** @param uint16_t rotation + ** @param uint16_t rate + ** @returns xcb_randr_set_screen_config_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_screen_config_cookie_t +xcb_randr_set_screen_config_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_timestamp_t timestamp /**< */, + xcb_timestamp_t config_timestamp /**< */, + uint16_t sizeID /**< */, + uint16_t rotation /**< */, + uint16_t rate /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_SCREEN_CONFIG, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_set_screen_config_cookie_t xcb_ret; + xcb_randr_set_screen_config_request_t xcb_out; + + xcb_out.window = window; + xcb_out.timestamp = timestamp; + xcb_out.config_timestamp = config_timestamp; + xcb_out.sizeID = sizeID; + xcb_out.rotation = rotation; + xcb_out.rate = rate; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_set_screen_config_reply_t * xcb_randr_set_screen_config_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_set_screen_config_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_set_screen_config_reply_t * + ** + *****************************************************************************/ + +xcb_randr_set_screen_config_reply_t * +xcb_randr_set_screen_config_reply (xcb_connection_t *c /**< */, + xcb_randr_set_screen_config_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_set_screen_config_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_select_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t enable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_select_input_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t enable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SELECT_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_select_input_request_t xcb_out; + + xcb_out.window = window; + xcb_out.enable = enable; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_select_input + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t enable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_select_input (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t enable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SELECT_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_select_input_request_t xcb_out; + + xcb_out.window = window; + xcb_out.enable = enable; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_randr_get_screen_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_get_screen_info_reply_t *_aux = (xcb_randr_get_screen_info_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_randr_get_screen_info_reply_t); + xcb_tmp += xcb_block_len; + /* sizes */ + xcb_block_len += _aux->nSizes * sizeof(xcb_randr_screen_size_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_screen_size_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* rates */ + for(i=0; i<(_aux->nInfo - _aux->nSizes); i++) { + xcb_tmp_len = xcb_randr_refresh_rates_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_randr_refresh_rates_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_info_cookie_t xcb_randr_get_screen_info + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_info_cookie_t +xcb_randr_get_screen_info (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_SCREEN_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_screen_info_cookie_t xcb_ret; + xcb_randr_get_screen_info_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_info_cookie_t xcb_randr_get_screen_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_info_cookie_t +xcb_randr_get_screen_info_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_SCREEN_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_screen_info_cookie_t xcb_ret; + xcb_randr_get_screen_info_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_screen_size_t * xcb_randr_get_screen_info_sizes + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns xcb_randr_screen_size_t * + ** + *****************************************************************************/ + +xcb_randr_screen_size_t * +xcb_randr_get_screen_info_sizes (const xcb_randr_get_screen_info_reply_t *R /**< */) +{ + return (xcb_randr_screen_size_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_info_sizes_length + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_info_sizes_length (const xcb_randr_get_screen_info_reply_t *R /**< */) +{ + return R->nSizes; +} + + +/***************************************************************************** + ** + ** xcb_randr_screen_size_iterator_t xcb_randr_get_screen_info_sizes_iterator + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns xcb_randr_screen_size_iterator_t + ** + *****************************************************************************/ + +xcb_randr_screen_size_iterator_t +xcb_randr_get_screen_info_sizes_iterator (const xcb_randr_get_screen_info_reply_t *R /**< */) +{ + xcb_randr_screen_size_iterator_t i; + i.data = (xcb_randr_screen_size_t *) (R + 1); + i.rem = R->nSizes; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_info_rates_length + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_info_rates_length (const xcb_randr_get_screen_info_reply_t *R /**< */) +{ + return (R->nInfo - R->nSizes); +} + + +/***************************************************************************** + ** + ** xcb_randr_refresh_rates_iterator_t xcb_randr_get_screen_info_rates_iterator + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns xcb_randr_refresh_rates_iterator_t + ** + *****************************************************************************/ + +xcb_randr_refresh_rates_iterator_t +xcb_randr_get_screen_info_rates_iterator (const xcb_randr_get_screen_info_reply_t *R /**< */) +{ + xcb_randr_refresh_rates_iterator_t i; + xcb_generic_iterator_t prev = xcb_randr_screen_size_end(xcb_randr_get_screen_info_sizes_iterator(R)); + i.data = (xcb_randr_refresh_rates_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_refresh_rates_t, prev.index)); + i.rem = (R->nInfo - R->nSizes); + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_info_reply_t * xcb_randr_get_screen_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_screen_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_screen_info_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_screen_info_reply_t * +xcb_randr_get_screen_info_reply (xcb_connection_t *c /**< */, + xcb_randr_get_screen_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_screen_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_size_range_cookie_t xcb_randr_get_screen_size_range + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_size_range_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_size_range_cookie_t +xcb_randr_get_screen_size_range (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_SCREEN_SIZE_RANGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_screen_size_range_cookie_t xcb_ret; + xcb_randr_get_screen_size_range_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_size_range_cookie_t xcb_randr_get_screen_size_range_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_size_range_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_size_range_cookie_t +xcb_randr_get_screen_size_range_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_SCREEN_SIZE_RANGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_screen_size_range_cookie_t xcb_ret; + xcb_randr_get_screen_size_range_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_size_range_reply_t * xcb_randr_get_screen_size_range_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_screen_size_range_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_screen_size_range_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_screen_size_range_reply_t * +xcb_randr_get_screen_size_range_reply (xcb_connection_t *c /**< */, + xcb_randr_get_screen_size_range_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_screen_size_range_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_screen_size_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t mm_width + ** @param uint32_t mm_height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_screen_size_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t mm_width /**< */, + uint32_t mm_height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_SCREEN_SIZE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_set_screen_size_request_t xcb_out; + + xcb_out.window = window; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.mm_width = mm_width; + xcb_out.mm_height = mm_height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_screen_size + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t mm_width + ** @param uint32_t mm_height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_screen_size (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t mm_width /**< */, + uint32_t mm_height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_SCREEN_SIZE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_set_screen_size_request_t xcb_out; + + xcb_out.window = window; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.mm_width = mm_width; + xcb_out.mm_height = mm_height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** void xcb_randr_mode_info_next + ** + ** @param xcb_randr_mode_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_mode_info_next (xcb_randr_mode_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_randr_mode_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_mode_info_end + ** + ** @param xcb_randr_mode_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_mode_info_end (xcb_randr_mode_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_randr_get_screen_resources_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_get_screen_resources_reply_t *_aux = (xcb_randr_get_screen_resources_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_get_screen_resources_reply_t); + xcb_tmp += xcb_block_len; + /* crtcs */ + xcb_block_len += _aux->num_crtcs * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_crtc_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* outputs */ + xcb_block_len += _aux->num_outputs * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_output_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modes */ + xcb_block_len += _aux->num_modes * sizeof(xcb_randr_mode_info_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_mode_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* names */ + xcb_block_len += _aux->names_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_cookie_t xcb_randr_get_screen_resources + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_resources_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_cookie_t +xcb_randr_get_screen_resources (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_SCREEN_RESOURCES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_screen_resources_cookie_t xcb_ret; + xcb_randr_get_screen_resources_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_cookie_t xcb_randr_get_screen_resources_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_resources_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_cookie_t +xcb_randr_get_screen_resources_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_SCREEN_RESOURCES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_screen_resources_cookie_t xcb_ret; + xcb_randr_get_screen_resources_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_crtc_t * xcb_randr_get_screen_resources_crtcs + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_randr_crtc_t * + ** + *****************************************************************************/ + +xcb_randr_crtc_t * +xcb_randr_get_screen_resources_crtcs (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + return (xcb_randr_crtc_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_crtcs_length + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_crtcs_length (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + return R->num_crtcs; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_crtcs_end + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_crtcs_end (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_randr_crtc_t *) (R + 1)) + (R->num_crtcs); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_screen_resources_outputs + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_screen_resources_outputs (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_screen_resources_crtcs_end(R); + return (xcb_randr_output_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_output_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_outputs_length + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_outputs_length (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + return R->num_outputs; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_outputs_end + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_outputs_end (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_screen_resources_crtcs_end(R); + i.data = ((xcb_randr_output_t *) child.data) + (R->num_outputs); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_mode_info_t * xcb_randr_get_screen_resources_modes + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_randr_mode_info_t * + ** + *****************************************************************************/ + +xcb_randr_mode_info_t * +xcb_randr_get_screen_resources_modes (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_screen_resources_outputs_end(R); + return (xcb_randr_mode_info_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_mode_info_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_modes_length + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_modes_length (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + return R->num_modes; +} + + +/***************************************************************************** + ** + ** xcb_randr_mode_info_iterator_t xcb_randr_get_screen_resources_modes_iterator + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_randr_mode_info_iterator_t + ** + *****************************************************************************/ + +xcb_randr_mode_info_iterator_t +xcb_randr_get_screen_resources_modes_iterator (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + xcb_randr_mode_info_iterator_t i; + xcb_generic_iterator_t prev = xcb_randr_get_screen_resources_outputs_end(R); + i.data = (xcb_randr_mode_info_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_mode_info_t, prev.index)); + i.rem = R->num_modes; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_randr_get_screen_resources_names + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_randr_get_screen_resources_names (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_mode_info_end(xcb_randr_get_screen_resources_modes_iterator(R)); + return (uint8_t *) ((char *) prev.data + XCB_TYPE_PAD(uint8_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_names_length + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_names_length (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + return R->names_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_names_end + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_names_end (const xcb_randr_get_screen_resources_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_mode_info_end(xcb_randr_get_screen_resources_modes_iterator(R)); + i.data = ((uint8_t *) child.data) + (R->names_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_reply_t * xcb_randr_get_screen_resources_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_screen_resources_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_screen_resources_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_reply_t * +xcb_randr_get_screen_resources_reply (xcb_connection_t *c /**< */, + xcb_randr_get_screen_resources_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_screen_resources_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_randr_get_output_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_get_output_info_reply_t *_aux = (xcb_randr_get_output_info_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_get_output_info_reply_t); + xcb_tmp += xcb_block_len; + /* crtcs */ + xcb_block_len += _aux->num_crtcs * sizeof(xcb_randr_output_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_crtc_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modes */ + xcb_block_len += _aux->num_modes * sizeof(xcb_randr_output_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_mode_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* clones */ + xcb_block_len += _aux->num_clones * sizeof(xcb_randr_output_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_output_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* name */ + xcb_block_len += _aux->name_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_output_info_cookie_t xcb_randr_get_output_info + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_timestamp_t config_timestamp + ** @returns xcb_randr_get_output_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_info_cookie_t +xcb_randr_get_output_info (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_timestamp_t config_timestamp /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_OUTPUT_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_output_info_cookie_t xcb_ret; + xcb_randr_get_output_info_request_t xcb_out; + + xcb_out.output = output; + xcb_out.config_timestamp = config_timestamp; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_output_info_cookie_t xcb_randr_get_output_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_timestamp_t config_timestamp + ** @returns xcb_randr_get_output_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_info_cookie_t +xcb_randr_get_output_info_unchecked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_timestamp_t config_timestamp /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_OUTPUT_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_output_info_cookie_t xcb_ret; + xcb_randr_get_output_info_request_t xcb_out; + + xcb_out.output = output; + xcb_out.config_timestamp = config_timestamp; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_crtc_t * xcb_randr_get_output_info_crtcs + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_randr_crtc_t * + ** + *****************************************************************************/ + +xcb_randr_crtc_t * +xcb_randr_get_output_info_crtcs (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + return (xcb_randr_crtc_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_info_crtcs_length + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_info_crtcs_length (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + return R->num_crtcs; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_info_crtcs_end + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_info_crtcs_end (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_randr_crtc_t *) (R + 1)) + (R->num_crtcs); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_mode_t * xcb_randr_get_output_info_modes + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_randr_mode_t * + ** + *****************************************************************************/ + +xcb_randr_mode_t * +xcb_randr_get_output_info_modes (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_output_info_crtcs_end(R); + return (xcb_randr_mode_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_mode_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_info_modes_length + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_info_modes_length (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + return R->num_modes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_info_modes_end + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_info_modes_end (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_output_info_crtcs_end(R); + i.data = ((xcb_randr_mode_t *) child.data) + (R->num_modes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_output_info_clones + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_output_info_clones (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_output_info_modes_end(R); + return (xcb_randr_output_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_output_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_info_clones_length + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_info_clones_length (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + return R->num_clones; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_info_clones_end + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_info_clones_end (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_output_info_modes_end(R); + i.data = ((xcb_randr_output_t *) child.data) + (R->num_clones); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_randr_get_output_info_name + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_randr_get_output_info_name (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_output_info_clones_end(R); + return (uint8_t *) ((char *) prev.data + XCB_TYPE_PAD(uint8_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_info_name_length + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_info_name_length (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + return R->name_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_info_name_end + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_info_name_end (const xcb_randr_get_output_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_output_info_clones_end(R); + i.data = ((uint8_t *) child.data) + (R->name_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_output_info_reply_t * xcb_randr_get_output_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_output_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_output_info_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_output_info_reply_t * +xcb_randr_get_output_info_reply (xcb_connection_t *c /**< */, + xcb_randr_get_output_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_output_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_randr_list_output_properties_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_list_output_properties_reply_t *_aux = (xcb_randr_list_output_properties_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_list_output_properties_reply_t); + xcb_tmp += xcb_block_len; + /* atoms */ + xcb_block_len += _aux->num_atoms * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_list_output_properties_cookie_t xcb_randr_list_output_properties + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @returns xcb_randr_list_output_properties_cookie_t + ** + *****************************************************************************/ + +xcb_randr_list_output_properties_cookie_t +xcb_randr_list_output_properties (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_LIST_OUTPUT_PROPERTIES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_list_output_properties_cookie_t xcb_ret; + xcb_randr_list_output_properties_request_t xcb_out; + + xcb_out.output = output; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_list_output_properties_cookie_t xcb_randr_list_output_properties_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @returns xcb_randr_list_output_properties_cookie_t + ** + *****************************************************************************/ + +xcb_randr_list_output_properties_cookie_t +xcb_randr_list_output_properties_unchecked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_LIST_OUTPUT_PROPERTIES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_list_output_properties_cookie_t xcb_ret; + xcb_randr_list_output_properties_request_t xcb_out; + + xcb_out.output = output; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_randr_list_output_properties_atoms + ** + ** @param const xcb_randr_list_output_properties_reply_t *R + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_randr_list_output_properties_atoms (const xcb_randr_list_output_properties_reply_t *R /**< */) +{ + return (xcb_atom_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_list_output_properties_atoms_length + ** + ** @param const xcb_randr_list_output_properties_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_list_output_properties_atoms_length (const xcb_randr_list_output_properties_reply_t *R /**< */) +{ + return R->num_atoms; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_list_output_properties_atoms_end + ** + ** @param const xcb_randr_list_output_properties_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_list_output_properties_atoms_end (const xcb_randr_list_output_properties_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_atom_t *) (R + 1)) + (R->num_atoms); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_list_output_properties_reply_t * xcb_randr_list_output_properties_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_list_output_properties_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_list_output_properties_reply_t * + ** + *****************************************************************************/ + +xcb_randr_list_output_properties_reply_t * +xcb_randr_list_output_properties_reply (xcb_connection_t *c /**< */, + xcb_randr_list_output_properties_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_list_output_properties_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_randr_query_output_property_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_query_output_property_reply_t *_aux = (xcb_randr_query_output_property_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_query_output_property_reply_t); + xcb_tmp += xcb_block_len; + /* validValues */ + xcb_block_len += _aux->length * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_query_output_property_cookie_t xcb_randr_query_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @returns xcb_randr_query_output_property_cookie_t + ** + *****************************************************************************/ + +xcb_randr_query_output_property_cookie_t +xcb_randr_query_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_QUERY_OUTPUT_PROPERTY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_query_output_property_cookie_t xcb_ret; + xcb_randr_query_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_query_output_property_cookie_t xcb_randr_query_output_property_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @returns xcb_randr_query_output_property_cookie_t + ** + *****************************************************************************/ + +xcb_randr_query_output_property_cookie_t +xcb_randr_query_output_property_unchecked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_QUERY_OUTPUT_PROPERTY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_query_output_property_cookie_t xcb_ret; + xcb_randr_query_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int32_t * xcb_randr_query_output_property_valid_values + ** + ** @param const xcb_randr_query_output_property_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_randr_query_output_property_valid_values (const xcb_randr_query_output_property_reply_t *R /**< */) +{ + return (int32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_query_output_property_valid_values_length + ** + ** @param const xcb_randr_query_output_property_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_query_output_property_valid_values_length (const xcb_randr_query_output_property_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_query_output_property_valid_values_end + ** + ** @param const xcb_randr_query_output_property_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_query_output_property_valid_values_end (const xcb_randr_query_output_property_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((int32_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_query_output_property_reply_t * xcb_randr_query_output_property_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_query_output_property_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_query_output_property_reply_t * + ** + *****************************************************************************/ + +xcb_randr_query_output_property_reply_t * +xcb_randr_query_output_property_reply (xcb_connection_t *c /**< */, + xcb_randr_query_output_property_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_query_output_property_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_randr_configure_output_property_sizeof (const void *_buffer /**< */, + uint32_t values_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_configure_output_property_request_t); + xcb_tmp += xcb_block_len; + /* values */ + xcb_block_len += values_len * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_configure_output_property_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param uint8_t pending + ** @param uint8_t range + ** @param uint32_t values_len + ** @param const int32_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_configure_output_property_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + uint8_t pending /**< */, + uint8_t range /**< */, + uint32_t values_len /**< */, + const int32_t *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_CONFIGURE_OUTPUT_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_randr_configure_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + xcb_out.pending = pending; + xcb_out.range = range; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* int32_t values */ + xcb_parts[4].iov_base = (char *) values; + xcb_parts[4].iov_len = values_len * sizeof(int32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_configure_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param uint8_t pending + ** @param uint8_t range + ** @param uint32_t values_len + ** @param const int32_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_configure_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + uint8_t pending /**< */, + uint8_t range /**< */, + uint32_t values_len /**< */, + const int32_t *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_CONFIGURE_OUTPUT_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_randr_configure_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + xcb_out.pending = pending; + xcb_out.range = range; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* int32_t values */ + xcb_parts[4].iov_base = (char *) values; + xcb_parts[4].iov_len = values_len * sizeof(int32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_randr_change_output_property_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_change_output_property_request_t *_aux = (xcb_randr_change_output_property_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_change_output_property_request_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += ((_aux->num_units * _aux->format) / 8) * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_change_output_property_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint8_t format + ** @param uint8_t mode + ** @param uint32_t num_units + ** @param const void *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_change_output_property_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint8_t format /**< */, + uint8_t mode /**< */, + uint32_t num_units /**< */, + const void *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_CHANGE_OUTPUT_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_randr_change_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + xcb_out.type = type; + xcb_out.format = format; + xcb_out.mode = mode; + memset(xcb_out.pad0, 0, 2); + xcb_out.num_units = num_units; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* void data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = ((num_units * format) / 8) * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_change_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint8_t format + ** @param uint8_t mode + ** @param uint32_t num_units + ** @param const void *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_change_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint8_t format /**< */, + uint8_t mode /**< */, + uint32_t num_units /**< */, + const void *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_CHANGE_OUTPUT_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_randr_change_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + xcb_out.type = type; + xcb_out.format = format; + xcb_out.mode = mode; + memset(xcb_out.pad0, 0, 2); + xcb_out.num_units = num_units; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* void data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = ((num_units * format) / 8) * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_delete_output_property_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_delete_output_property_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_DELETE_OUTPUT_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_delete_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_delete_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_delete_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_DELETE_OUTPUT_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_delete_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_randr_get_output_property_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_get_output_property_reply_t *_aux = (xcb_randr_get_output_property_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_get_output_property_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->num_items * (_aux->format / 8)) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_output_property_cookie_t xcb_randr_get_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint32_t long_offset + ** @param uint32_t long_length + ** @param uint8_t _delete + ** @param uint8_t pending + ** @returns xcb_randr_get_output_property_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_property_cookie_t +xcb_randr_get_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint32_t long_offset /**< */, + uint32_t long_length /**< */, + uint8_t _delete /**< */, + uint8_t pending /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_OUTPUT_PROPERTY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_output_property_cookie_t xcb_ret; + xcb_randr_get_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + xcb_out.type = type; + xcb_out.long_offset = long_offset; + xcb_out.long_length = long_length; + xcb_out._delete = _delete; + xcb_out.pending = pending; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_output_property_cookie_t xcb_randr_get_output_property_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint32_t long_offset + ** @param uint32_t long_length + ** @param uint8_t _delete + ** @param uint8_t pending + ** @returns xcb_randr_get_output_property_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_property_cookie_t +xcb_randr_get_output_property_unchecked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint32_t long_offset /**< */, + uint32_t long_length /**< */, + uint8_t _delete /**< */, + uint8_t pending /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_OUTPUT_PROPERTY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_output_property_cookie_t xcb_ret; + xcb_randr_get_output_property_request_t xcb_out; + + xcb_out.output = output; + xcb_out.property = property; + xcb_out.type = type; + xcb_out.long_offset = long_offset; + xcb_out.long_length = long_length; + xcb_out._delete = _delete; + xcb_out.pending = pending; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_randr_get_output_property_data + ** + ** @param const xcb_randr_get_output_property_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_randr_get_output_property_data (const xcb_randr_get_output_property_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_property_data_length + ** + ** @param const xcb_randr_get_output_property_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_property_data_length (const xcb_randr_get_output_property_reply_t *R /**< */) +{ + return (R->num_items * (R->format / 8)); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_property_data_end + ** + ** @param const xcb_randr_get_output_property_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_property_data_end (const xcb_randr_get_output_property_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->num_items * (R->format / 8))); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_output_property_reply_t * xcb_randr_get_output_property_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_output_property_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_output_property_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_output_property_reply_t * +xcb_randr_get_output_property_reply (xcb_connection_t *c /**< */, + xcb_randr_get_output_property_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_output_property_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_randr_create_mode_sizeof (const void *_buffer /**< */, + uint32_t name_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_create_mode_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_create_mode_cookie_t xcb_randr_create_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_randr_mode_info_t mode_info + ** @param uint32_t name_len + ** @param const char *name + ** @returns xcb_randr_create_mode_cookie_t + ** + *****************************************************************************/ + +xcb_randr_create_mode_cookie_t +xcb_randr_create_mode (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_randr_mode_info_t mode_info /**< */, + uint32_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_CREATE_MODE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_randr_create_mode_cookie_t xcb_ret; + xcb_randr_create_mode_request_t xcb_out; + + xcb_out.window = window; + xcb_out.mode_info = mode_info; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_create_mode_cookie_t xcb_randr_create_mode_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_randr_mode_info_t mode_info + ** @param uint32_t name_len + ** @param const char *name + ** @returns xcb_randr_create_mode_cookie_t + ** + *****************************************************************************/ + +xcb_randr_create_mode_cookie_t +xcb_randr_create_mode_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_randr_mode_info_t mode_info /**< */, + uint32_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_CREATE_MODE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_randr_create_mode_cookie_t xcb_ret; + xcb_randr_create_mode_request_t xcb_out; + + xcb_out.window = window; + xcb_out.mode_info = mode_info; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_create_mode_reply_t * xcb_randr_create_mode_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_create_mode_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_create_mode_reply_t * + ** + *****************************************************************************/ + +xcb_randr_create_mode_reply_t * +xcb_randr_create_mode_reply (xcb_connection_t *c /**< */, + xcb_randr_create_mode_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_create_mode_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_destroy_mode_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_destroy_mode_checked (xcb_connection_t *c /**< */, + xcb_randr_mode_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_DESTROY_MODE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_destroy_mode_request_t xcb_out; + + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_destroy_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_destroy_mode (xcb_connection_t *c /**< */, + xcb_randr_mode_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_DESTROY_MODE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_destroy_mode_request_t xcb_out; + + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_add_output_mode_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_add_output_mode_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_randr_mode_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_ADD_OUTPUT_MODE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_add_output_mode_request_t xcb_out; + + xcb_out.output = output; + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_add_output_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_add_output_mode (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_randr_mode_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_ADD_OUTPUT_MODE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_add_output_mode_request_t xcb_out; + + xcb_out.output = output; + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_delete_output_mode_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_delete_output_mode_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_randr_mode_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_DELETE_OUTPUT_MODE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_delete_output_mode_request_t xcb_out; + + xcb_out.output = output; + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_delete_output_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_delete_output_mode (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_randr_mode_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_DELETE_OUTPUT_MODE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_delete_output_mode_request_t xcb_out; + + xcb_out.output = output; + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_randr_get_crtc_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_get_crtc_info_reply_t *_aux = (xcb_randr_get_crtc_info_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_get_crtc_info_reply_t); + xcb_tmp += xcb_block_len; + /* outputs */ + xcb_block_len += _aux->num_outputs * sizeof(xcb_randr_output_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_output_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* possible */ + xcb_block_len += _aux->num_possible_outputs * sizeof(xcb_randr_output_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_output_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_info_cookie_t xcb_randr_get_crtc_info + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t config_timestamp + ** @returns xcb_randr_get_crtc_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_info_cookie_t +xcb_randr_get_crtc_info (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t config_timestamp /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_CRTC_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_crtc_info_cookie_t xcb_ret; + xcb_randr_get_crtc_info_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.config_timestamp = config_timestamp; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_info_cookie_t xcb_randr_get_crtc_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t config_timestamp + ** @returns xcb_randr_get_crtc_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_info_cookie_t +xcb_randr_get_crtc_info_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t config_timestamp /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_CRTC_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_crtc_info_cookie_t xcb_ret; + xcb_randr_get_crtc_info_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.config_timestamp = config_timestamp; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_crtc_info_outputs + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_crtc_info_outputs (const xcb_randr_get_crtc_info_reply_t *R /**< */) +{ + return (xcb_randr_output_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_info_outputs_length + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_info_outputs_length (const xcb_randr_get_crtc_info_reply_t *R /**< */) +{ + return R->num_outputs; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_info_outputs_end + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_info_outputs_end (const xcb_randr_get_crtc_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_randr_output_t *) (R + 1)) + (R->num_outputs); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_crtc_info_possible + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_crtc_info_possible (const xcb_randr_get_crtc_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_crtc_info_outputs_end(R); + return (xcb_randr_output_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_output_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_info_possible_length + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_info_possible_length (const xcb_randr_get_crtc_info_reply_t *R /**< */) +{ + return R->num_possible_outputs; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_info_possible_end + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_info_possible_end (const xcb_randr_get_crtc_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_crtc_info_outputs_end(R); + i.data = ((xcb_randr_output_t *) child.data) + (R->num_possible_outputs); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_info_reply_t * xcb_randr_get_crtc_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_crtc_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_crtc_info_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_crtc_info_reply_t * +xcb_randr_get_crtc_info_reply (xcb_connection_t *c /**< */, + xcb_randr_get_crtc_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_crtc_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_randr_set_crtc_config_sizeof (const void *_buffer /**< */, + uint32_t outputs_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_set_crtc_config_request_t); + xcb_tmp += xcb_block_len; + /* outputs */ + xcb_block_len += outputs_len * sizeof(xcb_randr_output_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_output_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_set_crtc_config_cookie_t xcb_randr_set_crtc_config + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t timestamp + ** @param xcb_timestamp_t config_timestamp + ** @param int16_t x + ** @param int16_t y + ** @param xcb_randr_mode_t mode + ** @param uint16_t rotation + ** @param uint32_t outputs_len + ** @param const xcb_randr_output_t *outputs + ** @returns xcb_randr_set_crtc_config_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_crtc_config_cookie_t +xcb_randr_set_crtc_config (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t timestamp /**< */, + xcb_timestamp_t config_timestamp /**< */, + int16_t x /**< */, + int16_t y /**< */, + xcb_randr_mode_t mode /**< */, + uint16_t rotation /**< */, + uint32_t outputs_len /**< */, + const xcb_randr_output_t *outputs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_CRTC_CONFIG, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_randr_set_crtc_config_cookie_t xcb_ret; + xcb_randr_set_crtc_config_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.timestamp = timestamp; + xcb_out.config_timestamp = config_timestamp; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.mode = mode; + xcb_out.rotation = rotation; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_randr_output_t outputs */ + xcb_parts[4].iov_base = (char *) outputs; + xcb_parts[4].iov_len = outputs_len * sizeof(xcb_timestamp_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_set_crtc_config_cookie_t xcb_randr_set_crtc_config_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t timestamp + ** @param xcb_timestamp_t config_timestamp + ** @param int16_t x + ** @param int16_t y + ** @param xcb_randr_mode_t mode + ** @param uint16_t rotation + ** @param uint32_t outputs_len + ** @param const xcb_randr_output_t *outputs + ** @returns xcb_randr_set_crtc_config_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_crtc_config_cookie_t +xcb_randr_set_crtc_config_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t timestamp /**< */, + xcb_timestamp_t config_timestamp /**< */, + int16_t x /**< */, + int16_t y /**< */, + xcb_randr_mode_t mode /**< */, + uint16_t rotation /**< */, + uint32_t outputs_len /**< */, + const xcb_randr_output_t *outputs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_CRTC_CONFIG, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_randr_set_crtc_config_cookie_t xcb_ret; + xcb_randr_set_crtc_config_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.timestamp = timestamp; + xcb_out.config_timestamp = config_timestamp; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.mode = mode; + xcb_out.rotation = rotation; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_randr_output_t outputs */ + xcb_parts[4].iov_base = (char *) outputs; + xcb_parts[4].iov_len = outputs_len * sizeof(xcb_timestamp_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_set_crtc_config_reply_t * xcb_randr_set_crtc_config_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_set_crtc_config_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_set_crtc_config_reply_t * + ** + *****************************************************************************/ + +xcb_randr_set_crtc_config_reply_t * +xcb_randr_set_crtc_config_reply (xcb_connection_t *c /**< */, + xcb_randr_set_crtc_config_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_set_crtc_config_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_size_cookie_t xcb_randr_get_crtc_gamma_size + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_gamma_size_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_size_cookie_t +xcb_randr_get_crtc_gamma_size (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_CRTC_GAMMA_SIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_crtc_gamma_size_cookie_t xcb_ret; + xcb_randr_get_crtc_gamma_size_request_t xcb_out; + + xcb_out.crtc = crtc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_size_cookie_t xcb_randr_get_crtc_gamma_size_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_gamma_size_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_size_cookie_t +xcb_randr_get_crtc_gamma_size_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_CRTC_GAMMA_SIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_crtc_gamma_size_cookie_t xcb_ret; + xcb_randr_get_crtc_gamma_size_request_t xcb_out; + + xcb_out.crtc = crtc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_size_reply_t * xcb_randr_get_crtc_gamma_size_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_crtc_gamma_size_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_crtc_gamma_size_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_size_reply_t * +xcb_randr_get_crtc_gamma_size_reply (xcb_connection_t *c /**< */, + xcb_randr_get_crtc_gamma_size_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_crtc_gamma_size_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_randr_get_crtc_gamma_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_get_crtc_gamma_reply_t *_aux = (xcb_randr_get_crtc_gamma_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_get_crtc_gamma_reply_t); + xcb_tmp += xcb_block_len; + /* red */ + xcb_block_len += _aux->size * sizeof(uint16_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* green */ + xcb_block_len += _aux->size * sizeof(uint16_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* blue */ + xcb_block_len += _aux->size * sizeof(uint16_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_cookie_t xcb_randr_get_crtc_gamma + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_gamma_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_cookie_t +xcb_randr_get_crtc_gamma (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_CRTC_GAMMA, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_crtc_gamma_cookie_t xcb_ret; + xcb_randr_get_crtc_gamma_request_t xcb_out; + + xcb_out.crtc = crtc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_cookie_t xcb_randr_get_crtc_gamma_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_gamma_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_cookie_t +xcb_randr_get_crtc_gamma_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_CRTC_GAMMA, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_crtc_gamma_cookie_t xcb_ret; + xcb_randr_get_crtc_gamma_request_t xcb_out; + + xcb_out.crtc = crtc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint16_t * xcb_randr_get_crtc_gamma_red + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_randr_get_crtc_gamma_red (const xcb_randr_get_crtc_gamma_reply_t *R /**< */) +{ + return (uint16_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_gamma_red_length + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_gamma_red_length (const xcb_randr_get_crtc_gamma_reply_t *R /**< */) +{ + return R->size; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_gamma_red_end + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_gamma_red_end (const xcb_randr_get_crtc_gamma_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint16_t *) (R + 1)) + (R->size); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint16_t * xcb_randr_get_crtc_gamma_green + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_randr_get_crtc_gamma_green (const xcb_randr_get_crtc_gamma_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_crtc_gamma_red_end(R); + return (uint16_t *) ((char *) prev.data + XCB_TYPE_PAD(uint16_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_gamma_green_length + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_gamma_green_length (const xcb_randr_get_crtc_gamma_reply_t *R /**< */) +{ + return R->size; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_gamma_green_end + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_gamma_green_end (const xcb_randr_get_crtc_gamma_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_crtc_gamma_red_end(R); + i.data = ((uint16_t *) child.data) + (R->size); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint16_t * xcb_randr_get_crtc_gamma_blue + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_randr_get_crtc_gamma_blue (const xcb_randr_get_crtc_gamma_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_crtc_gamma_green_end(R); + return (uint16_t *) ((char *) prev.data + XCB_TYPE_PAD(uint16_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_gamma_blue_length + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_gamma_blue_length (const xcb_randr_get_crtc_gamma_reply_t *R /**< */) +{ + return R->size; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_gamma_blue_end + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_gamma_blue_end (const xcb_randr_get_crtc_gamma_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_crtc_gamma_green_end(R); + i.data = ((uint16_t *) child.data) + (R->size); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_reply_t * xcb_randr_get_crtc_gamma_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_crtc_gamma_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_crtc_gamma_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_reply_t * +xcb_randr_get_crtc_gamma_reply (xcb_connection_t *c /**< */, + xcb_randr_get_crtc_gamma_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_crtc_gamma_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_randr_set_crtc_gamma_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_set_crtc_gamma_request_t *_aux = (xcb_randr_set_crtc_gamma_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_set_crtc_gamma_request_t); + xcb_tmp += xcb_block_len; + /* red */ + xcb_block_len += _aux->size * sizeof(uint16_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* green */ + xcb_block_len += _aux->size * sizeof(uint16_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* blue */ + xcb_block_len += _aux->size * sizeof(uint16_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_crtc_gamma_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param uint16_t size + ** @param const uint16_t *red + ** @param const uint16_t *green + ** @param const uint16_t *blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_crtc_gamma_checked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + uint16_t size /**< */, + const uint16_t *red /**< */, + const uint16_t *green /**< */, + const uint16_t *blue /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_CRTC_GAMMA, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_randr_set_crtc_gamma_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.size = size; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint16_t red */ + xcb_parts[4].iov_base = (char *) red; + xcb_parts[4].iov_len = size * sizeof(uint16_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* uint16_t green */ + xcb_parts[6].iov_base = (char *) green; + xcb_parts[6].iov_len = size * sizeof(uint16_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* uint16_t blue */ + xcb_parts[8].iov_base = (char *) blue; + xcb_parts[8].iov_len = size * sizeof(uint16_t); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_crtc_gamma + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param uint16_t size + ** @param const uint16_t *red + ** @param const uint16_t *green + ** @param const uint16_t *blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_crtc_gamma (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + uint16_t size /**< */, + const uint16_t *red /**< */, + const uint16_t *green /**< */, + const uint16_t *blue /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_CRTC_GAMMA, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_randr_set_crtc_gamma_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.size = size; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint16_t red */ + xcb_parts[4].iov_base = (char *) red; + xcb_parts[4].iov_len = size * sizeof(uint16_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* uint16_t green */ + xcb_parts[6].iov_base = (char *) green; + xcb_parts[6].iov_len = size * sizeof(uint16_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* uint16_t blue */ + xcb_parts[8].iov_base = (char *) blue; + xcb_parts[8].iov_len = size * sizeof(uint16_t); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_randr_get_screen_resources_current_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_get_screen_resources_current_reply_t *_aux = (xcb_randr_get_screen_resources_current_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_get_screen_resources_current_reply_t); + xcb_tmp += xcb_block_len; + /* crtcs */ + xcb_block_len += _aux->num_crtcs * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_crtc_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* outputs */ + xcb_block_len += _aux->num_outputs * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_output_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modes */ + xcb_block_len += _aux->num_modes * sizeof(xcb_randr_mode_info_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_randr_mode_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* names */ + xcb_block_len += _aux->names_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_current_cookie_t xcb_randr_get_screen_resources_current + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_resources_current_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_current_cookie_t +xcb_randr_get_screen_resources_current (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_SCREEN_RESOURCES_CURRENT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_screen_resources_current_cookie_t xcb_ret; + xcb_randr_get_screen_resources_current_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_current_cookie_t xcb_randr_get_screen_resources_current_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_resources_current_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_current_cookie_t +xcb_randr_get_screen_resources_current_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_SCREEN_RESOURCES_CURRENT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_screen_resources_current_cookie_t xcb_ret; + xcb_randr_get_screen_resources_current_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_crtc_t * xcb_randr_get_screen_resources_current_crtcs + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_randr_crtc_t * + ** + *****************************************************************************/ + +xcb_randr_crtc_t * +xcb_randr_get_screen_resources_current_crtcs (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + return (xcb_randr_crtc_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_current_crtcs_length + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_current_crtcs_length (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + return R->num_crtcs; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_current_crtcs_end + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_current_crtcs_end (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_randr_crtc_t *) (R + 1)) + (R->num_crtcs); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_screen_resources_current_outputs + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_screen_resources_current_outputs (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_screen_resources_current_crtcs_end(R); + return (xcb_randr_output_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_output_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_current_outputs_length + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_current_outputs_length (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + return R->num_outputs; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_current_outputs_end + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_current_outputs_end (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_screen_resources_current_crtcs_end(R); + i.data = ((xcb_randr_output_t *) child.data) + (R->num_outputs); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_mode_info_t * xcb_randr_get_screen_resources_current_modes + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_randr_mode_info_t * + ** + *****************************************************************************/ + +xcb_randr_mode_info_t * +xcb_randr_get_screen_resources_current_modes (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_screen_resources_current_outputs_end(R); + return (xcb_randr_mode_info_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_mode_info_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_current_modes_length + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_current_modes_length (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + return R->num_modes; +} + + +/***************************************************************************** + ** + ** xcb_randr_mode_info_iterator_t xcb_randr_get_screen_resources_current_modes_iterator + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_randr_mode_info_iterator_t + ** + *****************************************************************************/ + +xcb_randr_mode_info_iterator_t +xcb_randr_get_screen_resources_current_modes_iterator (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + xcb_randr_mode_info_iterator_t i; + xcb_generic_iterator_t prev = xcb_randr_get_screen_resources_current_outputs_end(R); + i.data = (xcb_randr_mode_info_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_randr_mode_info_t, prev.index)); + i.rem = R->num_modes; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_randr_get_screen_resources_current_names + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_randr_get_screen_resources_current_names (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_mode_info_end(xcb_randr_get_screen_resources_current_modes_iterator(R)); + return (uint8_t *) ((char *) prev.data + XCB_TYPE_PAD(uint8_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_current_names_length + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_current_names_length (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + return R->names_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_current_names_end + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_current_names_end (const xcb_randr_get_screen_resources_current_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_mode_info_end(xcb_randr_get_screen_resources_current_modes_iterator(R)); + i.data = ((uint8_t *) child.data) + (R->names_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_current_reply_t * xcb_randr_get_screen_resources_current_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_screen_resources_current_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_screen_resources_current_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_current_reply_t * +xcb_randr_get_screen_resources_current_reply (xcb_connection_t *c /**< */, + xcb_randr_get_screen_resources_current_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_screen_resources_current_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_randr_set_crtc_transform_sizeof (const void *_buffer /**< */, + uint32_t filter_params_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_set_crtc_transform_request_t *_aux = (xcb_randr_set_crtc_transform_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_set_crtc_transform_request_t); + xcb_tmp += xcb_block_len; + /* filter_name */ + xcb_block_len += _aux->filter_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* filter_params */ + xcb_block_len += filter_params_len * sizeof(xcb_render_fixed_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_fixed_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_crtc_transform_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_render_transform_t transform + ** @param uint16_t filter_len + ** @param const char *filter_name + ** @param uint32_t filter_params_len + ** @param const xcb_render_fixed_t *filter_params + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_crtc_transform_checked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_render_transform_t transform /**< */, + uint16_t filter_len /**< */, + const char *filter_name /**< */, + uint32_t filter_params_len /**< */, + const xcb_render_fixed_t *filter_params /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_CRTC_TRANSFORM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_randr_set_crtc_transform_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.transform = transform; + xcb_out.filter_len = filter_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char filter_name */ + xcb_parts[4].iov_base = (char *) filter_name; + xcb_parts[4].iov_len = filter_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_fixed_t filter_params */ + xcb_parts[6].iov_base = (char *) filter_params; + xcb_parts[6].iov_len = filter_params_len * sizeof(xcb_render_fixed_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_crtc_transform + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_render_transform_t transform + ** @param uint16_t filter_len + ** @param const char *filter_name + ** @param uint32_t filter_params_len + ** @param const xcb_render_fixed_t *filter_params + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_crtc_transform (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_render_transform_t transform /**< */, + uint16_t filter_len /**< */, + const char *filter_name /**< */, + uint32_t filter_params_len /**< */, + const xcb_render_fixed_t *filter_params /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_CRTC_TRANSFORM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_randr_set_crtc_transform_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.transform = transform; + xcb_out.filter_len = filter_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char filter_name */ + xcb_parts[4].iov_base = (char *) filter_name; + xcb_parts[4].iov_len = filter_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_fixed_t filter_params */ + xcb_parts[6].iov_base = (char *) filter_params; + xcb_parts[6].iov_len = filter_params_len * sizeof(xcb_render_fixed_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_randr_get_crtc_transform_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_randr_get_crtc_transform_reply_t *_aux = (xcb_randr_get_crtc_transform_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_randr_get_crtc_transform_reply_t); + xcb_tmp += xcb_block_len; + /* pending_filter_name */ + xcb_block_len += _aux->pending_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* pending_params */ + xcb_block_len += _aux->pending_nparams * sizeof(xcb_render_fixed_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_fixed_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* current_filter_name */ + xcb_block_len += _aux->current_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* current_params */ + xcb_block_len += _aux->current_nparams * sizeof(xcb_render_fixed_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_fixed_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_transform_cookie_t xcb_randr_get_crtc_transform + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_transform_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_transform_cookie_t +xcb_randr_get_crtc_transform (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_CRTC_TRANSFORM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_crtc_transform_cookie_t xcb_ret; + xcb_randr_get_crtc_transform_request_t xcb_out; + + xcb_out.crtc = crtc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_transform_cookie_t xcb_randr_get_crtc_transform_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_transform_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_transform_cookie_t +xcb_randr_get_crtc_transform_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_CRTC_TRANSFORM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_crtc_transform_cookie_t xcb_ret; + xcb_randr_get_crtc_transform_request_t xcb_out; + + xcb_out.crtc = crtc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_randr_get_crtc_transform_pending_filter_name + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_randr_get_crtc_transform_pending_filter_name (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_transform_pending_filter_name_length + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_transform_pending_filter_name_length (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + return R->pending_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_transform_pending_filter_name_end + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_transform_pending_filter_name_end (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->pending_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_render_fixed_t * xcb_randr_get_crtc_transform_pending_params + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_render_fixed_t * + ** + *****************************************************************************/ + +xcb_render_fixed_t * +xcb_randr_get_crtc_transform_pending_params (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_crtc_transform_pending_filter_name_end(R); + return (xcb_render_fixed_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_render_fixed_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_transform_pending_params_length + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_transform_pending_params_length (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + return R->pending_nparams; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_transform_pending_params_end + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_transform_pending_params_end (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_crtc_transform_pending_filter_name_end(R); + i.data = ((xcb_render_fixed_t *) child.data) + (R->pending_nparams); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** char * xcb_randr_get_crtc_transform_current_filter_name + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_randr_get_crtc_transform_current_filter_name (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_crtc_transform_pending_params_end(R); + return (char *) ((char *) prev.data + XCB_TYPE_PAD(char, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_transform_current_filter_name_length + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_transform_current_filter_name_length (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + return R->current_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_transform_current_filter_name_end + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_transform_current_filter_name_end (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_crtc_transform_pending_params_end(R); + i.data = ((char *) child.data) + (R->current_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_render_fixed_t * xcb_randr_get_crtc_transform_current_params + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_render_fixed_t * + ** + *****************************************************************************/ + +xcb_render_fixed_t * +xcb_randr_get_crtc_transform_current_params (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_randr_get_crtc_transform_current_filter_name_end(R); + return (xcb_render_fixed_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_render_fixed_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_transform_current_params_length + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_transform_current_params_length (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + return R->current_nparams; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_transform_current_params_end + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_transform_current_params_end (const xcb_randr_get_crtc_transform_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_randr_get_crtc_transform_current_filter_name_end(R); + i.data = ((xcb_render_fixed_t *) child.data) + (R->current_nparams); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_transform_reply_t * xcb_randr_get_crtc_transform_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_crtc_transform_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_crtc_transform_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_crtc_transform_reply_t * +xcb_randr_get_crtc_transform_reply (xcb_connection_t *c /**< */, + xcb_randr_get_crtc_transform_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_crtc_transform_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_randr_get_panning_cookie_t xcb_randr_get_panning + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_panning_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_panning_cookie_t +xcb_randr_get_panning (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_PANNING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_panning_cookie_t xcb_ret; + xcb_randr_get_panning_request_t xcb_out; + + xcb_out.crtc = crtc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_panning_cookie_t xcb_randr_get_panning_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_panning_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_panning_cookie_t +xcb_randr_get_panning_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_PANNING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_panning_cookie_t xcb_ret; + xcb_randr_get_panning_request_t xcb_out; + + xcb_out.crtc = crtc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_panning_reply_t * xcb_randr_get_panning_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_panning_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_panning_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_panning_reply_t * +xcb_randr_get_panning_reply (xcb_connection_t *c /**< */, + xcb_randr_get_panning_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_panning_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_randr_set_panning_cookie_t xcb_randr_set_panning + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t timestamp + ** @param uint16_t left + ** @param uint16_t top + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t track_left + ** @param uint16_t track_top + ** @param uint16_t track_width + ** @param uint16_t track_height + ** @param int16_t border_left + ** @param int16_t border_top + ** @param int16_t border_right + ** @param int16_t border_bottom + ** @returns xcb_randr_set_panning_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_panning_cookie_t +xcb_randr_set_panning (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t timestamp /**< */, + uint16_t left /**< */, + uint16_t top /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t track_left /**< */, + uint16_t track_top /**< */, + uint16_t track_width /**< */, + uint16_t track_height /**< */, + int16_t border_left /**< */, + int16_t border_top /**< */, + int16_t border_right /**< */, + int16_t border_bottom /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_PANNING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_set_panning_cookie_t xcb_ret; + xcb_randr_set_panning_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.timestamp = timestamp; + xcb_out.left = left; + xcb_out.top = top; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.track_left = track_left; + xcb_out.track_top = track_top; + xcb_out.track_width = track_width; + xcb_out.track_height = track_height; + xcb_out.border_left = border_left; + xcb_out.border_top = border_top; + xcb_out.border_right = border_right; + xcb_out.border_bottom = border_bottom; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_set_panning_cookie_t xcb_randr_set_panning_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t timestamp + ** @param uint16_t left + ** @param uint16_t top + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t track_left + ** @param uint16_t track_top + ** @param uint16_t track_width + ** @param uint16_t track_height + ** @param int16_t border_left + ** @param int16_t border_top + ** @param int16_t border_right + ** @param int16_t border_bottom + ** @returns xcb_randr_set_panning_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_panning_cookie_t +xcb_randr_set_panning_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t timestamp /**< */, + uint16_t left /**< */, + uint16_t top /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t track_left /**< */, + uint16_t track_top /**< */, + uint16_t track_width /**< */, + uint16_t track_height /**< */, + int16_t border_left /**< */, + int16_t border_top /**< */, + int16_t border_right /**< */, + int16_t border_bottom /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_PANNING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_set_panning_cookie_t xcb_ret; + xcb_randr_set_panning_request_t xcb_out; + + xcb_out.crtc = crtc; + xcb_out.timestamp = timestamp; + xcb_out.left = left; + xcb_out.top = top; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.track_left = track_left; + xcb_out.track_top = track_top; + xcb_out.track_width = track_width; + xcb_out.track_height = track_height; + xcb_out.border_left = border_left; + xcb_out.border_top = border_top; + xcb_out.border_right = border_right; + xcb_out.border_bottom = border_bottom; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_set_panning_reply_t * xcb_randr_set_panning_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_set_panning_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_set_panning_reply_t * + ** + *****************************************************************************/ + +xcb_randr_set_panning_reply_t * +xcb_randr_set_panning_reply (xcb_connection_t *c /**< */, + xcb_randr_set_panning_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_set_panning_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_output_primary_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_randr_output_t output + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_output_primary_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_randr_output_t output /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_OUTPUT_PRIMARY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_set_output_primary_request_t xcb_out; + + xcb_out.window = window; + xcb_out.output = output; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_output_primary + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_randr_output_t output + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_output_primary (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_randr_output_t output /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_SET_OUTPUT_PRIMARY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_randr_set_output_primary_request_t xcb_out; + + xcb_out.window = window; + xcb_out.output = output; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_output_primary_cookie_t xcb_randr_get_output_primary + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_output_primary_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_primary_cookie_t +xcb_randr_get_output_primary (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_OUTPUT_PRIMARY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_output_primary_cookie_t xcb_ret; + xcb_randr_get_output_primary_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_output_primary_cookie_t xcb_randr_get_output_primary_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_output_primary_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_primary_cookie_t +xcb_randr_get_output_primary_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_randr_id, + /* opcode */ XCB_RANDR_GET_OUTPUT_PRIMARY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_randr_get_output_primary_cookie_t xcb_ret; + xcb_randr_get_output_primary_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_randr_get_output_primary_reply_t * xcb_randr_get_output_primary_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_output_primary_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_output_primary_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_output_primary_reply_t * +xcb_randr_get_output_primary_reply (xcb_connection_t *c /**< */, + xcb_randr_get_output_primary_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_randr_get_output_primary_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_randr_crtc_change_next + ** + ** @param xcb_randr_crtc_change_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_crtc_change_next (xcb_randr_crtc_change_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_randr_crtc_change_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_crtc_change_end + ** + ** @param xcb_randr_crtc_change_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_crtc_change_end (xcb_randr_crtc_change_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_randr_output_change_next + ** + ** @param xcb_randr_output_change_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_output_change_next (xcb_randr_output_change_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_randr_output_change_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_output_change_end + ** + ** @param xcb_randr_output_change_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_output_change_end (xcb_randr_output_change_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_randr_output_property_next + ** + ** @param xcb_randr_output_property_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_output_property_next (xcb_randr_output_property_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_randr_output_property_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_output_property_end + ** + ** @param xcb_randr_output_property_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_output_property_end (xcb_randr_output_property_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_randr_notify_data_next + ** + ** @param xcb_randr_notify_data_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_notify_data_next (xcb_randr_notify_data_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_randr_notify_data_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_notify_data_end + ** + ** @param xcb_randr_notify_data_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_notify_data_end (xcb_randr_notify_data_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/randr.h b/external/mit/xorg/lib/libxcb/files/randr.h new file mode 100644 index 000000000..4f4f2104c --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/randr.h @@ -0,0 +1,5075 @@ +/* + * This file generated automatically from randr.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_RandR_API XCB RandR API + * @brief RandR XCB Protocol Implementation. + * @{ + **/ + +#ifndef __RANDR_H +#define __RANDR_H + +#include "xcb.h" +#include "xproto.h" +#include "render.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_RANDR_MAJOR_VERSION 1 +#define XCB_RANDR_MINOR_VERSION 3 + +extern xcb_extension_t xcb_randr_id; + +typedef uint32_t xcb_randr_mode_t; + +/** + * @brief xcb_randr_mode_iterator_t + **/ +typedef struct xcb_randr_mode_iterator_t { + xcb_randr_mode_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_mode_iterator_t; + +typedef uint32_t xcb_randr_crtc_t; + +/** + * @brief xcb_randr_crtc_iterator_t + **/ +typedef struct xcb_randr_crtc_iterator_t { + xcb_randr_crtc_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_crtc_iterator_t; + +typedef uint32_t xcb_randr_output_t; + +/** + * @brief xcb_randr_output_iterator_t + **/ +typedef struct xcb_randr_output_iterator_t { + xcb_randr_output_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_output_iterator_t; + +/** Opcode for xcb_randr_bad_output. */ +#define XCB_RANDR_BAD_OUTPUT 0 + +/** + * @brief xcb_randr_bad_output_error_t + **/ +typedef struct xcb_randr_bad_output_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_randr_bad_output_error_t; + +/** Opcode for xcb_randr_bad_crtc. */ +#define XCB_RANDR_BAD_CRTC 1 + +/** + * @brief xcb_randr_bad_crtc_error_t + **/ +typedef struct xcb_randr_bad_crtc_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_randr_bad_crtc_error_t; + +/** Opcode for xcb_randr_bad_mode. */ +#define XCB_RANDR_BAD_MODE 2 + +/** + * @brief xcb_randr_bad_mode_error_t + **/ +typedef struct xcb_randr_bad_mode_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_randr_bad_mode_error_t; + +typedef enum xcb_randr_rotation_t { + XCB_RANDR_ROTATION_ROTATE_0 = 1, + XCB_RANDR_ROTATION_ROTATE_90 = 2, + XCB_RANDR_ROTATION_ROTATE_180 = 4, + XCB_RANDR_ROTATION_ROTATE_270 = 8, + XCB_RANDR_ROTATION_REFLECT_X = 16, + XCB_RANDR_ROTATION_REFLECT_Y = 32 +} xcb_randr_rotation_t; + +/** + * @brief xcb_randr_screen_size_t + **/ +typedef struct xcb_randr_screen_size_t { + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t mwidth; /**< */ + uint16_t mheight; /**< */ +} xcb_randr_screen_size_t; + +/** + * @brief xcb_randr_screen_size_iterator_t + **/ +typedef struct xcb_randr_screen_size_iterator_t { + xcb_randr_screen_size_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_screen_size_iterator_t; + +/** + * @brief xcb_randr_refresh_rates_t + **/ +typedef struct xcb_randr_refresh_rates_t { + uint16_t nRates; /**< */ +} xcb_randr_refresh_rates_t; + +/** + * @brief xcb_randr_refresh_rates_iterator_t + **/ +typedef struct xcb_randr_refresh_rates_iterator_t { + xcb_randr_refresh_rates_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_refresh_rates_iterator_t; + +/** + * @brief xcb_randr_query_version_cookie_t + **/ +typedef struct xcb_randr_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_query_version_cookie_t; + +/** Opcode for xcb_randr_query_version. */ +#define XCB_RANDR_QUERY_VERSION 0 + +/** + * @brief xcb_randr_query_version_request_t + **/ +typedef struct xcb_randr_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ +} xcb_randr_query_version_request_t; + +/** + * @brief xcb_randr_query_version_reply_t + **/ +typedef struct xcb_randr_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_randr_query_version_reply_t; + +typedef enum xcb_randr_set_config_t { + XCB_RANDR_SET_CONFIG_SUCCESS = 0, + XCB_RANDR_SET_CONFIG_INVALID_CONFIG_TIME = 1, + XCB_RANDR_SET_CONFIG_INVALID_TIME = 2, + XCB_RANDR_SET_CONFIG_FAILED = 3 +} xcb_randr_set_config_t; + +/** + * @brief xcb_randr_set_screen_config_cookie_t + **/ +typedef struct xcb_randr_set_screen_config_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_set_screen_config_cookie_t; + +/** Opcode for xcb_randr_set_screen_config. */ +#define XCB_RANDR_SET_SCREEN_CONFIG 2 + +/** + * @brief xcb_randr_set_screen_config_request_t + **/ +typedef struct xcb_randr_set_screen_config_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_timestamp_t config_timestamp; /**< */ + uint16_t sizeID; /**< */ + uint16_t rotation; /**< */ + uint16_t rate; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_randr_set_screen_config_request_t; + +/** + * @brief xcb_randr_set_screen_config_reply_t + **/ +typedef struct xcb_randr_set_screen_config_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_timestamp_t new_timestamp; /**< */ + xcb_timestamp_t config_timestamp; /**< */ + xcb_window_t root; /**< */ + uint16_t subpixel_order; /**< */ + uint8_t pad0[10]; /**< */ +} xcb_randr_set_screen_config_reply_t; + +typedef enum xcb_randr_notify_mask_t { + XCB_RANDR_NOTIFY_MASK_SCREEN_CHANGE = 1, + XCB_RANDR_NOTIFY_MASK_CRTC_CHANGE = 2, + XCB_RANDR_NOTIFY_MASK_OUTPUT_CHANGE = 4, + XCB_RANDR_NOTIFY_MASK_OUTPUT_PROPERTY = 8 +} xcb_randr_notify_mask_t; + +/** Opcode for xcb_randr_select_input. */ +#define XCB_RANDR_SELECT_INPUT 4 + +/** + * @brief xcb_randr_select_input_request_t + **/ +typedef struct xcb_randr_select_input_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint16_t enable; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_randr_select_input_request_t; + +/** + * @brief xcb_randr_get_screen_info_cookie_t + **/ +typedef struct xcb_randr_get_screen_info_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_screen_info_cookie_t; + +/** Opcode for xcb_randr_get_screen_info. */ +#define XCB_RANDR_GET_SCREEN_INFO 5 + +/** + * @brief xcb_randr_get_screen_info_request_t + **/ +typedef struct xcb_randr_get_screen_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_randr_get_screen_info_request_t; + +/** + * @brief xcb_randr_get_screen_info_reply_t + **/ +typedef struct xcb_randr_get_screen_info_reply_t { + uint8_t response_type; /**< */ + uint8_t rotations; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t root; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_timestamp_t config_timestamp; /**< */ + uint16_t nSizes; /**< */ + uint16_t sizeID; /**< */ + uint16_t rotation; /**< */ + uint16_t rate; /**< */ + uint16_t nInfo; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_randr_get_screen_info_reply_t; + +/** + * @brief xcb_randr_get_screen_size_range_cookie_t + **/ +typedef struct xcb_randr_get_screen_size_range_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_screen_size_range_cookie_t; + +/** Opcode for xcb_randr_get_screen_size_range. */ +#define XCB_RANDR_GET_SCREEN_SIZE_RANGE 6 + +/** + * @brief xcb_randr_get_screen_size_range_request_t + **/ +typedef struct xcb_randr_get_screen_size_range_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_randr_get_screen_size_range_request_t; + +/** + * @brief xcb_randr_get_screen_size_range_reply_t + **/ +typedef struct xcb_randr_get_screen_size_range_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t min_width; /**< */ + uint16_t min_height; /**< */ + uint16_t max_width; /**< */ + uint16_t max_height; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_randr_get_screen_size_range_reply_t; + +/** Opcode for xcb_randr_set_screen_size. */ +#define XCB_RANDR_SET_SCREEN_SIZE 7 + +/** + * @brief xcb_randr_set_screen_size_request_t + **/ +typedef struct xcb_randr_set_screen_size_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint32_t mm_width; /**< */ + uint32_t mm_height; /**< */ +} xcb_randr_set_screen_size_request_t; + +typedef enum xcb_randr_mode_flag_t { + XCB_RANDR_MODE_FLAG_HSYNC_POSITIVE = 1, + XCB_RANDR_MODE_FLAG_HSYNC_NEGATIVE = 2, + XCB_RANDR_MODE_FLAG_VSYNC_POSITIVE = 4, + XCB_RANDR_MODE_FLAG_VSYNC_NEGATIVE = 8, + XCB_RANDR_MODE_FLAG_INTERLACE = 16, + XCB_RANDR_MODE_FLAG_DOUBLE_SCAN = 32, + XCB_RANDR_MODE_FLAG_CSYNC = 64, + XCB_RANDR_MODE_FLAG_CSYNC_POSITIVE = 128, + XCB_RANDR_MODE_FLAG_CSYNC_NEGATIVE = 256, + XCB_RANDR_MODE_FLAG_HSKEW_PRESENT = 512, + XCB_RANDR_MODE_FLAG_BCAST = 1024, + XCB_RANDR_MODE_FLAG_PIXEL_MULTIPLEX = 2048, + XCB_RANDR_MODE_FLAG_DOUBLE_CLOCK = 4096, + XCB_RANDR_MODE_FLAG_HALVE_CLOCK = 8192 +} xcb_randr_mode_flag_t; + +/** + * @brief xcb_randr_mode_info_t + **/ +typedef struct xcb_randr_mode_info_t { + uint32_t id; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint32_t dot_clock; /**< */ + uint16_t hsync_start; /**< */ + uint16_t hsync_end; /**< */ + uint16_t htotal; /**< */ + uint16_t hskew; /**< */ + uint16_t vsync_start; /**< */ + uint16_t vsync_end; /**< */ + uint16_t vtotal; /**< */ + uint16_t name_len; /**< */ + uint32_t mode_flags; /**< */ +} xcb_randr_mode_info_t; + +/** + * @brief xcb_randr_mode_info_iterator_t + **/ +typedef struct xcb_randr_mode_info_iterator_t { + xcb_randr_mode_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_mode_info_iterator_t; + +/** + * @brief xcb_randr_get_screen_resources_cookie_t + **/ +typedef struct xcb_randr_get_screen_resources_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_screen_resources_cookie_t; + +/** Opcode for xcb_randr_get_screen_resources. */ +#define XCB_RANDR_GET_SCREEN_RESOURCES 8 + +/** + * @brief xcb_randr_get_screen_resources_request_t + **/ +typedef struct xcb_randr_get_screen_resources_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_randr_get_screen_resources_request_t; + +/** + * @brief xcb_randr_get_screen_resources_reply_t + **/ +typedef struct xcb_randr_get_screen_resources_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_timestamp_t config_timestamp; /**< */ + uint16_t num_crtcs; /**< */ + uint16_t num_outputs; /**< */ + uint16_t num_modes; /**< */ + uint16_t names_len; /**< */ + uint8_t pad1[8]; /**< */ +} xcb_randr_get_screen_resources_reply_t; + +typedef enum xcb_randr_connection_t { + XCB_RANDR_CONNECTION_CONNECTED, + XCB_RANDR_CONNECTION_DISCONNECTED, + XCB_RANDR_CONNECTION_UNKNOWN +} xcb_randr_connection_t; + +/** + * @brief xcb_randr_get_output_info_cookie_t + **/ +typedef struct xcb_randr_get_output_info_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_output_info_cookie_t; + +/** Opcode for xcb_randr_get_output_info. */ +#define XCB_RANDR_GET_OUTPUT_INFO 9 + +/** + * @brief xcb_randr_get_output_info_request_t + **/ +typedef struct xcb_randr_get_output_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_output_t output; /**< */ + xcb_timestamp_t config_timestamp; /**< */ +} xcb_randr_get_output_info_request_t; + +/** + * @brief xcb_randr_get_output_info_reply_t + **/ +typedef struct xcb_randr_get_output_info_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_randr_crtc_t crtc; /**< */ + uint32_t mm_width; /**< */ + uint32_t mm_height; /**< */ + uint8_t connection; /**< */ + uint8_t subpixel_order; /**< */ + uint16_t num_crtcs; /**< */ + uint16_t num_modes; /**< */ + uint16_t num_preferred; /**< */ + uint16_t num_clones; /**< */ + uint16_t name_len; /**< */ +} xcb_randr_get_output_info_reply_t; + +/** + * @brief xcb_randr_list_output_properties_cookie_t + **/ +typedef struct xcb_randr_list_output_properties_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_list_output_properties_cookie_t; + +/** Opcode for xcb_randr_list_output_properties. */ +#define XCB_RANDR_LIST_OUTPUT_PROPERTIES 10 + +/** + * @brief xcb_randr_list_output_properties_request_t + **/ +typedef struct xcb_randr_list_output_properties_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_output_t output; /**< */ +} xcb_randr_list_output_properties_request_t; + +/** + * @brief xcb_randr_list_output_properties_reply_t + **/ +typedef struct xcb_randr_list_output_properties_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t num_atoms; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_randr_list_output_properties_reply_t; + +/** + * @brief xcb_randr_query_output_property_cookie_t + **/ +typedef struct xcb_randr_query_output_property_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_query_output_property_cookie_t; + +/** Opcode for xcb_randr_query_output_property. */ +#define XCB_RANDR_QUERY_OUTPUT_PROPERTY 11 + +/** + * @brief xcb_randr_query_output_property_request_t + **/ +typedef struct xcb_randr_query_output_property_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_output_t output; /**< */ + xcb_atom_t property; /**< */ +} xcb_randr_query_output_property_request_t; + +/** + * @brief xcb_randr_query_output_property_reply_t + **/ +typedef struct xcb_randr_query_output_property_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pending; /**< */ + uint8_t range; /**< */ + uint8_t immutable; /**< */ + uint8_t pad1[21]; /**< */ +} xcb_randr_query_output_property_reply_t; + +/** Opcode for xcb_randr_configure_output_property. */ +#define XCB_RANDR_CONFIGURE_OUTPUT_PROPERTY 12 + +/** + * @brief xcb_randr_configure_output_property_request_t + **/ +typedef struct xcb_randr_configure_output_property_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_output_t output; /**< */ + xcb_atom_t property; /**< */ + uint8_t pending; /**< */ + uint8_t range; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_randr_configure_output_property_request_t; + +/** Opcode for xcb_randr_change_output_property. */ +#define XCB_RANDR_CHANGE_OUTPUT_PROPERTY 13 + +/** + * @brief xcb_randr_change_output_property_request_t + **/ +typedef struct xcb_randr_change_output_property_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_output_t output; /**< */ + xcb_atom_t property; /**< */ + xcb_atom_t type; /**< */ + uint8_t format; /**< */ + uint8_t mode; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t num_units; /**< */ +} xcb_randr_change_output_property_request_t; + +/** Opcode for xcb_randr_delete_output_property. */ +#define XCB_RANDR_DELETE_OUTPUT_PROPERTY 14 + +/** + * @brief xcb_randr_delete_output_property_request_t + **/ +typedef struct xcb_randr_delete_output_property_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_output_t output; /**< */ + xcb_atom_t property; /**< */ +} xcb_randr_delete_output_property_request_t; + +/** + * @brief xcb_randr_get_output_property_cookie_t + **/ +typedef struct xcb_randr_get_output_property_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_output_property_cookie_t; + +/** Opcode for xcb_randr_get_output_property. */ +#define XCB_RANDR_GET_OUTPUT_PROPERTY 15 + +/** + * @brief xcb_randr_get_output_property_request_t + **/ +typedef struct xcb_randr_get_output_property_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_output_t output; /**< */ + xcb_atom_t property; /**< */ + xcb_atom_t type; /**< */ + uint32_t long_offset; /**< */ + uint32_t long_length; /**< */ + uint8_t _delete; /**< */ + uint8_t pending; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_randr_get_output_property_request_t; + +/** + * @brief xcb_randr_get_output_property_reply_t + **/ +typedef struct xcb_randr_get_output_property_reply_t { + uint8_t response_type; /**< */ + uint8_t format; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_atom_t type; /**< */ + uint32_t bytes_after; /**< */ + uint32_t num_items; /**< */ + uint8_t pad0[12]; /**< */ +} xcb_randr_get_output_property_reply_t; + +/** + * @brief xcb_randr_create_mode_cookie_t + **/ +typedef struct xcb_randr_create_mode_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_create_mode_cookie_t; + +/** Opcode for xcb_randr_create_mode. */ +#define XCB_RANDR_CREATE_MODE 16 + +/** + * @brief xcb_randr_create_mode_request_t + **/ +typedef struct xcb_randr_create_mode_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_randr_mode_info_t mode_info; /**< */ +} xcb_randr_create_mode_request_t; + +/** + * @brief xcb_randr_create_mode_reply_t + **/ +typedef struct xcb_randr_create_mode_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_randr_mode_t mode; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_randr_create_mode_reply_t; + +/** Opcode for xcb_randr_destroy_mode. */ +#define XCB_RANDR_DESTROY_MODE 17 + +/** + * @brief xcb_randr_destroy_mode_request_t + **/ +typedef struct xcb_randr_destroy_mode_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_mode_t mode; /**< */ +} xcb_randr_destroy_mode_request_t; + +/** Opcode for xcb_randr_add_output_mode. */ +#define XCB_RANDR_ADD_OUTPUT_MODE 18 + +/** + * @brief xcb_randr_add_output_mode_request_t + **/ +typedef struct xcb_randr_add_output_mode_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_output_t output; /**< */ + xcb_randr_mode_t mode; /**< */ +} xcb_randr_add_output_mode_request_t; + +/** Opcode for xcb_randr_delete_output_mode. */ +#define XCB_RANDR_DELETE_OUTPUT_MODE 19 + +/** + * @brief xcb_randr_delete_output_mode_request_t + **/ +typedef struct xcb_randr_delete_output_mode_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_output_t output; /**< */ + xcb_randr_mode_t mode; /**< */ +} xcb_randr_delete_output_mode_request_t; + +/** + * @brief xcb_randr_get_crtc_info_cookie_t + **/ +typedef struct xcb_randr_get_crtc_info_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_crtc_info_cookie_t; + +/** Opcode for xcb_randr_get_crtc_info. */ +#define XCB_RANDR_GET_CRTC_INFO 20 + +/** + * @brief xcb_randr_get_crtc_info_request_t + **/ +typedef struct xcb_randr_get_crtc_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_crtc_t crtc; /**< */ + xcb_timestamp_t config_timestamp; /**< */ +} xcb_randr_get_crtc_info_request_t; + +/** + * @brief xcb_randr_get_crtc_info_reply_t + **/ +typedef struct xcb_randr_get_crtc_info_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_timestamp_t timestamp; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + xcb_randr_mode_t mode; /**< */ + uint16_t rotation; /**< */ + uint16_t rotations; /**< */ + uint16_t num_outputs; /**< */ + uint16_t num_possible_outputs; /**< */ +} xcb_randr_get_crtc_info_reply_t; + +/** + * @brief xcb_randr_set_crtc_config_cookie_t + **/ +typedef struct xcb_randr_set_crtc_config_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_set_crtc_config_cookie_t; + +/** Opcode for xcb_randr_set_crtc_config. */ +#define XCB_RANDR_SET_CRTC_CONFIG 21 + +/** + * @brief xcb_randr_set_crtc_config_request_t + **/ +typedef struct xcb_randr_set_crtc_config_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_crtc_t crtc; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_timestamp_t config_timestamp; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + xcb_randr_mode_t mode; /**< */ + uint16_t rotation; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_randr_set_crtc_config_request_t; + +/** + * @brief xcb_randr_set_crtc_config_reply_t + **/ +typedef struct xcb_randr_set_crtc_config_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_timestamp_t timestamp; /**< */ + uint8_t pad0[20]; /**< */ +} xcb_randr_set_crtc_config_reply_t; + +/** + * @brief xcb_randr_get_crtc_gamma_size_cookie_t + **/ +typedef struct xcb_randr_get_crtc_gamma_size_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_crtc_gamma_size_cookie_t; + +/** Opcode for xcb_randr_get_crtc_gamma_size. */ +#define XCB_RANDR_GET_CRTC_GAMMA_SIZE 22 + +/** + * @brief xcb_randr_get_crtc_gamma_size_request_t + **/ +typedef struct xcb_randr_get_crtc_gamma_size_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_crtc_t crtc; /**< */ +} xcb_randr_get_crtc_gamma_size_request_t; + +/** + * @brief xcb_randr_get_crtc_gamma_size_reply_t + **/ +typedef struct xcb_randr_get_crtc_gamma_size_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t size; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_randr_get_crtc_gamma_size_reply_t; + +/** + * @brief xcb_randr_get_crtc_gamma_cookie_t + **/ +typedef struct xcb_randr_get_crtc_gamma_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_crtc_gamma_cookie_t; + +/** Opcode for xcb_randr_get_crtc_gamma. */ +#define XCB_RANDR_GET_CRTC_GAMMA 23 + +/** + * @brief xcb_randr_get_crtc_gamma_request_t + **/ +typedef struct xcb_randr_get_crtc_gamma_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_crtc_t crtc; /**< */ +} xcb_randr_get_crtc_gamma_request_t; + +/** + * @brief xcb_randr_get_crtc_gamma_reply_t + **/ +typedef struct xcb_randr_get_crtc_gamma_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t size; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_randr_get_crtc_gamma_reply_t; + +/** Opcode for xcb_randr_set_crtc_gamma. */ +#define XCB_RANDR_SET_CRTC_GAMMA 24 + +/** + * @brief xcb_randr_set_crtc_gamma_request_t + **/ +typedef struct xcb_randr_set_crtc_gamma_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_crtc_t crtc; /**< */ + uint16_t size; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_randr_set_crtc_gamma_request_t; + +/** + * @brief xcb_randr_get_screen_resources_current_cookie_t + **/ +typedef struct xcb_randr_get_screen_resources_current_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_screen_resources_current_cookie_t; + +/** Opcode for xcb_randr_get_screen_resources_current. */ +#define XCB_RANDR_GET_SCREEN_RESOURCES_CURRENT 25 + +/** + * @brief xcb_randr_get_screen_resources_current_request_t + **/ +typedef struct xcb_randr_get_screen_resources_current_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_randr_get_screen_resources_current_request_t; + +/** + * @brief xcb_randr_get_screen_resources_current_reply_t + **/ +typedef struct xcb_randr_get_screen_resources_current_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_timestamp_t config_timestamp; /**< */ + uint16_t num_crtcs; /**< */ + uint16_t num_outputs; /**< */ + uint16_t num_modes; /**< */ + uint16_t names_len; /**< */ + uint8_t pad1[8]; /**< */ +} xcb_randr_get_screen_resources_current_reply_t; + +/** Opcode for xcb_randr_set_crtc_transform. */ +#define XCB_RANDR_SET_CRTC_TRANSFORM 26 + +/** + * @brief xcb_randr_set_crtc_transform_request_t + **/ +typedef struct xcb_randr_set_crtc_transform_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_crtc_t crtc; /**< */ + xcb_render_transform_t transform; /**< */ + uint16_t filter_len; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_randr_set_crtc_transform_request_t; + +/** + * @brief xcb_randr_get_crtc_transform_cookie_t + **/ +typedef struct xcb_randr_get_crtc_transform_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_crtc_transform_cookie_t; + +/** Opcode for xcb_randr_get_crtc_transform. */ +#define XCB_RANDR_GET_CRTC_TRANSFORM 27 + +/** + * @brief xcb_randr_get_crtc_transform_request_t + **/ +typedef struct xcb_randr_get_crtc_transform_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_crtc_t crtc; /**< */ +} xcb_randr_get_crtc_transform_request_t; + +/** + * @brief xcb_randr_get_crtc_transform_reply_t + **/ +typedef struct xcb_randr_get_crtc_transform_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_render_transform_t pending_transform; /**< */ + uint8_t has_transforms; /**< */ + uint8_t pad1[3]; /**< */ + xcb_render_transform_t current_transform; /**< */ + uint8_t pad2[4]; /**< */ + uint16_t pending_len; /**< */ + uint16_t pending_nparams; /**< */ + uint16_t current_len; /**< */ + uint16_t current_nparams; /**< */ +} xcb_randr_get_crtc_transform_reply_t; + +/** + * @brief xcb_randr_get_panning_cookie_t + **/ +typedef struct xcb_randr_get_panning_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_panning_cookie_t; + +/** Opcode for xcb_randr_get_panning. */ +#define XCB_RANDR_GET_PANNING 28 + +/** + * @brief xcb_randr_get_panning_request_t + **/ +typedef struct xcb_randr_get_panning_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_crtc_t crtc; /**< */ +} xcb_randr_get_panning_request_t; + +/** + * @brief xcb_randr_get_panning_reply_t + **/ +typedef struct xcb_randr_get_panning_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_timestamp_t timestamp; /**< */ + uint16_t left; /**< */ + uint16_t top; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t track_left; /**< */ + uint16_t track_top; /**< */ + uint16_t track_width; /**< */ + uint16_t track_height; /**< */ + int16_t border_left; /**< */ + int16_t border_top; /**< */ + int16_t border_right; /**< */ + int16_t border_bottom; /**< */ +} xcb_randr_get_panning_reply_t; + +/** + * @brief xcb_randr_set_panning_cookie_t + **/ +typedef struct xcb_randr_set_panning_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_set_panning_cookie_t; + +/** Opcode for xcb_randr_set_panning. */ +#define XCB_RANDR_SET_PANNING 29 + +/** + * @brief xcb_randr_set_panning_request_t + **/ +typedef struct xcb_randr_set_panning_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_randr_crtc_t crtc; /**< */ + xcb_timestamp_t timestamp; /**< */ + uint16_t left; /**< */ + uint16_t top; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t track_left; /**< */ + uint16_t track_top; /**< */ + uint16_t track_width; /**< */ + uint16_t track_height; /**< */ + int16_t border_left; /**< */ + int16_t border_top; /**< */ + int16_t border_right; /**< */ + int16_t border_bottom; /**< */ +} xcb_randr_set_panning_request_t; + +/** + * @brief xcb_randr_set_panning_reply_t + **/ +typedef struct xcb_randr_set_panning_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_timestamp_t timestamp; /**< */ +} xcb_randr_set_panning_reply_t; + +/** Opcode for xcb_randr_set_output_primary. */ +#define XCB_RANDR_SET_OUTPUT_PRIMARY 30 + +/** + * @brief xcb_randr_set_output_primary_request_t + **/ +typedef struct xcb_randr_set_output_primary_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_randr_output_t output; /**< */ +} xcb_randr_set_output_primary_request_t; + +/** + * @brief xcb_randr_get_output_primary_cookie_t + **/ +typedef struct xcb_randr_get_output_primary_cookie_t { + unsigned int sequence; /**< */ +} xcb_randr_get_output_primary_cookie_t; + +/** Opcode for xcb_randr_get_output_primary. */ +#define XCB_RANDR_GET_OUTPUT_PRIMARY 31 + +/** + * @brief xcb_randr_get_output_primary_request_t + **/ +typedef struct xcb_randr_get_output_primary_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_randr_get_output_primary_request_t; + +/** + * @brief xcb_randr_get_output_primary_reply_t + **/ +typedef struct xcb_randr_get_output_primary_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_randr_output_t output; /**< */ +} xcb_randr_get_output_primary_reply_t; + +/** Opcode for xcb_randr_screen_change_notify. */ +#define XCB_RANDR_SCREEN_CHANGE_NOTIFY 0 + +/** + * @brief xcb_randr_screen_change_notify_event_t + **/ +typedef struct xcb_randr_screen_change_notify_event_t { + uint8_t response_type; /**< */ + uint8_t rotation; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_timestamp_t config_timestamp; /**< */ + xcb_window_t root; /**< */ + xcb_window_t request_window; /**< */ + uint16_t sizeID; /**< */ + uint16_t subpixel_order; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t mwidth; /**< */ + uint16_t mheight; /**< */ +} xcb_randr_screen_change_notify_event_t; + +typedef enum xcb_randr_notify_t { + XCB_RANDR_NOTIFY_CRTC_CHANGE = 0, + XCB_RANDR_NOTIFY_OUTPUT_CHANGE = 1, + XCB_RANDR_NOTIFY_OUTPUT_PROPERTY = 2 +} xcb_randr_notify_t; + +/** + * @brief xcb_randr_crtc_change_t + **/ +typedef struct xcb_randr_crtc_change_t { + xcb_timestamp_t timestamp; /**< */ + xcb_window_t window; /**< */ + xcb_randr_crtc_t crtc; /**< */ + xcb_randr_mode_t mode; /**< */ + uint16_t rotation; /**< */ + uint8_t pad0[2]; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_randr_crtc_change_t; + +/** + * @brief xcb_randr_crtc_change_iterator_t + **/ +typedef struct xcb_randr_crtc_change_iterator_t { + xcb_randr_crtc_change_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_crtc_change_iterator_t; + +/** + * @brief xcb_randr_output_change_t + **/ +typedef struct xcb_randr_output_change_t { + xcb_timestamp_t timestamp; /**< */ + xcb_timestamp_t config_timestamp; /**< */ + xcb_window_t window; /**< */ + xcb_randr_output_t output; /**< */ + xcb_randr_crtc_t crtc; /**< */ + xcb_randr_mode_t mode; /**< */ + uint16_t rotation; /**< */ + uint8_t connection; /**< */ + uint8_t subpixel_order; /**< */ +} xcb_randr_output_change_t; + +/** + * @brief xcb_randr_output_change_iterator_t + **/ +typedef struct xcb_randr_output_change_iterator_t { + xcb_randr_output_change_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_output_change_iterator_t; + +/** + * @brief xcb_randr_output_property_t + **/ +typedef struct xcb_randr_output_property_t { + xcb_window_t window; /**< */ + xcb_randr_output_t output; /**< */ + xcb_atom_t atom; /**< */ + xcb_timestamp_t timestamp; /**< */ + uint8_t status; /**< */ + uint8_t pad0[11]; /**< */ +} xcb_randr_output_property_t; + +/** + * @brief xcb_randr_output_property_iterator_t + **/ +typedef struct xcb_randr_output_property_iterator_t { + xcb_randr_output_property_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_output_property_iterator_t; + +/** + * @brief xcb_randr_notify_data_t + **/ +typedef union xcb_randr_notify_data_t { + xcb_randr_crtc_change_t cc; /**< */ + xcb_randr_output_change_t oc; /**< */ + xcb_randr_output_property_t op; /**< */ +} xcb_randr_notify_data_t; + +/** + * @brief xcb_randr_notify_data_iterator_t + **/ +typedef struct xcb_randr_notify_data_iterator_t { + xcb_randr_notify_data_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_randr_notify_data_iterator_t; + +/** Opcode for xcb_randr_notify. */ +#define XCB_RANDR_NOTIFY 1 + +/** + * @brief xcb_randr_notify_event_t + **/ +typedef struct xcb_randr_notify_event_t { + uint8_t response_type; /**< */ + uint8_t subCode; /**< */ + uint16_t sequence; /**< */ + xcb_randr_notify_data_t u; /**< */ +} xcb_randr_notify_event_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_mode_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_mode_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_mode_next + ** + ** @param xcb_randr_mode_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_mode_next (xcb_randr_mode_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_mode_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_mode_end + ** + ** @param xcb_randr_mode_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_mode_end (xcb_randr_mode_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_crtc_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_crtc_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_crtc_next + ** + ** @param xcb_randr_crtc_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_crtc_next (xcb_randr_crtc_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_crtc_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_crtc_end + ** + ** @param xcb_randr_crtc_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_crtc_end (xcb_randr_crtc_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_output_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_output_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_output_next + ** + ** @param xcb_randr_output_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_output_next (xcb_randr_output_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_output_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_output_end + ** + ** @param xcb_randr_output_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_output_end (xcb_randr_output_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_screen_size_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_screen_size_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_screen_size_next + ** + ** @param xcb_randr_screen_size_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_screen_size_next (xcb_randr_screen_size_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_screen_size_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_screen_size_end + ** + ** @param xcb_randr_screen_size_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_screen_size_end (xcb_randr_screen_size_iterator_t i /**< */); + +int +xcb_randr_refresh_rates_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** uint16_t * xcb_randr_refresh_rates_rates + ** + ** @param const xcb_randr_refresh_rates_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_randr_refresh_rates_rates (const xcb_randr_refresh_rates_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_refresh_rates_rates_length + ** + ** @param const xcb_randr_refresh_rates_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_refresh_rates_rates_length (const xcb_randr_refresh_rates_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_refresh_rates_rates_end + ** + ** @param const xcb_randr_refresh_rates_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_refresh_rates_rates_end (const xcb_randr_refresh_rates_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_refresh_rates_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_refresh_rates_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_refresh_rates_next + ** + ** @param xcb_randr_refresh_rates_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_refresh_rates_next (xcb_randr_refresh_rates_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_refresh_rates_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_refresh_rates_end + ** + ** @param xcb_randr_refresh_rates_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_refresh_rates_end (xcb_randr_refresh_rates_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_query_version_cookie_t xcb_randr_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_randr_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_randr_query_version_cookie_t +xcb_randr_query_version (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_query_version_cookie_t xcb_randr_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t major_version + ** @param uint32_t minor_version + ** @returns xcb_randr_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_randr_query_version_cookie_t +xcb_randr_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t major_version /**< */, + uint32_t minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_query_version_reply_t * xcb_randr_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_randr_query_version_reply_t * +xcb_randr_query_version_reply (xcb_connection_t *c /**< */, + xcb_randr_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_set_screen_config_cookie_t xcb_randr_set_screen_config + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_timestamp_t timestamp + ** @param xcb_timestamp_t config_timestamp + ** @param uint16_t sizeID + ** @param uint16_t rotation + ** @param uint16_t rate + ** @returns xcb_randr_set_screen_config_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_screen_config_cookie_t +xcb_randr_set_screen_config (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_timestamp_t timestamp /**< */, + xcb_timestamp_t config_timestamp /**< */, + uint16_t sizeID /**< */, + uint16_t rotation /**< */, + uint16_t rate /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_set_screen_config_cookie_t xcb_randr_set_screen_config_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_timestamp_t timestamp + ** @param xcb_timestamp_t config_timestamp + ** @param uint16_t sizeID + ** @param uint16_t rotation + ** @param uint16_t rate + ** @returns xcb_randr_set_screen_config_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_screen_config_cookie_t +xcb_randr_set_screen_config_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_timestamp_t timestamp /**< */, + xcb_timestamp_t config_timestamp /**< */, + uint16_t sizeID /**< */, + uint16_t rotation /**< */, + uint16_t rate /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_set_screen_config_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_set_screen_config_reply_t * xcb_randr_set_screen_config_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_set_screen_config_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_set_screen_config_reply_t * + ** + *****************************************************************************/ + +xcb_randr_set_screen_config_reply_t * +xcb_randr_set_screen_config_reply (xcb_connection_t *c /**< */, + xcb_randr_set_screen_config_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_select_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t enable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_select_input_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t enable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_select_input + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t enable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_select_input (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t enable /**< */); + +int +xcb_randr_get_screen_info_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_info_cookie_t xcb_randr_get_screen_info + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_info_cookie_t +xcb_randr_get_screen_info (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_info_cookie_t xcb_randr_get_screen_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_info_cookie_t +xcb_randr_get_screen_info_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_screen_size_t * xcb_randr_get_screen_info_sizes + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns xcb_randr_screen_size_t * + ** + *****************************************************************************/ + +xcb_randr_screen_size_t * +xcb_randr_get_screen_info_sizes (const xcb_randr_get_screen_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_info_sizes_length + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_info_sizes_length (const xcb_randr_get_screen_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_screen_size_iterator_t xcb_randr_get_screen_info_sizes_iterator + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns xcb_randr_screen_size_iterator_t + ** + *****************************************************************************/ + +xcb_randr_screen_size_iterator_t +xcb_randr_get_screen_info_sizes_iterator (const xcb_randr_get_screen_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_info_rates_length + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_info_rates_length (const xcb_randr_get_screen_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_refresh_rates_iterator_t xcb_randr_get_screen_info_rates_iterator + ** + ** @param const xcb_randr_get_screen_info_reply_t *R + ** @returns xcb_randr_refresh_rates_iterator_t + ** + *****************************************************************************/ + +xcb_randr_refresh_rates_iterator_t +xcb_randr_get_screen_info_rates_iterator (const xcb_randr_get_screen_info_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_screen_info_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_info_reply_t * xcb_randr_get_screen_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_screen_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_screen_info_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_screen_info_reply_t * +xcb_randr_get_screen_info_reply (xcb_connection_t *c /**< */, + xcb_randr_get_screen_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_size_range_cookie_t xcb_randr_get_screen_size_range + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_size_range_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_size_range_cookie_t +xcb_randr_get_screen_size_range (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_size_range_cookie_t xcb_randr_get_screen_size_range_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_size_range_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_size_range_cookie_t +xcb_randr_get_screen_size_range_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_screen_size_range_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_size_range_reply_t * xcb_randr_get_screen_size_range_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_screen_size_range_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_screen_size_range_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_screen_size_range_reply_t * +xcb_randr_get_screen_size_range_reply (xcb_connection_t *c /**< */, + xcb_randr_get_screen_size_range_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_screen_size_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t mm_width + ** @param uint32_t mm_height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_screen_size_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t mm_width /**< */, + uint32_t mm_height /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_screen_size + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t mm_width + ** @param uint32_t mm_height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_screen_size (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t mm_width /**< */, + uint32_t mm_height /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_mode_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_mode_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_mode_info_next + ** + ** @param xcb_randr_mode_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_mode_info_next (xcb_randr_mode_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_mode_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_mode_info_end + ** + ** @param xcb_randr_mode_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_mode_info_end (xcb_randr_mode_info_iterator_t i /**< */); + +int +xcb_randr_get_screen_resources_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_cookie_t xcb_randr_get_screen_resources + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_resources_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_cookie_t +xcb_randr_get_screen_resources (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_cookie_t xcb_randr_get_screen_resources_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_resources_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_cookie_t +xcb_randr_get_screen_resources_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_crtc_t * xcb_randr_get_screen_resources_crtcs + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_randr_crtc_t * + ** + *****************************************************************************/ + +xcb_randr_crtc_t * +xcb_randr_get_screen_resources_crtcs (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_crtcs_length + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_crtcs_length (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_crtcs_end + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_crtcs_end (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_screen_resources_outputs + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_screen_resources_outputs (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_outputs_length + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_outputs_length (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_outputs_end + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_outputs_end (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_mode_info_t * xcb_randr_get_screen_resources_modes + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_randr_mode_info_t * + ** + *****************************************************************************/ + +xcb_randr_mode_info_t * +xcb_randr_get_screen_resources_modes (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_modes_length + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_modes_length (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_mode_info_iterator_t xcb_randr_get_screen_resources_modes_iterator + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_randr_mode_info_iterator_t + ** + *****************************************************************************/ + +xcb_randr_mode_info_iterator_t +xcb_randr_get_screen_resources_modes_iterator (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_randr_get_screen_resources_names + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_randr_get_screen_resources_names (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_names_length + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_names_length (const xcb_randr_get_screen_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_names_end + ** + ** @param const xcb_randr_get_screen_resources_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_names_end (const xcb_randr_get_screen_resources_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_screen_resources_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_reply_t * xcb_randr_get_screen_resources_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_screen_resources_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_screen_resources_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_reply_t * +xcb_randr_get_screen_resources_reply (xcb_connection_t *c /**< */, + xcb_randr_get_screen_resources_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_randr_get_output_info_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_output_info_cookie_t xcb_randr_get_output_info + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_timestamp_t config_timestamp + ** @returns xcb_randr_get_output_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_info_cookie_t +xcb_randr_get_output_info (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_timestamp_t config_timestamp /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_output_info_cookie_t xcb_randr_get_output_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_timestamp_t config_timestamp + ** @returns xcb_randr_get_output_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_info_cookie_t +xcb_randr_get_output_info_unchecked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_timestamp_t config_timestamp /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_crtc_t * xcb_randr_get_output_info_crtcs + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_randr_crtc_t * + ** + *****************************************************************************/ + +xcb_randr_crtc_t * +xcb_randr_get_output_info_crtcs (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_info_crtcs_length + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_info_crtcs_length (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_info_crtcs_end + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_info_crtcs_end (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_mode_t * xcb_randr_get_output_info_modes + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_randr_mode_t * + ** + *****************************************************************************/ + +xcb_randr_mode_t * +xcb_randr_get_output_info_modes (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_info_modes_length + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_info_modes_length (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_info_modes_end + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_info_modes_end (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_output_info_clones + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_output_info_clones (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_info_clones_length + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_info_clones_length (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_info_clones_end + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_info_clones_end (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_randr_get_output_info_name + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_randr_get_output_info_name (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_info_name_length + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_info_name_length (const xcb_randr_get_output_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_info_name_end + ** + ** @param const xcb_randr_get_output_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_info_name_end (const xcb_randr_get_output_info_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_output_info_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_output_info_reply_t * xcb_randr_get_output_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_output_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_output_info_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_output_info_reply_t * +xcb_randr_get_output_info_reply (xcb_connection_t *c /**< */, + xcb_randr_get_output_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_randr_list_output_properties_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_list_output_properties_cookie_t xcb_randr_list_output_properties + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @returns xcb_randr_list_output_properties_cookie_t + ** + *****************************************************************************/ + +xcb_randr_list_output_properties_cookie_t +xcb_randr_list_output_properties (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_list_output_properties_cookie_t xcb_randr_list_output_properties_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @returns xcb_randr_list_output_properties_cookie_t + ** + *****************************************************************************/ + +xcb_randr_list_output_properties_cookie_t +xcb_randr_list_output_properties_unchecked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_randr_list_output_properties_atoms + ** + ** @param const xcb_randr_list_output_properties_reply_t *R + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_randr_list_output_properties_atoms (const xcb_randr_list_output_properties_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_list_output_properties_atoms_length + ** + ** @param const xcb_randr_list_output_properties_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_list_output_properties_atoms_length (const xcb_randr_list_output_properties_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_list_output_properties_atoms_end + ** + ** @param const xcb_randr_list_output_properties_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_list_output_properties_atoms_end (const xcb_randr_list_output_properties_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_list_output_properties_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_list_output_properties_reply_t * xcb_randr_list_output_properties_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_list_output_properties_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_list_output_properties_reply_t * + ** + *****************************************************************************/ + +xcb_randr_list_output_properties_reply_t * +xcb_randr_list_output_properties_reply (xcb_connection_t *c /**< */, + xcb_randr_list_output_properties_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_randr_query_output_property_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_query_output_property_cookie_t xcb_randr_query_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @returns xcb_randr_query_output_property_cookie_t + ** + *****************************************************************************/ + +xcb_randr_query_output_property_cookie_t +xcb_randr_query_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_query_output_property_cookie_t xcb_randr_query_output_property_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @returns xcb_randr_query_output_property_cookie_t + ** + *****************************************************************************/ + +xcb_randr_query_output_property_cookie_t +xcb_randr_query_output_property_unchecked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */); + + +/***************************************************************************** + ** + ** int32_t * xcb_randr_query_output_property_valid_values + ** + ** @param const xcb_randr_query_output_property_reply_t *R + ** @returns int32_t * + ** + *****************************************************************************/ + +int32_t * +xcb_randr_query_output_property_valid_values (const xcb_randr_query_output_property_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_query_output_property_valid_values_length + ** + ** @param const xcb_randr_query_output_property_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_query_output_property_valid_values_length (const xcb_randr_query_output_property_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_query_output_property_valid_values_end + ** + ** @param const xcb_randr_query_output_property_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_query_output_property_valid_values_end (const xcb_randr_query_output_property_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_query_output_property_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_query_output_property_reply_t * xcb_randr_query_output_property_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_query_output_property_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_query_output_property_reply_t * + ** + *****************************************************************************/ + +xcb_randr_query_output_property_reply_t * +xcb_randr_query_output_property_reply (xcb_connection_t *c /**< */, + xcb_randr_query_output_property_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_randr_configure_output_property_sizeof (const void *_buffer /**< */, + uint32_t values_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_configure_output_property_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param uint8_t pending + ** @param uint8_t range + ** @param uint32_t values_len + ** @param const int32_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_configure_output_property_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + uint8_t pending /**< */, + uint8_t range /**< */, + uint32_t values_len /**< */, + const int32_t *values /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_configure_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param uint8_t pending + ** @param uint8_t range + ** @param uint32_t values_len + ** @param const int32_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_configure_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + uint8_t pending /**< */, + uint8_t range /**< */, + uint32_t values_len /**< */, + const int32_t *values /**< */); + +int +xcb_randr_change_output_property_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_change_output_property_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint8_t format + ** @param uint8_t mode + ** @param uint32_t num_units + ** @param const void *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_change_output_property_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint8_t format /**< */, + uint8_t mode /**< */, + uint32_t num_units /**< */, + const void *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_change_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint8_t format + ** @param uint8_t mode + ** @param uint32_t num_units + ** @param const void *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_change_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint8_t format /**< */, + uint8_t mode /**< */, + uint32_t num_units /**< */, + const void *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_delete_output_property_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_delete_output_property_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_delete_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_delete_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */); + +int +xcb_randr_get_output_property_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_output_property_cookie_t xcb_randr_get_output_property + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint32_t long_offset + ** @param uint32_t long_length + ** @param uint8_t _delete + ** @param uint8_t pending + ** @returns xcb_randr_get_output_property_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_property_cookie_t +xcb_randr_get_output_property (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint32_t long_offset /**< */, + uint32_t long_length /**< */, + uint8_t _delete /**< */, + uint8_t pending /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_output_property_cookie_t xcb_randr_get_output_property_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint32_t long_offset + ** @param uint32_t long_length + ** @param uint8_t _delete + ** @param uint8_t pending + ** @returns xcb_randr_get_output_property_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_property_cookie_t +xcb_randr_get_output_property_unchecked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint32_t long_offset /**< */, + uint32_t long_length /**< */, + uint8_t _delete /**< */, + uint8_t pending /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_randr_get_output_property_data + ** + ** @param const xcb_randr_get_output_property_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_randr_get_output_property_data (const xcb_randr_get_output_property_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_output_property_data_length + ** + ** @param const xcb_randr_get_output_property_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_output_property_data_length (const xcb_randr_get_output_property_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_output_property_data_end + ** + ** @param const xcb_randr_get_output_property_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_output_property_data_end (const xcb_randr_get_output_property_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_output_property_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_output_property_reply_t * xcb_randr_get_output_property_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_output_property_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_output_property_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_output_property_reply_t * +xcb_randr_get_output_property_reply (xcb_connection_t *c /**< */, + xcb_randr_get_output_property_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_randr_create_mode_sizeof (const void *_buffer /**< */, + uint32_t name_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_create_mode_cookie_t xcb_randr_create_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_randr_mode_info_t mode_info + ** @param uint32_t name_len + ** @param const char *name + ** @returns xcb_randr_create_mode_cookie_t + ** + *****************************************************************************/ + +xcb_randr_create_mode_cookie_t +xcb_randr_create_mode (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_randr_mode_info_t mode_info /**< */, + uint32_t name_len /**< */, + const char *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_create_mode_cookie_t xcb_randr_create_mode_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_randr_mode_info_t mode_info + ** @param uint32_t name_len + ** @param const char *name + ** @returns xcb_randr_create_mode_cookie_t + ** + *****************************************************************************/ + +xcb_randr_create_mode_cookie_t +xcb_randr_create_mode_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_randr_mode_info_t mode_info /**< */, + uint32_t name_len /**< */, + const char *name /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_create_mode_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_create_mode_reply_t * xcb_randr_create_mode_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_create_mode_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_create_mode_reply_t * + ** + *****************************************************************************/ + +xcb_randr_create_mode_reply_t * +xcb_randr_create_mode_reply (xcb_connection_t *c /**< */, + xcb_randr_create_mode_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_destroy_mode_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_destroy_mode_checked (xcb_connection_t *c /**< */, + xcb_randr_mode_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_destroy_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_destroy_mode (xcb_connection_t *c /**< */, + xcb_randr_mode_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_add_output_mode_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_add_output_mode_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_randr_mode_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_add_output_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_add_output_mode (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_randr_mode_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_delete_output_mode_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_delete_output_mode_checked (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_randr_mode_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_delete_output_mode + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_output_t output + ** @param xcb_randr_mode_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_delete_output_mode (xcb_connection_t *c /**< */, + xcb_randr_output_t output /**< */, + xcb_randr_mode_t mode /**< */); + +int +xcb_randr_get_crtc_info_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_info_cookie_t xcb_randr_get_crtc_info + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t config_timestamp + ** @returns xcb_randr_get_crtc_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_info_cookie_t +xcb_randr_get_crtc_info (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t config_timestamp /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_info_cookie_t xcb_randr_get_crtc_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t config_timestamp + ** @returns xcb_randr_get_crtc_info_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_info_cookie_t +xcb_randr_get_crtc_info_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t config_timestamp /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_crtc_info_outputs + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_crtc_info_outputs (const xcb_randr_get_crtc_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_info_outputs_length + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_info_outputs_length (const xcb_randr_get_crtc_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_info_outputs_end + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_info_outputs_end (const xcb_randr_get_crtc_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_crtc_info_possible + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_crtc_info_possible (const xcb_randr_get_crtc_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_info_possible_length + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_info_possible_length (const xcb_randr_get_crtc_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_info_possible_end + ** + ** @param const xcb_randr_get_crtc_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_info_possible_end (const xcb_randr_get_crtc_info_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_crtc_info_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_info_reply_t * xcb_randr_get_crtc_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_crtc_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_crtc_info_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_crtc_info_reply_t * +xcb_randr_get_crtc_info_reply (xcb_connection_t *c /**< */, + xcb_randr_get_crtc_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_randr_set_crtc_config_sizeof (const void *_buffer /**< */, + uint32_t outputs_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_set_crtc_config_cookie_t xcb_randr_set_crtc_config + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t timestamp + ** @param xcb_timestamp_t config_timestamp + ** @param int16_t x + ** @param int16_t y + ** @param xcb_randr_mode_t mode + ** @param uint16_t rotation + ** @param uint32_t outputs_len + ** @param const xcb_randr_output_t *outputs + ** @returns xcb_randr_set_crtc_config_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_crtc_config_cookie_t +xcb_randr_set_crtc_config (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t timestamp /**< */, + xcb_timestamp_t config_timestamp /**< */, + int16_t x /**< */, + int16_t y /**< */, + xcb_randr_mode_t mode /**< */, + uint16_t rotation /**< */, + uint32_t outputs_len /**< */, + const xcb_randr_output_t *outputs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_set_crtc_config_cookie_t xcb_randr_set_crtc_config_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t timestamp + ** @param xcb_timestamp_t config_timestamp + ** @param int16_t x + ** @param int16_t y + ** @param xcb_randr_mode_t mode + ** @param uint16_t rotation + ** @param uint32_t outputs_len + ** @param const xcb_randr_output_t *outputs + ** @returns xcb_randr_set_crtc_config_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_crtc_config_cookie_t +xcb_randr_set_crtc_config_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t timestamp /**< */, + xcb_timestamp_t config_timestamp /**< */, + int16_t x /**< */, + int16_t y /**< */, + xcb_randr_mode_t mode /**< */, + uint16_t rotation /**< */, + uint32_t outputs_len /**< */, + const xcb_randr_output_t *outputs /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_set_crtc_config_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_set_crtc_config_reply_t * xcb_randr_set_crtc_config_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_set_crtc_config_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_set_crtc_config_reply_t * + ** + *****************************************************************************/ + +xcb_randr_set_crtc_config_reply_t * +xcb_randr_set_crtc_config_reply (xcb_connection_t *c /**< */, + xcb_randr_set_crtc_config_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_size_cookie_t xcb_randr_get_crtc_gamma_size + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_gamma_size_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_size_cookie_t +xcb_randr_get_crtc_gamma_size (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_size_cookie_t xcb_randr_get_crtc_gamma_size_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_gamma_size_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_size_cookie_t +xcb_randr_get_crtc_gamma_size_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_crtc_gamma_size_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_size_reply_t * xcb_randr_get_crtc_gamma_size_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_crtc_gamma_size_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_crtc_gamma_size_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_size_reply_t * +xcb_randr_get_crtc_gamma_size_reply (xcb_connection_t *c /**< */, + xcb_randr_get_crtc_gamma_size_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_randr_get_crtc_gamma_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_cookie_t xcb_randr_get_crtc_gamma + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_gamma_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_cookie_t +xcb_randr_get_crtc_gamma (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_cookie_t xcb_randr_get_crtc_gamma_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_gamma_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_cookie_t +xcb_randr_get_crtc_gamma_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */); + + +/***************************************************************************** + ** + ** uint16_t * xcb_randr_get_crtc_gamma_red + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_randr_get_crtc_gamma_red (const xcb_randr_get_crtc_gamma_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_gamma_red_length + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_gamma_red_length (const xcb_randr_get_crtc_gamma_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_gamma_red_end + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_gamma_red_end (const xcb_randr_get_crtc_gamma_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint16_t * xcb_randr_get_crtc_gamma_green + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_randr_get_crtc_gamma_green (const xcb_randr_get_crtc_gamma_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_gamma_green_length + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_gamma_green_length (const xcb_randr_get_crtc_gamma_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_gamma_green_end + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_gamma_green_end (const xcb_randr_get_crtc_gamma_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint16_t * xcb_randr_get_crtc_gamma_blue + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_randr_get_crtc_gamma_blue (const xcb_randr_get_crtc_gamma_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_gamma_blue_length + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_gamma_blue_length (const xcb_randr_get_crtc_gamma_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_gamma_blue_end + ** + ** @param const xcb_randr_get_crtc_gamma_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_gamma_blue_end (const xcb_randr_get_crtc_gamma_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_crtc_gamma_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_gamma_reply_t * xcb_randr_get_crtc_gamma_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_crtc_gamma_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_crtc_gamma_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_crtc_gamma_reply_t * +xcb_randr_get_crtc_gamma_reply (xcb_connection_t *c /**< */, + xcb_randr_get_crtc_gamma_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_randr_set_crtc_gamma_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_crtc_gamma_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param uint16_t size + ** @param const uint16_t *red + ** @param const uint16_t *green + ** @param const uint16_t *blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_crtc_gamma_checked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + uint16_t size /**< */, + const uint16_t *red /**< */, + const uint16_t *green /**< */, + const uint16_t *blue /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_crtc_gamma + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param uint16_t size + ** @param const uint16_t *red + ** @param const uint16_t *green + ** @param const uint16_t *blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_crtc_gamma (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + uint16_t size /**< */, + const uint16_t *red /**< */, + const uint16_t *green /**< */, + const uint16_t *blue /**< */); + +int +xcb_randr_get_screen_resources_current_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_current_cookie_t xcb_randr_get_screen_resources_current + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_resources_current_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_current_cookie_t +xcb_randr_get_screen_resources_current (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_current_cookie_t xcb_randr_get_screen_resources_current_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_screen_resources_current_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_current_cookie_t +xcb_randr_get_screen_resources_current_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_crtc_t * xcb_randr_get_screen_resources_current_crtcs + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_randr_crtc_t * + ** + *****************************************************************************/ + +xcb_randr_crtc_t * +xcb_randr_get_screen_resources_current_crtcs (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_current_crtcs_length + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_current_crtcs_length (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_current_crtcs_end + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_current_crtcs_end (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_output_t * xcb_randr_get_screen_resources_current_outputs + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_randr_output_t * + ** + *****************************************************************************/ + +xcb_randr_output_t * +xcb_randr_get_screen_resources_current_outputs (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_current_outputs_length + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_current_outputs_length (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_current_outputs_end + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_current_outputs_end (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_mode_info_t * xcb_randr_get_screen_resources_current_modes + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_randr_mode_info_t * + ** + *****************************************************************************/ + +xcb_randr_mode_info_t * +xcb_randr_get_screen_resources_current_modes (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_current_modes_length + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_current_modes_length (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_randr_mode_info_iterator_t xcb_randr_get_screen_resources_current_modes_iterator + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_randr_mode_info_iterator_t + ** + *****************************************************************************/ + +xcb_randr_mode_info_iterator_t +xcb_randr_get_screen_resources_current_modes_iterator (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_randr_get_screen_resources_current_names + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_randr_get_screen_resources_current_names (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_screen_resources_current_names_length + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_screen_resources_current_names_length (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_screen_resources_current_names_end + ** + ** @param const xcb_randr_get_screen_resources_current_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_screen_resources_current_names_end (const xcb_randr_get_screen_resources_current_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_screen_resources_current_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_screen_resources_current_reply_t * xcb_randr_get_screen_resources_current_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_screen_resources_current_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_screen_resources_current_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_screen_resources_current_reply_t * +xcb_randr_get_screen_resources_current_reply (xcb_connection_t *c /**< */, + xcb_randr_get_screen_resources_current_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_randr_set_crtc_transform_sizeof (const void *_buffer /**< */, + uint32_t filter_params_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_crtc_transform_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_render_transform_t transform + ** @param uint16_t filter_len + ** @param const char *filter_name + ** @param uint32_t filter_params_len + ** @param const xcb_render_fixed_t *filter_params + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_crtc_transform_checked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_render_transform_t transform /**< */, + uint16_t filter_len /**< */, + const char *filter_name /**< */, + uint32_t filter_params_len /**< */, + const xcb_render_fixed_t *filter_params /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_crtc_transform + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_render_transform_t transform + ** @param uint16_t filter_len + ** @param const char *filter_name + ** @param uint32_t filter_params_len + ** @param const xcb_render_fixed_t *filter_params + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_crtc_transform (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_render_transform_t transform /**< */, + uint16_t filter_len /**< */, + const char *filter_name /**< */, + uint32_t filter_params_len /**< */, + const xcb_render_fixed_t *filter_params /**< */); + +int +xcb_randr_get_crtc_transform_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_transform_cookie_t xcb_randr_get_crtc_transform + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_transform_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_transform_cookie_t +xcb_randr_get_crtc_transform (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_transform_cookie_t xcb_randr_get_crtc_transform_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_crtc_transform_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_crtc_transform_cookie_t +xcb_randr_get_crtc_transform_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */); + + +/***************************************************************************** + ** + ** char * xcb_randr_get_crtc_transform_pending_filter_name + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_randr_get_crtc_transform_pending_filter_name (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_transform_pending_filter_name_length + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_transform_pending_filter_name_length (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_transform_pending_filter_name_end + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_transform_pending_filter_name_end (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_render_fixed_t * xcb_randr_get_crtc_transform_pending_params + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_render_fixed_t * + ** + *****************************************************************************/ + +xcb_render_fixed_t * +xcb_randr_get_crtc_transform_pending_params (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_transform_pending_params_length + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_transform_pending_params_length (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_transform_pending_params_end + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_transform_pending_params_end (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** char * xcb_randr_get_crtc_transform_current_filter_name + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_randr_get_crtc_transform_current_filter_name (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_transform_current_filter_name_length + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_transform_current_filter_name_length (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_transform_current_filter_name_end + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_transform_current_filter_name_end (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_render_fixed_t * xcb_randr_get_crtc_transform_current_params + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_render_fixed_t * + ** + *****************************************************************************/ + +xcb_render_fixed_t * +xcb_randr_get_crtc_transform_current_params (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_randr_get_crtc_transform_current_params_length + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_randr_get_crtc_transform_current_params_length (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_get_crtc_transform_current_params_end + ** + ** @param const xcb_randr_get_crtc_transform_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_get_crtc_transform_current_params_end (const xcb_randr_get_crtc_transform_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_crtc_transform_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_crtc_transform_reply_t * xcb_randr_get_crtc_transform_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_crtc_transform_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_crtc_transform_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_crtc_transform_reply_t * +xcb_randr_get_crtc_transform_reply (xcb_connection_t *c /**< */, + xcb_randr_get_crtc_transform_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_panning_cookie_t xcb_randr_get_panning + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_panning_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_panning_cookie_t +xcb_randr_get_panning (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_panning_cookie_t xcb_randr_get_panning_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @returns xcb_randr_get_panning_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_panning_cookie_t +xcb_randr_get_panning_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_panning_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_panning_reply_t * xcb_randr_get_panning_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_panning_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_panning_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_panning_reply_t * +xcb_randr_get_panning_reply (xcb_connection_t *c /**< */, + xcb_randr_get_panning_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_set_panning_cookie_t xcb_randr_set_panning + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t timestamp + ** @param uint16_t left + ** @param uint16_t top + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t track_left + ** @param uint16_t track_top + ** @param uint16_t track_width + ** @param uint16_t track_height + ** @param int16_t border_left + ** @param int16_t border_top + ** @param int16_t border_right + ** @param int16_t border_bottom + ** @returns xcb_randr_set_panning_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_panning_cookie_t +xcb_randr_set_panning (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t timestamp /**< */, + uint16_t left /**< */, + uint16_t top /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t track_left /**< */, + uint16_t track_top /**< */, + uint16_t track_width /**< */, + uint16_t track_height /**< */, + int16_t border_left /**< */, + int16_t border_top /**< */, + int16_t border_right /**< */, + int16_t border_bottom /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_set_panning_cookie_t xcb_randr_set_panning_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_crtc_t crtc + ** @param xcb_timestamp_t timestamp + ** @param uint16_t left + ** @param uint16_t top + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t track_left + ** @param uint16_t track_top + ** @param uint16_t track_width + ** @param uint16_t track_height + ** @param int16_t border_left + ** @param int16_t border_top + ** @param int16_t border_right + ** @param int16_t border_bottom + ** @returns xcb_randr_set_panning_cookie_t + ** + *****************************************************************************/ + +xcb_randr_set_panning_cookie_t +xcb_randr_set_panning_unchecked (xcb_connection_t *c /**< */, + xcb_randr_crtc_t crtc /**< */, + xcb_timestamp_t timestamp /**< */, + uint16_t left /**< */, + uint16_t top /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t track_left /**< */, + uint16_t track_top /**< */, + uint16_t track_width /**< */, + uint16_t track_height /**< */, + int16_t border_left /**< */, + int16_t border_top /**< */, + int16_t border_right /**< */, + int16_t border_bottom /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_set_panning_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_set_panning_reply_t * xcb_randr_set_panning_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_set_panning_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_set_panning_reply_t * + ** + *****************************************************************************/ + +xcb_randr_set_panning_reply_t * +xcb_randr_set_panning_reply (xcb_connection_t *c /**< */, + xcb_randr_set_panning_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_output_primary_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_randr_output_t output + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_output_primary_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_randr_output_t output /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_randr_set_output_primary + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_randr_output_t output + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_randr_set_output_primary (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_randr_output_t output /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_randr_get_output_primary_cookie_t xcb_randr_get_output_primary + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_output_primary_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_primary_cookie_t +xcb_randr_get_output_primary (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_randr_get_output_primary_cookie_t xcb_randr_get_output_primary_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_randr_get_output_primary_cookie_t + ** + *****************************************************************************/ + +xcb_randr_get_output_primary_cookie_t +xcb_randr_get_output_primary_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_randr_get_output_primary_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_randr_get_output_primary_reply_t * xcb_randr_get_output_primary_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_randr_get_output_primary_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_randr_get_output_primary_reply_t * + ** + *****************************************************************************/ + +xcb_randr_get_output_primary_reply_t * +xcb_randr_get_output_primary_reply (xcb_connection_t *c /**< */, + xcb_randr_get_output_primary_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_crtc_change_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_crtc_change_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_crtc_change_next + ** + ** @param xcb_randr_crtc_change_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_crtc_change_next (xcb_randr_crtc_change_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_crtc_change_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_crtc_change_end + ** + ** @param xcb_randr_crtc_change_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_crtc_change_end (xcb_randr_crtc_change_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_output_change_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_output_change_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_output_change_next + ** + ** @param xcb_randr_output_change_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_output_change_next (xcb_randr_output_change_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_output_change_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_output_change_end + ** + ** @param xcb_randr_output_change_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_output_change_end (xcb_randr_output_change_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_output_property_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_output_property_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_output_property_next + ** + ** @param xcb_randr_output_property_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_output_property_next (xcb_randr_output_property_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_output_property_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_output_property_end + ** + ** @param xcb_randr_output_property_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_output_property_end (xcb_randr_output_property_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_randr_notify_data_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_randr_notify_data_t) + */ + +/***************************************************************************** + ** + ** void xcb_randr_notify_data_next + ** + ** @param xcb_randr_notify_data_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_randr_notify_data_next (xcb_randr_notify_data_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_randr_notify_data_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_randr_notify_data_end + ** + ** @param xcb_randr_notify_data_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_randr_notify_data_end (xcb_randr_notify_data_iterator_t i /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/record.c b/external/mit/xorg/lib/libxcb/files/record.c new file mode 100644 index 000000000..84fdebbbd --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/record.c @@ -0,0 +1,1445 @@ +/* + * This file generated automatically from record.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "record.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) + +xcb_extension_t xcb_record_id = { "RECORD", 0 }; + + +/***************************************************************************** + ** + ** void xcb_record_context_next + ** + ** @param xcb_record_context_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_context_next (xcb_record_context_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_record_context_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_context_end + ** + ** @param xcb_record_context_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_context_end (xcb_record_context_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_record_range_8_next + ** + ** @param xcb_record_range_8_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_range_8_next (xcb_record_range_8_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_record_range_8_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_range_8_end + ** + ** @param xcb_record_range_8_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_range_8_end (xcb_record_range_8_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_record_range_16_next + ** + ** @param xcb_record_range_16_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_range_16_next (xcb_record_range_16_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_record_range_16_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_range_16_end + ** + ** @param xcb_record_range_16_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_range_16_end (xcb_record_range_16_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_record_ext_range_next + ** + ** @param xcb_record_ext_range_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_ext_range_next (xcb_record_ext_range_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_record_ext_range_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_ext_range_end + ** + ** @param xcb_record_ext_range_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_ext_range_end (xcb_record_ext_range_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_record_range_next + ** + ** @param xcb_record_range_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_range_next (xcb_record_range_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_record_range_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_range_end + ** + ** @param xcb_record_range_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_range_end (xcb_record_range_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_record_element_header_next + ** + ** @param xcb_record_element_header_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_element_header_next (xcb_record_element_header_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_record_element_header_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_element_header_end + ** + ** @param xcb_record_element_header_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_element_header_end (xcb_record_element_header_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_record_client_spec_next + ** + ** @param xcb_record_client_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_client_spec_next (xcb_record_client_spec_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_record_client_spec_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_client_spec_end + ** + ** @param xcb_record_client_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_client_spec_end (xcb_record_client_spec_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_record_client_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_record_client_info_t *_aux = (xcb_record_client_info_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_record_client_info_t); + xcb_tmp += xcb_block_len; + /* ranges */ + xcb_block_len += _aux->num_ranges * sizeof(xcb_record_range_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_record_range_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_record_range_t * xcb_record_client_info_ranges + ** + ** @param const xcb_record_client_info_t *R + ** @returns xcb_record_range_t * + ** + *****************************************************************************/ + +xcb_record_range_t * +xcb_record_client_info_ranges (const xcb_record_client_info_t *R /**< */) +{ + return (xcb_record_range_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_record_client_info_ranges_length + ** + ** @param const xcb_record_client_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_record_client_info_ranges_length (const xcb_record_client_info_t *R /**< */) +{ + return R->num_ranges; +} + + +/***************************************************************************** + ** + ** xcb_record_range_iterator_t xcb_record_client_info_ranges_iterator + ** + ** @param const xcb_record_client_info_t *R + ** @returns xcb_record_range_iterator_t + ** + *****************************************************************************/ + +xcb_record_range_iterator_t +xcb_record_client_info_ranges_iterator (const xcb_record_client_info_t *R /**< */) +{ + xcb_record_range_iterator_t i; + i.data = (xcb_record_range_t *) (R + 1); + i.rem = R->num_ranges; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_record_client_info_next + ** + ** @param xcb_record_client_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_client_info_next (xcb_record_client_info_iterator_t *i /**< */) +{ + xcb_record_client_info_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_record_client_info_t *)(((char *)R) + xcb_record_client_info_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_record_client_info_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_client_info_end + ** + ** @param xcb_record_client_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_client_info_end (xcb_record_client_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_record_client_info_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_record_query_version_cookie_t xcb_record_query_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t major_version + ** @param uint16_t minor_version + ** @returns xcb_record_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_record_query_version_cookie_t +xcb_record_query_version (xcb_connection_t *c /**< */, + uint16_t major_version /**< */, + uint16_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_record_query_version_cookie_t xcb_ret; + xcb_record_query_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_record_query_version_cookie_t xcb_record_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t major_version + ** @param uint16_t minor_version + ** @returns xcb_record_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_record_query_version_cookie_t +xcb_record_query_version_unchecked (xcb_connection_t *c /**< */, + uint16_t major_version /**< */, + uint16_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_record_query_version_cookie_t xcb_ret; + xcb_record_query_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_record_query_version_reply_t * xcb_record_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_record_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_record_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_record_query_version_reply_t * +xcb_record_query_version_reply (xcb_connection_t *c /**< */, + xcb_record_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_record_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_record_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_record_create_context_request_t *_aux = (xcb_record_create_context_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_record_create_context_request_t); + xcb_tmp += xcb_block_len; + /* client_specs */ + xcb_block_len += _aux->num_client_specs * sizeof(xcb_record_client_spec_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_record_client_spec_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ranges */ + xcb_block_len += _aux->num_ranges * sizeof(xcb_record_range_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_record_range_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param xcb_record_element_header_t element_header + ** @param uint32_t num_client_specs + ** @param uint32_t num_ranges + ** @param const xcb_record_client_spec_t *client_specs + ** @param const xcb_record_range_t *ranges + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_create_context_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + xcb_record_element_header_t element_header /**< */, + uint32_t num_client_specs /**< */, + uint32_t num_ranges /**< */, + const xcb_record_client_spec_t *client_specs /**< */, + const xcb_record_range_t *ranges /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_record_create_context_request_t xcb_out; + + xcb_out.context = context; + xcb_out.element_header = element_header; + memset(xcb_out.pad0, 0, 3); + xcb_out.num_client_specs = num_client_specs; + xcb_out.num_ranges = num_ranges; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_record_client_spec_t client_specs */ + xcb_parts[4].iov_base = (char *) client_specs; + xcb_parts[4].iov_len = num_client_specs * sizeof(xcb_record_client_spec_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_record_range_t ranges */ + xcb_parts[6].iov_base = (char *) ranges; + xcb_parts[6].iov_len = num_ranges * sizeof(xcb_record_range_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_create_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param xcb_record_element_header_t element_header + ** @param uint32_t num_client_specs + ** @param uint32_t num_ranges + ** @param const xcb_record_client_spec_t *client_specs + ** @param const xcb_record_range_t *ranges + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_create_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + xcb_record_element_header_t element_header /**< */, + uint32_t num_client_specs /**< */, + uint32_t num_ranges /**< */, + const xcb_record_client_spec_t *client_specs /**< */, + const xcb_record_range_t *ranges /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_record_create_context_request_t xcb_out; + + xcb_out.context = context; + xcb_out.element_header = element_header; + memset(xcb_out.pad0, 0, 3); + xcb_out.num_client_specs = num_client_specs; + xcb_out.num_ranges = num_ranges; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_record_client_spec_t client_specs */ + xcb_parts[4].iov_base = (char *) client_specs; + xcb_parts[4].iov_len = num_client_specs * sizeof(xcb_record_client_spec_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_record_range_t ranges */ + xcb_parts[6].iov_base = (char *) ranges; + xcb_parts[6].iov_len = num_ranges * sizeof(xcb_record_range_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_record_register_clients_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_record_register_clients_request_t *_aux = (xcb_record_register_clients_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_record_register_clients_request_t); + xcb_tmp += xcb_block_len; + /* client_specs */ + xcb_block_len += _aux->num_client_specs * sizeof(xcb_record_client_spec_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_record_client_spec_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ranges */ + xcb_block_len += _aux->num_ranges * sizeof(xcb_record_range_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_record_range_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_register_clients_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param xcb_record_element_header_t element_header + ** @param uint32_t num_client_specs + ** @param uint32_t num_ranges + ** @param const xcb_record_client_spec_t *client_specs + ** @param const xcb_record_range_t *ranges + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_register_clients_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + xcb_record_element_header_t element_header /**< */, + uint32_t num_client_specs /**< */, + uint32_t num_ranges /**< */, + const xcb_record_client_spec_t *client_specs /**< */, + const xcb_record_range_t *ranges /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_REGISTER_CLIENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_record_register_clients_request_t xcb_out; + + xcb_out.context = context; + xcb_out.element_header = element_header; + memset(xcb_out.pad0, 0, 3); + xcb_out.num_client_specs = num_client_specs; + xcb_out.num_ranges = num_ranges; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_record_client_spec_t client_specs */ + xcb_parts[4].iov_base = (char *) client_specs; + xcb_parts[4].iov_len = num_client_specs * sizeof(xcb_record_client_spec_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_record_range_t ranges */ + xcb_parts[6].iov_base = (char *) ranges; + xcb_parts[6].iov_len = num_ranges * sizeof(xcb_record_range_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_register_clients + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param xcb_record_element_header_t element_header + ** @param uint32_t num_client_specs + ** @param uint32_t num_ranges + ** @param const xcb_record_client_spec_t *client_specs + ** @param const xcb_record_range_t *ranges + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_register_clients (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + xcb_record_element_header_t element_header /**< */, + uint32_t num_client_specs /**< */, + uint32_t num_ranges /**< */, + const xcb_record_client_spec_t *client_specs /**< */, + const xcb_record_range_t *ranges /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_REGISTER_CLIENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_record_register_clients_request_t xcb_out; + + xcb_out.context = context; + xcb_out.element_header = element_header; + memset(xcb_out.pad0, 0, 3); + xcb_out.num_client_specs = num_client_specs; + xcb_out.num_ranges = num_ranges; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_record_client_spec_t client_specs */ + xcb_parts[4].iov_base = (char *) client_specs; + xcb_parts[4].iov_len = num_client_specs * sizeof(xcb_record_client_spec_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_record_range_t ranges */ + xcb_parts[6].iov_base = (char *) ranges; + xcb_parts[6].iov_len = num_ranges * sizeof(xcb_record_range_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_record_unregister_clients_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_record_unregister_clients_request_t *_aux = (xcb_record_unregister_clients_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_record_unregister_clients_request_t); + xcb_tmp += xcb_block_len; + /* client_specs */ + xcb_block_len += _aux->num_client_specs * sizeof(xcb_record_client_spec_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_record_client_spec_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_unregister_clients_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param uint32_t num_client_specs + ** @param const xcb_record_client_spec_t *client_specs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_unregister_clients_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + uint32_t num_client_specs /**< */, + const xcb_record_client_spec_t *client_specs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_UNREGISTER_CLIENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_record_unregister_clients_request_t xcb_out; + + xcb_out.context = context; + xcb_out.num_client_specs = num_client_specs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_record_client_spec_t client_specs */ + xcb_parts[4].iov_base = (char *) client_specs; + xcb_parts[4].iov_len = num_client_specs * sizeof(xcb_record_client_spec_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_unregister_clients + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param uint32_t num_client_specs + ** @param const xcb_record_client_spec_t *client_specs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_unregister_clients (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + uint32_t num_client_specs /**< */, + const xcb_record_client_spec_t *client_specs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_UNREGISTER_CLIENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_record_unregister_clients_request_t xcb_out; + + xcb_out.context = context; + xcb_out.num_client_specs = num_client_specs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_record_client_spec_t client_specs */ + xcb_parts[4].iov_base = (char *) client_specs; + xcb_parts[4].iov_len = num_client_specs * sizeof(xcb_record_client_spec_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_record_get_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_record_get_context_reply_t *_aux = (xcb_record_get_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_record_get_context_reply_t); + xcb_tmp += xcb_block_len; + /* intercepted_clients */ + for(i=0; i<_aux->num_intercepted_clients; i++) { + xcb_tmp_len = xcb_record_client_info_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_record_client_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_record_get_context_cookie_t xcb_record_get_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_record_get_context_cookie_t + ** + *****************************************************************************/ + +xcb_record_get_context_cookie_t +xcb_record_get_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_GET_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_record_get_context_cookie_t xcb_ret; + xcb_record_get_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_record_get_context_cookie_t xcb_record_get_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_record_get_context_cookie_t + ** + *****************************************************************************/ + +xcb_record_get_context_cookie_t +xcb_record_get_context_unchecked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_GET_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_record_get_context_cookie_t xcb_ret; + xcb_record_get_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_record_get_context_intercepted_clients_length + ** + ** @param const xcb_record_get_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_record_get_context_intercepted_clients_length (const xcb_record_get_context_reply_t *R /**< */) +{ + return R->num_intercepted_clients; +} + + +/***************************************************************************** + ** + ** xcb_record_client_info_iterator_t xcb_record_get_context_intercepted_clients_iterator + ** + ** @param const xcb_record_get_context_reply_t *R + ** @returns xcb_record_client_info_iterator_t + ** + *****************************************************************************/ + +xcb_record_client_info_iterator_t +xcb_record_get_context_intercepted_clients_iterator (const xcb_record_get_context_reply_t *R /**< */) +{ + xcb_record_client_info_iterator_t i; + i.data = (xcb_record_client_info_t *) (R + 1); + i.rem = R->num_intercepted_clients; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_record_get_context_reply_t * xcb_record_get_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_record_get_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_record_get_context_reply_t * + ** + *****************************************************************************/ + +xcb_record_get_context_reply_t * +xcb_record_get_context_reply (xcb_connection_t *c /**< */, + xcb_record_get_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_record_get_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_record_enable_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_record_enable_context_reply_t *_aux = (xcb_record_enable_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_record_enable_context_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_record_enable_context_cookie_t xcb_record_enable_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_record_enable_context_cookie_t + ** + *****************************************************************************/ + +xcb_record_enable_context_cookie_t +xcb_record_enable_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_ENABLE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_record_enable_context_cookie_t xcb_ret; + xcb_record_enable_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_record_enable_context_cookie_t xcb_record_enable_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_record_enable_context_cookie_t + ** + *****************************************************************************/ + +xcb_record_enable_context_cookie_t +xcb_record_enable_context_unchecked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_ENABLE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_record_enable_context_cookie_t xcb_ret; + xcb_record_enable_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_record_enable_context_data + ** + ** @param const xcb_record_enable_context_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_record_enable_context_data (const xcb_record_enable_context_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_record_enable_context_data_length + ** + ** @param const xcb_record_enable_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_record_enable_context_data_length (const xcb_record_enable_context_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_enable_context_data_end + ** + ** @param const xcb_record_enable_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_enable_context_data_end (const xcb_record_enable_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_record_enable_context_reply_t * xcb_record_enable_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_record_enable_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_record_enable_context_reply_t * + ** + *****************************************************************************/ + +xcb_record_enable_context_reply_t * +xcb_record_enable_context_reply (xcb_connection_t *c /**< */, + xcb_record_enable_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_record_enable_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_disable_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_disable_context_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_DISABLE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_record_disable_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_disable_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_disable_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_DISABLE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_record_disable_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_free_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_free_context_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_FREE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_record_free_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_free_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_free_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_record_id, + /* opcode */ XCB_RECORD_FREE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_record_free_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/record.h b/external/mit/xorg/lib/libxcb/files/record.h new file mode 100644 index 000000000..51ec99ae8 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/record.h @@ -0,0 +1,1366 @@ +/* + * This file generated automatically from record.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Record_API XCB Record API + * @brief Record XCB Protocol Implementation. + * @{ + **/ + +#ifndef __RECORD_H +#define __RECORD_H + +#include "xcb.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_RECORD_MAJOR_VERSION 1 +#define XCB_RECORD_MINOR_VERSION 13 + +extern xcb_extension_t xcb_record_id; + +typedef uint32_t xcb_record_context_t; + +/** + * @brief xcb_record_context_iterator_t + **/ +typedef struct xcb_record_context_iterator_t { + xcb_record_context_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_record_context_iterator_t; + +/** + * @brief xcb_record_range_8_t + **/ +typedef struct xcb_record_range_8_t { + uint8_t first; /**< */ + uint8_t last; /**< */ +} xcb_record_range_8_t; + +/** + * @brief xcb_record_range_8_iterator_t + **/ +typedef struct xcb_record_range_8_iterator_t { + xcb_record_range_8_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_record_range_8_iterator_t; + +/** + * @brief xcb_record_range_16_t + **/ +typedef struct xcb_record_range_16_t { + uint16_t first; /**< */ + uint16_t last; /**< */ +} xcb_record_range_16_t; + +/** + * @brief xcb_record_range_16_iterator_t + **/ +typedef struct xcb_record_range_16_iterator_t { + xcb_record_range_16_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_record_range_16_iterator_t; + +/** + * @brief xcb_record_ext_range_t + **/ +typedef struct xcb_record_ext_range_t { + xcb_record_range_8_t major; /**< */ + xcb_record_range_16_t minor; /**< */ +} xcb_record_ext_range_t; + +/** + * @brief xcb_record_ext_range_iterator_t + **/ +typedef struct xcb_record_ext_range_iterator_t { + xcb_record_ext_range_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_record_ext_range_iterator_t; + +/** + * @brief xcb_record_range_t + **/ +typedef struct xcb_record_range_t { + xcb_record_range_8_t core_requests; /**< */ + xcb_record_range_8_t core_replies; /**< */ + xcb_record_ext_range_t ext_requests; /**< */ + xcb_record_ext_range_t ext_replies; /**< */ + xcb_record_range_8_t delivered_events; /**< */ + xcb_record_range_8_t device_events; /**< */ + xcb_record_range_8_t errors; /**< */ + uint8_t client_started; /**< */ + uint8_t client_died; /**< */ +} xcb_record_range_t; + +/** + * @brief xcb_record_range_iterator_t + **/ +typedef struct xcb_record_range_iterator_t { + xcb_record_range_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_record_range_iterator_t; + +typedef uint8_t xcb_record_element_header_t; + +/** + * @brief xcb_record_element_header_iterator_t + **/ +typedef struct xcb_record_element_header_iterator_t { + xcb_record_element_header_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_record_element_header_iterator_t; + +typedef enum xcb_record_h_type_t { + XCB_RECORD_H_TYPE_FROM_SERVER_TIME = 1, + XCB_RECORD_H_TYPE_FROM_CLIENT_TIME = 2, + XCB_RECORD_H_TYPE_FROM_CLIENT_SEQUENCE = 4 +} xcb_record_h_type_t; + +typedef uint32_t xcb_record_client_spec_t; + +/** + * @brief xcb_record_client_spec_iterator_t + **/ +typedef struct xcb_record_client_spec_iterator_t { + xcb_record_client_spec_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_record_client_spec_iterator_t; + +typedef enum xcb_record_cs_t { + XCB_RECORD_CS_CURRENT_CLIENTS = 1, + XCB_RECORD_CS_FUTURE_CLIENTS = 2, + XCB_RECORD_CS_ALL_CLIENTS = 3 +} xcb_record_cs_t; + +/** + * @brief xcb_record_client_info_t + **/ +typedef struct xcb_record_client_info_t { + xcb_record_client_spec_t client_resource; /**< */ + uint32_t num_ranges; /**< */ +} xcb_record_client_info_t; + +/** + * @brief xcb_record_client_info_iterator_t + **/ +typedef struct xcb_record_client_info_iterator_t { + xcb_record_client_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_record_client_info_iterator_t; + +/** Opcode for xcb_record_bad_context. */ +#define XCB_RECORD_BAD_CONTEXT 0 + +/** + * @brief xcb_record_bad_context_error_t + **/ +typedef struct xcb_record_bad_context_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ + uint32_t invalid_record; /**< */ +} xcb_record_bad_context_error_t; + +/** + * @brief xcb_record_query_version_cookie_t + **/ +typedef struct xcb_record_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_record_query_version_cookie_t; + +/** Opcode for xcb_record_query_version. */ +#define XCB_RECORD_QUERY_VERSION 0 + +/** + * @brief xcb_record_query_version_request_t + **/ +typedef struct xcb_record_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t major_version; /**< */ + uint16_t minor_version; /**< */ +} xcb_record_query_version_request_t; + +/** + * @brief xcb_record_query_version_reply_t + **/ +typedef struct xcb_record_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t major_version; /**< */ + uint16_t minor_version; /**< */ +} xcb_record_query_version_reply_t; + +/** Opcode for xcb_record_create_context. */ +#define XCB_RECORD_CREATE_CONTEXT 1 + +/** + * @brief xcb_record_create_context_request_t + **/ +typedef struct xcb_record_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_record_context_t context; /**< */ + xcb_record_element_header_t element_header; /**< */ + uint8_t pad0[3]; /**< */ + uint32_t num_client_specs; /**< */ + uint32_t num_ranges; /**< */ +} xcb_record_create_context_request_t; + +/** Opcode for xcb_record_register_clients. */ +#define XCB_RECORD_REGISTER_CLIENTS 2 + +/** + * @brief xcb_record_register_clients_request_t + **/ +typedef struct xcb_record_register_clients_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_record_context_t context; /**< */ + xcb_record_element_header_t element_header; /**< */ + uint8_t pad0[3]; /**< */ + uint32_t num_client_specs; /**< */ + uint32_t num_ranges; /**< */ +} xcb_record_register_clients_request_t; + +/** Opcode for xcb_record_unregister_clients. */ +#define XCB_RECORD_UNREGISTER_CLIENTS 3 + +/** + * @brief xcb_record_unregister_clients_request_t + **/ +typedef struct xcb_record_unregister_clients_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_record_context_t context; /**< */ + uint32_t num_client_specs; /**< */ +} xcb_record_unregister_clients_request_t; + +/** + * @brief xcb_record_get_context_cookie_t + **/ +typedef struct xcb_record_get_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_record_get_context_cookie_t; + +/** Opcode for xcb_record_get_context. */ +#define XCB_RECORD_GET_CONTEXT 4 + +/** + * @brief xcb_record_get_context_request_t + **/ +typedef struct xcb_record_get_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_record_context_t context; /**< */ +} xcb_record_get_context_request_t; + +/** + * @brief xcb_record_get_context_reply_t + **/ +typedef struct xcb_record_get_context_reply_t { + uint8_t response_type; /**< */ + uint8_t enabled; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_record_element_header_t element_header; /**< */ + uint8_t pad0[3]; /**< */ + uint32_t num_intercepted_clients; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_record_get_context_reply_t; + +/** + * @brief xcb_record_enable_context_cookie_t + **/ +typedef struct xcb_record_enable_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_record_enable_context_cookie_t; + +/** Opcode for xcb_record_enable_context. */ +#define XCB_RECORD_ENABLE_CONTEXT 5 + +/** + * @brief xcb_record_enable_context_request_t + **/ +typedef struct xcb_record_enable_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_record_context_t context; /**< */ +} xcb_record_enable_context_request_t; + +/** + * @brief xcb_record_enable_context_reply_t + **/ +typedef struct xcb_record_enable_context_reply_t { + uint8_t response_type; /**< */ + uint8_t category; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_record_element_header_t element_header; /**< */ + uint8_t client_swapped; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t xid_base; /**< */ + uint32_t server_time; /**< */ + uint32_t rec_sequence_num; /**< */ + uint8_t pad1[8]; /**< */ +} xcb_record_enable_context_reply_t; + +/** Opcode for xcb_record_disable_context. */ +#define XCB_RECORD_DISABLE_CONTEXT 6 + +/** + * @brief xcb_record_disable_context_request_t + **/ +typedef struct xcb_record_disable_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_record_context_t context; /**< */ +} xcb_record_disable_context_request_t; + +/** Opcode for xcb_record_free_context. */ +#define XCB_RECORD_FREE_CONTEXT 7 + +/** + * @brief xcb_record_free_context_request_t + **/ +typedef struct xcb_record_free_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_record_context_t context; /**< */ +} xcb_record_free_context_request_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_record_context_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_record_context_t) + */ + +/***************************************************************************** + ** + ** void xcb_record_context_next + ** + ** @param xcb_record_context_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_context_next (xcb_record_context_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_record_context_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_context_end + ** + ** @param xcb_record_context_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_context_end (xcb_record_context_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_record_range_8_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_record_range_8_t) + */ + +/***************************************************************************** + ** + ** void xcb_record_range_8_next + ** + ** @param xcb_record_range_8_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_range_8_next (xcb_record_range_8_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_record_range_8_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_range_8_end + ** + ** @param xcb_record_range_8_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_range_8_end (xcb_record_range_8_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_record_range_16_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_record_range_16_t) + */ + +/***************************************************************************** + ** + ** void xcb_record_range_16_next + ** + ** @param xcb_record_range_16_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_range_16_next (xcb_record_range_16_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_record_range_16_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_range_16_end + ** + ** @param xcb_record_range_16_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_range_16_end (xcb_record_range_16_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_record_ext_range_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_record_ext_range_t) + */ + +/***************************************************************************** + ** + ** void xcb_record_ext_range_next + ** + ** @param xcb_record_ext_range_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_ext_range_next (xcb_record_ext_range_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_record_ext_range_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_ext_range_end + ** + ** @param xcb_record_ext_range_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_ext_range_end (xcb_record_ext_range_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_record_range_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_record_range_t) + */ + +/***************************************************************************** + ** + ** void xcb_record_range_next + ** + ** @param xcb_record_range_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_range_next (xcb_record_range_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_record_range_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_range_end + ** + ** @param xcb_record_range_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_range_end (xcb_record_range_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_record_element_header_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_record_element_header_t) + */ + +/***************************************************************************** + ** + ** void xcb_record_element_header_next + ** + ** @param xcb_record_element_header_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_element_header_next (xcb_record_element_header_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_record_element_header_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_element_header_end + ** + ** @param xcb_record_element_header_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_element_header_end (xcb_record_element_header_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_record_client_spec_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_record_client_spec_t) + */ + +/***************************************************************************** + ** + ** void xcb_record_client_spec_next + ** + ** @param xcb_record_client_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_client_spec_next (xcb_record_client_spec_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_record_client_spec_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_client_spec_end + ** + ** @param xcb_record_client_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_client_spec_end (xcb_record_client_spec_iterator_t i /**< */); + +int +xcb_record_client_info_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_record_range_t * xcb_record_client_info_ranges + ** + ** @param const xcb_record_client_info_t *R + ** @returns xcb_record_range_t * + ** + *****************************************************************************/ + +xcb_record_range_t * +xcb_record_client_info_ranges (const xcb_record_client_info_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_record_client_info_ranges_length + ** + ** @param const xcb_record_client_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_record_client_info_ranges_length (const xcb_record_client_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_record_range_iterator_t xcb_record_client_info_ranges_iterator + ** + ** @param const xcb_record_client_info_t *R + ** @returns xcb_record_range_iterator_t + ** + *****************************************************************************/ + +xcb_record_range_iterator_t +xcb_record_client_info_ranges_iterator (const xcb_record_client_info_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_record_client_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_record_client_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_record_client_info_next + ** + ** @param xcb_record_client_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_record_client_info_next (xcb_record_client_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_record_client_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_client_info_end + ** + ** @param xcb_record_client_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_client_info_end (xcb_record_client_info_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_record_query_version_cookie_t xcb_record_query_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t major_version + ** @param uint16_t minor_version + ** @returns xcb_record_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_record_query_version_cookie_t +xcb_record_query_version (xcb_connection_t *c /**< */, + uint16_t major_version /**< */, + uint16_t minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_record_query_version_cookie_t xcb_record_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t major_version + ** @param uint16_t minor_version + ** @returns xcb_record_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_record_query_version_cookie_t +xcb_record_query_version_unchecked (xcb_connection_t *c /**< */, + uint16_t major_version /**< */, + uint16_t minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_record_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_record_query_version_reply_t * xcb_record_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_record_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_record_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_record_query_version_reply_t * +xcb_record_query_version_reply (xcb_connection_t *c /**< */, + xcb_record_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_record_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param xcb_record_element_header_t element_header + ** @param uint32_t num_client_specs + ** @param uint32_t num_ranges + ** @param const xcb_record_client_spec_t *client_specs + ** @param const xcb_record_range_t *ranges + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_create_context_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + xcb_record_element_header_t element_header /**< */, + uint32_t num_client_specs /**< */, + uint32_t num_ranges /**< */, + const xcb_record_client_spec_t *client_specs /**< */, + const xcb_record_range_t *ranges /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_create_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param xcb_record_element_header_t element_header + ** @param uint32_t num_client_specs + ** @param uint32_t num_ranges + ** @param const xcb_record_client_spec_t *client_specs + ** @param const xcb_record_range_t *ranges + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_create_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + xcb_record_element_header_t element_header /**< */, + uint32_t num_client_specs /**< */, + uint32_t num_ranges /**< */, + const xcb_record_client_spec_t *client_specs /**< */, + const xcb_record_range_t *ranges /**< */); + +int +xcb_record_register_clients_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_register_clients_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param xcb_record_element_header_t element_header + ** @param uint32_t num_client_specs + ** @param uint32_t num_ranges + ** @param const xcb_record_client_spec_t *client_specs + ** @param const xcb_record_range_t *ranges + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_register_clients_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + xcb_record_element_header_t element_header /**< */, + uint32_t num_client_specs /**< */, + uint32_t num_ranges /**< */, + const xcb_record_client_spec_t *client_specs /**< */, + const xcb_record_range_t *ranges /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_register_clients + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param xcb_record_element_header_t element_header + ** @param uint32_t num_client_specs + ** @param uint32_t num_ranges + ** @param const xcb_record_client_spec_t *client_specs + ** @param const xcb_record_range_t *ranges + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_register_clients (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + xcb_record_element_header_t element_header /**< */, + uint32_t num_client_specs /**< */, + uint32_t num_ranges /**< */, + const xcb_record_client_spec_t *client_specs /**< */, + const xcb_record_range_t *ranges /**< */); + +int +xcb_record_unregister_clients_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_unregister_clients_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param uint32_t num_client_specs + ** @param const xcb_record_client_spec_t *client_specs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_unregister_clients_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + uint32_t num_client_specs /**< */, + const xcb_record_client_spec_t *client_specs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_unregister_clients + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @param uint32_t num_client_specs + ** @param const xcb_record_client_spec_t *client_specs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_unregister_clients (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */, + uint32_t num_client_specs /**< */, + const xcb_record_client_spec_t *client_specs /**< */); + +int +xcb_record_get_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_record_get_context_cookie_t xcb_record_get_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_record_get_context_cookie_t + ** + *****************************************************************************/ + +xcb_record_get_context_cookie_t +xcb_record_get_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_record_get_context_cookie_t xcb_record_get_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_record_get_context_cookie_t + ** + *****************************************************************************/ + +xcb_record_get_context_cookie_t +xcb_record_get_context_unchecked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */); + + +/***************************************************************************** + ** + ** int xcb_record_get_context_intercepted_clients_length + ** + ** @param const xcb_record_get_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_record_get_context_intercepted_clients_length (const xcb_record_get_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_record_client_info_iterator_t xcb_record_get_context_intercepted_clients_iterator + ** + ** @param const xcb_record_get_context_reply_t *R + ** @returns xcb_record_client_info_iterator_t + ** + *****************************************************************************/ + +xcb_record_client_info_iterator_t +xcb_record_get_context_intercepted_clients_iterator (const xcb_record_get_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_record_get_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_record_get_context_reply_t * xcb_record_get_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_record_get_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_record_get_context_reply_t * + ** + *****************************************************************************/ + +xcb_record_get_context_reply_t * +xcb_record_get_context_reply (xcb_connection_t *c /**< */, + xcb_record_get_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_record_enable_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_record_enable_context_cookie_t xcb_record_enable_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_record_enable_context_cookie_t + ** + *****************************************************************************/ + +xcb_record_enable_context_cookie_t +xcb_record_enable_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_record_enable_context_cookie_t xcb_record_enable_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_record_enable_context_cookie_t + ** + *****************************************************************************/ + +xcb_record_enable_context_cookie_t +xcb_record_enable_context_unchecked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_record_enable_context_data + ** + ** @param const xcb_record_enable_context_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_record_enable_context_data (const xcb_record_enable_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_record_enable_context_data_length + ** + ** @param const xcb_record_enable_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_record_enable_context_data_length (const xcb_record_enable_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_record_enable_context_data_end + ** + ** @param const xcb_record_enable_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_record_enable_context_data_end (const xcb_record_enable_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_record_enable_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_record_enable_context_reply_t * xcb_record_enable_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_record_enable_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_record_enable_context_reply_t * + ** + *****************************************************************************/ + +xcb_record_enable_context_reply_t * +xcb_record_enable_context_reply (xcb_connection_t *c /**< */, + xcb_record_enable_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_disable_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_disable_context_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_disable_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_disable_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_free_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_free_context_checked (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_record_free_context + ** + ** @param xcb_connection_t *c + ** @param xcb_record_context_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_record_free_context (xcb_connection_t *c /**< */, + xcb_record_context_t context /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/render.c b/external/mit/xorg/lib/libxcb/files/render.c new file mode 100644 index 000000000..7e5379cfc --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/render.c @@ -0,0 +1,5295 @@ +/* + * This file generated automatically from render.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "render.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_render_id = { "RENDER", 0 }; + + +/***************************************************************************** + ** + ** void xcb_render_glyph_next + ** + ** @param xcb_render_glyph_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_glyph_next (xcb_render_glyph_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_glyph_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_glyph_end + ** + ** @param xcb_render_glyph_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_glyph_end (xcb_render_glyph_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_glyphset_next + ** + ** @param xcb_render_glyphset_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_glyphset_next (xcb_render_glyphset_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_glyphset_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_glyphset_end + ** + ** @param xcb_render_glyphset_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_glyphset_end (xcb_render_glyphset_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_picture_next + ** + ** @param xcb_render_picture_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_picture_next (xcb_render_picture_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_picture_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_picture_end + ** + ** @param xcb_render_picture_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_picture_end (xcb_render_picture_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_pictformat_next + ** + ** @param xcb_render_pictformat_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictformat_next (xcb_render_pictformat_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_pictformat_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictformat_end + ** + ** @param xcb_render_pictformat_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictformat_end (xcb_render_pictformat_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_fixed_next + ** + ** @param xcb_render_fixed_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_fixed_next (xcb_render_fixed_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_fixed_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_fixed_end + ** + ** @param xcb_render_fixed_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_fixed_end (xcb_render_fixed_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_directformat_next + ** + ** @param xcb_render_directformat_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_directformat_next (xcb_render_directformat_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_directformat_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_directformat_end + ** + ** @param xcb_render_directformat_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_directformat_end (xcb_render_directformat_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_pictforminfo_next + ** + ** @param xcb_render_pictforminfo_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictforminfo_next (xcb_render_pictforminfo_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_pictforminfo_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictforminfo_end + ** + ** @param xcb_render_pictforminfo_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictforminfo_end (xcb_render_pictforminfo_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_pictvisual_next + ** + ** @param xcb_render_pictvisual_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictvisual_next (xcb_render_pictvisual_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_pictvisual_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictvisual_end + ** + ** @param xcb_render_pictvisual_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictvisual_end (xcb_render_pictvisual_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_render_pictdepth_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_pictdepth_t *_aux = (xcb_render_pictdepth_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_pictdepth_t); + xcb_tmp += xcb_block_len; + /* visuals */ + xcb_block_len += _aux->num_visuals * sizeof(xcb_render_pictvisual_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_pictvisual_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_render_pictvisual_t * xcb_render_pictdepth_visuals + ** + ** @param const xcb_render_pictdepth_t *R + ** @returns xcb_render_pictvisual_t * + ** + *****************************************************************************/ + +xcb_render_pictvisual_t * +xcb_render_pictdepth_visuals (const xcb_render_pictdepth_t *R /**< */) +{ + return (xcb_render_pictvisual_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_render_pictdepth_visuals_length + ** + ** @param const xcb_render_pictdepth_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_pictdepth_visuals_length (const xcb_render_pictdepth_t *R /**< */) +{ + return R->num_visuals; +} + + +/***************************************************************************** + ** + ** xcb_render_pictvisual_iterator_t xcb_render_pictdepth_visuals_iterator + ** + ** @param const xcb_render_pictdepth_t *R + ** @returns xcb_render_pictvisual_iterator_t + ** + *****************************************************************************/ + +xcb_render_pictvisual_iterator_t +xcb_render_pictdepth_visuals_iterator (const xcb_render_pictdepth_t *R /**< */) +{ + xcb_render_pictvisual_iterator_t i; + i.data = (xcb_render_pictvisual_t *) (R + 1); + i.rem = R->num_visuals; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_render_pictdepth_next + ** + ** @param xcb_render_pictdepth_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictdepth_next (xcb_render_pictdepth_iterator_t *i /**< */) +{ + xcb_render_pictdepth_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_render_pictdepth_t *)(((char *)R) + xcb_render_pictdepth_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_render_pictdepth_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictdepth_end + ** + ** @param xcb_render_pictdepth_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictdepth_end (xcb_render_pictdepth_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_render_pictdepth_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_render_pictscreen_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_pictscreen_t *_aux = (xcb_render_pictscreen_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_render_pictscreen_t); + xcb_tmp += xcb_block_len; + /* depths */ + for(i=0; i<_aux->num_depths; i++) { + xcb_tmp_len = xcb_render_pictdepth_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_render_pictdepth_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** int xcb_render_pictscreen_depths_length + ** + ** @param const xcb_render_pictscreen_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_pictscreen_depths_length (const xcb_render_pictscreen_t *R /**< */) +{ + return R->num_depths; +} + + +/***************************************************************************** + ** + ** xcb_render_pictdepth_iterator_t xcb_render_pictscreen_depths_iterator + ** + ** @param const xcb_render_pictscreen_t *R + ** @returns xcb_render_pictdepth_iterator_t + ** + *****************************************************************************/ + +xcb_render_pictdepth_iterator_t +xcb_render_pictscreen_depths_iterator (const xcb_render_pictscreen_t *R /**< */) +{ + xcb_render_pictdepth_iterator_t i; + i.data = (xcb_render_pictdepth_t *) (R + 1); + i.rem = R->num_depths; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_render_pictscreen_next + ** + ** @param xcb_render_pictscreen_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictscreen_next (xcb_render_pictscreen_iterator_t *i /**< */) +{ + xcb_render_pictscreen_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_render_pictscreen_t *)(((char *)R) + xcb_render_pictscreen_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_render_pictscreen_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictscreen_end + ** + ** @param xcb_render_pictscreen_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictscreen_end (xcb_render_pictscreen_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_render_pictscreen_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_indexvalue_next + ** + ** @param xcb_render_indexvalue_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_indexvalue_next (xcb_render_indexvalue_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_indexvalue_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_indexvalue_end + ** + ** @param xcb_render_indexvalue_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_indexvalue_end (xcb_render_indexvalue_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_color_next + ** + ** @param xcb_render_color_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_color_next (xcb_render_color_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_color_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_color_end + ** + ** @param xcb_render_color_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_color_end (xcb_render_color_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_pointfix_next + ** + ** @param xcb_render_pointfix_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pointfix_next (xcb_render_pointfix_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_pointfix_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pointfix_end + ** + ** @param xcb_render_pointfix_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pointfix_end (xcb_render_pointfix_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_linefix_next + ** + ** @param xcb_render_linefix_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_linefix_next (xcb_render_linefix_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_linefix_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_linefix_end + ** + ** @param xcb_render_linefix_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_linefix_end (xcb_render_linefix_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_triangle_next + ** + ** @param xcb_render_triangle_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_triangle_next (xcb_render_triangle_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_triangle_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_triangle_end + ** + ** @param xcb_render_triangle_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_triangle_end (xcb_render_triangle_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_trapezoid_next + ** + ** @param xcb_render_trapezoid_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_trapezoid_next (xcb_render_trapezoid_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_trapezoid_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_trapezoid_end + ** + ** @param xcb_render_trapezoid_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_trapezoid_end (xcb_render_trapezoid_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_glyphinfo_next + ** + ** @param xcb_render_glyphinfo_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_glyphinfo_next (xcb_render_glyphinfo_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_glyphinfo_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_glyphinfo_end + ** + ** @param xcb_render_glyphinfo_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_glyphinfo_end (xcb_render_glyphinfo_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_render_query_version_cookie_t xcb_render_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_render_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_version_cookie_t +xcb_render_query_version (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_render_query_version_cookie_t xcb_ret; + xcb_render_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_render_query_version_cookie_t xcb_render_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_render_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_version_cookie_t +xcb_render_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_render_query_version_cookie_t xcb_ret; + xcb_render_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_render_query_version_reply_t * xcb_render_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_render_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_render_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_render_query_version_reply_t * +xcb_render_query_version_reply (xcb_connection_t *c /**< */, + xcb_render_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_render_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_render_query_pict_formats_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_query_pict_formats_reply_t *_aux = (xcb_render_query_pict_formats_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_render_query_pict_formats_reply_t); + xcb_tmp += xcb_block_len; + /* formats */ + xcb_block_len += _aux->num_formats * sizeof(xcb_render_pictforminfo_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_pictforminfo_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* screens */ + for(i=0; i<_aux->num_screens; i++) { + xcb_tmp_len = xcb_render_pictscreen_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_render_pictscreen_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* subpixels */ + xcb_block_len += _aux->num_subpixel * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_render_query_pict_formats_cookie_t xcb_render_query_pict_formats + ** + ** @param xcb_connection_t *c + ** @returns xcb_render_query_pict_formats_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_pict_formats_cookie_t +xcb_render_query_pict_formats (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_QUERY_PICT_FORMATS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_render_query_pict_formats_cookie_t xcb_ret; + xcb_render_query_pict_formats_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_render_query_pict_formats_cookie_t xcb_render_query_pict_formats_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_render_query_pict_formats_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_pict_formats_cookie_t +xcb_render_query_pict_formats_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_QUERY_PICT_FORMATS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_render_query_pict_formats_cookie_t xcb_ret; + xcb_render_query_pict_formats_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_render_pictforminfo_t * xcb_render_query_pict_formats_formats + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns xcb_render_pictforminfo_t * + ** + *****************************************************************************/ + +xcb_render_pictforminfo_t * +xcb_render_query_pict_formats_formats (const xcb_render_query_pict_formats_reply_t *R /**< */) +{ + return (xcb_render_pictforminfo_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_render_query_pict_formats_formats_length + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_pict_formats_formats_length (const xcb_render_query_pict_formats_reply_t *R /**< */) +{ + return R->num_formats; +} + + +/***************************************************************************** + ** + ** xcb_render_pictforminfo_iterator_t xcb_render_query_pict_formats_formats_iterator + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns xcb_render_pictforminfo_iterator_t + ** + *****************************************************************************/ + +xcb_render_pictforminfo_iterator_t +xcb_render_query_pict_formats_formats_iterator (const xcb_render_query_pict_formats_reply_t *R /**< */) +{ + xcb_render_pictforminfo_iterator_t i; + i.data = (xcb_render_pictforminfo_t *) (R + 1); + i.rem = R->num_formats; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_render_query_pict_formats_screens_length + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_pict_formats_screens_length (const xcb_render_query_pict_formats_reply_t *R /**< */) +{ + return R->num_screens; +} + + +/***************************************************************************** + ** + ** xcb_render_pictscreen_iterator_t xcb_render_query_pict_formats_screens_iterator + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns xcb_render_pictscreen_iterator_t + ** + *****************************************************************************/ + +xcb_render_pictscreen_iterator_t +xcb_render_query_pict_formats_screens_iterator (const xcb_render_query_pict_formats_reply_t *R /**< */) +{ + xcb_render_pictscreen_iterator_t i; + xcb_generic_iterator_t prev = xcb_render_pictforminfo_end(xcb_render_query_pict_formats_formats_iterator(R)); + i.data = (xcb_render_pictscreen_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_render_pictscreen_t, prev.index)); + i.rem = R->num_screens; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_render_query_pict_formats_subpixels + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_render_query_pict_formats_subpixels (const xcb_render_query_pict_formats_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_render_pictscreen_end(xcb_render_query_pict_formats_screens_iterator(R)); + return (uint32_t *) ((char *) prev.data + XCB_TYPE_PAD(uint32_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_render_query_pict_formats_subpixels_length + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_pict_formats_subpixels_length (const xcb_render_query_pict_formats_reply_t *R /**< */) +{ + return R->num_subpixel; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_query_pict_formats_subpixels_end + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_query_pict_formats_subpixels_end (const xcb_render_query_pict_formats_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_render_pictscreen_end(xcb_render_query_pict_formats_screens_iterator(R)); + i.data = ((uint32_t *) child.data) + (R->num_subpixel); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_render_query_pict_formats_reply_t * xcb_render_query_pict_formats_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_render_query_pict_formats_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_render_query_pict_formats_reply_t * + ** + *****************************************************************************/ + +xcb_render_query_pict_formats_reply_t * +xcb_render_query_pict_formats_reply (xcb_connection_t *c /**< */, + xcb_render_query_pict_formats_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_render_query_pict_formats_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_render_query_pict_index_values_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_query_pict_index_values_reply_t *_aux = (xcb_render_query_pict_index_values_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_query_pict_index_values_reply_t); + xcb_tmp += xcb_block_len; + /* values */ + xcb_block_len += _aux->num_values * sizeof(xcb_render_indexvalue_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_indexvalue_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_render_query_pict_index_values_cookie_t xcb_render_query_pict_index_values + ** + ** @param xcb_connection_t *c + ** @param xcb_render_pictformat_t format + ** @returns xcb_render_query_pict_index_values_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_pict_index_values_cookie_t +xcb_render_query_pict_index_values (xcb_connection_t *c /**< */, + xcb_render_pictformat_t format /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_QUERY_PICT_INDEX_VALUES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_render_query_pict_index_values_cookie_t xcb_ret; + xcb_render_query_pict_index_values_request_t xcb_out; + + xcb_out.format = format; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_render_query_pict_index_values_cookie_t xcb_render_query_pict_index_values_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_pictformat_t format + ** @returns xcb_render_query_pict_index_values_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_pict_index_values_cookie_t +xcb_render_query_pict_index_values_unchecked (xcb_connection_t *c /**< */, + xcb_render_pictformat_t format /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_QUERY_PICT_INDEX_VALUES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_render_query_pict_index_values_cookie_t xcb_ret; + xcb_render_query_pict_index_values_request_t xcb_out; + + xcb_out.format = format; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_render_indexvalue_t * xcb_render_query_pict_index_values_values + ** + ** @param const xcb_render_query_pict_index_values_reply_t *R + ** @returns xcb_render_indexvalue_t * + ** + *****************************************************************************/ + +xcb_render_indexvalue_t * +xcb_render_query_pict_index_values_values (const xcb_render_query_pict_index_values_reply_t *R /**< */) +{ + return (xcb_render_indexvalue_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_render_query_pict_index_values_values_length + ** + ** @param const xcb_render_query_pict_index_values_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_pict_index_values_values_length (const xcb_render_query_pict_index_values_reply_t *R /**< */) +{ + return R->num_values; +} + + +/***************************************************************************** + ** + ** xcb_render_indexvalue_iterator_t xcb_render_query_pict_index_values_values_iterator + ** + ** @param const xcb_render_query_pict_index_values_reply_t *R + ** @returns xcb_render_indexvalue_iterator_t + ** + *****************************************************************************/ + +xcb_render_indexvalue_iterator_t +xcb_render_query_pict_index_values_values_iterator (const xcb_render_query_pict_index_values_reply_t *R /**< */) +{ + xcb_render_indexvalue_iterator_t i; + i.data = (xcb_render_indexvalue_t *) (R + 1); + i.rem = R->num_values; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_render_query_pict_index_values_reply_t * xcb_render_query_pict_index_values_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_render_query_pict_index_values_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_render_query_pict_index_values_reply_t * + ** + *****************************************************************************/ + +xcb_render_query_pict_index_values_reply_t * +xcb_render_query_pict_index_values_reply (xcb_connection_t *c /**< */, + xcb_render_query_pict_index_values_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_render_query_pict_index_values_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_render_create_picture_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_create_picture_request_t *_aux = (xcb_render_create_picture_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_create_picture_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_picture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t pid + ** @param xcb_drawable_t drawable + ** @param xcb_render_pictformat_t format + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_picture_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t pid /**< */, + xcb_drawable_t drawable /**< */, + xcb_render_pictformat_t format /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_PICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_picture_request_t xcb_out; + + xcb_out.pid = pid; + xcb_out.drawable = drawable; + xcb_out.format = format; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_picture + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t pid + ** @param xcb_drawable_t drawable + ** @param xcb_render_pictformat_t format + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_picture (xcb_connection_t *c /**< */, + xcb_render_picture_t pid /**< */, + xcb_drawable_t drawable /**< */, + xcb_render_pictformat_t format /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_PICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_picture_request_t xcb_out; + + xcb_out.pid = pid; + xcb_out.drawable = drawable; + xcb_out.format = format; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_change_picture_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_change_picture_request_t *_aux = (xcb_render_change_picture_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_change_picture_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_change_picture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_change_picture_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CHANGE_PICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_change_picture_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_change_picture + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_change_picture (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CHANGE_PICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_change_picture_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_set_picture_clip_rectangles_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_set_picture_clip_rectangles_request_t); + xcb_tmp += xcb_block_len; + /* rectangles */ + xcb_block_len += rectangles_len * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_clip_rectangles_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param int16_t clip_x_origin + ** @param int16_t clip_y_origin + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_clip_rectangles_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + int16_t clip_x_origin /**< */, + int16_t clip_y_origin /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_SET_PICTURE_CLIP_RECTANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_set_picture_clip_rectangles_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.clip_x_origin = clip_x_origin; + xcb_out.clip_y_origin = clip_y_origin; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_clip_rectangles + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param int16_t clip_x_origin + ** @param int16_t clip_y_origin + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_clip_rectangles (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + int16_t clip_x_origin /**< */, + int16_t clip_y_origin /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_SET_PICTURE_CLIP_RECTANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_set_picture_clip_rectangles_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.clip_x_origin = clip_x_origin; + xcb_out.clip_y_origin = clip_y_origin; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_picture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_picture_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_FREE_PICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_free_picture_request_t xcb_out; + + xcb_out.picture = picture; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_picture + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_picture (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_FREE_PICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_free_picture_request_t xcb_out; + + xcb_out.picture = picture; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t mask + ** @param xcb_render_picture_t dst + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t mask_x + ** @param int16_t mask_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t mask /**< */, + xcb_render_picture_t dst /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t mask_x /**< */, + int16_t mask_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_COMPOSITE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_composite_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.mask = mask; + xcb_out.dst = dst; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.mask_x = mask_x; + xcb_out.mask_y = mask_y; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t mask + ** @param xcb_render_picture_t dst + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t mask_x + ** @param int16_t mask_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t mask /**< */, + xcb_render_picture_t dst /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t mask_x /**< */, + int16_t mask_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_COMPOSITE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_composite_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.mask = mask; + xcb_out.dst = dst; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.mask_x = mask_x; + xcb_out.mask_y = mask_y; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_trapezoids_sizeof (const void *_buffer /**< */, + uint32_t traps_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_trapezoids_request_t); + xcb_tmp += xcb_block_len; + /* traps */ + xcb_block_len += traps_len * sizeof(xcb_render_trapezoid_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_trapezoid_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_trapezoids_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t traps_len + ** @param const xcb_render_trapezoid_t *traps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_trapezoids_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t traps_len /**< */, + const xcb_render_trapezoid_t *traps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_TRAPEZOIDS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_trapezoids_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_trapezoid_t traps */ + xcb_parts[4].iov_base = (char *) traps; + xcb_parts[4].iov_len = traps_len * sizeof(xcb_render_trapezoid_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_trapezoids + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t traps_len + ** @param const xcb_render_trapezoid_t *traps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_trapezoids (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t traps_len /**< */, + const xcb_render_trapezoid_t *traps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_TRAPEZOIDS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_trapezoids_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_trapezoid_t traps */ + xcb_parts[4].iov_base = (char *) traps; + xcb_parts[4].iov_len = traps_len * sizeof(xcb_render_trapezoid_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_triangles_sizeof (const void *_buffer /**< */, + uint32_t triangles_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_triangles_request_t); + xcb_tmp += xcb_block_len; + /* triangles */ + xcb_block_len += triangles_len * sizeof(xcb_render_triangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_triangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_triangles_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t triangles_len + ** @param const xcb_render_triangle_t *triangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_triangles_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t triangles_len /**< */, + const xcb_render_triangle_t *triangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_TRIANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_triangles_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_triangle_t triangles */ + xcb_parts[4].iov_base = (char *) triangles; + xcb_parts[4].iov_len = triangles_len * sizeof(xcb_render_triangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_triangles + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t triangles_len + ** @param const xcb_render_triangle_t *triangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_triangles (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t triangles_len /**< */, + const xcb_render_triangle_t *triangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_TRIANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_triangles_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_triangle_t triangles */ + xcb_parts[4].iov_base = (char *) triangles; + xcb_parts[4].iov_len = triangles_len * sizeof(xcb_render_triangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_tri_strip_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_tri_strip_request_t); + xcb_tmp += xcb_block_len; + /* points */ + xcb_block_len += points_len * sizeof(xcb_render_pointfix_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_pointfix_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_tri_strip_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t points_len + ** @param const xcb_render_pointfix_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_tri_strip_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t points_len /**< */, + const xcb_render_pointfix_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_TRI_STRIP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_tri_strip_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_pointfix_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_render_pointfix_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_tri_strip + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t points_len + ** @param const xcb_render_pointfix_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_tri_strip (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t points_len /**< */, + const xcb_render_pointfix_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_TRI_STRIP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_tri_strip_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_pointfix_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_render_pointfix_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_tri_fan_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_tri_fan_request_t); + xcb_tmp += xcb_block_len; + /* points */ + xcb_block_len += points_len * sizeof(xcb_render_pointfix_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_pointfix_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_tri_fan_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t points_len + ** @param const xcb_render_pointfix_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_tri_fan_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t points_len /**< */, + const xcb_render_pointfix_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_TRI_FAN, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_tri_fan_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_pointfix_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_render_pointfix_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_tri_fan + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t points_len + ** @param const xcb_render_pointfix_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_tri_fan (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t points_len /**< */, + const xcb_render_pointfix_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_TRI_FAN, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_tri_fan_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_pointfix_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_render_pointfix_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_glyph_set_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t gsid + ** @param xcb_render_pictformat_t format + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_glyph_set_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t gsid /**< */, + xcb_render_pictformat_t format /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_GLYPH_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_glyph_set_request_t xcb_out; + + xcb_out.gsid = gsid; + xcb_out.format = format; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_glyph_set + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t gsid + ** @param xcb_render_pictformat_t format + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_glyph_set (xcb_connection_t *c /**< */, + xcb_render_glyphset_t gsid /**< */, + xcb_render_pictformat_t format /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_GLYPH_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_glyph_set_request_t xcb_out; + + xcb_out.gsid = gsid; + xcb_out.format = format; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_reference_glyph_set_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t gsid + ** @param xcb_render_glyphset_t existing + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_reference_glyph_set_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t gsid /**< */, + xcb_render_glyphset_t existing /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_REFERENCE_GLYPH_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_reference_glyph_set_request_t xcb_out; + + xcb_out.gsid = gsid; + xcb_out.existing = existing; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_reference_glyph_set + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t gsid + ** @param xcb_render_glyphset_t existing + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_reference_glyph_set (xcb_connection_t *c /**< */, + xcb_render_glyphset_t gsid /**< */, + xcb_render_glyphset_t existing /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_REFERENCE_GLYPH_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_reference_glyph_set_request_t xcb_out; + + xcb_out.gsid = gsid; + xcb_out.existing = existing; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_glyph_set_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_glyph_set_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_FREE_GLYPH_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_free_glyph_set_request_t xcb_out; + + xcb_out.glyphset = glyphset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_glyph_set + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_glyph_set (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_FREE_GLYPH_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_free_glyph_set_request_t xcb_out; + + xcb_out.glyphset = glyphset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_add_glyphs_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_add_glyphs_request_t *_aux = (xcb_render_add_glyphs_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_add_glyphs_request_t); + xcb_tmp += xcb_block_len; + /* glyphids */ + xcb_block_len += _aux->glyphs_len * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* glyphs */ + xcb_block_len += _aux->glyphs_len * sizeof(xcb_render_glyphinfo_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_glyphinfo_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* data */ + xcb_block_len += data_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_add_glyphs_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @param uint32_t glyphs_len + ** @param const uint32_t *glyphids + ** @param const xcb_render_glyphinfo_t *glyphs + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_add_glyphs_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */, + uint32_t glyphs_len /**< */, + const uint32_t *glyphids /**< */, + const xcb_render_glyphinfo_t *glyphs /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_ADD_GLYPHS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_render_add_glyphs_request_t xcb_out; + + xcb_out.glyphset = glyphset; + xcb_out.glyphs_len = glyphs_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t glyphids */ + xcb_parts[4].iov_base = (char *) glyphids; + xcb_parts[4].iov_len = glyphs_len * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_glyphinfo_t glyphs */ + xcb_parts[6].iov_base = (char *) glyphs; + xcb_parts[6].iov_len = glyphs_len * sizeof(xcb_render_glyphinfo_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* uint8_t data */ + xcb_parts[8].iov_base = (char *) data; + xcb_parts[8].iov_len = data_len * sizeof(uint8_t); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_add_glyphs + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @param uint32_t glyphs_len + ** @param const uint32_t *glyphids + ** @param const xcb_render_glyphinfo_t *glyphs + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_add_glyphs (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */, + uint32_t glyphs_len /**< */, + const uint32_t *glyphids /**< */, + const xcb_render_glyphinfo_t *glyphs /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_ADD_GLYPHS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_render_add_glyphs_request_t xcb_out; + + xcb_out.glyphset = glyphset; + xcb_out.glyphs_len = glyphs_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t glyphids */ + xcb_parts[4].iov_base = (char *) glyphids; + xcb_parts[4].iov_len = glyphs_len * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_glyphinfo_t glyphs */ + xcb_parts[6].iov_base = (char *) glyphs; + xcb_parts[6].iov_len = glyphs_len * sizeof(xcb_render_glyphinfo_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* uint8_t data */ + xcb_parts[8].iov_base = (char *) data; + xcb_parts[8].iov_len = data_len * sizeof(uint8_t); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_free_glyphs_sizeof (const void *_buffer /**< */, + uint32_t glyphs_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_free_glyphs_request_t); + xcb_tmp += xcb_block_len; + /* glyphs */ + xcb_block_len += glyphs_len * sizeof(xcb_render_glyph_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_glyph_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_glyphs_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @param uint32_t glyphs_len + ** @param const xcb_render_glyph_t *glyphs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_glyphs_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */, + uint32_t glyphs_len /**< */, + const xcb_render_glyph_t *glyphs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_FREE_GLYPHS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_free_glyphs_request_t xcb_out; + + xcb_out.glyphset = glyphset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_glyph_t glyphs */ + xcb_parts[4].iov_base = (char *) glyphs; + xcb_parts[4].iov_len = glyphs_len * sizeof(xcb_render_glyph_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_glyphs + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @param uint32_t glyphs_len + ** @param const xcb_render_glyph_t *glyphs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_glyphs (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */, + uint32_t glyphs_len /**< */, + const xcb_render_glyph_t *glyphs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_FREE_GLYPHS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_free_glyphs_request_t xcb_out; + + xcb_out.glyphset = glyphset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_glyph_t glyphs */ + xcb_parts[4].iov_base = (char *) glyphs; + xcb_parts[4].iov_len = glyphs_len * sizeof(xcb_render_glyph_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_composite_glyphs_8_sizeof (const void *_buffer /**< */, + uint32_t glyphcmds_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_composite_glyphs_8_request_t); + xcb_tmp += xcb_block_len; + /* glyphcmds */ + xcb_block_len += glyphcmds_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_8_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_8_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_COMPOSITE_GLYPHS_8, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_composite_glyphs_8_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.glyphset = glyphset; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t glyphcmds */ + xcb_parts[4].iov_base = (char *) glyphcmds; + xcb_parts[4].iov_len = glyphcmds_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_8 + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_8 (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_COMPOSITE_GLYPHS_8, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_composite_glyphs_8_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.glyphset = glyphset; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t glyphcmds */ + xcb_parts[4].iov_base = (char *) glyphcmds; + xcb_parts[4].iov_len = glyphcmds_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_composite_glyphs_16_sizeof (const void *_buffer /**< */, + uint32_t glyphcmds_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_composite_glyphs_16_request_t); + xcb_tmp += xcb_block_len; + /* glyphcmds */ + xcb_block_len += glyphcmds_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_16_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_16_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_COMPOSITE_GLYPHS_16, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_composite_glyphs_16_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.glyphset = glyphset; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t glyphcmds */ + xcb_parts[4].iov_base = (char *) glyphcmds; + xcb_parts[4].iov_len = glyphcmds_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_16 + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_16 (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_COMPOSITE_GLYPHS_16, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_composite_glyphs_16_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.glyphset = glyphset; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t glyphcmds */ + xcb_parts[4].iov_base = (char *) glyphcmds; + xcb_parts[4].iov_len = glyphcmds_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_composite_glyphs_32_sizeof (const void *_buffer /**< */, + uint32_t glyphcmds_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_composite_glyphs_32_request_t); + xcb_tmp += xcb_block_len; + /* glyphcmds */ + xcb_block_len += glyphcmds_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_32_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_32_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_COMPOSITE_GLYPHS_32, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_composite_glyphs_32_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.glyphset = glyphset; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t glyphcmds */ + xcb_parts[4].iov_base = (char *) glyphcmds; + xcb_parts[4].iov_len = glyphcmds_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_32 + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_32 (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_COMPOSITE_GLYPHS_32, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_composite_glyphs_32_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.src = src; + xcb_out.dst = dst; + xcb_out.mask_format = mask_format; + xcb_out.glyphset = glyphset; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t glyphcmds */ + xcb_parts[4].iov_base = (char *) glyphcmds; + xcb_parts[4].iov_len = glyphcmds_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_fill_rectangles_sizeof (const void *_buffer /**< */, + uint32_t rects_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_fill_rectangles_request_t); + xcb_tmp += xcb_block_len; + /* rects */ + xcb_block_len += rects_len * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_fill_rectangles_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t dst + ** @param xcb_render_color_t color + ** @param uint32_t rects_len + ** @param const xcb_rectangle_t *rects + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_fill_rectangles_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_color_t color /**< */, + uint32_t rects_len /**< */, + const xcb_rectangle_t *rects /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_FILL_RECTANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_fill_rectangles_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.dst = dst; + xcb_out.color = color; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rects */ + xcb_parts[4].iov_base = (char *) rects; + xcb_parts[4].iov_len = rects_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_fill_rectangles + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t dst + ** @param xcb_render_color_t color + ** @param uint32_t rects_len + ** @param const xcb_rectangle_t *rects + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_fill_rectangles (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_color_t color /**< */, + uint32_t rects_len /**< */, + const xcb_rectangle_t *rects /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_FILL_RECTANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_fill_rectangles_request_t xcb_out; + + xcb_out.op = op; + memset(xcb_out.pad0, 0, 3); + xcb_out.dst = dst; + xcb_out.color = color; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rects */ + xcb_parts[4].iov_base = (char *) rects; + xcb_parts[4].iov_len = rects_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_render_picture_t source + ** @param uint16_t x + ** @param uint16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_render_picture_t source /**< */, + uint16_t x /**< */, + uint16_t y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_cursor_request_t xcb_out; + + xcb_out.cid = cid; + xcb_out.source = source; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_render_picture_t source + ** @param uint16_t x + ** @param uint16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_render_picture_t source /**< */, + uint16_t x /**< */, + uint16_t y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_cursor_request_t xcb_out; + + xcb_out.cid = cid; + xcb_out.source = source; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_transform_next + ** + ** @param xcb_render_transform_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_transform_next (xcb_render_transform_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_transform_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_transform_end + ** + ** @param xcb_render_transform_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_transform_end (xcb_render_transform_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_transform_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_transform_t transform + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_transform_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_transform_t transform /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_SET_PICTURE_TRANSFORM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_set_picture_transform_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.transform = transform; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_transform + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_transform_t transform + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_transform (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_transform_t transform /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_SET_PICTURE_TRANSFORM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_set_picture_transform_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.transform = transform; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_query_filters_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_query_filters_reply_t *_aux = (xcb_render_query_filters_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_render_query_filters_reply_t); + xcb_tmp += xcb_block_len; + /* aliases */ + xcb_block_len += _aux->num_aliases * sizeof(uint16_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* filters */ + for(i=0; i<_aux->num_filters; i++) { + xcb_tmp_len = xcb_str_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_str_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_render_query_filters_cookie_t xcb_render_query_filters + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_render_query_filters_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_filters_cookie_t +xcb_render_query_filters (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_QUERY_FILTERS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_render_query_filters_cookie_t xcb_ret; + xcb_render_query_filters_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_render_query_filters_cookie_t xcb_render_query_filters_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_render_query_filters_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_filters_cookie_t +xcb_render_query_filters_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_QUERY_FILTERS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_render_query_filters_cookie_t xcb_ret; + xcb_render_query_filters_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint16_t * xcb_render_query_filters_aliases + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_render_query_filters_aliases (const xcb_render_query_filters_reply_t *R /**< */) +{ + return (uint16_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_render_query_filters_aliases_length + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_filters_aliases_length (const xcb_render_query_filters_reply_t *R /**< */) +{ + return R->num_aliases; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_query_filters_aliases_end + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_query_filters_aliases_end (const xcb_render_query_filters_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint16_t *) (R + 1)) + (R->num_aliases); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_render_query_filters_filters_length + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_filters_filters_length (const xcb_render_query_filters_reply_t *R /**< */) +{ + return R->num_filters; +} + + +/***************************************************************************** + ** + ** xcb_str_iterator_t xcb_render_query_filters_filters_iterator + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns xcb_str_iterator_t + ** + *****************************************************************************/ + +xcb_str_iterator_t +xcb_render_query_filters_filters_iterator (const xcb_render_query_filters_reply_t *R /**< */) +{ + xcb_str_iterator_t i; + xcb_generic_iterator_t prev = xcb_render_query_filters_aliases_end(R); + i.data = (xcb_str_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_str_t, prev.index)); + i.rem = R->num_filters; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_render_query_filters_reply_t * xcb_render_query_filters_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_render_query_filters_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_render_query_filters_reply_t * + ** + *****************************************************************************/ + +xcb_render_query_filters_reply_t * +xcb_render_query_filters_reply (xcb_connection_t *c /**< */, + xcb_render_query_filters_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_render_query_filters_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_render_set_picture_filter_sizeof (const void *_buffer /**< */, + uint32_t values_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_set_picture_filter_request_t *_aux = (xcb_render_set_picture_filter_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_set_picture_filter_request_t); + xcb_tmp += xcb_block_len; + /* filter */ + xcb_block_len += _aux->filter_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* values */ + xcb_block_len += values_len * sizeof(xcb_render_fixed_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_fixed_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_filter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param uint16_t filter_len + ** @param const char *filter + ** @param uint32_t values_len + ** @param const xcb_render_fixed_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_filter_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + uint16_t filter_len /**< */, + const char *filter /**< */, + uint32_t values_len /**< */, + const xcb_render_fixed_t *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_SET_PICTURE_FILTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_render_set_picture_filter_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.filter_len = filter_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char filter */ + xcb_parts[4].iov_base = (char *) filter; + xcb_parts[4].iov_len = filter_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_fixed_t values */ + xcb_parts[6].iov_base = (char *) values; + xcb_parts[6].iov_len = values_len * sizeof(xcb_render_fixed_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_filter + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param uint16_t filter_len + ** @param const char *filter + ** @param uint32_t values_len + ** @param const xcb_render_fixed_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_filter (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + uint16_t filter_len /**< */, + const char *filter /**< */, + uint32_t values_len /**< */, + const xcb_render_fixed_t *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_SET_PICTURE_FILTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_render_set_picture_filter_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.filter_len = filter_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char filter */ + xcb_parts[4].iov_base = (char *) filter; + xcb_parts[4].iov_len = filter_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_fixed_t values */ + xcb_parts[6].iov_base = (char *) values; + xcb_parts[6].iov_len = values_len * sizeof(xcb_render_fixed_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_animcursorelt_next + ** + ** @param xcb_render_animcursorelt_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_animcursorelt_next (xcb_render_animcursorelt_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_animcursorelt_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_animcursorelt_end + ** + ** @param xcb_render_animcursorelt_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_animcursorelt_end (xcb_render_animcursorelt_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_render_create_anim_cursor_sizeof (const void *_buffer /**< */, + uint32_t cursors_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_create_anim_cursor_request_t); + xcb_tmp += xcb_block_len; + /* cursors */ + xcb_block_len += cursors_len * sizeof(xcb_render_animcursorelt_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_animcursorelt_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_anim_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param uint32_t cursors_len + ** @param const xcb_render_animcursorelt_t *cursors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_anim_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + uint32_t cursors_len /**< */, + const xcb_render_animcursorelt_t *cursors /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_ANIM_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_anim_cursor_request_t xcb_out; + + xcb_out.cid = cid; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_animcursorelt_t cursors */ + xcb_parts[4].iov_base = (char *) cursors; + xcb_parts[4].iov_len = cursors_len * sizeof(xcb_render_animcursorelt_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_anim_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param uint32_t cursors_len + ** @param const xcb_render_animcursorelt_t *cursors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_anim_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + uint32_t cursors_len /**< */, + const xcb_render_animcursorelt_t *cursors /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_ANIM_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_anim_cursor_request_t xcb_out; + + xcb_out.cid = cid; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_animcursorelt_t cursors */ + xcb_parts[4].iov_base = (char *) cursors; + xcb_parts[4].iov_len = cursors_len * sizeof(xcb_render_animcursorelt_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_spanfix_next + ** + ** @param xcb_render_spanfix_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_spanfix_next (xcb_render_spanfix_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_spanfix_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_spanfix_end + ** + ** @param xcb_render_spanfix_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_spanfix_end (xcb_render_spanfix_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_render_trap_next + ** + ** @param xcb_render_trap_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_trap_next (xcb_render_trap_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_render_trap_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_trap_end + ** + ** @param xcb_render_trap_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_trap_end (xcb_render_trap_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_render_add_traps_sizeof (const void *_buffer /**< */, + uint32_t traps_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_add_traps_request_t); + xcb_tmp += xcb_block_len; + /* traps */ + xcb_block_len += traps_len * sizeof(xcb_render_trap_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_trap_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_add_traps_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param int16_t x_off + ** @param int16_t y_off + ** @param uint32_t traps_len + ** @param const xcb_render_trap_t *traps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_add_traps_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + int16_t x_off /**< */, + int16_t y_off /**< */, + uint32_t traps_len /**< */, + const xcb_render_trap_t *traps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_ADD_TRAPS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_add_traps_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.x_off = x_off; + xcb_out.y_off = y_off; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_trap_t traps */ + xcb_parts[4].iov_base = (char *) traps; + xcb_parts[4].iov_len = traps_len * sizeof(xcb_render_trap_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_add_traps + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param int16_t x_off + ** @param int16_t y_off + ** @param uint32_t traps_len + ** @param const xcb_render_trap_t *traps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_add_traps (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + int16_t x_off /**< */, + int16_t y_off /**< */, + uint32_t traps_len /**< */, + const xcb_render_trap_t *traps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_ADD_TRAPS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_render_add_traps_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.x_off = x_off; + xcb_out.y_off = y_off; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_trap_t traps */ + xcb_parts[4].iov_base = (char *) traps; + xcb_parts[4].iov_len = traps_len * sizeof(xcb_render_trap_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_solid_fill_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_color_t color + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_solid_fill_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_color_t color /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_SOLID_FILL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_solid_fill_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.color = color; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_solid_fill + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_color_t color + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_solid_fill (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_color_t color /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_SOLID_FILL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_solid_fill_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.color = color; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_create_linear_gradient_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_create_linear_gradient_request_t *_aux = (xcb_render_create_linear_gradient_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_create_linear_gradient_request_t); + xcb_tmp += xcb_block_len; + /* stops */ + xcb_block_len += _aux->num_stops * sizeof(xcb_render_fixed_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_fixed_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* colors */ + xcb_block_len += _aux->num_stops * sizeof(xcb_render_color_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_color_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_linear_gradient_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t p1 + ** @param xcb_render_pointfix_t p2 + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_linear_gradient_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t p1 /**< */, + xcb_render_pointfix_t p2 /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_LINEAR_GRADIENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_linear_gradient_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.p1 = p1; + xcb_out.p2 = p2; + xcb_out.num_stops = num_stops; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_fixed_t stops */ + xcb_parts[4].iov_base = (char *) stops; + xcb_parts[4].iov_len = num_stops * sizeof(xcb_render_fixed_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_color_t colors */ + xcb_parts[6].iov_base = (char *) colors; + xcb_parts[6].iov_len = num_stops * sizeof(xcb_render_color_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_linear_gradient + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t p1 + ** @param xcb_render_pointfix_t p2 + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_linear_gradient (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t p1 /**< */, + xcb_render_pointfix_t p2 /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_LINEAR_GRADIENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_linear_gradient_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.p1 = p1; + xcb_out.p2 = p2; + xcb_out.num_stops = num_stops; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_fixed_t stops */ + xcb_parts[4].iov_base = (char *) stops; + xcb_parts[4].iov_len = num_stops * sizeof(xcb_render_fixed_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_color_t colors */ + xcb_parts[6].iov_base = (char *) colors; + xcb_parts[6].iov_len = num_stops * sizeof(xcb_render_color_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_create_radial_gradient_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_create_radial_gradient_request_t *_aux = (xcb_render_create_radial_gradient_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_create_radial_gradient_request_t); + xcb_tmp += xcb_block_len; + /* stops */ + xcb_block_len += _aux->num_stops * sizeof(xcb_render_fixed_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_fixed_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* colors */ + xcb_block_len += _aux->num_stops * sizeof(xcb_render_color_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_color_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_radial_gradient_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t inner + ** @param xcb_render_pointfix_t outer + ** @param xcb_render_fixed_t inner_radius + ** @param xcb_render_fixed_t outer_radius + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_radial_gradient_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t inner /**< */, + xcb_render_pointfix_t outer /**< */, + xcb_render_fixed_t inner_radius /**< */, + xcb_render_fixed_t outer_radius /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_RADIAL_GRADIENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_radial_gradient_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.inner = inner; + xcb_out.outer = outer; + xcb_out.inner_radius = inner_radius; + xcb_out.outer_radius = outer_radius; + xcb_out.num_stops = num_stops; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_fixed_t stops */ + xcb_parts[4].iov_base = (char *) stops; + xcb_parts[4].iov_len = num_stops * sizeof(xcb_render_fixed_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_color_t colors */ + xcb_parts[6].iov_base = (char *) colors; + xcb_parts[6].iov_len = num_stops * sizeof(xcb_render_color_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_radial_gradient + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t inner + ** @param xcb_render_pointfix_t outer + ** @param xcb_render_fixed_t inner_radius + ** @param xcb_render_fixed_t outer_radius + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_radial_gradient (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t inner /**< */, + xcb_render_pointfix_t outer /**< */, + xcb_render_fixed_t inner_radius /**< */, + xcb_render_fixed_t outer_radius /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_RADIAL_GRADIENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_radial_gradient_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.inner = inner; + xcb_out.outer = outer; + xcb_out.inner_radius = inner_radius; + xcb_out.outer_radius = outer_radius; + xcb_out.num_stops = num_stops; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_fixed_t stops */ + xcb_parts[4].iov_base = (char *) stops; + xcb_parts[4].iov_len = num_stops * sizeof(xcb_render_fixed_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_color_t colors */ + xcb_parts[6].iov_base = (char *) colors; + xcb_parts[6].iov_len = num_stops * sizeof(xcb_render_color_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_render_create_conical_gradient_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_render_create_conical_gradient_request_t *_aux = (xcb_render_create_conical_gradient_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_render_create_conical_gradient_request_t); + xcb_tmp += xcb_block_len; + /* stops */ + xcb_block_len += _aux->num_stops * sizeof(xcb_render_fixed_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_fixed_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* colors */ + xcb_block_len += _aux->num_stops * sizeof(xcb_render_color_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_render_color_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_conical_gradient_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t center + ** @param xcb_render_fixed_t angle + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_conical_gradient_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t center /**< */, + xcb_render_fixed_t angle /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_CONICAL_GRADIENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_conical_gradient_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.center = center; + xcb_out.angle = angle; + xcb_out.num_stops = num_stops; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_fixed_t stops */ + xcb_parts[4].iov_base = (char *) stops; + xcb_parts[4].iov_len = num_stops * sizeof(xcb_render_fixed_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_color_t colors */ + xcb_parts[6].iov_base = (char *) colors; + xcb_parts[6].iov_len = num_stops * sizeof(xcb_render_color_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_conical_gradient + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t center + ** @param xcb_render_fixed_t angle + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_conical_gradient (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t center /**< */, + xcb_render_fixed_t angle /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_render_id, + /* opcode */ XCB_RENDER_CREATE_CONICAL_GRADIENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_render_create_conical_gradient_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.center = center; + xcb_out.angle = angle; + xcb_out.num_stops = num_stops; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_render_fixed_t stops */ + xcb_parts[4].iov_base = (char *) stops; + xcb_parts[4].iov_len = num_stops * sizeof(xcb_render_fixed_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_render_color_t colors */ + xcb_parts[6].iov_base = (char *) colors; + xcb_parts[6].iov_len = num_stops * sizeof(xcb_render_color_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/render.h b/external/mit/xorg/lib/libxcb/files/render.h new file mode 100644 index 000000000..eb7f0424d --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/render.h @@ -0,0 +1,4513 @@ +/* + * This file generated automatically from render.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Render_API XCB Render API + * @brief Render XCB Protocol Implementation. + * @{ + **/ + +#ifndef __RENDER_H +#define __RENDER_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_RENDER_MAJOR_VERSION 0 +#define XCB_RENDER_MINOR_VERSION 11 + +extern xcb_extension_t xcb_render_id; + +typedef enum xcb_render_pict_type_t { + XCB_RENDER_PICT_TYPE_INDEXED, + XCB_RENDER_PICT_TYPE_DIRECT +} xcb_render_pict_type_t; + +typedef enum xcb_render_picture_enum_t { + XCB_RENDER_PICTURE_NONE +} xcb_render_picture_enum_t; + +typedef enum xcb_render_pict_op_t { + XCB_RENDER_PICT_OP_CLEAR, + XCB_RENDER_PICT_OP_SRC, + XCB_RENDER_PICT_OP_DST, + XCB_RENDER_PICT_OP_OVER, + XCB_RENDER_PICT_OP_OVER_REVERSE, + XCB_RENDER_PICT_OP_IN, + XCB_RENDER_PICT_OP_IN_REVERSE, + XCB_RENDER_PICT_OP_OUT, + XCB_RENDER_PICT_OP_OUT_REVERSE, + XCB_RENDER_PICT_OP_ATOP, + XCB_RENDER_PICT_OP_ATOP_REVERSE, + XCB_RENDER_PICT_OP_XOR, + XCB_RENDER_PICT_OP_ADD, + XCB_RENDER_PICT_OP_SATURATE, + XCB_RENDER_PICT_OP_DISJOINT_CLEAR = 16, + XCB_RENDER_PICT_OP_DISJOINT_SRC, + XCB_RENDER_PICT_OP_DISJOINT_DST, + XCB_RENDER_PICT_OP_DISJOINT_OVER, + XCB_RENDER_PICT_OP_DISJOINT_OVER_REVERSE, + XCB_RENDER_PICT_OP_DISJOINT_IN, + XCB_RENDER_PICT_OP_DISJOINT_IN_REVERSE, + XCB_RENDER_PICT_OP_DISJOINT_OUT, + XCB_RENDER_PICT_OP_DISJOINT_OUT_REVERSE, + XCB_RENDER_PICT_OP_DISJOINT_ATOP, + XCB_RENDER_PICT_OP_DISJOINT_ATOP_REVERSE, + XCB_RENDER_PICT_OP_DISJOINT_XOR, + XCB_RENDER_PICT_OP_CONJOINT_CLEAR = 32, + XCB_RENDER_PICT_OP_CONJOINT_SRC, + XCB_RENDER_PICT_OP_CONJOINT_DST, + XCB_RENDER_PICT_OP_CONJOINT_OVER, + XCB_RENDER_PICT_OP_CONJOINT_OVER_REVERSE, + XCB_RENDER_PICT_OP_CONJOINT_IN, + XCB_RENDER_PICT_OP_CONJOINT_IN_REVERSE, + XCB_RENDER_PICT_OP_CONJOINT_OUT, + XCB_RENDER_PICT_OP_CONJOINT_OUT_REVERSE, + XCB_RENDER_PICT_OP_CONJOINT_ATOP, + XCB_RENDER_PICT_OP_CONJOINT_ATOP_REVERSE, + XCB_RENDER_PICT_OP_CONJOINT_XOR, + XCB_RENDER_PICT_OP_MULTIPLY = 48, + XCB_RENDER_PICT_OP_SCREEN, + XCB_RENDER_PICT_OP_OVERLAY, + XCB_RENDER_PICT_OP_DARKEN, + XCB_RENDER_PICT_OP_LIGHTEN, + XCB_RENDER_PICT_OP_COLOR_DODGE, + XCB_RENDER_PICT_OP_COLOR_BURN, + XCB_RENDER_PICT_OP_HARD_LIGHT, + XCB_RENDER_PICT_OP_SOFT_LIGHT, + XCB_RENDER_PICT_OP_DIFFERENCE, + XCB_RENDER_PICT_OP_EXCLUSION, + XCB_RENDER_PICT_OP_HSL_HUE, + XCB_RENDER_PICT_OP_HSL_SATURATION, + XCB_RENDER_PICT_OP_HSL_COLOR, + XCB_RENDER_PICT_OP_HSL_LUMINOSITY +} xcb_render_pict_op_t; + +typedef enum xcb_render_poly_edge_t { + XCB_RENDER_POLY_EDGE_SHARP, + XCB_RENDER_POLY_EDGE_SMOOTH +} xcb_render_poly_edge_t; + +typedef enum xcb_render_poly_mode_t { + XCB_RENDER_POLY_MODE_PRECISE, + XCB_RENDER_POLY_MODE_IMPRECISE +} xcb_render_poly_mode_t; + +typedef enum xcb_render_cp_t { + XCB_RENDER_CP_REPEAT = 1, + XCB_RENDER_CP_ALPHA_MAP = 2, + XCB_RENDER_CP_ALPHA_X_ORIGIN = 4, + XCB_RENDER_CP_ALPHA_Y_ORIGIN = 8, + XCB_RENDER_CP_CLIP_X_ORIGIN = 16, + XCB_RENDER_CP_CLIP_Y_ORIGIN = 32, + XCB_RENDER_CP_CLIP_MASK = 64, + XCB_RENDER_CP_GRAPHICS_EXPOSURE = 128, + XCB_RENDER_CP_SUBWINDOW_MODE = 256, + XCB_RENDER_CP_POLY_EDGE = 512, + XCB_RENDER_CP_POLY_MODE = 1024, + XCB_RENDER_CP_DITHER = 2048, + XCB_RENDER_CP_COMPONENT_ALPHA = 4096 +} xcb_render_cp_t; + +typedef enum xcb_render_sub_pixel_t { + XCB_RENDER_SUB_PIXEL_UNKNOWN, + XCB_RENDER_SUB_PIXEL_HORIZONTAL_RGB, + XCB_RENDER_SUB_PIXEL_HORIZONTAL_BGR, + XCB_RENDER_SUB_PIXEL_VERTICAL_RGB, + XCB_RENDER_SUB_PIXEL_VERTICAL_BGR, + XCB_RENDER_SUB_PIXEL_NONE +} xcb_render_sub_pixel_t; + +typedef enum xcb_render_repeat_t { + XCB_RENDER_REPEAT_NONE, + XCB_RENDER_REPEAT_NORMAL, + XCB_RENDER_REPEAT_PAD, + XCB_RENDER_REPEAT_REFLECT +} xcb_render_repeat_t; + +typedef uint32_t xcb_render_glyph_t; + +/** + * @brief xcb_render_glyph_iterator_t + **/ +typedef struct xcb_render_glyph_iterator_t { + xcb_render_glyph_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_glyph_iterator_t; + +typedef uint32_t xcb_render_glyphset_t; + +/** + * @brief xcb_render_glyphset_iterator_t + **/ +typedef struct xcb_render_glyphset_iterator_t { + xcb_render_glyphset_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_glyphset_iterator_t; + +typedef uint32_t xcb_render_picture_t; + +/** + * @brief xcb_render_picture_iterator_t + **/ +typedef struct xcb_render_picture_iterator_t { + xcb_render_picture_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_picture_iterator_t; + +typedef uint32_t xcb_render_pictformat_t; + +/** + * @brief xcb_render_pictformat_iterator_t + **/ +typedef struct xcb_render_pictformat_iterator_t { + xcb_render_pictformat_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_pictformat_iterator_t; + +typedef int32_t xcb_render_fixed_t; + +/** + * @brief xcb_render_fixed_iterator_t + **/ +typedef struct xcb_render_fixed_iterator_t { + xcb_render_fixed_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_fixed_iterator_t; + +/** Opcode for xcb_render_pict_format. */ +#define XCB_RENDER_PICT_FORMAT 0 + +/** + * @brief xcb_render_pict_format_error_t + **/ +typedef struct xcb_render_pict_format_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_render_pict_format_error_t; + +/** Opcode for xcb_render_picture. */ +#define XCB_RENDER_PICTURE 1 + +/** + * @brief xcb_render_picture_error_t + **/ +typedef struct xcb_render_picture_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_render_picture_error_t; + +/** Opcode for xcb_render_pict_op. */ +#define XCB_RENDER_PICT_OP 2 + +/** + * @brief xcb_render_pict_op_error_t + **/ +typedef struct xcb_render_pict_op_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_render_pict_op_error_t; + +/** Opcode for xcb_render_glyph_set. */ +#define XCB_RENDER_GLYPH_SET 3 + +/** + * @brief xcb_render_glyph_set_error_t + **/ +typedef struct xcb_render_glyph_set_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_render_glyph_set_error_t; + +/** Opcode for xcb_render_glyph. */ +#define XCB_RENDER_GLYPH 4 + +/** + * @brief xcb_render_glyph_error_t + **/ +typedef struct xcb_render_glyph_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_render_glyph_error_t; + +/** + * @brief xcb_render_directformat_t + **/ +typedef struct xcb_render_directformat_t { + uint16_t red_shift; /**< */ + uint16_t red_mask; /**< */ + uint16_t green_shift; /**< */ + uint16_t green_mask; /**< */ + uint16_t blue_shift; /**< */ + uint16_t blue_mask; /**< */ + uint16_t alpha_shift; /**< */ + uint16_t alpha_mask; /**< */ +} xcb_render_directformat_t; + +/** + * @brief xcb_render_directformat_iterator_t + **/ +typedef struct xcb_render_directformat_iterator_t { + xcb_render_directformat_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_directformat_iterator_t; + +/** + * @brief xcb_render_pictforminfo_t + **/ +typedef struct xcb_render_pictforminfo_t { + xcb_render_pictformat_t id; /**< */ + uint8_t type; /**< */ + uint8_t depth; /**< */ + uint8_t pad0[2]; /**< */ + xcb_render_directformat_t direct; /**< */ + xcb_colormap_t colormap; /**< */ +} xcb_render_pictforminfo_t; + +/** + * @brief xcb_render_pictforminfo_iterator_t + **/ +typedef struct xcb_render_pictforminfo_iterator_t { + xcb_render_pictforminfo_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_pictforminfo_iterator_t; + +/** + * @brief xcb_render_pictvisual_t + **/ +typedef struct xcb_render_pictvisual_t { + xcb_visualid_t visual; /**< */ + xcb_render_pictformat_t format; /**< */ +} xcb_render_pictvisual_t; + +/** + * @brief xcb_render_pictvisual_iterator_t + **/ +typedef struct xcb_render_pictvisual_iterator_t { + xcb_render_pictvisual_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_pictvisual_iterator_t; + +/** + * @brief xcb_render_pictdepth_t + **/ +typedef struct xcb_render_pictdepth_t { + uint8_t depth; /**< */ + uint8_t pad0; /**< */ + uint16_t num_visuals; /**< */ + uint8_t pad1[4]; /**< */ +} xcb_render_pictdepth_t; + +/** + * @brief xcb_render_pictdepth_iterator_t + **/ +typedef struct xcb_render_pictdepth_iterator_t { + xcb_render_pictdepth_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_pictdepth_iterator_t; + +/** + * @brief xcb_render_pictscreen_t + **/ +typedef struct xcb_render_pictscreen_t { + uint32_t num_depths; /**< */ + xcb_render_pictformat_t fallback; /**< */ +} xcb_render_pictscreen_t; + +/** + * @brief xcb_render_pictscreen_iterator_t + **/ +typedef struct xcb_render_pictscreen_iterator_t { + xcb_render_pictscreen_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_pictscreen_iterator_t; + +/** + * @brief xcb_render_indexvalue_t + **/ +typedef struct xcb_render_indexvalue_t { + uint32_t pixel; /**< */ + uint16_t red; /**< */ + uint16_t green; /**< */ + uint16_t blue; /**< */ + uint16_t alpha; /**< */ +} xcb_render_indexvalue_t; + +/** + * @brief xcb_render_indexvalue_iterator_t + **/ +typedef struct xcb_render_indexvalue_iterator_t { + xcb_render_indexvalue_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_indexvalue_iterator_t; + +/** + * @brief xcb_render_color_t + **/ +typedef struct xcb_render_color_t { + uint16_t red; /**< */ + uint16_t green; /**< */ + uint16_t blue; /**< */ + uint16_t alpha; /**< */ +} xcb_render_color_t; + +/** + * @brief xcb_render_color_iterator_t + **/ +typedef struct xcb_render_color_iterator_t { + xcb_render_color_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_color_iterator_t; + +/** + * @brief xcb_render_pointfix_t + **/ +typedef struct xcb_render_pointfix_t { + xcb_render_fixed_t x; /**< */ + xcb_render_fixed_t y; /**< */ +} xcb_render_pointfix_t; + +/** + * @brief xcb_render_pointfix_iterator_t + **/ +typedef struct xcb_render_pointfix_iterator_t { + xcb_render_pointfix_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_pointfix_iterator_t; + +/** + * @brief xcb_render_linefix_t + **/ +typedef struct xcb_render_linefix_t { + xcb_render_pointfix_t p1; /**< */ + xcb_render_pointfix_t p2; /**< */ +} xcb_render_linefix_t; + +/** + * @brief xcb_render_linefix_iterator_t + **/ +typedef struct xcb_render_linefix_iterator_t { + xcb_render_linefix_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_linefix_iterator_t; + +/** + * @brief xcb_render_triangle_t + **/ +typedef struct xcb_render_triangle_t { + xcb_render_pointfix_t p1; /**< */ + xcb_render_pointfix_t p2; /**< */ + xcb_render_pointfix_t p3; /**< */ +} xcb_render_triangle_t; + +/** + * @brief xcb_render_triangle_iterator_t + **/ +typedef struct xcb_render_triangle_iterator_t { + xcb_render_triangle_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_triangle_iterator_t; + +/** + * @brief xcb_render_trapezoid_t + **/ +typedef struct xcb_render_trapezoid_t { + xcb_render_fixed_t top; /**< */ + xcb_render_fixed_t bottom; /**< */ + xcb_render_linefix_t left; /**< */ + xcb_render_linefix_t right; /**< */ +} xcb_render_trapezoid_t; + +/** + * @brief xcb_render_trapezoid_iterator_t + **/ +typedef struct xcb_render_trapezoid_iterator_t { + xcb_render_trapezoid_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_trapezoid_iterator_t; + +/** + * @brief xcb_render_glyphinfo_t + **/ +typedef struct xcb_render_glyphinfo_t { + uint16_t width; /**< */ + uint16_t height; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + int16_t x_off; /**< */ + int16_t y_off; /**< */ +} xcb_render_glyphinfo_t; + +/** + * @brief xcb_render_glyphinfo_iterator_t + **/ +typedef struct xcb_render_glyphinfo_iterator_t { + xcb_render_glyphinfo_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_glyphinfo_iterator_t; + +/** + * @brief xcb_render_query_version_cookie_t + **/ +typedef struct xcb_render_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_render_query_version_cookie_t; + +/** Opcode for xcb_render_query_version. */ +#define XCB_RENDER_QUERY_VERSION 0 + +/** + * @brief xcb_render_query_version_request_t + **/ +typedef struct xcb_render_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t client_major_version; /**< */ + uint32_t client_minor_version; /**< */ +} xcb_render_query_version_request_t; + +/** + * @brief xcb_render_query_version_reply_t + **/ +typedef struct xcb_render_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_render_query_version_reply_t; + +/** + * @brief xcb_render_query_pict_formats_cookie_t + **/ +typedef struct xcb_render_query_pict_formats_cookie_t { + unsigned int sequence; /**< */ +} xcb_render_query_pict_formats_cookie_t; + +/** Opcode for xcb_render_query_pict_formats. */ +#define XCB_RENDER_QUERY_PICT_FORMATS 1 + +/** + * @brief xcb_render_query_pict_formats_request_t + **/ +typedef struct xcb_render_query_pict_formats_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_render_query_pict_formats_request_t; + +/** + * @brief xcb_render_query_pict_formats_reply_t + **/ +typedef struct xcb_render_query_pict_formats_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_formats; /**< */ + uint32_t num_screens; /**< */ + uint32_t num_depths; /**< */ + uint32_t num_visuals; /**< */ + uint32_t num_subpixel; /**< */ + uint8_t pad1[4]; /**< */ +} xcb_render_query_pict_formats_reply_t; + +/** + * @brief xcb_render_query_pict_index_values_cookie_t + **/ +typedef struct xcb_render_query_pict_index_values_cookie_t { + unsigned int sequence; /**< */ +} xcb_render_query_pict_index_values_cookie_t; + +/** Opcode for xcb_render_query_pict_index_values. */ +#define XCB_RENDER_QUERY_PICT_INDEX_VALUES 2 + +/** + * @brief xcb_render_query_pict_index_values_request_t + **/ +typedef struct xcb_render_query_pict_index_values_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_pictformat_t format; /**< */ +} xcb_render_query_pict_index_values_request_t; + +/** + * @brief xcb_render_query_pict_index_values_reply_t + **/ +typedef struct xcb_render_query_pict_index_values_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_values; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_render_query_pict_index_values_reply_t; + +/** Opcode for xcb_render_create_picture. */ +#define XCB_RENDER_CREATE_PICTURE 4 + +/** + * @brief xcb_render_create_picture_request_t + **/ +typedef struct xcb_render_create_picture_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t pid; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_render_pictformat_t format; /**< */ + uint32_t value_mask; /**< */ +} xcb_render_create_picture_request_t; + +/** Opcode for xcb_render_change_picture. */ +#define XCB_RENDER_CHANGE_PICTURE 5 + +/** + * @brief xcb_render_change_picture_request_t + **/ +typedef struct xcb_render_change_picture_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + uint32_t value_mask; /**< */ +} xcb_render_change_picture_request_t; + +/** Opcode for xcb_render_set_picture_clip_rectangles. */ +#define XCB_RENDER_SET_PICTURE_CLIP_RECTANGLES 6 + +/** + * @brief xcb_render_set_picture_clip_rectangles_request_t + **/ +typedef struct xcb_render_set_picture_clip_rectangles_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + int16_t clip_x_origin; /**< */ + int16_t clip_y_origin; /**< */ +} xcb_render_set_picture_clip_rectangles_request_t; + +/** Opcode for xcb_render_free_picture. */ +#define XCB_RENDER_FREE_PICTURE 7 + +/** + * @brief xcb_render_free_picture_request_t + **/ +typedef struct xcb_render_free_picture_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ +} xcb_render_free_picture_request_t; + +/** Opcode for xcb_render_composite. */ +#define XCB_RENDER_COMPOSITE 8 + +/** + * @brief xcb_render_composite_request_t + **/ +typedef struct xcb_render_composite_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t op; /**< */ + uint8_t pad0[3]; /**< */ + xcb_render_picture_t src; /**< */ + xcb_render_picture_t mask; /**< */ + xcb_render_picture_t dst; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ + int16_t mask_x; /**< */ + int16_t mask_y; /**< */ + int16_t dst_x; /**< */ + int16_t dst_y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_render_composite_request_t; + +/** Opcode for xcb_render_trapezoids. */ +#define XCB_RENDER_TRAPEZOIDS 10 + +/** + * @brief xcb_render_trapezoids_request_t + **/ +typedef struct xcb_render_trapezoids_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t op; /**< */ + uint8_t pad0[3]; /**< */ + xcb_render_picture_t src; /**< */ + xcb_render_picture_t dst; /**< */ + xcb_render_pictformat_t mask_format; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ +} xcb_render_trapezoids_request_t; + +/** Opcode for xcb_render_triangles. */ +#define XCB_RENDER_TRIANGLES 11 + +/** + * @brief xcb_render_triangles_request_t + **/ +typedef struct xcb_render_triangles_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t op; /**< */ + uint8_t pad0[3]; /**< */ + xcb_render_picture_t src; /**< */ + xcb_render_picture_t dst; /**< */ + xcb_render_pictformat_t mask_format; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ +} xcb_render_triangles_request_t; + +/** Opcode for xcb_render_tri_strip. */ +#define XCB_RENDER_TRI_STRIP 12 + +/** + * @brief xcb_render_tri_strip_request_t + **/ +typedef struct xcb_render_tri_strip_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t op; /**< */ + uint8_t pad0[3]; /**< */ + xcb_render_picture_t src; /**< */ + xcb_render_picture_t dst; /**< */ + xcb_render_pictformat_t mask_format; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ +} xcb_render_tri_strip_request_t; + +/** Opcode for xcb_render_tri_fan. */ +#define XCB_RENDER_TRI_FAN 13 + +/** + * @brief xcb_render_tri_fan_request_t + **/ +typedef struct xcb_render_tri_fan_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t op; /**< */ + uint8_t pad0[3]; /**< */ + xcb_render_picture_t src; /**< */ + xcb_render_picture_t dst; /**< */ + xcb_render_pictformat_t mask_format; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ +} xcb_render_tri_fan_request_t; + +/** Opcode for xcb_render_create_glyph_set. */ +#define XCB_RENDER_CREATE_GLYPH_SET 17 + +/** + * @brief xcb_render_create_glyph_set_request_t + **/ +typedef struct xcb_render_create_glyph_set_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_glyphset_t gsid; /**< */ + xcb_render_pictformat_t format; /**< */ +} xcb_render_create_glyph_set_request_t; + +/** Opcode for xcb_render_reference_glyph_set. */ +#define XCB_RENDER_REFERENCE_GLYPH_SET 18 + +/** + * @brief xcb_render_reference_glyph_set_request_t + **/ +typedef struct xcb_render_reference_glyph_set_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_glyphset_t gsid; /**< */ + xcb_render_glyphset_t existing; /**< */ +} xcb_render_reference_glyph_set_request_t; + +/** Opcode for xcb_render_free_glyph_set. */ +#define XCB_RENDER_FREE_GLYPH_SET 19 + +/** + * @brief xcb_render_free_glyph_set_request_t + **/ +typedef struct xcb_render_free_glyph_set_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_glyphset_t glyphset; /**< */ +} xcb_render_free_glyph_set_request_t; + +/** Opcode for xcb_render_add_glyphs. */ +#define XCB_RENDER_ADD_GLYPHS 20 + +/** + * @brief xcb_render_add_glyphs_request_t + **/ +typedef struct xcb_render_add_glyphs_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_glyphset_t glyphset; /**< */ + uint32_t glyphs_len; /**< */ +} xcb_render_add_glyphs_request_t; + +/** Opcode for xcb_render_free_glyphs. */ +#define XCB_RENDER_FREE_GLYPHS 22 + +/** + * @brief xcb_render_free_glyphs_request_t + **/ +typedef struct xcb_render_free_glyphs_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_glyphset_t glyphset; /**< */ +} xcb_render_free_glyphs_request_t; + +/** Opcode for xcb_render_composite_glyphs_8. */ +#define XCB_RENDER_COMPOSITE_GLYPHS_8 23 + +/** + * @brief xcb_render_composite_glyphs_8_request_t + **/ +typedef struct xcb_render_composite_glyphs_8_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t op; /**< */ + uint8_t pad0[3]; /**< */ + xcb_render_picture_t src; /**< */ + xcb_render_picture_t dst; /**< */ + xcb_render_pictformat_t mask_format; /**< */ + xcb_render_glyphset_t glyphset; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ +} xcb_render_composite_glyphs_8_request_t; + +/** Opcode for xcb_render_composite_glyphs_16. */ +#define XCB_RENDER_COMPOSITE_GLYPHS_16 24 + +/** + * @brief xcb_render_composite_glyphs_16_request_t + **/ +typedef struct xcb_render_composite_glyphs_16_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t op; /**< */ + uint8_t pad0[3]; /**< */ + xcb_render_picture_t src; /**< */ + xcb_render_picture_t dst; /**< */ + xcb_render_pictformat_t mask_format; /**< */ + xcb_render_glyphset_t glyphset; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ +} xcb_render_composite_glyphs_16_request_t; + +/** Opcode for xcb_render_composite_glyphs_32. */ +#define XCB_RENDER_COMPOSITE_GLYPHS_32 25 + +/** + * @brief xcb_render_composite_glyphs_32_request_t + **/ +typedef struct xcb_render_composite_glyphs_32_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t op; /**< */ + uint8_t pad0[3]; /**< */ + xcb_render_picture_t src; /**< */ + xcb_render_picture_t dst; /**< */ + xcb_render_pictformat_t mask_format; /**< */ + xcb_render_glyphset_t glyphset; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ +} xcb_render_composite_glyphs_32_request_t; + +/** Opcode for xcb_render_fill_rectangles. */ +#define XCB_RENDER_FILL_RECTANGLES 26 + +/** + * @brief xcb_render_fill_rectangles_request_t + **/ +typedef struct xcb_render_fill_rectangles_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t op; /**< */ + uint8_t pad0[3]; /**< */ + xcb_render_picture_t dst; /**< */ + xcb_render_color_t color; /**< */ +} xcb_render_fill_rectangles_request_t; + +/** Opcode for xcb_render_create_cursor. */ +#define XCB_RENDER_CREATE_CURSOR 27 + +/** + * @brief xcb_render_create_cursor_request_t + **/ +typedef struct xcb_render_create_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_cursor_t cid; /**< */ + xcb_render_picture_t source; /**< */ + uint16_t x; /**< */ + uint16_t y; /**< */ +} xcb_render_create_cursor_request_t; + +/** + * @brief xcb_render_transform_t + **/ +typedef struct xcb_render_transform_t { + xcb_render_fixed_t matrix11; /**< */ + xcb_render_fixed_t matrix12; /**< */ + xcb_render_fixed_t matrix13; /**< */ + xcb_render_fixed_t matrix21; /**< */ + xcb_render_fixed_t matrix22; /**< */ + xcb_render_fixed_t matrix23; /**< */ + xcb_render_fixed_t matrix31; /**< */ + xcb_render_fixed_t matrix32; /**< */ + xcb_render_fixed_t matrix33; /**< */ +} xcb_render_transform_t; + +/** + * @brief xcb_render_transform_iterator_t + **/ +typedef struct xcb_render_transform_iterator_t { + xcb_render_transform_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_transform_iterator_t; + +/** Opcode for xcb_render_set_picture_transform. */ +#define XCB_RENDER_SET_PICTURE_TRANSFORM 28 + +/** + * @brief xcb_render_set_picture_transform_request_t + **/ +typedef struct xcb_render_set_picture_transform_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + xcb_render_transform_t transform; /**< */ +} xcb_render_set_picture_transform_request_t; + +/** + * @brief xcb_render_query_filters_cookie_t + **/ +typedef struct xcb_render_query_filters_cookie_t { + unsigned int sequence; /**< */ +} xcb_render_query_filters_cookie_t; + +/** Opcode for xcb_render_query_filters. */ +#define XCB_RENDER_QUERY_FILTERS 29 + +/** + * @brief xcb_render_query_filters_request_t + **/ +typedef struct xcb_render_query_filters_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ +} xcb_render_query_filters_request_t; + +/** + * @brief xcb_render_query_filters_reply_t + **/ +typedef struct xcb_render_query_filters_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_aliases; /**< */ + uint32_t num_filters; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_render_query_filters_reply_t; + +/** Opcode for xcb_render_set_picture_filter. */ +#define XCB_RENDER_SET_PICTURE_FILTER 30 + +/** + * @brief xcb_render_set_picture_filter_request_t + **/ +typedef struct xcb_render_set_picture_filter_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + uint16_t filter_len; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_render_set_picture_filter_request_t; + +/** + * @brief xcb_render_animcursorelt_t + **/ +typedef struct xcb_render_animcursorelt_t { + xcb_cursor_t cursor; /**< */ + uint32_t delay; /**< */ +} xcb_render_animcursorelt_t; + +/** + * @brief xcb_render_animcursorelt_iterator_t + **/ +typedef struct xcb_render_animcursorelt_iterator_t { + xcb_render_animcursorelt_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_animcursorelt_iterator_t; + +/** Opcode for xcb_render_create_anim_cursor. */ +#define XCB_RENDER_CREATE_ANIM_CURSOR 31 + +/** + * @brief xcb_render_create_anim_cursor_request_t + **/ +typedef struct xcb_render_create_anim_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_cursor_t cid; /**< */ +} xcb_render_create_anim_cursor_request_t; + +/** + * @brief xcb_render_spanfix_t + **/ +typedef struct xcb_render_spanfix_t { + xcb_render_fixed_t l; /**< */ + xcb_render_fixed_t r; /**< */ + xcb_render_fixed_t y; /**< */ +} xcb_render_spanfix_t; + +/** + * @brief xcb_render_spanfix_iterator_t + **/ +typedef struct xcb_render_spanfix_iterator_t { + xcb_render_spanfix_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_spanfix_iterator_t; + +/** + * @brief xcb_render_trap_t + **/ +typedef struct xcb_render_trap_t { + xcb_render_spanfix_t top; /**< */ + xcb_render_spanfix_t bot; /**< */ +} xcb_render_trap_t; + +/** + * @brief xcb_render_trap_iterator_t + **/ +typedef struct xcb_render_trap_iterator_t { + xcb_render_trap_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_render_trap_iterator_t; + +/** Opcode for xcb_render_add_traps. */ +#define XCB_RENDER_ADD_TRAPS 32 + +/** + * @brief xcb_render_add_traps_request_t + **/ +typedef struct xcb_render_add_traps_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + int16_t x_off; /**< */ + int16_t y_off; /**< */ +} xcb_render_add_traps_request_t; + +/** Opcode for xcb_render_create_solid_fill. */ +#define XCB_RENDER_CREATE_SOLID_FILL 33 + +/** + * @brief xcb_render_create_solid_fill_request_t + **/ +typedef struct xcb_render_create_solid_fill_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + xcb_render_color_t color; /**< */ +} xcb_render_create_solid_fill_request_t; + +/** Opcode for xcb_render_create_linear_gradient. */ +#define XCB_RENDER_CREATE_LINEAR_GRADIENT 34 + +/** + * @brief xcb_render_create_linear_gradient_request_t + **/ +typedef struct xcb_render_create_linear_gradient_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + xcb_render_pointfix_t p1; /**< */ + xcb_render_pointfix_t p2; /**< */ + uint32_t num_stops; /**< */ +} xcb_render_create_linear_gradient_request_t; + +/** Opcode for xcb_render_create_radial_gradient. */ +#define XCB_RENDER_CREATE_RADIAL_GRADIENT 35 + +/** + * @brief xcb_render_create_radial_gradient_request_t + **/ +typedef struct xcb_render_create_radial_gradient_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + xcb_render_pointfix_t inner; /**< */ + xcb_render_pointfix_t outer; /**< */ + xcb_render_fixed_t inner_radius; /**< */ + xcb_render_fixed_t outer_radius; /**< */ + uint32_t num_stops; /**< */ +} xcb_render_create_radial_gradient_request_t; + +/** Opcode for xcb_render_create_conical_gradient. */ +#define XCB_RENDER_CREATE_CONICAL_GRADIENT 36 + +/** + * @brief xcb_render_create_conical_gradient_request_t + **/ +typedef struct xcb_render_create_conical_gradient_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + xcb_render_pointfix_t center; /**< */ + xcb_render_fixed_t angle; /**< */ + uint32_t num_stops; /**< */ +} xcb_render_create_conical_gradient_request_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_glyph_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_glyph_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_glyph_next + ** + ** @param xcb_render_glyph_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_glyph_next (xcb_render_glyph_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_glyph_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_glyph_end + ** + ** @param xcb_render_glyph_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_glyph_end (xcb_render_glyph_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_glyphset_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_glyphset_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_glyphset_next + ** + ** @param xcb_render_glyphset_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_glyphset_next (xcb_render_glyphset_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_glyphset_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_glyphset_end + ** + ** @param xcb_render_glyphset_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_glyphset_end (xcb_render_glyphset_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_picture_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_picture_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_picture_next + ** + ** @param xcb_render_picture_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_picture_next (xcb_render_picture_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_picture_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_picture_end + ** + ** @param xcb_render_picture_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_picture_end (xcb_render_picture_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_pictformat_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_pictformat_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_pictformat_next + ** + ** @param xcb_render_pictformat_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictformat_next (xcb_render_pictformat_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_pictformat_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictformat_end + ** + ** @param xcb_render_pictformat_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictformat_end (xcb_render_pictformat_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_fixed_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_fixed_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_fixed_next + ** + ** @param xcb_render_fixed_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_fixed_next (xcb_render_fixed_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_fixed_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_fixed_end + ** + ** @param xcb_render_fixed_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_fixed_end (xcb_render_fixed_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_directformat_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_directformat_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_directformat_next + ** + ** @param xcb_render_directformat_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_directformat_next (xcb_render_directformat_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_directformat_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_directformat_end + ** + ** @param xcb_render_directformat_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_directformat_end (xcb_render_directformat_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_pictforminfo_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_pictforminfo_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_pictforminfo_next + ** + ** @param xcb_render_pictforminfo_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictforminfo_next (xcb_render_pictforminfo_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_pictforminfo_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictforminfo_end + ** + ** @param xcb_render_pictforminfo_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictforminfo_end (xcb_render_pictforminfo_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_pictvisual_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_pictvisual_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_pictvisual_next + ** + ** @param xcb_render_pictvisual_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictvisual_next (xcb_render_pictvisual_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_pictvisual_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictvisual_end + ** + ** @param xcb_render_pictvisual_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictvisual_end (xcb_render_pictvisual_iterator_t i /**< */); + +int +xcb_render_pictdepth_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_render_pictvisual_t * xcb_render_pictdepth_visuals + ** + ** @param const xcb_render_pictdepth_t *R + ** @returns xcb_render_pictvisual_t * + ** + *****************************************************************************/ + +xcb_render_pictvisual_t * +xcb_render_pictdepth_visuals (const xcb_render_pictdepth_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_render_pictdepth_visuals_length + ** + ** @param const xcb_render_pictdepth_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_pictdepth_visuals_length (const xcb_render_pictdepth_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_render_pictvisual_iterator_t xcb_render_pictdepth_visuals_iterator + ** + ** @param const xcb_render_pictdepth_t *R + ** @returns xcb_render_pictvisual_iterator_t + ** + *****************************************************************************/ + +xcb_render_pictvisual_iterator_t +xcb_render_pictdepth_visuals_iterator (const xcb_render_pictdepth_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_pictdepth_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_pictdepth_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_pictdepth_next + ** + ** @param xcb_render_pictdepth_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictdepth_next (xcb_render_pictdepth_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_pictdepth_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictdepth_end + ** + ** @param xcb_render_pictdepth_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictdepth_end (xcb_render_pictdepth_iterator_t i /**< */); + +int +xcb_render_pictscreen_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** int xcb_render_pictscreen_depths_length + ** + ** @param const xcb_render_pictscreen_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_pictscreen_depths_length (const xcb_render_pictscreen_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_render_pictdepth_iterator_t xcb_render_pictscreen_depths_iterator + ** + ** @param const xcb_render_pictscreen_t *R + ** @returns xcb_render_pictdepth_iterator_t + ** + *****************************************************************************/ + +xcb_render_pictdepth_iterator_t +xcb_render_pictscreen_depths_iterator (const xcb_render_pictscreen_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_pictscreen_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_pictscreen_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_pictscreen_next + ** + ** @param xcb_render_pictscreen_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pictscreen_next (xcb_render_pictscreen_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_pictscreen_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pictscreen_end + ** + ** @param xcb_render_pictscreen_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pictscreen_end (xcb_render_pictscreen_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_indexvalue_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_indexvalue_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_indexvalue_next + ** + ** @param xcb_render_indexvalue_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_indexvalue_next (xcb_render_indexvalue_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_indexvalue_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_indexvalue_end + ** + ** @param xcb_render_indexvalue_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_indexvalue_end (xcb_render_indexvalue_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_color_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_color_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_color_next + ** + ** @param xcb_render_color_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_color_next (xcb_render_color_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_color_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_color_end + ** + ** @param xcb_render_color_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_color_end (xcb_render_color_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_pointfix_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_pointfix_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_pointfix_next + ** + ** @param xcb_render_pointfix_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_pointfix_next (xcb_render_pointfix_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_pointfix_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_pointfix_end + ** + ** @param xcb_render_pointfix_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_pointfix_end (xcb_render_pointfix_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_linefix_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_linefix_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_linefix_next + ** + ** @param xcb_render_linefix_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_linefix_next (xcb_render_linefix_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_linefix_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_linefix_end + ** + ** @param xcb_render_linefix_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_linefix_end (xcb_render_linefix_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_triangle_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_triangle_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_triangle_next + ** + ** @param xcb_render_triangle_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_triangle_next (xcb_render_triangle_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_triangle_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_triangle_end + ** + ** @param xcb_render_triangle_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_triangle_end (xcb_render_triangle_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_trapezoid_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_trapezoid_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_trapezoid_next + ** + ** @param xcb_render_trapezoid_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_trapezoid_next (xcb_render_trapezoid_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_trapezoid_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_trapezoid_end + ** + ** @param xcb_render_trapezoid_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_trapezoid_end (xcb_render_trapezoid_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_glyphinfo_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_glyphinfo_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_glyphinfo_next + ** + ** @param xcb_render_glyphinfo_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_glyphinfo_next (xcb_render_glyphinfo_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_glyphinfo_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_glyphinfo_end + ** + ** @param xcb_render_glyphinfo_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_glyphinfo_end (xcb_render_glyphinfo_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_render_query_version_cookie_t xcb_render_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_render_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_version_cookie_t +xcb_render_query_version (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_render_query_version_cookie_t xcb_render_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_render_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_version_cookie_t +xcb_render_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_render_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_render_query_version_reply_t * xcb_render_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_render_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_render_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_render_query_version_reply_t * +xcb_render_query_version_reply (xcb_connection_t *c /**< */, + xcb_render_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_render_query_pict_formats_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_render_query_pict_formats_cookie_t xcb_render_query_pict_formats + ** + ** @param xcb_connection_t *c + ** @returns xcb_render_query_pict_formats_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_pict_formats_cookie_t +xcb_render_query_pict_formats (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_render_query_pict_formats_cookie_t xcb_render_query_pict_formats_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_render_query_pict_formats_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_pict_formats_cookie_t +xcb_render_query_pict_formats_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** xcb_render_pictforminfo_t * xcb_render_query_pict_formats_formats + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns xcb_render_pictforminfo_t * + ** + *****************************************************************************/ + +xcb_render_pictforminfo_t * +xcb_render_query_pict_formats_formats (const xcb_render_query_pict_formats_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_render_query_pict_formats_formats_length + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_pict_formats_formats_length (const xcb_render_query_pict_formats_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_render_pictforminfo_iterator_t xcb_render_query_pict_formats_formats_iterator + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns xcb_render_pictforminfo_iterator_t + ** + *****************************************************************************/ + +xcb_render_pictforminfo_iterator_t +xcb_render_query_pict_formats_formats_iterator (const xcb_render_query_pict_formats_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_render_query_pict_formats_screens_length + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_pict_formats_screens_length (const xcb_render_query_pict_formats_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_render_pictscreen_iterator_t xcb_render_query_pict_formats_screens_iterator + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns xcb_render_pictscreen_iterator_t + ** + *****************************************************************************/ + +xcb_render_pictscreen_iterator_t +xcb_render_query_pict_formats_screens_iterator (const xcb_render_query_pict_formats_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_render_query_pict_formats_subpixels + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_render_query_pict_formats_subpixels (const xcb_render_query_pict_formats_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_render_query_pict_formats_subpixels_length + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_pict_formats_subpixels_length (const xcb_render_query_pict_formats_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_query_pict_formats_subpixels_end + ** + ** @param const xcb_render_query_pict_formats_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_query_pict_formats_subpixels_end (const xcb_render_query_pict_formats_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_render_query_pict_formats_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_render_query_pict_formats_reply_t * xcb_render_query_pict_formats_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_render_query_pict_formats_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_render_query_pict_formats_reply_t * + ** + *****************************************************************************/ + +xcb_render_query_pict_formats_reply_t * +xcb_render_query_pict_formats_reply (xcb_connection_t *c /**< */, + xcb_render_query_pict_formats_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_render_query_pict_index_values_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_render_query_pict_index_values_cookie_t xcb_render_query_pict_index_values + ** + ** @param xcb_connection_t *c + ** @param xcb_render_pictformat_t format + ** @returns xcb_render_query_pict_index_values_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_pict_index_values_cookie_t +xcb_render_query_pict_index_values (xcb_connection_t *c /**< */, + xcb_render_pictformat_t format /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_render_query_pict_index_values_cookie_t xcb_render_query_pict_index_values_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_pictformat_t format + ** @returns xcb_render_query_pict_index_values_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_pict_index_values_cookie_t +xcb_render_query_pict_index_values_unchecked (xcb_connection_t *c /**< */, + xcb_render_pictformat_t format /**< */); + + +/***************************************************************************** + ** + ** xcb_render_indexvalue_t * xcb_render_query_pict_index_values_values + ** + ** @param const xcb_render_query_pict_index_values_reply_t *R + ** @returns xcb_render_indexvalue_t * + ** + *****************************************************************************/ + +xcb_render_indexvalue_t * +xcb_render_query_pict_index_values_values (const xcb_render_query_pict_index_values_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_render_query_pict_index_values_values_length + ** + ** @param const xcb_render_query_pict_index_values_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_pict_index_values_values_length (const xcb_render_query_pict_index_values_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_render_indexvalue_iterator_t xcb_render_query_pict_index_values_values_iterator + ** + ** @param const xcb_render_query_pict_index_values_reply_t *R + ** @returns xcb_render_indexvalue_iterator_t + ** + *****************************************************************************/ + +xcb_render_indexvalue_iterator_t +xcb_render_query_pict_index_values_values_iterator (const xcb_render_query_pict_index_values_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_render_query_pict_index_values_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_render_query_pict_index_values_reply_t * xcb_render_query_pict_index_values_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_render_query_pict_index_values_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_render_query_pict_index_values_reply_t * + ** + *****************************************************************************/ + +xcb_render_query_pict_index_values_reply_t * +xcb_render_query_pict_index_values_reply (xcb_connection_t *c /**< */, + xcb_render_query_pict_index_values_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_render_create_picture_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_picture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t pid + ** @param xcb_drawable_t drawable + ** @param xcb_render_pictformat_t format + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_picture_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t pid /**< */, + xcb_drawable_t drawable /**< */, + xcb_render_pictformat_t format /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_picture + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t pid + ** @param xcb_drawable_t drawable + ** @param xcb_render_pictformat_t format + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_picture (xcb_connection_t *c /**< */, + xcb_render_picture_t pid /**< */, + xcb_drawable_t drawable /**< */, + xcb_render_pictformat_t format /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +int +xcb_render_change_picture_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_change_picture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_change_picture_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_change_picture + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_change_picture (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +int +xcb_render_set_picture_clip_rectangles_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_clip_rectangles_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param int16_t clip_x_origin + ** @param int16_t clip_y_origin + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_clip_rectangles_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + int16_t clip_x_origin /**< */, + int16_t clip_y_origin /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_clip_rectangles + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param int16_t clip_x_origin + ** @param int16_t clip_y_origin + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_clip_rectangles (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + int16_t clip_x_origin /**< */, + int16_t clip_y_origin /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_picture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_picture_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_picture + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_picture (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t mask + ** @param xcb_render_picture_t dst + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t mask_x + ** @param int16_t mask_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t mask /**< */, + xcb_render_picture_t dst /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t mask_x /**< */, + int16_t mask_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t mask + ** @param xcb_render_picture_t dst + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t mask_x + ** @param int16_t mask_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t mask /**< */, + xcb_render_picture_t dst /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t mask_x /**< */, + int16_t mask_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +int +xcb_render_trapezoids_sizeof (const void *_buffer /**< */, + uint32_t traps_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_trapezoids_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t traps_len + ** @param const xcb_render_trapezoid_t *traps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_trapezoids_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t traps_len /**< */, + const xcb_render_trapezoid_t *traps /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_trapezoids + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t traps_len + ** @param const xcb_render_trapezoid_t *traps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_trapezoids (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t traps_len /**< */, + const xcb_render_trapezoid_t *traps /**< */); + +int +xcb_render_triangles_sizeof (const void *_buffer /**< */, + uint32_t triangles_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_triangles_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t triangles_len + ** @param const xcb_render_triangle_t *triangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_triangles_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t triangles_len /**< */, + const xcb_render_triangle_t *triangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_triangles + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t triangles_len + ** @param const xcb_render_triangle_t *triangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_triangles (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t triangles_len /**< */, + const xcb_render_triangle_t *triangles /**< */); + +int +xcb_render_tri_strip_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_tri_strip_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t points_len + ** @param const xcb_render_pointfix_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_tri_strip_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t points_len /**< */, + const xcb_render_pointfix_t *points /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_tri_strip + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t points_len + ** @param const xcb_render_pointfix_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_tri_strip (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t points_len /**< */, + const xcb_render_pointfix_t *points /**< */); + +int +xcb_render_tri_fan_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_tri_fan_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t points_len + ** @param const xcb_render_pointfix_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_tri_fan_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t points_len /**< */, + const xcb_render_pointfix_t *points /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_tri_fan + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t points_len + ** @param const xcb_render_pointfix_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_tri_fan (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t points_len /**< */, + const xcb_render_pointfix_t *points /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_glyph_set_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t gsid + ** @param xcb_render_pictformat_t format + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_glyph_set_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t gsid /**< */, + xcb_render_pictformat_t format /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_glyph_set + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t gsid + ** @param xcb_render_pictformat_t format + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_glyph_set (xcb_connection_t *c /**< */, + xcb_render_glyphset_t gsid /**< */, + xcb_render_pictformat_t format /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_reference_glyph_set_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t gsid + ** @param xcb_render_glyphset_t existing + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_reference_glyph_set_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t gsid /**< */, + xcb_render_glyphset_t existing /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_reference_glyph_set + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t gsid + ** @param xcb_render_glyphset_t existing + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_reference_glyph_set (xcb_connection_t *c /**< */, + xcb_render_glyphset_t gsid /**< */, + xcb_render_glyphset_t existing /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_glyph_set_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_glyph_set_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_glyph_set + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_glyph_set (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */); + +int +xcb_render_add_glyphs_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_add_glyphs_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @param uint32_t glyphs_len + ** @param const uint32_t *glyphids + ** @param const xcb_render_glyphinfo_t *glyphs + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_add_glyphs_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */, + uint32_t glyphs_len /**< */, + const uint32_t *glyphids /**< */, + const xcb_render_glyphinfo_t *glyphs /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_add_glyphs + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @param uint32_t glyphs_len + ** @param const uint32_t *glyphids + ** @param const xcb_render_glyphinfo_t *glyphs + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_add_glyphs (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */, + uint32_t glyphs_len /**< */, + const uint32_t *glyphids /**< */, + const xcb_render_glyphinfo_t *glyphs /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +int +xcb_render_free_glyphs_sizeof (const void *_buffer /**< */, + uint32_t glyphs_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_glyphs_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @param uint32_t glyphs_len + ** @param const xcb_render_glyph_t *glyphs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_glyphs_checked (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */, + uint32_t glyphs_len /**< */, + const xcb_render_glyph_t *glyphs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_free_glyphs + ** + ** @param xcb_connection_t *c + ** @param xcb_render_glyphset_t glyphset + ** @param uint32_t glyphs_len + ** @param const xcb_render_glyph_t *glyphs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_free_glyphs (xcb_connection_t *c /**< */, + xcb_render_glyphset_t glyphset /**< */, + uint32_t glyphs_len /**< */, + const xcb_render_glyph_t *glyphs /**< */); + +int +xcb_render_composite_glyphs_8_sizeof (const void *_buffer /**< */, + uint32_t glyphcmds_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_8_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_8_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_8 + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_8 (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */); + +int +xcb_render_composite_glyphs_16_sizeof (const void *_buffer /**< */, + uint32_t glyphcmds_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_16_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_16_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_16 + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_16 (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */); + +int +xcb_render_composite_glyphs_32_sizeof (const void *_buffer /**< */, + uint32_t glyphcmds_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_32_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_32_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_composite_glyphs_32 + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t src + ** @param xcb_render_picture_t dst + ** @param xcb_render_pictformat_t mask_format + ** @param xcb_render_glyphset_t glyphset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint32_t glyphcmds_len + ** @param const uint8_t *glyphcmds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_composite_glyphs_32 (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t src /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_pictformat_t mask_format /**< */, + xcb_render_glyphset_t glyphset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint32_t glyphcmds_len /**< */, + const uint8_t *glyphcmds /**< */); + +int +xcb_render_fill_rectangles_sizeof (const void *_buffer /**< */, + uint32_t rects_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_fill_rectangles_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t dst + ** @param xcb_render_color_t color + ** @param uint32_t rects_len + ** @param const xcb_rectangle_t *rects + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_fill_rectangles_checked (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_color_t color /**< */, + uint32_t rects_len /**< */, + const xcb_rectangle_t *rects /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_fill_rectangles + ** + ** @param xcb_connection_t *c + ** @param uint8_t op + ** @param xcb_render_picture_t dst + ** @param xcb_render_color_t color + ** @param uint32_t rects_len + ** @param const xcb_rectangle_t *rects + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_fill_rectangles (xcb_connection_t *c /**< */, + uint8_t op /**< */, + xcb_render_picture_t dst /**< */, + xcb_render_color_t color /**< */, + uint32_t rects_len /**< */, + const xcb_rectangle_t *rects /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_render_picture_t source + ** @param uint16_t x + ** @param uint16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_render_picture_t source /**< */, + uint16_t x /**< */, + uint16_t y /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_render_picture_t source + ** @param uint16_t x + ** @param uint16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_render_picture_t source /**< */, + uint16_t x /**< */, + uint16_t y /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_transform_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_transform_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_transform_next + ** + ** @param xcb_render_transform_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_transform_next (xcb_render_transform_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_transform_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_transform_end + ** + ** @param xcb_render_transform_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_transform_end (xcb_render_transform_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_transform_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_transform_t transform + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_transform_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_transform_t transform /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_transform + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_transform_t transform + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_transform (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_transform_t transform /**< */); + +int +xcb_render_query_filters_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_render_query_filters_cookie_t xcb_render_query_filters + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_render_query_filters_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_filters_cookie_t +xcb_render_query_filters (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_render_query_filters_cookie_t xcb_render_query_filters_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_render_query_filters_cookie_t + ** + *****************************************************************************/ + +xcb_render_query_filters_cookie_t +xcb_render_query_filters_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + + +/***************************************************************************** + ** + ** uint16_t * xcb_render_query_filters_aliases + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns uint16_t * + ** + *****************************************************************************/ + +uint16_t * +xcb_render_query_filters_aliases (const xcb_render_query_filters_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_render_query_filters_aliases_length + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_filters_aliases_length (const xcb_render_query_filters_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_query_filters_aliases_end + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_query_filters_aliases_end (const xcb_render_query_filters_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_render_query_filters_filters_length + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_render_query_filters_filters_length (const xcb_render_query_filters_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_str_iterator_t xcb_render_query_filters_filters_iterator + ** + ** @param const xcb_render_query_filters_reply_t *R + ** @returns xcb_str_iterator_t + ** + *****************************************************************************/ + +xcb_str_iterator_t +xcb_render_query_filters_filters_iterator (const xcb_render_query_filters_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_render_query_filters_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_render_query_filters_reply_t * xcb_render_query_filters_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_render_query_filters_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_render_query_filters_reply_t * + ** + *****************************************************************************/ + +xcb_render_query_filters_reply_t * +xcb_render_query_filters_reply (xcb_connection_t *c /**< */, + xcb_render_query_filters_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_render_set_picture_filter_sizeof (const void *_buffer /**< */, + uint32_t values_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_filter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param uint16_t filter_len + ** @param const char *filter + ** @param uint32_t values_len + ** @param const xcb_render_fixed_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_filter_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + uint16_t filter_len /**< */, + const char *filter /**< */, + uint32_t values_len /**< */, + const xcb_render_fixed_t *values /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_set_picture_filter + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param uint16_t filter_len + ** @param const char *filter + ** @param uint32_t values_len + ** @param const xcb_render_fixed_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_set_picture_filter (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + uint16_t filter_len /**< */, + const char *filter /**< */, + uint32_t values_len /**< */, + const xcb_render_fixed_t *values /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_animcursorelt_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_animcursorelt_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_animcursorelt_next + ** + ** @param xcb_render_animcursorelt_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_animcursorelt_next (xcb_render_animcursorelt_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_animcursorelt_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_animcursorelt_end + ** + ** @param xcb_render_animcursorelt_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_animcursorelt_end (xcb_render_animcursorelt_iterator_t i /**< */); + +int +xcb_render_create_anim_cursor_sizeof (const void *_buffer /**< */, + uint32_t cursors_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_anim_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param uint32_t cursors_len + ** @param const xcb_render_animcursorelt_t *cursors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_anim_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + uint32_t cursors_len /**< */, + const xcb_render_animcursorelt_t *cursors /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_anim_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param uint32_t cursors_len + ** @param const xcb_render_animcursorelt_t *cursors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_anim_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + uint32_t cursors_len /**< */, + const xcb_render_animcursorelt_t *cursors /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_spanfix_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_spanfix_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_spanfix_next + ** + ** @param xcb_render_spanfix_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_spanfix_next (xcb_render_spanfix_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_spanfix_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_spanfix_end + ** + ** @param xcb_render_spanfix_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_spanfix_end (xcb_render_spanfix_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_render_trap_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_render_trap_t) + */ + +/***************************************************************************** + ** + ** void xcb_render_trap_next + ** + ** @param xcb_render_trap_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_render_trap_next (xcb_render_trap_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_render_trap_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_render_trap_end + ** + ** @param xcb_render_trap_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_render_trap_end (xcb_render_trap_iterator_t i /**< */); + +int +xcb_render_add_traps_sizeof (const void *_buffer /**< */, + uint32_t traps_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_add_traps_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param int16_t x_off + ** @param int16_t y_off + ** @param uint32_t traps_len + ** @param const xcb_render_trap_t *traps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_add_traps_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + int16_t x_off /**< */, + int16_t y_off /**< */, + uint32_t traps_len /**< */, + const xcb_render_trap_t *traps /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_add_traps + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param int16_t x_off + ** @param int16_t y_off + ** @param uint32_t traps_len + ** @param const xcb_render_trap_t *traps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_add_traps (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + int16_t x_off /**< */, + int16_t y_off /**< */, + uint32_t traps_len /**< */, + const xcb_render_trap_t *traps /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_solid_fill_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_color_t color + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_solid_fill_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_color_t color /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_solid_fill + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_color_t color + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_solid_fill (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_color_t color /**< */); + +int +xcb_render_create_linear_gradient_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_linear_gradient_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t p1 + ** @param xcb_render_pointfix_t p2 + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_linear_gradient_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t p1 /**< */, + xcb_render_pointfix_t p2 /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_linear_gradient + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t p1 + ** @param xcb_render_pointfix_t p2 + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_linear_gradient (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t p1 /**< */, + xcb_render_pointfix_t p2 /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */); + +int +xcb_render_create_radial_gradient_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_radial_gradient_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t inner + ** @param xcb_render_pointfix_t outer + ** @param xcb_render_fixed_t inner_radius + ** @param xcb_render_fixed_t outer_radius + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_radial_gradient_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t inner /**< */, + xcb_render_pointfix_t outer /**< */, + xcb_render_fixed_t inner_radius /**< */, + xcb_render_fixed_t outer_radius /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_radial_gradient + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t inner + ** @param xcb_render_pointfix_t outer + ** @param xcb_render_fixed_t inner_radius + ** @param xcb_render_fixed_t outer_radius + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_radial_gradient (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t inner /**< */, + xcb_render_pointfix_t outer /**< */, + xcb_render_fixed_t inner_radius /**< */, + xcb_render_fixed_t outer_radius /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */); + +int +xcb_render_create_conical_gradient_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_conical_gradient_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t center + ** @param xcb_render_fixed_t angle + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_conical_gradient_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t center /**< */, + xcb_render_fixed_t angle /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_render_create_conical_gradient + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_render_pointfix_t center + ** @param xcb_render_fixed_t angle + ** @param uint32_t num_stops + ** @param const xcb_render_fixed_t *stops + ** @param const xcb_render_color_t *colors + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_render_create_conical_gradient (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_render_pointfix_t center /**< */, + xcb_render_fixed_t angle /**< */, + uint32_t num_stops /**< */, + const xcb_render_fixed_t *stops /**< */, + const xcb_render_color_t *colors /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/res.c b/external/mit/xorg/lib/libxcb/files/res.c new file mode 100644 index 000000000..a5b76e73c --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/res.c @@ -0,0 +1,634 @@ +/* + * This file generated automatically from res.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "res.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_res_id = { "X-Resource", 0 }; + + +/***************************************************************************** + ** + ** void xcb_res_client_next + ** + ** @param xcb_res_client_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_res_client_next (xcb_res_client_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_res_client_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_res_client_end + ** + ** @param xcb_res_client_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_res_client_end (xcb_res_client_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_res_type_next + ** + ** @param xcb_res_type_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_res_type_next (xcb_res_type_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_res_type_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_res_type_end + ** + ** @param xcb_res_type_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_res_type_end (xcb_res_type_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_res_query_version_cookie_t xcb_res_query_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major + ** @param uint8_t client_minor + ** @returns xcb_res_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_version_cookie_t +xcb_res_query_version (xcb_connection_t *c /**< */, + uint8_t client_major /**< */, + uint8_t client_minor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_res_id, + /* opcode */ XCB_RES_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_res_query_version_cookie_t xcb_ret; + xcb_res_query_version_request_t xcb_out; + + xcb_out.client_major = client_major; + xcb_out.client_minor = client_minor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_res_query_version_cookie_t xcb_res_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major + ** @param uint8_t client_minor + ** @returns xcb_res_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_version_cookie_t +xcb_res_query_version_unchecked (xcb_connection_t *c /**< */, + uint8_t client_major /**< */, + uint8_t client_minor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_res_id, + /* opcode */ XCB_RES_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_res_query_version_cookie_t xcb_ret; + xcb_res_query_version_request_t xcb_out; + + xcb_out.client_major = client_major; + xcb_out.client_minor = client_minor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_res_query_version_reply_t * xcb_res_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_res_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_res_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_res_query_version_reply_t * +xcb_res_query_version_reply (xcb_connection_t *c /**< */, + xcb_res_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_res_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_res_query_clients_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_res_query_clients_reply_t *_aux = (xcb_res_query_clients_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_res_query_clients_reply_t); + xcb_tmp += xcb_block_len; + /* clients */ + xcb_block_len += _aux->num_clients * sizeof(xcb_res_client_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_res_client_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_res_query_clients_cookie_t xcb_res_query_clients + ** + ** @param xcb_connection_t *c + ** @returns xcb_res_query_clients_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_clients_cookie_t +xcb_res_query_clients (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_res_id, + /* opcode */ XCB_RES_QUERY_CLIENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_res_query_clients_cookie_t xcb_ret; + xcb_res_query_clients_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_res_query_clients_cookie_t xcb_res_query_clients_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_res_query_clients_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_clients_cookie_t +xcb_res_query_clients_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_res_id, + /* opcode */ XCB_RES_QUERY_CLIENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_res_query_clients_cookie_t xcb_ret; + xcb_res_query_clients_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_res_client_t * xcb_res_query_clients_clients + ** + ** @param const xcb_res_query_clients_reply_t *R + ** @returns xcb_res_client_t * + ** + *****************************************************************************/ + +xcb_res_client_t * +xcb_res_query_clients_clients (const xcb_res_query_clients_reply_t *R /**< */) +{ + return (xcb_res_client_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_res_query_clients_clients_length + ** + ** @param const xcb_res_query_clients_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_res_query_clients_clients_length (const xcb_res_query_clients_reply_t *R /**< */) +{ + return R->num_clients; +} + + +/***************************************************************************** + ** + ** xcb_res_client_iterator_t xcb_res_query_clients_clients_iterator + ** + ** @param const xcb_res_query_clients_reply_t *R + ** @returns xcb_res_client_iterator_t + ** + *****************************************************************************/ + +xcb_res_client_iterator_t +xcb_res_query_clients_clients_iterator (const xcb_res_query_clients_reply_t *R /**< */) +{ + xcb_res_client_iterator_t i; + i.data = (xcb_res_client_t *) (R + 1); + i.rem = R->num_clients; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_res_query_clients_reply_t * xcb_res_query_clients_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_res_query_clients_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_res_query_clients_reply_t * + ** + *****************************************************************************/ + +xcb_res_query_clients_reply_t * +xcb_res_query_clients_reply (xcb_connection_t *c /**< */, + xcb_res_query_clients_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_res_query_clients_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_res_query_client_resources_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_res_query_client_resources_reply_t *_aux = (xcb_res_query_client_resources_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_res_query_client_resources_reply_t); + xcb_tmp += xcb_block_len; + /* types */ + xcb_block_len += _aux->num_types * sizeof(xcb_res_type_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_res_type_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_res_query_client_resources_cookie_t xcb_res_query_client_resources + ** + ** @param xcb_connection_t *c + ** @param uint32_t xid + ** @returns xcb_res_query_client_resources_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_client_resources_cookie_t +xcb_res_query_client_resources (xcb_connection_t *c /**< */, + uint32_t xid /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_res_id, + /* opcode */ XCB_RES_QUERY_CLIENT_RESOURCES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_res_query_client_resources_cookie_t xcb_ret; + xcb_res_query_client_resources_request_t xcb_out; + + xcb_out.xid = xid; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_res_query_client_resources_cookie_t xcb_res_query_client_resources_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t xid + ** @returns xcb_res_query_client_resources_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_client_resources_cookie_t +xcb_res_query_client_resources_unchecked (xcb_connection_t *c /**< */, + uint32_t xid /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_res_id, + /* opcode */ XCB_RES_QUERY_CLIENT_RESOURCES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_res_query_client_resources_cookie_t xcb_ret; + xcb_res_query_client_resources_request_t xcb_out; + + xcb_out.xid = xid; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_res_type_t * xcb_res_query_client_resources_types + ** + ** @param const xcb_res_query_client_resources_reply_t *R + ** @returns xcb_res_type_t * + ** + *****************************************************************************/ + +xcb_res_type_t * +xcb_res_query_client_resources_types (const xcb_res_query_client_resources_reply_t *R /**< */) +{ + return (xcb_res_type_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_res_query_client_resources_types_length + ** + ** @param const xcb_res_query_client_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_res_query_client_resources_types_length (const xcb_res_query_client_resources_reply_t *R /**< */) +{ + return R->num_types; +} + + +/***************************************************************************** + ** + ** xcb_res_type_iterator_t xcb_res_query_client_resources_types_iterator + ** + ** @param const xcb_res_query_client_resources_reply_t *R + ** @returns xcb_res_type_iterator_t + ** + *****************************************************************************/ + +xcb_res_type_iterator_t +xcb_res_query_client_resources_types_iterator (const xcb_res_query_client_resources_reply_t *R /**< */) +{ + xcb_res_type_iterator_t i; + i.data = (xcb_res_type_t *) (R + 1); + i.rem = R->num_types; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_res_query_client_resources_reply_t * xcb_res_query_client_resources_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_res_query_client_resources_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_res_query_client_resources_reply_t * + ** + *****************************************************************************/ + +xcb_res_query_client_resources_reply_t * +xcb_res_query_client_resources_reply (xcb_connection_t *c /**< */, + xcb_res_query_client_resources_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_res_query_client_resources_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_res_query_client_pixmap_bytes_cookie_t xcb_res_query_client_pixmap_bytes + ** + ** @param xcb_connection_t *c + ** @param uint32_t xid + ** @returns xcb_res_query_client_pixmap_bytes_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_client_pixmap_bytes_cookie_t +xcb_res_query_client_pixmap_bytes (xcb_connection_t *c /**< */, + uint32_t xid /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_res_id, + /* opcode */ XCB_RES_QUERY_CLIENT_PIXMAP_BYTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_res_query_client_pixmap_bytes_cookie_t xcb_ret; + xcb_res_query_client_pixmap_bytes_request_t xcb_out; + + xcb_out.xid = xid; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_res_query_client_pixmap_bytes_cookie_t xcb_res_query_client_pixmap_bytes_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t xid + ** @returns xcb_res_query_client_pixmap_bytes_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_client_pixmap_bytes_cookie_t +xcb_res_query_client_pixmap_bytes_unchecked (xcb_connection_t *c /**< */, + uint32_t xid /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_res_id, + /* opcode */ XCB_RES_QUERY_CLIENT_PIXMAP_BYTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_res_query_client_pixmap_bytes_cookie_t xcb_ret; + xcb_res_query_client_pixmap_bytes_request_t xcb_out; + + xcb_out.xid = xid; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_res_query_client_pixmap_bytes_reply_t * xcb_res_query_client_pixmap_bytes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_res_query_client_pixmap_bytes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_res_query_client_pixmap_bytes_reply_t * + ** + *****************************************************************************/ + +xcb_res_query_client_pixmap_bytes_reply_t * +xcb_res_query_client_pixmap_bytes_reply (xcb_connection_t *c /**< */, + xcb_res_query_client_pixmap_bytes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_res_query_client_pixmap_bytes_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/res.h b/external/mit/xorg/lib/libxcb/files/res.h new file mode 100644 index 000000000..b6a030fca --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/res.h @@ -0,0 +1,688 @@ +/* + * This file generated automatically from res.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Res_API XCB Res API + * @brief Res XCB Protocol Implementation. + * @{ + **/ + +#ifndef __RES_H +#define __RES_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_RES_MAJOR_VERSION 1 +#define XCB_RES_MINOR_VERSION 0 + +extern xcb_extension_t xcb_res_id; + +/** + * @brief xcb_res_client_t + **/ +typedef struct xcb_res_client_t { + uint32_t resource_base; /**< */ + uint32_t resource_mask; /**< */ +} xcb_res_client_t; + +/** + * @brief xcb_res_client_iterator_t + **/ +typedef struct xcb_res_client_iterator_t { + xcb_res_client_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_res_client_iterator_t; + +/** + * @brief xcb_res_type_t + **/ +typedef struct xcb_res_type_t { + xcb_atom_t resource_type; /**< */ + uint32_t count; /**< */ +} xcb_res_type_t; + +/** + * @brief xcb_res_type_iterator_t + **/ +typedef struct xcb_res_type_iterator_t { + xcb_res_type_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_res_type_iterator_t; + +/** + * @brief xcb_res_query_version_cookie_t + **/ +typedef struct xcb_res_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_res_query_version_cookie_t; + +/** Opcode for xcb_res_query_version. */ +#define XCB_RES_QUERY_VERSION 0 + +/** + * @brief xcb_res_query_version_request_t + **/ +typedef struct xcb_res_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t client_major; /**< */ + uint8_t client_minor; /**< */ +} xcb_res_query_version_request_t; + +/** + * @brief xcb_res_query_version_reply_t + **/ +typedef struct xcb_res_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t server_major; /**< */ + uint16_t server_minor; /**< */ +} xcb_res_query_version_reply_t; + +/** + * @brief xcb_res_query_clients_cookie_t + **/ +typedef struct xcb_res_query_clients_cookie_t { + unsigned int sequence; /**< */ +} xcb_res_query_clients_cookie_t; + +/** Opcode for xcb_res_query_clients. */ +#define XCB_RES_QUERY_CLIENTS 1 + +/** + * @brief xcb_res_query_clients_request_t + **/ +typedef struct xcb_res_query_clients_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_res_query_clients_request_t; + +/** + * @brief xcb_res_query_clients_reply_t + **/ +typedef struct xcb_res_query_clients_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_clients; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_res_query_clients_reply_t; + +/** + * @brief xcb_res_query_client_resources_cookie_t + **/ +typedef struct xcb_res_query_client_resources_cookie_t { + unsigned int sequence; /**< */ +} xcb_res_query_client_resources_cookie_t; + +/** Opcode for xcb_res_query_client_resources. */ +#define XCB_RES_QUERY_CLIENT_RESOURCES 2 + +/** + * @brief xcb_res_query_client_resources_request_t + **/ +typedef struct xcb_res_query_client_resources_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t xid; /**< */ +} xcb_res_query_client_resources_request_t; + +/** + * @brief xcb_res_query_client_resources_reply_t + **/ +typedef struct xcb_res_query_client_resources_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_types; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_res_query_client_resources_reply_t; + +/** + * @brief xcb_res_query_client_pixmap_bytes_cookie_t + **/ +typedef struct xcb_res_query_client_pixmap_bytes_cookie_t { + unsigned int sequence; /**< */ +} xcb_res_query_client_pixmap_bytes_cookie_t; + +/** Opcode for xcb_res_query_client_pixmap_bytes. */ +#define XCB_RES_QUERY_CLIENT_PIXMAP_BYTES 3 + +/** + * @brief xcb_res_query_client_pixmap_bytes_request_t + **/ +typedef struct xcb_res_query_client_pixmap_bytes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t xid; /**< */ +} xcb_res_query_client_pixmap_bytes_request_t; + +/** + * @brief xcb_res_query_client_pixmap_bytes_reply_t + **/ +typedef struct xcb_res_query_client_pixmap_bytes_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t bytes; /**< */ + uint32_t bytes_overflow; /**< */ +} xcb_res_query_client_pixmap_bytes_reply_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_res_client_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_res_client_t) + */ + +/***************************************************************************** + ** + ** void xcb_res_client_next + ** + ** @param xcb_res_client_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_res_client_next (xcb_res_client_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_res_client_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_res_client_end + ** + ** @param xcb_res_client_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_res_client_end (xcb_res_client_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_res_type_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_res_type_t) + */ + +/***************************************************************************** + ** + ** void xcb_res_type_next + ** + ** @param xcb_res_type_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_res_type_next (xcb_res_type_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_res_type_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_res_type_end + ** + ** @param xcb_res_type_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_res_type_end (xcb_res_type_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_res_query_version_cookie_t xcb_res_query_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major + ** @param uint8_t client_minor + ** @returns xcb_res_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_version_cookie_t +xcb_res_query_version (xcb_connection_t *c /**< */, + uint8_t client_major /**< */, + uint8_t client_minor /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_res_query_version_cookie_t xcb_res_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major + ** @param uint8_t client_minor + ** @returns xcb_res_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_version_cookie_t +xcb_res_query_version_unchecked (xcb_connection_t *c /**< */, + uint8_t client_major /**< */, + uint8_t client_minor /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_res_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_res_query_version_reply_t * xcb_res_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_res_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_res_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_res_query_version_reply_t * +xcb_res_query_version_reply (xcb_connection_t *c /**< */, + xcb_res_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_res_query_clients_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_res_query_clients_cookie_t xcb_res_query_clients + ** + ** @param xcb_connection_t *c + ** @returns xcb_res_query_clients_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_clients_cookie_t +xcb_res_query_clients (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_res_query_clients_cookie_t xcb_res_query_clients_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_res_query_clients_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_clients_cookie_t +xcb_res_query_clients_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** xcb_res_client_t * xcb_res_query_clients_clients + ** + ** @param const xcb_res_query_clients_reply_t *R + ** @returns xcb_res_client_t * + ** + *****************************************************************************/ + +xcb_res_client_t * +xcb_res_query_clients_clients (const xcb_res_query_clients_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_res_query_clients_clients_length + ** + ** @param const xcb_res_query_clients_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_res_query_clients_clients_length (const xcb_res_query_clients_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_res_client_iterator_t xcb_res_query_clients_clients_iterator + ** + ** @param const xcb_res_query_clients_reply_t *R + ** @returns xcb_res_client_iterator_t + ** + *****************************************************************************/ + +xcb_res_client_iterator_t +xcb_res_query_clients_clients_iterator (const xcb_res_query_clients_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_res_query_clients_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_res_query_clients_reply_t * xcb_res_query_clients_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_res_query_clients_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_res_query_clients_reply_t * + ** + *****************************************************************************/ + +xcb_res_query_clients_reply_t * +xcb_res_query_clients_reply (xcb_connection_t *c /**< */, + xcb_res_query_clients_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_res_query_client_resources_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_res_query_client_resources_cookie_t xcb_res_query_client_resources + ** + ** @param xcb_connection_t *c + ** @param uint32_t xid + ** @returns xcb_res_query_client_resources_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_client_resources_cookie_t +xcb_res_query_client_resources (xcb_connection_t *c /**< */, + uint32_t xid /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_res_query_client_resources_cookie_t xcb_res_query_client_resources_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t xid + ** @returns xcb_res_query_client_resources_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_client_resources_cookie_t +xcb_res_query_client_resources_unchecked (xcb_connection_t *c /**< */, + uint32_t xid /**< */); + + +/***************************************************************************** + ** + ** xcb_res_type_t * xcb_res_query_client_resources_types + ** + ** @param const xcb_res_query_client_resources_reply_t *R + ** @returns xcb_res_type_t * + ** + *****************************************************************************/ + +xcb_res_type_t * +xcb_res_query_client_resources_types (const xcb_res_query_client_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_res_query_client_resources_types_length + ** + ** @param const xcb_res_query_client_resources_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_res_query_client_resources_types_length (const xcb_res_query_client_resources_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_res_type_iterator_t xcb_res_query_client_resources_types_iterator + ** + ** @param const xcb_res_query_client_resources_reply_t *R + ** @returns xcb_res_type_iterator_t + ** + *****************************************************************************/ + +xcb_res_type_iterator_t +xcb_res_query_client_resources_types_iterator (const xcb_res_query_client_resources_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_res_query_client_resources_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_res_query_client_resources_reply_t * xcb_res_query_client_resources_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_res_query_client_resources_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_res_query_client_resources_reply_t * + ** + *****************************************************************************/ + +xcb_res_query_client_resources_reply_t * +xcb_res_query_client_resources_reply (xcb_connection_t *c /**< */, + xcb_res_query_client_resources_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_res_query_client_pixmap_bytes_cookie_t xcb_res_query_client_pixmap_bytes + ** + ** @param xcb_connection_t *c + ** @param uint32_t xid + ** @returns xcb_res_query_client_pixmap_bytes_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_client_pixmap_bytes_cookie_t +xcb_res_query_client_pixmap_bytes (xcb_connection_t *c /**< */, + uint32_t xid /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_res_query_client_pixmap_bytes_cookie_t xcb_res_query_client_pixmap_bytes_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t xid + ** @returns xcb_res_query_client_pixmap_bytes_cookie_t + ** + *****************************************************************************/ + +xcb_res_query_client_pixmap_bytes_cookie_t +xcb_res_query_client_pixmap_bytes_unchecked (xcb_connection_t *c /**< */, + uint32_t xid /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_res_query_client_pixmap_bytes_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_res_query_client_pixmap_bytes_reply_t * xcb_res_query_client_pixmap_bytes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_res_query_client_pixmap_bytes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_res_query_client_pixmap_bytes_reply_t * + ** + *****************************************************************************/ + +xcb_res_query_client_pixmap_bytes_reply_t * +xcb_res_query_client_pixmap_bytes_reply (xcb_connection_t *c /**< */, + xcb_res_query_client_pixmap_bytes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/screensaver.c b/external/mit/xorg/lib/libxcb/files/screensaver.c new file mode 100644 index 000000000..349531da8 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/screensaver.c @@ -0,0 +1,617 @@ +/* + * This file generated automatically from screensaver.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "screensaver.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_screensaver_id = { "MIT-SCREEN-SAVER", 0 }; + + +/***************************************************************************** + ** + ** xcb_screensaver_query_version_cookie_t xcb_screensaver_query_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major_version + ** @param uint8_t client_minor_version + ** @returns xcb_screensaver_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_screensaver_query_version_cookie_t +xcb_screensaver_query_version (xcb_connection_t *c /**< */, + uint8_t client_major_version /**< */, + uint8_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_screensaver_query_version_cookie_t xcb_ret; + xcb_screensaver_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_screensaver_query_version_cookie_t xcb_screensaver_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major_version + ** @param uint8_t client_minor_version + ** @returns xcb_screensaver_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_screensaver_query_version_cookie_t +xcb_screensaver_query_version_unchecked (xcb_connection_t *c /**< */, + uint8_t client_major_version /**< */, + uint8_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_screensaver_query_version_cookie_t xcb_ret; + xcb_screensaver_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_screensaver_query_version_reply_t * xcb_screensaver_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_screensaver_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_screensaver_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_screensaver_query_version_reply_t * +xcb_screensaver_query_version_reply (xcb_connection_t *c /**< */, + xcb_screensaver_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_screensaver_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_screensaver_query_info_cookie_t xcb_screensaver_query_info + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_screensaver_query_info_cookie_t + ** + *****************************************************************************/ + +xcb_screensaver_query_info_cookie_t +xcb_screensaver_query_info (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_QUERY_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_screensaver_query_info_cookie_t xcb_ret; + xcb_screensaver_query_info_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_screensaver_query_info_cookie_t xcb_screensaver_query_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_screensaver_query_info_cookie_t + ** + *****************************************************************************/ + +xcb_screensaver_query_info_cookie_t +xcb_screensaver_query_info_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_QUERY_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_screensaver_query_info_cookie_t xcb_ret; + xcb_screensaver_query_info_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_screensaver_query_info_reply_t * xcb_screensaver_query_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_screensaver_query_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_screensaver_query_info_reply_t * + ** + *****************************************************************************/ + +xcb_screensaver_query_info_reply_t * +xcb_screensaver_query_info_reply (xcb_connection_t *c /**< */, + xcb_screensaver_query_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_screensaver_query_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_select_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_select_input_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_SELECT_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_screensaver_select_input_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_select_input + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_select_input (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_SELECT_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_screensaver_select_input_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_screensaver_set_attributes_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_screensaver_set_attributes_request_t *_aux = (xcb_screensaver_set_attributes_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_screensaver_set_attributes_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_set_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t border_width + ** @param uint8_t _class + ** @param uint8_t depth + ** @param xcb_visualid_t visual + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_set_attributes_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t border_width /**< */, + uint8_t _class /**< */, + uint8_t depth /**< */, + xcb_visualid_t visual /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_SET_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_screensaver_set_attributes_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.border_width = border_width; + xcb_out._class = _class; + xcb_out.depth = depth; + xcb_out.visual = visual; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_set_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t border_width + ** @param uint8_t _class + ** @param uint8_t depth + ** @param xcb_visualid_t visual + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_set_attributes (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t border_width /**< */, + uint8_t _class /**< */, + uint8_t depth /**< */, + xcb_visualid_t visual /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_SET_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_screensaver_set_attributes_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.border_width = border_width; + xcb_out._class = _class; + xcb_out.depth = depth; + xcb_out.visual = visual; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_unset_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_unset_attributes_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_UNSET_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_screensaver_unset_attributes_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_unset_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_unset_attributes (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_UNSET_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_screensaver_unset_attributes_request_t xcb_out; + + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_suspend_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t suspend + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_suspend_checked (xcb_connection_t *c /**< */, + uint8_t suspend /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_SUSPEND, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_screensaver_suspend_request_t xcb_out; + + xcb_out.suspend = suspend; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_suspend + ** + ** @param xcb_connection_t *c + ** @param uint8_t suspend + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_suspend (xcb_connection_t *c /**< */, + uint8_t suspend /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_screensaver_id, + /* opcode */ XCB_SCREENSAVER_SUSPEND, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_screensaver_suspend_request_t xcb_out; + + xcb_out.suspend = suspend; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/screensaver.h b/external/mit/xorg/lib/libxcb/files/screensaver.h new file mode 100644 index 000000000..5f38e264e --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/screensaver.h @@ -0,0 +1,616 @@ +/* + * This file generated automatically from screensaver.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_ScreenSaver_API XCB ScreenSaver API + * @brief ScreenSaver XCB Protocol Implementation. + * @{ + **/ + +#ifndef __SCREENSAVER_H +#define __SCREENSAVER_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_SCREENSAVER_MAJOR_VERSION 1 +#define XCB_SCREENSAVER_MINOR_VERSION 1 + +extern xcb_extension_t xcb_screensaver_id; + +typedef enum xcb_screensaver_kind_t { + XCB_SCREENSAVER_KIND_BLANKED, + XCB_SCREENSAVER_KIND_INTERNAL, + XCB_SCREENSAVER_KIND_EXTERNAL +} xcb_screensaver_kind_t; + +typedef enum xcb_screensaver_event_t { + XCB_SCREENSAVER_EVENT_NOTIFY_MASK = 1, + XCB_SCREENSAVER_EVENT_CYCLE_MASK = 2 +} xcb_screensaver_event_t; + +typedef enum xcb_screensaver_state_t { + XCB_SCREENSAVER_STATE_OFF, + XCB_SCREENSAVER_STATE_ON, + XCB_SCREENSAVER_STATE_CYCLE, + XCB_SCREENSAVER_STATE_DISABLED +} xcb_screensaver_state_t; + +/** + * @brief xcb_screensaver_query_version_cookie_t + **/ +typedef struct xcb_screensaver_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_screensaver_query_version_cookie_t; + +/** Opcode for xcb_screensaver_query_version. */ +#define XCB_SCREENSAVER_QUERY_VERSION 0 + +/** + * @brief xcb_screensaver_query_version_request_t + **/ +typedef struct xcb_screensaver_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t client_major_version; /**< */ + uint8_t client_minor_version; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_screensaver_query_version_request_t; + +/** + * @brief xcb_screensaver_query_version_reply_t + **/ +typedef struct xcb_screensaver_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t server_major_version; /**< */ + uint16_t server_minor_version; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_screensaver_query_version_reply_t; + +/** + * @brief xcb_screensaver_query_info_cookie_t + **/ +typedef struct xcb_screensaver_query_info_cookie_t { + unsigned int sequence; /**< */ +} xcb_screensaver_query_info_cookie_t; + +/** Opcode for xcb_screensaver_query_info. */ +#define XCB_SCREENSAVER_QUERY_INFO 1 + +/** + * @brief xcb_screensaver_query_info_request_t + **/ +typedef struct xcb_screensaver_query_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ +} xcb_screensaver_query_info_request_t; + +/** + * @brief xcb_screensaver_query_info_reply_t + **/ +typedef struct xcb_screensaver_query_info_reply_t { + uint8_t response_type; /**< */ + uint8_t state; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t saver_window; /**< */ + uint32_t ms_until_server; /**< */ + uint32_t ms_since_user_input; /**< */ + uint32_t event_mask; /**< */ + uint8_t kind; /**< */ + uint8_t pad0[7]; /**< */ +} xcb_screensaver_query_info_reply_t; + +/** Opcode for xcb_screensaver_select_input. */ +#define XCB_SCREENSAVER_SELECT_INPUT 2 + +/** + * @brief xcb_screensaver_select_input_request_t + **/ +typedef struct xcb_screensaver_select_input_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t event_mask; /**< */ +} xcb_screensaver_select_input_request_t; + +/** Opcode for xcb_screensaver_set_attributes. */ +#define XCB_SCREENSAVER_SET_ATTRIBUTES 3 + +/** + * @brief xcb_screensaver_set_attributes_request_t + **/ +typedef struct xcb_screensaver_set_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t border_width; /**< */ + uint8_t _class; /**< */ + uint8_t depth; /**< */ + xcb_visualid_t visual; /**< */ + uint32_t value_mask; /**< */ +} xcb_screensaver_set_attributes_request_t; + +/** Opcode for xcb_screensaver_unset_attributes. */ +#define XCB_SCREENSAVER_UNSET_ATTRIBUTES 4 + +/** + * @brief xcb_screensaver_unset_attributes_request_t + **/ +typedef struct xcb_screensaver_unset_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ +} xcb_screensaver_unset_attributes_request_t; + +/** Opcode for xcb_screensaver_suspend. */ +#define XCB_SCREENSAVER_SUSPEND 5 + +/** + * @brief xcb_screensaver_suspend_request_t + **/ +typedef struct xcb_screensaver_suspend_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t suspend; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_screensaver_suspend_request_t; + +/** Opcode for xcb_screensaver_notify. */ +#define XCB_SCREENSAVER_NOTIFY 0 + +/** + * @brief xcb_screensaver_notify_event_t + **/ +typedef struct xcb_screensaver_notify_event_t { + uint8_t response_type; /**< */ + uint8_t code; /**< */ + uint16_t sequence; /**< */ + uint8_t state; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence_number; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t root; /**< */ + xcb_window_t window; /**< */ + uint8_t kind; /**< */ + uint8_t forced; /**< */ + uint8_t pad1[14]; /**< */ +} xcb_screensaver_notify_event_t; + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_screensaver_query_version_cookie_t xcb_screensaver_query_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major_version + ** @param uint8_t client_minor_version + ** @returns xcb_screensaver_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_screensaver_query_version_cookie_t +xcb_screensaver_query_version (xcb_connection_t *c /**< */, + uint8_t client_major_version /**< */, + uint8_t client_minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_screensaver_query_version_cookie_t xcb_screensaver_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major_version + ** @param uint8_t client_minor_version + ** @returns xcb_screensaver_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_screensaver_query_version_cookie_t +xcb_screensaver_query_version_unchecked (xcb_connection_t *c /**< */, + uint8_t client_major_version /**< */, + uint8_t client_minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_screensaver_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_screensaver_query_version_reply_t * xcb_screensaver_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_screensaver_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_screensaver_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_screensaver_query_version_reply_t * +xcb_screensaver_query_version_reply (xcb_connection_t *c /**< */, + xcb_screensaver_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_screensaver_query_info_cookie_t xcb_screensaver_query_info + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_screensaver_query_info_cookie_t + ** + *****************************************************************************/ + +xcb_screensaver_query_info_cookie_t +xcb_screensaver_query_info (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_screensaver_query_info_cookie_t xcb_screensaver_query_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_screensaver_query_info_cookie_t + ** + *****************************************************************************/ + +xcb_screensaver_query_info_cookie_t +xcb_screensaver_query_info_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_screensaver_query_info_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_screensaver_query_info_reply_t * xcb_screensaver_query_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_screensaver_query_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_screensaver_query_info_reply_t * + ** + *****************************************************************************/ + +xcb_screensaver_query_info_reply_t * +xcb_screensaver_query_info_reply (xcb_connection_t *c /**< */, + xcb_screensaver_query_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_select_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_select_input_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t event_mask /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_select_input + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_select_input (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t event_mask /**< */); + +int +xcb_screensaver_set_attributes_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_set_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t border_width + ** @param uint8_t _class + ** @param uint8_t depth + ** @param xcb_visualid_t visual + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_set_attributes_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t border_width /**< */, + uint8_t _class /**< */, + uint8_t depth /**< */, + xcb_visualid_t visual /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_set_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t border_width + ** @param uint8_t _class + ** @param uint8_t depth + ** @param xcb_visualid_t visual + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_set_attributes (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t border_width /**< */, + uint8_t _class /**< */, + uint8_t depth /**< */, + xcb_visualid_t visual /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_unset_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_unset_attributes_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_unset_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_unset_attributes (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_suspend_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t suspend + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_suspend_checked (xcb_connection_t *c /**< */, + uint8_t suspend /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_screensaver_suspend + ** + ** @param xcb_connection_t *c + ** @param uint8_t suspend + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_screensaver_suspend (xcb_connection_t *c /**< */, + uint8_t suspend /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/shape.c b/external/mit/xorg/lib/libxcb/files/shape.c new file mode 100644 index 000000000..98621c498 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/shape.c @@ -0,0 +1,1102 @@ +/* + * This file generated automatically from shape.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "shape.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_shape_id = { "SHAPE", 0 }; + + +/***************************************************************************** + ** + ** void xcb_shape_op_next + ** + ** @param xcb_shape_op_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_shape_op_next (xcb_shape_op_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_shape_op_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_shape_op_end + ** + ** @param xcb_shape_op_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_shape_op_end (xcb_shape_op_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_shape_kind_next + ** + ** @param xcb_shape_kind_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_shape_kind_next (xcb_shape_kind_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_shape_kind_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_shape_kind_end + ** + ** @param xcb_shape_kind_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_shape_kind_end (xcb_shape_kind_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_query_version_cookie_t xcb_shape_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_shape_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_shape_query_version_cookie_t +xcb_shape_query_version (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shape_query_version_cookie_t xcb_ret; + xcb_shape_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_query_version_cookie_t xcb_shape_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_shape_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_shape_query_version_cookie_t +xcb_shape_query_version_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shape_query_version_cookie_t xcb_ret; + xcb_shape_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_query_version_reply_t * xcb_shape_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shape_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_shape_query_version_reply_t * +xcb_shape_query_version_reply (xcb_connection_t *c /**< */, + xcb_shape_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_shape_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_shape_rectangles_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_shape_rectangles_request_t); + xcb_tmp += xcb_block_len; + /* rectangles */ + xcb_block_len += rectangles_len * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_rectangles_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param uint8_t ordering + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_rectangles_checked (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + uint8_t ordering /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_RECTANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_shape_rectangles_request_t xcb_out; + + xcb_out.operation = operation; + xcb_out.destination_kind = destination_kind; + xcb_out.ordering = ordering; + xcb_out.pad0 = 0; + xcb_out.destination_window = destination_window; + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_rectangles + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param uint8_t ordering + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_rectangles (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + uint8_t ordering /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_RECTANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_shape_rectangles_request_t xcb_out; + + xcb_out.operation = operation; + xcb_out.destination_kind = destination_kind; + xcb_out.ordering = ordering; + xcb_out.pad0 = 0; + xcb_out.destination_window = destination_window; + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_mask_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_pixmap_t source_bitmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_mask_checked (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_pixmap_t source_bitmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_MASK, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shape_mask_request_t xcb_out; + + xcb_out.operation = operation; + xcb_out.destination_kind = destination_kind; + memset(xcb_out.pad0, 0, 2); + xcb_out.destination_window = destination_window; + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + xcb_out.source_bitmap = source_bitmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_mask + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_pixmap_t source_bitmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_mask (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_pixmap_t source_bitmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_MASK, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shape_mask_request_t xcb_out; + + xcb_out.operation = operation; + xcb_out.destination_kind = destination_kind; + memset(xcb_out.pad0, 0, 2); + xcb_out.destination_window = destination_window; + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + xcb_out.source_bitmap = source_bitmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_combine_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_shape_kind_t source_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_window_t source_window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_combine_checked (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_shape_kind_t source_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_window_t source_window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_COMBINE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shape_combine_request_t xcb_out; + + xcb_out.operation = operation; + xcb_out.destination_kind = destination_kind; + xcb_out.source_kind = source_kind; + xcb_out.pad0 = 0; + xcb_out.destination_window = destination_window; + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + xcb_out.source_window = source_window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_combine + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_shape_kind_t source_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_window_t source_window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_combine (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_shape_kind_t source_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_window_t source_window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_COMBINE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shape_combine_request_t xcb_out; + + xcb_out.operation = operation; + xcb_out.destination_kind = destination_kind; + xcb_out.source_kind = source_kind; + xcb_out.pad0 = 0; + xcb_out.destination_window = destination_window; + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + xcb_out.source_window = source_window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_offset_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_offset_checked (xcb_connection_t *c /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_OFFSET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shape_offset_request_t xcb_out; + + xcb_out.destination_kind = destination_kind; + memset(xcb_out.pad0, 0, 3); + xcb_out.destination_window = destination_window; + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_offset + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_offset (xcb_connection_t *c /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_OFFSET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shape_offset_request_t xcb_out; + + xcb_out.destination_kind = destination_kind; + memset(xcb_out.pad0, 0, 3); + xcb_out.destination_window = destination_window; + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @returns xcb_shape_query_extents_cookie_t + ** + *****************************************************************************/ + +xcb_shape_query_extents_cookie_t +xcb_shape_query_extents (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_QUERY_EXTENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shape_query_extents_cookie_t xcb_ret; + xcb_shape_query_extents_request_t xcb_out; + + xcb_out.destination_window = destination_window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @returns xcb_shape_query_extents_cookie_t + ** + *****************************************************************************/ + +xcb_shape_query_extents_cookie_t +xcb_shape_query_extents_unchecked (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_QUERY_EXTENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shape_query_extents_cookie_t xcb_ret; + xcb_shape_query_extents_request_t xcb_out; + + xcb_out.destination_window = destination_window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_query_extents_reply_t * xcb_shape_query_extents_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_query_extents_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shape_query_extents_reply_t * + ** + *****************************************************************************/ + +xcb_shape_query_extents_reply_t * +xcb_shape_query_extents_reply (xcb_connection_t *c /**< */, + xcb_shape_query_extents_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_shape_query_extents_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_select_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @param uint8_t enable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_select_input_checked (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */, + uint8_t enable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_SELECT_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shape_select_input_request_t xcb_out; + + xcb_out.destination_window = destination_window; + xcb_out.enable = enable; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_select_input + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @param uint8_t enable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_select_input (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */, + uint8_t enable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_SELECT_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shape_select_input_request_t xcb_out; + + xcb_out.destination_window = destination_window; + xcb_out.enable = enable; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @returns xcb_shape_input_selected_cookie_t + ** + *****************************************************************************/ + +xcb_shape_input_selected_cookie_t +xcb_shape_input_selected (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_INPUT_SELECTED, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shape_input_selected_cookie_t xcb_ret; + xcb_shape_input_selected_request_t xcb_out; + + xcb_out.destination_window = destination_window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @returns xcb_shape_input_selected_cookie_t + ** + *****************************************************************************/ + +xcb_shape_input_selected_cookie_t +xcb_shape_input_selected_unchecked (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_INPUT_SELECTED, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shape_input_selected_cookie_t xcb_ret; + xcb_shape_input_selected_request_t xcb_out; + + xcb_out.destination_window = destination_window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_input_selected_reply_t * xcb_shape_input_selected_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_input_selected_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shape_input_selected_reply_t * + ** + *****************************************************************************/ + +xcb_shape_input_selected_reply_t * +xcb_shape_input_selected_reply (xcb_connection_t *c /**< */, + xcb_shape_input_selected_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_shape_input_selected_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_shape_get_rectangles_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_shape_get_rectangles_reply_t *_aux = (xcb_shape_get_rectangles_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_shape_get_rectangles_reply_t); + xcb_tmp += xcb_block_len; + /* rectangles */ + xcb_block_len += _aux->rectangles_len * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_shape_kind_t source_kind + ** @returns xcb_shape_get_rectangles_cookie_t + ** + *****************************************************************************/ + +xcb_shape_get_rectangles_cookie_t +xcb_shape_get_rectangles (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_shape_kind_t source_kind /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_GET_RECTANGLES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shape_get_rectangles_cookie_t xcb_ret; + xcb_shape_get_rectangles_request_t xcb_out; + + xcb_out.window = window; + xcb_out.source_kind = source_kind; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_shape_kind_t source_kind + ** @returns xcb_shape_get_rectangles_cookie_t + ** + *****************************************************************************/ + +xcb_shape_get_rectangles_cookie_t +xcb_shape_get_rectangles_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_shape_kind_t source_kind /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shape_id, + /* opcode */ XCB_SHAPE_GET_RECTANGLES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shape_get_rectangles_cookie_t xcb_ret; + xcb_shape_get_rectangles_request_t xcb_out; + + xcb_out.window = window; + xcb_out.source_kind = source_kind; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_rectangle_t * xcb_shape_get_rectangles_rectangles + ** + ** @param const xcb_shape_get_rectangles_reply_t *R + ** @returns xcb_rectangle_t * + ** + *****************************************************************************/ + +xcb_rectangle_t * +xcb_shape_get_rectangles_rectangles (const xcb_shape_get_rectangles_reply_t *R /**< */) +{ + return (xcb_rectangle_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_shape_get_rectangles_rectangles_length + ** + ** @param const xcb_shape_get_rectangles_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_shape_get_rectangles_rectangles_length (const xcb_shape_get_rectangles_reply_t *R /**< */) +{ + return R->rectangles_len; +} + + +/***************************************************************************** + ** + ** xcb_rectangle_iterator_t xcb_shape_get_rectangles_rectangles_iterator + ** + ** @param const xcb_shape_get_rectangles_reply_t *R + ** @returns xcb_rectangle_iterator_t + ** + *****************************************************************************/ + +xcb_rectangle_iterator_t +xcb_shape_get_rectangles_rectangles_iterator (const xcb_shape_get_rectangles_reply_t *R /**< */) +{ + xcb_rectangle_iterator_t i; + i.data = (xcb_rectangle_t *) (R + 1); + i.rem = R->rectangles_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_shape_get_rectangles_reply_t * xcb_shape_get_rectangles_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_get_rectangles_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shape_get_rectangles_reply_t * + ** + *****************************************************************************/ + +xcb_shape_get_rectangles_reply_t * +xcb_shape_get_rectangles_reply (xcb_connection_t *c /**< */, + xcb_shape_get_rectangles_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_shape_get_rectangles_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/shape.h b/external/mit/xorg/lib/libxcb/files/shape.h new file mode 100644 index 000000000..63919b42c --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/shape.h @@ -0,0 +1,1103 @@ +/* + * This file generated automatically from shape.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Shape_API XCB Shape API + * @brief Shape XCB Protocol Implementation. + * @{ + **/ + +#ifndef __SHAPE_H +#define __SHAPE_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_SHAPE_MAJOR_VERSION 1 +#define XCB_SHAPE_MINOR_VERSION 1 + +extern xcb_extension_t xcb_shape_id; + +typedef uint8_t xcb_shape_op_t; + +/** + * @brief xcb_shape_op_iterator_t + **/ +typedef struct xcb_shape_op_iterator_t { + xcb_shape_op_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_shape_op_iterator_t; + +typedef uint8_t xcb_shape_kind_t; + +/** + * @brief xcb_shape_kind_iterator_t + **/ +typedef struct xcb_shape_kind_iterator_t { + xcb_shape_kind_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_shape_kind_iterator_t; + +typedef enum xcb_shape_so_t { + XCB_SHAPE_SO_SET, + XCB_SHAPE_SO_UNION, + XCB_SHAPE_SO_INTERSECT, + XCB_SHAPE_SO_SUBTRACT, + XCB_SHAPE_SO_INVERT +} xcb_shape_so_t; + +typedef enum xcb_shape_sk_t { + XCB_SHAPE_SK_BOUNDING, + XCB_SHAPE_SK_CLIP, + XCB_SHAPE_SK_INPUT +} xcb_shape_sk_t; + +/** Opcode for xcb_shape_notify. */ +#define XCB_SHAPE_NOTIFY 0 + +/** + * @brief xcb_shape_notify_event_t + **/ +typedef struct xcb_shape_notify_event_t { + uint8_t response_type; /**< */ + xcb_shape_kind_t shape_kind; /**< */ + uint16_t sequence; /**< */ + xcb_window_t affected_window; /**< */ + int16_t extents_x; /**< */ + int16_t extents_y; /**< */ + uint16_t extents_width; /**< */ + uint16_t extents_height; /**< */ + xcb_timestamp_t server_time; /**< */ + uint8_t shaped; /**< */ + uint8_t pad0[11]; /**< */ +} xcb_shape_notify_event_t; + +/** + * @brief xcb_shape_query_version_cookie_t + **/ +typedef struct xcb_shape_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_shape_query_version_cookie_t; + +/** Opcode for xcb_shape_query_version. */ +#define XCB_SHAPE_QUERY_VERSION 0 + +/** + * @brief xcb_shape_query_version_request_t + **/ +typedef struct xcb_shape_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_shape_query_version_request_t; + +/** + * @brief xcb_shape_query_version_reply_t + **/ +typedef struct xcb_shape_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t major_version; /**< */ + uint16_t minor_version; /**< */ +} xcb_shape_query_version_reply_t; + +/** Opcode for xcb_shape_rectangles. */ +#define XCB_SHAPE_RECTANGLES 1 + +/** + * @brief xcb_shape_rectangles_request_t + **/ +typedef struct xcb_shape_rectangles_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_shape_op_t operation; /**< */ + xcb_shape_kind_t destination_kind; /**< */ + uint8_t ordering; /**< */ + uint8_t pad0; /**< */ + xcb_window_t destination_window; /**< */ + int16_t x_offset; /**< */ + int16_t y_offset; /**< */ +} xcb_shape_rectangles_request_t; + +/** Opcode for xcb_shape_mask. */ +#define XCB_SHAPE_MASK 2 + +/** + * @brief xcb_shape_mask_request_t + **/ +typedef struct xcb_shape_mask_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_shape_op_t operation; /**< */ + xcb_shape_kind_t destination_kind; /**< */ + uint8_t pad0[2]; /**< */ + xcb_window_t destination_window; /**< */ + int16_t x_offset; /**< */ + int16_t y_offset; /**< */ + xcb_pixmap_t source_bitmap; /**< */ +} xcb_shape_mask_request_t; + +/** Opcode for xcb_shape_combine. */ +#define XCB_SHAPE_COMBINE 3 + +/** + * @brief xcb_shape_combine_request_t + **/ +typedef struct xcb_shape_combine_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_shape_op_t operation; /**< */ + xcb_shape_kind_t destination_kind; /**< */ + xcb_shape_kind_t source_kind; /**< */ + uint8_t pad0; /**< */ + xcb_window_t destination_window; /**< */ + int16_t x_offset; /**< */ + int16_t y_offset; /**< */ + xcb_window_t source_window; /**< */ +} xcb_shape_combine_request_t; + +/** Opcode for xcb_shape_offset. */ +#define XCB_SHAPE_OFFSET 4 + +/** + * @brief xcb_shape_offset_request_t + **/ +typedef struct xcb_shape_offset_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_shape_kind_t destination_kind; /**< */ + uint8_t pad0[3]; /**< */ + xcb_window_t destination_window; /**< */ + int16_t x_offset; /**< */ + int16_t y_offset; /**< */ +} xcb_shape_offset_request_t; + +/** + * @brief xcb_shape_query_extents_cookie_t + **/ +typedef struct xcb_shape_query_extents_cookie_t { + unsigned int sequence; /**< */ +} xcb_shape_query_extents_cookie_t; + +/** Opcode for xcb_shape_query_extents. */ +#define XCB_SHAPE_QUERY_EXTENTS 5 + +/** + * @brief xcb_shape_query_extents_request_t + **/ +typedef struct xcb_shape_query_extents_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t destination_window; /**< */ +} xcb_shape_query_extents_request_t; + +/** + * @brief xcb_shape_query_extents_reply_t + **/ +typedef struct xcb_shape_query_extents_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t bounding_shaped; /**< */ + uint8_t clip_shaped; /**< */ + uint8_t pad1[2]; /**< */ + int16_t bounding_shape_extents_x; /**< */ + int16_t bounding_shape_extents_y; /**< */ + uint16_t bounding_shape_extents_width; /**< */ + uint16_t bounding_shape_extents_height; /**< */ + int16_t clip_shape_extents_x; /**< */ + int16_t clip_shape_extents_y; /**< */ + uint16_t clip_shape_extents_width; /**< */ + uint16_t clip_shape_extents_height; /**< */ +} xcb_shape_query_extents_reply_t; + +/** Opcode for xcb_shape_select_input. */ +#define XCB_SHAPE_SELECT_INPUT 6 + +/** + * @brief xcb_shape_select_input_request_t + **/ +typedef struct xcb_shape_select_input_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t destination_window; /**< */ + uint8_t enable; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_shape_select_input_request_t; + +/** + * @brief xcb_shape_input_selected_cookie_t + **/ +typedef struct xcb_shape_input_selected_cookie_t { + unsigned int sequence; /**< */ +} xcb_shape_input_selected_cookie_t; + +/** Opcode for xcb_shape_input_selected. */ +#define XCB_SHAPE_INPUT_SELECTED 7 + +/** + * @brief xcb_shape_input_selected_request_t + **/ +typedef struct xcb_shape_input_selected_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t destination_window; /**< */ +} xcb_shape_input_selected_request_t; + +/** + * @brief xcb_shape_input_selected_reply_t + **/ +typedef struct xcb_shape_input_selected_reply_t { + uint8_t response_type; /**< */ + uint8_t enabled; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ +} xcb_shape_input_selected_reply_t; + +/** + * @brief xcb_shape_get_rectangles_cookie_t + **/ +typedef struct xcb_shape_get_rectangles_cookie_t { + unsigned int sequence; /**< */ +} xcb_shape_get_rectangles_cookie_t; + +/** Opcode for xcb_shape_get_rectangles. */ +#define XCB_SHAPE_GET_RECTANGLES 8 + +/** + * @brief xcb_shape_get_rectangles_request_t + **/ +typedef struct xcb_shape_get_rectangles_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_shape_kind_t source_kind; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_shape_get_rectangles_request_t; + +/** + * @brief xcb_shape_get_rectangles_reply_t + **/ +typedef struct xcb_shape_get_rectangles_reply_t { + uint8_t response_type; /**< */ + uint8_t ordering; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t rectangles_len; /**< */ + uint8_t pad0[20]; /**< */ +} xcb_shape_get_rectangles_reply_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_shape_op_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_shape_op_t) + */ + +/***************************************************************************** + ** + ** void xcb_shape_op_next + ** + ** @param xcb_shape_op_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_shape_op_next (xcb_shape_op_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_shape_op_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_shape_op_end + ** + ** @param xcb_shape_op_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_shape_op_end (xcb_shape_op_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_shape_kind_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_shape_kind_t) + */ + +/***************************************************************************** + ** + ** void xcb_shape_kind_next + ** + ** @param xcb_shape_kind_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_shape_kind_next (xcb_shape_kind_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_shape_kind_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_shape_kind_end + ** + ** @param xcb_shape_kind_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_shape_kind_end (xcb_shape_kind_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_shape_query_version_cookie_t xcb_shape_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_shape_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_shape_query_version_cookie_t +xcb_shape_query_version (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_shape_query_version_cookie_t xcb_shape_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_shape_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_shape_query_version_cookie_t +xcb_shape_query_version_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_shape_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_shape_query_version_reply_t * xcb_shape_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shape_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_shape_query_version_reply_t * +xcb_shape_query_version_reply (xcb_connection_t *c /**< */, + xcb_shape_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_shape_rectangles_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_rectangles_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param uint8_t ordering + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_rectangles_checked (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + uint8_t ordering /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_rectangles + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param uint8_t ordering + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_rectangles (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + uint8_t ordering /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_mask_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_pixmap_t source_bitmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_mask_checked (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_pixmap_t source_bitmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_mask + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_pixmap_t source_bitmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_mask (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_pixmap_t source_bitmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_combine_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_shape_kind_t source_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_window_t source_window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_combine_checked (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_shape_kind_t source_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_window_t source_window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_combine + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_op_t operation + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_shape_kind_t source_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_window_t source_window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_combine (xcb_connection_t *c /**< */, + xcb_shape_op_t operation /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_shape_kind_t source_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_window_t source_window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_offset_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_offset_checked (xcb_connection_t *c /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_offset + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_kind_t destination_kind + ** @param xcb_window_t destination_window + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_offset (xcb_connection_t *c /**< */, + xcb_shape_kind_t destination_kind /**< */, + xcb_window_t destination_window /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @returns xcb_shape_query_extents_cookie_t + ** + *****************************************************************************/ + +xcb_shape_query_extents_cookie_t +xcb_shape_query_extents (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_shape_query_extents_cookie_t xcb_shape_query_extents_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @returns xcb_shape_query_extents_cookie_t + ** + *****************************************************************************/ + +xcb_shape_query_extents_cookie_t +xcb_shape_query_extents_unchecked (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_shape_query_extents_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_shape_query_extents_reply_t * xcb_shape_query_extents_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_query_extents_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shape_query_extents_reply_t * + ** + *****************************************************************************/ + +xcb_shape_query_extents_reply_t * +xcb_shape_query_extents_reply (xcb_connection_t *c /**< */, + xcb_shape_query_extents_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_select_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @param uint8_t enable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_select_input_checked (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */, + uint8_t enable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shape_select_input + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @param uint8_t enable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shape_select_input (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */, + uint8_t enable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @returns xcb_shape_input_selected_cookie_t + ** + *****************************************************************************/ + +xcb_shape_input_selected_cookie_t +xcb_shape_input_selected (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_shape_input_selected_cookie_t xcb_shape_input_selected_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination_window + ** @returns xcb_shape_input_selected_cookie_t + ** + *****************************************************************************/ + +xcb_shape_input_selected_cookie_t +xcb_shape_input_selected_unchecked (xcb_connection_t *c /**< */, + xcb_window_t destination_window /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_shape_input_selected_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_shape_input_selected_reply_t * xcb_shape_input_selected_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_input_selected_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shape_input_selected_reply_t * + ** + *****************************************************************************/ + +xcb_shape_input_selected_reply_t * +xcb_shape_input_selected_reply (xcb_connection_t *c /**< */, + xcb_shape_input_selected_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_shape_get_rectangles_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_shape_kind_t source_kind + ** @returns xcb_shape_get_rectangles_cookie_t + ** + *****************************************************************************/ + +xcb_shape_get_rectangles_cookie_t +xcb_shape_get_rectangles (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_shape_kind_t source_kind /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_shape_get_rectangles_cookie_t xcb_shape_get_rectangles_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_shape_kind_t source_kind + ** @returns xcb_shape_get_rectangles_cookie_t + ** + *****************************************************************************/ + +xcb_shape_get_rectangles_cookie_t +xcb_shape_get_rectangles_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_shape_kind_t source_kind /**< */); + + +/***************************************************************************** + ** + ** xcb_rectangle_t * xcb_shape_get_rectangles_rectangles + ** + ** @param const xcb_shape_get_rectangles_reply_t *R + ** @returns xcb_rectangle_t * + ** + *****************************************************************************/ + +xcb_rectangle_t * +xcb_shape_get_rectangles_rectangles (const xcb_shape_get_rectangles_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_shape_get_rectangles_rectangles_length + ** + ** @param const xcb_shape_get_rectangles_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_shape_get_rectangles_rectangles_length (const xcb_shape_get_rectangles_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_rectangle_iterator_t xcb_shape_get_rectangles_rectangles_iterator + ** + ** @param const xcb_shape_get_rectangles_reply_t *R + ** @returns xcb_rectangle_iterator_t + ** + *****************************************************************************/ + +xcb_rectangle_iterator_t +xcb_shape_get_rectangles_rectangles_iterator (const xcb_shape_get_rectangles_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_shape_get_rectangles_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_shape_get_rectangles_reply_t * xcb_shape_get_rectangles_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shape_get_rectangles_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shape_get_rectangles_reply_t * + ** + *****************************************************************************/ + +xcb_shape_get_rectangles_reply_t * +xcb_shape_get_rectangles_reply (xcb_connection_t *c /**< */, + xcb_shape_get_rectangles_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/shm.c b/external/mit/xorg/lib/libxcb/files/shm.c new file mode 100644 index 000000000..0a1c23873 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/shm.c @@ -0,0 +1,724 @@ +/* + * This file generated automatically from shm.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "shm.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_shm_id = { "MIT-SHM", 0 }; + + +/***************************************************************************** + ** + ** void xcb_shm_seg_next + ** + ** @param xcb_shm_seg_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_shm_seg_next (xcb_shm_seg_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_shm_seg_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_shm_seg_end + ** + ** @param xcb_shm_seg_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_shm_seg_end (xcb_shm_seg_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_shm_query_version_cookie_t xcb_shm_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_shm_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_shm_query_version_cookie_t +xcb_shm_query_version (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shm_query_version_cookie_t xcb_ret; + xcb_shm_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shm_query_version_cookie_t xcb_shm_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_shm_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_shm_query_version_cookie_t +xcb_shm_query_version_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shm_query_version_cookie_t xcb_ret; + xcb_shm_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shm_query_version_reply_t * xcb_shm_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shm_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_shm_query_version_reply_t * +xcb_shm_query_version_reply (xcb_connection_t *c /**< */, + xcb_shm_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_shm_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_attach_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t shmid + ** @param uint8_t read_only + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_attach_checked (xcb_connection_t *c /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t shmid /**< */, + uint8_t read_only /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_ATTACH, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shm_attach_request_t xcb_out; + + xcb_out.shmseg = shmseg; + xcb_out.shmid = shmid; + xcb_out.read_only = read_only; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_attach + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t shmid + ** @param uint8_t read_only + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_attach (xcb_connection_t *c /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t shmid /**< */, + uint8_t read_only /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_ATTACH, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shm_attach_request_t xcb_out; + + xcb_out.shmseg = shmseg; + xcb_out.shmid = shmid; + xcb_out.read_only = read_only; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_detach_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_seg_t shmseg + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_detach_checked (xcb_connection_t *c /**< */, + xcb_shm_seg_t shmseg /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_DETACH, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shm_detach_request_t xcb_out; + + xcb_out.shmseg = shmseg; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_detach + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_seg_t shmseg + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_detach (xcb_connection_t *c /**< */, + xcb_shm_seg_t shmseg /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_DETACH, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shm_detach_request_t xcb_out; + + xcb_out.shmseg = shmseg; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_put_image_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint16_t total_width + ** @param uint16_t total_height + ** @param uint16_t src_x + ** @param uint16_t src_y + ** @param uint16_t src_width + ** @param uint16_t src_height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint8_t depth + ** @param uint8_t format + ** @param uint8_t send_event + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_put_image_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint16_t total_width /**< */, + uint16_t total_height /**< */, + uint16_t src_x /**< */, + uint16_t src_y /**< */, + uint16_t src_width /**< */, + uint16_t src_height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint8_t depth /**< */, + uint8_t format /**< */, + uint8_t send_event /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_PUT_IMAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shm_put_image_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.total_width = total_width; + xcb_out.total_height = total_height; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.src_width = src_width; + xcb_out.src_height = src_height; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.depth = depth; + xcb_out.format = format; + xcb_out.send_event = send_event; + xcb_out.pad0 = 0; + xcb_out.shmseg = shmseg; + xcb_out.offset = offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_put_image + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint16_t total_width + ** @param uint16_t total_height + ** @param uint16_t src_x + ** @param uint16_t src_y + ** @param uint16_t src_width + ** @param uint16_t src_height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint8_t depth + ** @param uint8_t format + ** @param uint8_t send_event + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_put_image (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint16_t total_width /**< */, + uint16_t total_height /**< */, + uint16_t src_x /**< */, + uint16_t src_y /**< */, + uint16_t src_width /**< */, + uint16_t src_height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint8_t depth /**< */, + uint8_t format /**< */, + uint8_t send_event /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_PUT_IMAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shm_put_image_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.total_width = total_width; + xcb_out.total_height = total_height; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.src_width = src_width; + xcb_out.src_height = src_height; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.depth = depth; + xcb_out.format = format; + xcb_out.send_event = send_event; + xcb_out.pad0 = 0; + xcb_out.shmseg = shmseg; + xcb_out.offset = offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shm_get_image_cookie_t xcb_shm_get_image + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t plane_mask + ** @param uint8_t format + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_shm_get_image_cookie_t + ** + *****************************************************************************/ + +xcb_shm_get_image_cookie_t +xcb_shm_get_image (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t plane_mask /**< */, + uint8_t format /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_GET_IMAGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shm_get_image_cookie_t xcb_ret; + xcb_shm_get_image_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.plane_mask = plane_mask; + xcb_out.format = format; + memset(xcb_out.pad0, 0, 3); + xcb_out.shmseg = shmseg; + xcb_out.offset = offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shm_get_image_cookie_t xcb_shm_get_image_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t plane_mask + ** @param uint8_t format + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_shm_get_image_cookie_t + ** + *****************************************************************************/ + +xcb_shm_get_image_cookie_t +xcb_shm_get_image_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t plane_mask /**< */, + uint8_t format /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_GET_IMAGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_shm_get_image_cookie_t xcb_ret; + xcb_shm_get_image_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.plane_mask = plane_mask; + xcb_out.format = format; + memset(xcb_out.pad0, 0, 3); + xcb_out.shmseg = shmseg; + xcb_out.offset = offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_shm_get_image_reply_t * xcb_shm_get_image_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_get_image_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shm_get_image_reply_t * + ** + *****************************************************************************/ + +xcb_shm_get_image_reply_t * +xcb_shm_get_image_reply (xcb_connection_t *c /**< */, + xcb_shm_get_image_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_shm_get_image_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_create_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_pixmap_t pid + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @param uint8_t depth + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_create_pixmap_checked (xcb_connection_t *c /**< */, + xcb_pixmap_t pid /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint8_t depth /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_CREATE_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shm_create_pixmap_request_t xcb_out; + + xcb_out.pid = pid; + xcb_out.drawable = drawable; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.depth = depth; + memset(xcb_out.pad0, 0, 3); + xcb_out.shmseg = shmseg; + xcb_out.offset = offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_create_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_pixmap_t pid + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @param uint8_t depth + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_create_pixmap (xcb_connection_t *c /**< */, + xcb_pixmap_t pid /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint8_t depth /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_shm_id, + /* opcode */ XCB_SHM_CREATE_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_shm_create_pixmap_request_t xcb_out; + + xcb_out.pid = pid; + xcb_out.drawable = drawable; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.depth = depth; + memset(xcb_out.pad0, 0, 3); + xcb_out.shmseg = shmseg; + xcb_out.offset = offset; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/shm.h b/external/mit/xorg/lib/libxcb/files/shm.h new file mode 100644 index 000000000..315f37e9b --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/shm.h @@ -0,0 +1,738 @@ +/* + * This file generated automatically from shm.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Shm_API XCB Shm API + * @brief Shm XCB Protocol Implementation. + * @{ + **/ + +#ifndef __SHM_H +#define __SHM_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_SHM_MAJOR_VERSION 1 +#define XCB_SHM_MINOR_VERSION 1 + +extern xcb_extension_t xcb_shm_id; + +typedef uint32_t xcb_shm_seg_t; + +/** + * @brief xcb_shm_seg_iterator_t + **/ +typedef struct xcb_shm_seg_iterator_t { + xcb_shm_seg_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_shm_seg_iterator_t; + +/** Opcode for xcb_shm_completion. */ +#define XCB_SHM_COMPLETION 0 + +/** + * @brief xcb_shm_completion_event_t + **/ +typedef struct xcb_shm_completion_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_drawable_t drawable; /**< */ + uint16_t minor_event; /**< */ + uint8_t major_event; /**< */ + uint8_t pad1; /**< */ + xcb_shm_seg_t shmseg; /**< */ + uint32_t offset; /**< */ +} xcb_shm_completion_event_t; + +/** Opcode for xcb_shm_bad_seg. */ +#define XCB_SHM_BAD_SEG 0 + +typedef xcb_value_error_t xcb_shm_bad_seg_error_t; + +/** + * @brief xcb_shm_query_version_cookie_t + **/ +typedef struct xcb_shm_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_shm_query_version_cookie_t; + +/** Opcode for xcb_shm_query_version. */ +#define XCB_SHM_QUERY_VERSION 0 + +/** + * @brief xcb_shm_query_version_request_t + **/ +typedef struct xcb_shm_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_shm_query_version_request_t; + +/** + * @brief xcb_shm_query_version_reply_t + **/ +typedef struct xcb_shm_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t shared_pixmaps; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t major_version; /**< */ + uint16_t minor_version; /**< */ + uint16_t uid; /**< */ + uint16_t gid; /**< */ + uint8_t pixmap_format; /**< */ + uint8_t pad0[15]; /**< */ +} xcb_shm_query_version_reply_t; + +/** Opcode for xcb_shm_attach. */ +#define XCB_SHM_ATTACH 1 + +/** + * @brief xcb_shm_attach_request_t + **/ +typedef struct xcb_shm_attach_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_shm_seg_t shmseg; /**< */ + uint32_t shmid; /**< */ + uint8_t read_only; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_shm_attach_request_t; + +/** Opcode for xcb_shm_detach. */ +#define XCB_SHM_DETACH 2 + +/** + * @brief xcb_shm_detach_request_t + **/ +typedef struct xcb_shm_detach_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_shm_seg_t shmseg; /**< */ +} xcb_shm_detach_request_t; + +/** Opcode for xcb_shm_put_image. */ +#define XCB_SHM_PUT_IMAGE 3 + +/** + * @brief xcb_shm_put_image_request_t + **/ +typedef struct xcb_shm_put_image_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + uint16_t total_width; /**< */ + uint16_t total_height; /**< */ + uint16_t src_x; /**< */ + uint16_t src_y; /**< */ + uint16_t src_width; /**< */ + uint16_t src_height; /**< */ + int16_t dst_x; /**< */ + int16_t dst_y; /**< */ + uint8_t depth; /**< */ + uint8_t format; /**< */ + uint8_t send_event; /**< */ + uint8_t pad0; /**< */ + xcb_shm_seg_t shmseg; /**< */ + uint32_t offset; /**< */ +} xcb_shm_put_image_request_t; + +/** + * @brief xcb_shm_get_image_cookie_t + **/ +typedef struct xcb_shm_get_image_cookie_t { + unsigned int sequence; /**< */ +} xcb_shm_get_image_cookie_t; + +/** Opcode for xcb_shm_get_image. */ +#define XCB_SHM_GET_IMAGE 4 + +/** + * @brief xcb_shm_get_image_request_t + **/ +typedef struct xcb_shm_get_image_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint32_t plane_mask; /**< */ + uint8_t format; /**< */ + uint8_t pad0[3]; /**< */ + xcb_shm_seg_t shmseg; /**< */ + uint32_t offset; /**< */ +} xcb_shm_get_image_request_t; + +/** + * @brief xcb_shm_get_image_reply_t + **/ +typedef struct xcb_shm_get_image_reply_t { + uint8_t response_type; /**< */ + uint8_t depth; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_visualid_t visual; /**< */ + uint32_t size; /**< */ +} xcb_shm_get_image_reply_t; + +/** Opcode for xcb_shm_create_pixmap. */ +#define XCB_SHM_CREATE_PIXMAP 5 + +/** + * @brief xcb_shm_create_pixmap_request_t + **/ +typedef struct xcb_shm_create_pixmap_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_pixmap_t pid; /**< */ + xcb_drawable_t drawable; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint8_t depth; /**< */ + uint8_t pad0[3]; /**< */ + xcb_shm_seg_t shmseg; /**< */ + uint32_t offset; /**< */ +} xcb_shm_create_pixmap_request_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_shm_seg_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_shm_seg_t) + */ + +/***************************************************************************** + ** + ** void xcb_shm_seg_next + ** + ** @param xcb_shm_seg_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_shm_seg_next (xcb_shm_seg_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_shm_seg_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_shm_seg_end + ** + ** @param xcb_shm_seg_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_shm_seg_end (xcb_shm_seg_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_shm_query_version_cookie_t xcb_shm_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_shm_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_shm_query_version_cookie_t +xcb_shm_query_version (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_shm_query_version_cookie_t xcb_shm_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_shm_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_shm_query_version_cookie_t +xcb_shm_query_version_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_shm_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_shm_query_version_reply_t * xcb_shm_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shm_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_shm_query_version_reply_t * +xcb_shm_query_version_reply (xcb_connection_t *c /**< */, + xcb_shm_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_attach_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t shmid + ** @param uint8_t read_only + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_attach_checked (xcb_connection_t *c /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t shmid /**< */, + uint8_t read_only /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_attach + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t shmid + ** @param uint8_t read_only + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_attach (xcb_connection_t *c /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t shmid /**< */, + uint8_t read_only /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_detach_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_seg_t shmseg + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_detach_checked (xcb_connection_t *c /**< */, + xcb_shm_seg_t shmseg /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_detach + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_seg_t shmseg + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_detach (xcb_connection_t *c /**< */, + xcb_shm_seg_t shmseg /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_put_image_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint16_t total_width + ** @param uint16_t total_height + ** @param uint16_t src_x + ** @param uint16_t src_y + ** @param uint16_t src_width + ** @param uint16_t src_height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint8_t depth + ** @param uint8_t format + ** @param uint8_t send_event + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_put_image_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint16_t total_width /**< */, + uint16_t total_height /**< */, + uint16_t src_x /**< */, + uint16_t src_y /**< */, + uint16_t src_width /**< */, + uint16_t src_height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint8_t depth /**< */, + uint8_t format /**< */, + uint8_t send_event /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_put_image + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint16_t total_width + ** @param uint16_t total_height + ** @param uint16_t src_x + ** @param uint16_t src_y + ** @param uint16_t src_width + ** @param uint16_t src_height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint8_t depth + ** @param uint8_t format + ** @param uint8_t send_event + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_put_image (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint16_t total_width /**< */, + uint16_t total_height /**< */, + uint16_t src_x /**< */, + uint16_t src_y /**< */, + uint16_t src_width /**< */, + uint16_t src_height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint8_t depth /**< */, + uint8_t format /**< */, + uint8_t send_event /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_shm_get_image_cookie_t xcb_shm_get_image + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t plane_mask + ** @param uint8_t format + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_shm_get_image_cookie_t + ** + *****************************************************************************/ + +xcb_shm_get_image_cookie_t +xcb_shm_get_image (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t plane_mask /**< */, + uint8_t format /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_shm_get_image_cookie_t xcb_shm_get_image_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t plane_mask + ** @param uint8_t format + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_shm_get_image_cookie_t + ** + *****************************************************************************/ + +xcb_shm_get_image_cookie_t +xcb_shm_get_image_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t plane_mask /**< */, + uint8_t format /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_shm_get_image_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_shm_get_image_reply_t * xcb_shm_get_image_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_shm_get_image_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_shm_get_image_reply_t * + ** + *****************************************************************************/ + +xcb_shm_get_image_reply_t * +xcb_shm_get_image_reply (xcb_connection_t *c /**< */, + xcb_shm_get_image_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_create_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_pixmap_t pid + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @param uint8_t depth + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_create_pixmap_checked (xcb_connection_t *c /**< */, + xcb_pixmap_t pid /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint8_t depth /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_shm_create_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_pixmap_t pid + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @param uint8_t depth + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t offset + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_shm_create_pixmap (xcb_connection_t *c /**< */, + xcb_pixmap_t pid /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint8_t depth /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t offset /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/sync.c b/external/mit/xorg/lib/libxcb/files/sync.c new file mode 100644 index 000000000..1f352756d --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/sync.c @@ -0,0 +1,2258 @@ +/* + * This file generated automatically from sync.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "sync.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_sync_id = { "SYNC", 0 }; + + +/***************************************************************************** + ** + ** void xcb_sync_alarm_next + ** + ** @param xcb_sync_alarm_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_alarm_next (xcb_sync_alarm_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_sync_alarm_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_alarm_end + ** + ** @param xcb_sync_alarm_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_alarm_end (xcb_sync_alarm_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_sync_counter_next + ** + ** @param xcb_sync_counter_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_counter_next (xcb_sync_counter_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_sync_counter_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_counter_end + ** + ** @param xcb_sync_counter_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_counter_end (xcb_sync_counter_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_sync_fence_next + ** + ** @param xcb_sync_fence_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_fence_next (xcb_sync_fence_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_sync_fence_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_fence_end + ** + ** @param xcb_sync_fence_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_fence_end (xcb_sync_fence_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_sync_int64_next + ** + ** @param xcb_sync_int64_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_int64_next (xcb_sync_int64_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_sync_int64_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_int64_end + ** + ** @param xcb_sync_int64_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_int64_end (xcb_sync_int64_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_sync_systemcounter_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_sync_systemcounter_t *_aux = (xcb_sync_systemcounter_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_sync_systemcounter_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_sync_systemcounter_name + ** + ** @param const xcb_sync_systemcounter_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_sync_systemcounter_name (const xcb_sync_systemcounter_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_sync_systemcounter_name_length + ** + ** @param const xcb_sync_systemcounter_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_sync_systemcounter_name_length (const xcb_sync_systemcounter_t *R /**< */) +{ + return R->name_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_systemcounter_name_end + ** + ** @param const xcb_sync_systemcounter_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_systemcounter_name_end (const xcb_sync_systemcounter_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->name_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_sync_systemcounter_next + ** + ** @param xcb_sync_systemcounter_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_systemcounter_next (xcb_sync_systemcounter_iterator_t *i /**< */) +{ + xcb_sync_systemcounter_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_sync_systemcounter_t *)(((char *)R) + xcb_sync_systemcounter_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_sync_systemcounter_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_systemcounter_end + ** + ** @param xcb_sync_systemcounter_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_systemcounter_end (xcb_sync_systemcounter_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_sync_systemcounter_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_sync_trigger_next + ** + ** @param xcb_sync_trigger_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_trigger_next (xcb_sync_trigger_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_sync_trigger_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_trigger_end + ** + ** @param xcb_sync_trigger_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_trigger_end (xcb_sync_trigger_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_sync_waitcondition_next + ** + ** @param xcb_sync_waitcondition_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_waitcondition_next (xcb_sync_waitcondition_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_sync_waitcondition_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_waitcondition_end + ** + ** @param xcb_sync_waitcondition_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_waitcondition_end (xcb_sync_waitcondition_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_initialize_cookie_t xcb_sync_initialize + ** + ** @param xcb_connection_t *c + ** @param uint8_t desired_major_version + ** @param uint8_t desired_minor_version + ** @returns xcb_sync_initialize_cookie_t + ** + *****************************************************************************/ + +xcb_sync_initialize_cookie_t +xcb_sync_initialize (xcb_connection_t *c /**< */, + uint8_t desired_major_version /**< */, + uint8_t desired_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_INITIALIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_initialize_cookie_t xcb_ret; + xcb_sync_initialize_request_t xcb_out; + + xcb_out.desired_major_version = desired_major_version; + xcb_out.desired_minor_version = desired_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_initialize_cookie_t xcb_sync_initialize_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t desired_major_version + ** @param uint8_t desired_minor_version + ** @returns xcb_sync_initialize_cookie_t + ** + *****************************************************************************/ + +xcb_sync_initialize_cookie_t +xcb_sync_initialize_unchecked (xcb_connection_t *c /**< */, + uint8_t desired_major_version /**< */, + uint8_t desired_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_INITIALIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_initialize_cookie_t xcb_ret; + xcb_sync_initialize_request_t xcb_out; + + xcb_out.desired_major_version = desired_major_version; + xcb_out.desired_minor_version = desired_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_initialize_reply_t * xcb_sync_initialize_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_initialize_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_initialize_reply_t * + ** + *****************************************************************************/ + +xcb_sync_initialize_reply_t * +xcb_sync_initialize_reply (xcb_connection_t *c /**< */, + xcb_sync_initialize_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_sync_initialize_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_sync_list_system_counters_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_sync_list_system_counters_reply_t *_aux = (xcb_sync_list_system_counters_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_sync_list_system_counters_reply_t); + xcb_tmp += xcb_block_len; + /* counters */ + for(i=0; i<_aux->counters_len; i++) { + xcb_tmp_len = xcb_sync_systemcounter_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_sync_systemcounter_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_sync_list_system_counters_cookie_t xcb_sync_list_system_counters + ** + ** @param xcb_connection_t *c + ** @returns xcb_sync_list_system_counters_cookie_t + ** + *****************************************************************************/ + +xcb_sync_list_system_counters_cookie_t +xcb_sync_list_system_counters (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_LIST_SYSTEM_COUNTERS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_list_system_counters_cookie_t xcb_ret; + xcb_sync_list_system_counters_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_list_system_counters_cookie_t xcb_sync_list_system_counters_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_sync_list_system_counters_cookie_t + ** + *****************************************************************************/ + +xcb_sync_list_system_counters_cookie_t +xcb_sync_list_system_counters_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_LIST_SYSTEM_COUNTERS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_list_system_counters_cookie_t xcb_ret; + xcb_sync_list_system_counters_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_sync_list_system_counters_counters_length + ** + ** @param const xcb_sync_list_system_counters_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_sync_list_system_counters_counters_length (const xcb_sync_list_system_counters_reply_t *R /**< */) +{ + return R->counters_len; +} + + +/***************************************************************************** + ** + ** xcb_sync_systemcounter_iterator_t xcb_sync_list_system_counters_counters_iterator + ** + ** @param const xcb_sync_list_system_counters_reply_t *R + ** @returns xcb_sync_systemcounter_iterator_t + ** + *****************************************************************************/ + +xcb_sync_systemcounter_iterator_t +xcb_sync_list_system_counters_counters_iterator (const xcb_sync_list_system_counters_reply_t *R /**< */) +{ + xcb_sync_systemcounter_iterator_t i; + i.data = (xcb_sync_systemcounter_t *) (R + 1); + i.rem = R->counters_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_sync_list_system_counters_reply_t * xcb_sync_list_system_counters_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_list_system_counters_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_list_system_counters_reply_t * + ** + *****************************************************************************/ + +xcb_sync_list_system_counters_reply_t * +xcb_sync_list_system_counters_reply (xcb_connection_t *c /**< */, + xcb_sync_list_system_counters_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_sync_list_system_counters_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_counter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t id + ** @param xcb_sync_int64_t initial_value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_counter_checked (xcb_connection_t *c /**< */, + xcb_sync_counter_t id /**< */, + xcb_sync_int64_t initial_value /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CREATE_COUNTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_create_counter_request_t xcb_out; + + xcb_out.id = id; + xcb_out.initial_value = initial_value; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t id + ** @param xcb_sync_int64_t initial_value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t id /**< */, + xcb_sync_int64_t initial_value /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CREATE_COUNTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_create_counter_request_t xcb_out; + + xcb_out.id = id; + xcb_out.initial_value = initial_value; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_counter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_counter_checked (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_DESTROY_COUNTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_destroy_counter_request_t xcb_out; + + xcb_out.counter = counter; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_DESTROY_COUNTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_destroy_counter_request_t xcb_out; + + xcb_out.counter = counter; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_query_counter_cookie_t xcb_sync_query_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @returns xcb_sync_query_counter_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_counter_cookie_t +xcb_sync_query_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_QUERY_COUNTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_query_counter_cookie_t xcb_ret; + xcb_sync_query_counter_request_t xcb_out; + + xcb_out.counter = counter; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_query_counter_cookie_t xcb_sync_query_counter_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @returns xcb_sync_query_counter_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_counter_cookie_t +xcb_sync_query_counter_unchecked (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_QUERY_COUNTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_query_counter_cookie_t xcb_ret; + xcb_sync_query_counter_request_t xcb_out; + + xcb_out.counter = counter; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_query_counter_reply_t * xcb_sync_query_counter_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_query_counter_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_query_counter_reply_t * + ** + *****************************************************************************/ + +xcb_sync_query_counter_reply_t * +xcb_sync_query_counter_reply (xcb_connection_t *c /**< */, + xcb_sync_query_counter_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_sync_query_counter_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_sync_await_sizeof (const void *_buffer /**< */, + uint32_t wait_list_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_sync_await_request_t); + xcb_tmp += xcb_block_len; + /* wait_list */ + xcb_block_len += wait_list_len * sizeof(xcb_sync_waitcondition_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_sync_waitcondition_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_await_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t wait_list_len + ** @param const xcb_sync_waitcondition_t *wait_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_await_checked (xcb_connection_t *c /**< */, + uint32_t wait_list_len /**< */, + const xcb_sync_waitcondition_t *wait_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_AWAIT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_sync_await_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_sync_waitcondition_t wait_list */ + xcb_parts[4].iov_base = (char *) wait_list; + xcb_parts[4].iov_len = wait_list_len * sizeof(xcb_sync_waitcondition_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_await + ** + ** @param xcb_connection_t *c + ** @param uint32_t wait_list_len + ** @param const xcb_sync_waitcondition_t *wait_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_await (xcb_connection_t *c /**< */, + uint32_t wait_list_len /**< */, + const xcb_sync_waitcondition_t *wait_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_AWAIT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_sync_await_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_sync_waitcondition_t wait_list */ + xcb_parts[4].iov_base = (char *) wait_list; + xcb_parts[4].iov_len = wait_list_len * sizeof(xcb_sync_waitcondition_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_change_counter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @param xcb_sync_int64_t amount + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_change_counter_checked (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */, + xcb_sync_int64_t amount /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CHANGE_COUNTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_change_counter_request_t xcb_out; + + xcb_out.counter = counter; + xcb_out.amount = amount; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_change_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @param xcb_sync_int64_t amount + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_change_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */, + xcb_sync_int64_t amount /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CHANGE_COUNTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_change_counter_request_t xcb_out; + + xcb_out.counter = counter; + xcb_out.amount = amount; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_set_counter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @param xcb_sync_int64_t value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_set_counter_checked (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */, + xcb_sync_int64_t value /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_SET_COUNTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_set_counter_request_t xcb_out; + + xcb_out.counter = counter; + xcb_out.value = value; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_set_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @param xcb_sync_int64_t value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_set_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */, + xcb_sync_int64_t value /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_SET_COUNTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_set_counter_request_t xcb_out; + + xcb_out.counter = counter; + xcb_out.value = value; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_sync_create_alarm_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_sync_create_alarm_request_t *_aux = (xcb_sync_create_alarm_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_sync_create_alarm_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_alarm_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t id + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_alarm_checked (xcb_connection_t *c /**< */, + xcb_sync_alarm_t id /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CREATE_ALARM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_sync_create_alarm_request_t xcb_out; + + xcb_out.id = id; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_alarm + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t id + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_alarm (xcb_connection_t *c /**< */, + xcb_sync_alarm_t id /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CREATE_ALARM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_sync_create_alarm_request_t xcb_out; + + xcb_out.id = id; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_sync_change_alarm_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_sync_change_alarm_request_t *_aux = (xcb_sync_change_alarm_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_sync_change_alarm_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_change_alarm_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t id + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_change_alarm_checked (xcb_connection_t *c /**< */, + xcb_sync_alarm_t id /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CHANGE_ALARM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_sync_change_alarm_request_t xcb_out; + + xcb_out.id = id; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_change_alarm + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t id + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_change_alarm (xcb_connection_t *c /**< */, + xcb_sync_alarm_t id /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CHANGE_ALARM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_sync_change_alarm_request_t xcb_out; + + xcb_out.id = id; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_alarm_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t alarm + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_alarm_checked (xcb_connection_t *c /**< */, + xcb_sync_alarm_t alarm /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_DESTROY_ALARM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_destroy_alarm_request_t xcb_out; + + xcb_out.alarm = alarm; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_alarm + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t alarm + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_alarm (xcb_connection_t *c /**< */, + xcb_sync_alarm_t alarm /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_DESTROY_ALARM, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_destroy_alarm_request_t xcb_out; + + xcb_out.alarm = alarm; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_query_alarm_cookie_t xcb_sync_query_alarm + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t alarm + ** @returns xcb_sync_query_alarm_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_alarm_cookie_t +xcb_sync_query_alarm (xcb_connection_t *c /**< */, + xcb_sync_alarm_t alarm /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_QUERY_ALARM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_query_alarm_cookie_t xcb_ret; + xcb_sync_query_alarm_request_t xcb_out; + + xcb_out.alarm = alarm; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_query_alarm_cookie_t xcb_sync_query_alarm_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t alarm + ** @returns xcb_sync_query_alarm_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_alarm_cookie_t +xcb_sync_query_alarm_unchecked (xcb_connection_t *c /**< */, + xcb_sync_alarm_t alarm /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_QUERY_ALARM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_query_alarm_cookie_t xcb_ret; + xcb_sync_query_alarm_request_t xcb_out; + + xcb_out.alarm = alarm; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_query_alarm_reply_t * xcb_sync_query_alarm_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_query_alarm_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_query_alarm_reply_t * + ** + *****************************************************************************/ + +xcb_sync_query_alarm_reply_t * +xcb_sync_query_alarm_reply (xcb_connection_t *c /**< */, + xcb_sync_query_alarm_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_sync_query_alarm_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_set_priority_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t id + ** @param int32_t priority + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_set_priority_checked (xcb_connection_t *c /**< */, + uint32_t id /**< */, + int32_t priority /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_SET_PRIORITY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_set_priority_request_t xcb_out; + + xcb_out.id = id; + xcb_out.priority = priority; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_set_priority + ** + ** @param xcb_connection_t *c + ** @param uint32_t id + ** @param int32_t priority + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_set_priority (xcb_connection_t *c /**< */, + uint32_t id /**< */, + int32_t priority /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_SET_PRIORITY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_set_priority_request_t xcb_out; + + xcb_out.id = id; + xcb_out.priority = priority; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_get_priority_cookie_t xcb_sync_get_priority + ** + ** @param xcb_connection_t *c + ** @param uint32_t id + ** @returns xcb_sync_get_priority_cookie_t + ** + *****************************************************************************/ + +xcb_sync_get_priority_cookie_t +xcb_sync_get_priority (xcb_connection_t *c /**< */, + uint32_t id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_GET_PRIORITY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_get_priority_cookie_t xcb_ret; + xcb_sync_get_priority_request_t xcb_out; + + xcb_out.id = id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_get_priority_cookie_t xcb_sync_get_priority_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t id + ** @returns xcb_sync_get_priority_cookie_t + ** + *****************************************************************************/ + +xcb_sync_get_priority_cookie_t +xcb_sync_get_priority_unchecked (xcb_connection_t *c /**< */, + uint32_t id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_GET_PRIORITY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_get_priority_cookie_t xcb_ret; + xcb_sync_get_priority_request_t xcb_out; + + xcb_out.id = id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_get_priority_reply_t * xcb_sync_get_priority_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_get_priority_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_get_priority_reply_t * + ** + *****************************************************************************/ + +xcb_sync_get_priority_reply_t * +xcb_sync_get_priority_reply (xcb_connection_t *c /**< */, + xcb_sync_get_priority_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_sync_get_priority_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_fence_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_sync_fence_t fence + ** @param uint8_t initially_triggered + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_fence_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_sync_fence_t fence /**< */, + uint8_t initially_triggered /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CREATE_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_create_fence_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.fence = fence; + xcb_out.initially_triggered = initially_triggered; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_sync_fence_t fence + ** @param uint8_t initially_triggered + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_fence (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_sync_fence_t fence /**< */, + uint8_t initially_triggered /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_CREATE_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_create_fence_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.fence = fence; + xcb_out.initially_triggered = initially_triggered; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_trigger_fence_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_trigger_fence_checked (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_TRIGGER_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_trigger_fence_request_t xcb_out; + + xcb_out.fence = fence; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_trigger_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_trigger_fence (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_TRIGGER_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_trigger_fence_request_t xcb_out; + + xcb_out.fence = fence; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_reset_fence_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_reset_fence_checked (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_RESET_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_reset_fence_request_t xcb_out; + + xcb_out.fence = fence; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_reset_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_reset_fence (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_RESET_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_reset_fence_request_t xcb_out; + + xcb_out.fence = fence; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_fence_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_fence_checked (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_DESTROY_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_destroy_fence_request_t xcb_out; + + xcb_out.fence = fence; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_fence (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_DESTROY_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_sync_destroy_fence_request_t xcb_out; + + xcb_out.fence = fence; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_query_fence_cookie_t xcb_sync_query_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_sync_query_fence_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_fence_cookie_t +xcb_sync_query_fence (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_QUERY_FENCE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_query_fence_cookie_t xcb_ret; + xcb_sync_query_fence_request_t xcb_out; + + xcb_out.fence = fence; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_query_fence_cookie_t xcb_sync_query_fence_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_sync_query_fence_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_fence_cookie_t +xcb_sync_query_fence_unchecked (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_QUERY_FENCE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_sync_query_fence_cookie_t xcb_ret; + xcb_sync_query_fence_request_t xcb_out; + + xcb_out.fence = fence; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_sync_query_fence_reply_t * xcb_sync_query_fence_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_query_fence_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_query_fence_reply_t * + ** + *****************************************************************************/ + +xcb_sync_query_fence_reply_t * +xcb_sync_query_fence_reply (xcb_connection_t *c /**< */, + xcb_sync_query_fence_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_sync_query_fence_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_sync_await_fence_sizeof (const void *_buffer /**< */, + uint32_t fence_list_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_sync_await_fence_request_t); + xcb_tmp += xcb_block_len; + /* fence_list */ + xcb_block_len += fence_list_len * sizeof(xcb_sync_fence_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_sync_fence_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_await_fence_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t fence_list_len + ** @param const xcb_sync_fence_t *fence_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_await_fence_checked (xcb_connection_t *c /**< */, + uint32_t fence_list_len /**< */, + const xcb_sync_fence_t *fence_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_AWAIT_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_sync_await_fence_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_sync_fence_t fence_list */ + xcb_parts[4].iov_base = (char *) fence_list; + xcb_parts[4].iov_len = fence_list_len * sizeof(xcb_sync_fence_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_await_fence + ** + ** @param xcb_connection_t *c + ** @param uint32_t fence_list_len + ** @param const xcb_sync_fence_t *fence_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_await_fence (xcb_connection_t *c /**< */, + uint32_t fence_list_len /**< */, + const xcb_sync_fence_t *fence_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_sync_id, + /* opcode */ XCB_SYNC_AWAIT_FENCE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_sync_await_fence_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_sync_fence_t fence_list */ + xcb_parts[4].iov_base = (char *) fence_list; + xcb_parts[4].iov_len = fence_list_len * sizeof(xcb_sync_fence_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/sync.h b/external/mit/xorg/lib/libxcb/files/sync.h new file mode 100644 index 000000000..3d0069d7e --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/sync.h @@ -0,0 +1,2216 @@ +/* + * This file generated automatically from sync.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Sync_API XCB Sync API + * @brief Sync XCB Protocol Implementation. + * @{ + **/ + +#ifndef __SYNC_H +#define __SYNC_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_SYNC_MAJOR_VERSION 3 +#define XCB_SYNC_MINOR_VERSION 1 + +extern xcb_extension_t xcb_sync_id; + +typedef uint32_t xcb_sync_alarm_t; + +/** + * @brief xcb_sync_alarm_iterator_t + **/ +typedef struct xcb_sync_alarm_iterator_t { + xcb_sync_alarm_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_sync_alarm_iterator_t; + +typedef enum xcb_sync_alarmstate_t { + XCB_SYNC_ALARMSTATE_ACTIVE, + XCB_SYNC_ALARMSTATE_INACTIVE, + XCB_SYNC_ALARMSTATE_DESTROYED +} xcb_sync_alarmstate_t; + +typedef uint32_t xcb_sync_counter_t; + +/** + * @brief xcb_sync_counter_iterator_t + **/ +typedef struct xcb_sync_counter_iterator_t { + xcb_sync_counter_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_sync_counter_iterator_t; + +typedef uint32_t xcb_sync_fence_t; + +/** + * @brief xcb_sync_fence_iterator_t + **/ +typedef struct xcb_sync_fence_iterator_t { + xcb_sync_fence_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_sync_fence_iterator_t; + +typedef enum xcb_sync_testtype_t { + XCB_SYNC_TESTTYPE_POSITIVE_TRANSITION, + XCB_SYNC_TESTTYPE_NEGATIVE_TRANSITION, + XCB_SYNC_TESTTYPE_POSITIVE_COMPARISON, + XCB_SYNC_TESTTYPE_NEGATIVE_COMPARISON +} xcb_sync_testtype_t; + +typedef enum xcb_sync_valuetype_t { + XCB_SYNC_VALUETYPE_ABSOLUTE, + XCB_SYNC_VALUETYPE_RELATIVE +} xcb_sync_valuetype_t; + +typedef enum xcb_sync_ca_t { + XCB_SYNC_CA_COUNTER = 1, + XCB_SYNC_CA_VALUE_TYPE = 2, + XCB_SYNC_CA_VALUE = 4, + XCB_SYNC_CA_TEST_TYPE = 8, + XCB_SYNC_CA_DELTA = 16, + XCB_SYNC_CA_EVENTS = 32 +} xcb_sync_ca_t; + +/** + * @brief xcb_sync_int64_t + **/ +typedef struct xcb_sync_int64_t { + int32_t hi; /**< */ + uint32_t lo; /**< */ +} xcb_sync_int64_t; + +/** + * @brief xcb_sync_int64_iterator_t + **/ +typedef struct xcb_sync_int64_iterator_t { + xcb_sync_int64_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_sync_int64_iterator_t; + +/** + * @brief xcb_sync_systemcounter_t + **/ +typedef struct xcb_sync_systemcounter_t { + xcb_sync_counter_t counter; /**< */ + xcb_sync_int64_t resolution; /**< */ + uint16_t name_len; /**< */ +} xcb_sync_systemcounter_t; + +/** + * @brief xcb_sync_systemcounter_iterator_t + **/ +typedef struct xcb_sync_systemcounter_iterator_t { + xcb_sync_systemcounter_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_sync_systemcounter_iterator_t; + +/** + * @brief xcb_sync_trigger_t + **/ +typedef struct xcb_sync_trigger_t { + xcb_sync_counter_t counter; /**< */ + uint32_t wait_type; /**< */ + xcb_sync_int64_t wait_value; /**< */ + uint32_t test_type; /**< */ +} xcb_sync_trigger_t; + +/** + * @brief xcb_sync_trigger_iterator_t + **/ +typedef struct xcb_sync_trigger_iterator_t { + xcb_sync_trigger_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_sync_trigger_iterator_t; + +/** + * @brief xcb_sync_waitcondition_t + **/ +typedef struct xcb_sync_waitcondition_t { + xcb_sync_trigger_t trigger; /**< */ + xcb_sync_int64_t event_threshold; /**< */ +} xcb_sync_waitcondition_t; + +/** + * @brief xcb_sync_waitcondition_iterator_t + **/ +typedef struct xcb_sync_waitcondition_iterator_t { + xcb_sync_waitcondition_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_sync_waitcondition_iterator_t; + +/** Opcode for xcb_sync_counter. */ +#define XCB_SYNC_COUNTER 0 + +/** + * @brief xcb_sync_counter_error_t + **/ +typedef struct xcb_sync_counter_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ + uint32_t bad_counter; /**< */ + uint16_t minor_opcode; /**< */ + uint8_t major_opcode; /**< */ +} xcb_sync_counter_error_t; + +/** Opcode for xcb_sync_alarm. */ +#define XCB_SYNC_ALARM 1 + +/** + * @brief xcb_sync_alarm_error_t + **/ +typedef struct xcb_sync_alarm_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ + uint32_t bad_alarm; /**< */ + uint16_t minor_opcode; /**< */ + uint8_t major_opcode; /**< */ +} xcb_sync_alarm_error_t; + +/** + * @brief xcb_sync_initialize_cookie_t + **/ +typedef struct xcb_sync_initialize_cookie_t { + unsigned int sequence; /**< */ +} xcb_sync_initialize_cookie_t; + +/** Opcode for xcb_sync_initialize. */ +#define XCB_SYNC_INITIALIZE 0 + +/** + * @brief xcb_sync_initialize_request_t + **/ +typedef struct xcb_sync_initialize_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t desired_major_version; /**< */ + uint8_t desired_minor_version; /**< */ +} xcb_sync_initialize_request_t; + +/** + * @brief xcb_sync_initialize_reply_t + **/ +typedef struct xcb_sync_initialize_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t major_version; /**< */ + uint8_t minor_version; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_sync_initialize_reply_t; + +/** + * @brief xcb_sync_list_system_counters_cookie_t + **/ +typedef struct xcb_sync_list_system_counters_cookie_t { + unsigned int sequence; /**< */ +} xcb_sync_list_system_counters_cookie_t; + +/** Opcode for xcb_sync_list_system_counters. */ +#define XCB_SYNC_LIST_SYSTEM_COUNTERS 1 + +/** + * @brief xcb_sync_list_system_counters_request_t + **/ +typedef struct xcb_sync_list_system_counters_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_sync_list_system_counters_request_t; + +/** + * @brief xcb_sync_list_system_counters_reply_t + **/ +typedef struct xcb_sync_list_system_counters_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t counters_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_sync_list_system_counters_reply_t; + +/** Opcode for xcb_sync_create_counter. */ +#define XCB_SYNC_CREATE_COUNTER 2 + +/** + * @brief xcb_sync_create_counter_request_t + **/ +typedef struct xcb_sync_create_counter_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_counter_t id; /**< */ + xcb_sync_int64_t initial_value; /**< */ +} xcb_sync_create_counter_request_t; + +/** Opcode for xcb_sync_destroy_counter. */ +#define XCB_SYNC_DESTROY_COUNTER 6 + +/** + * @brief xcb_sync_destroy_counter_request_t + **/ +typedef struct xcb_sync_destroy_counter_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_counter_t counter; /**< */ +} xcb_sync_destroy_counter_request_t; + +/** + * @brief xcb_sync_query_counter_cookie_t + **/ +typedef struct xcb_sync_query_counter_cookie_t { + unsigned int sequence; /**< */ +} xcb_sync_query_counter_cookie_t; + +/** Opcode for xcb_sync_query_counter. */ +#define XCB_SYNC_QUERY_COUNTER 5 + +/** + * @brief xcb_sync_query_counter_request_t + **/ +typedef struct xcb_sync_query_counter_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_counter_t counter; /**< */ +} xcb_sync_query_counter_request_t; + +/** + * @brief xcb_sync_query_counter_reply_t + **/ +typedef struct xcb_sync_query_counter_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_sync_int64_t counter_value; /**< */ +} xcb_sync_query_counter_reply_t; + +/** Opcode for xcb_sync_await. */ +#define XCB_SYNC_AWAIT 7 + +/** + * @brief xcb_sync_await_request_t + **/ +typedef struct xcb_sync_await_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_sync_await_request_t; + +/** Opcode for xcb_sync_change_counter. */ +#define XCB_SYNC_CHANGE_COUNTER 4 + +/** + * @brief xcb_sync_change_counter_request_t + **/ +typedef struct xcb_sync_change_counter_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_counter_t counter; /**< */ + xcb_sync_int64_t amount; /**< */ +} xcb_sync_change_counter_request_t; + +/** Opcode for xcb_sync_set_counter. */ +#define XCB_SYNC_SET_COUNTER 3 + +/** + * @brief xcb_sync_set_counter_request_t + **/ +typedef struct xcb_sync_set_counter_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_counter_t counter; /**< */ + xcb_sync_int64_t value; /**< */ +} xcb_sync_set_counter_request_t; + +/** Opcode for xcb_sync_create_alarm. */ +#define XCB_SYNC_CREATE_ALARM 8 + +/** + * @brief xcb_sync_create_alarm_request_t + **/ +typedef struct xcb_sync_create_alarm_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_alarm_t id; /**< */ + uint32_t value_mask; /**< */ +} xcb_sync_create_alarm_request_t; + +/** Opcode for xcb_sync_change_alarm. */ +#define XCB_SYNC_CHANGE_ALARM 9 + +/** + * @brief xcb_sync_change_alarm_request_t + **/ +typedef struct xcb_sync_change_alarm_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_alarm_t id; /**< */ + uint32_t value_mask; /**< */ +} xcb_sync_change_alarm_request_t; + +/** Opcode for xcb_sync_destroy_alarm. */ +#define XCB_SYNC_DESTROY_ALARM 11 + +/** + * @brief xcb_sync_destroy_alarm_request_t + **/ +typedef struct xcb_sync_destroy_alarm_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_alarm_t alarm; /**< */ +} xcb_sync_destroy_alarm_request_t; + +/** + * @brief xcb_sync_query_alarm_cookie_t + **/ +typedef struct xcb_sync_query_alarm_cookie_t { + unsigned int sequence; /**< */ +} xcb_sync_query_alarm_cookie_t; + +/** Opcode for xcb_sync_query_alarm. */ +#define XCB_SYNC_QUERY_ALARM 10 + +/** + * @brief xcb_sync_query_alarm_request_t + **/ +typedef struct xcb_sync_query_alarm_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_alarm_t alarm; /**< */ +} xcb_sync_query_alarm_request_t; + +/** + * @brief xcb_sync_query_alarm_reply_t + **/ +typedef struct xcb_sync_query_alarm_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_sync_trigger_t trigger; /**< */ + xcb_sync_int64_t delta; /**< */ + uint8_t events; /**< */ + uint8_t state; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_sync_query_alarm_reply_t; + +/** Opcode for xcb_sync_set_priority. */ +#define XCB_SYNC_SET_PRIORITY 12 + +/** + * @brief xcb_sync_set_priority_request_t + **/ +typedef struct xcb_sync_set_priority_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t id; /**< */ + int32_t priority; /**< */ +} xcb_sync_set_priority_request_t; + +/** + * @brief xcb_sync_get_priority_cookie_t + **/ +typedef struct xcb_sync_get_priority_cookie_t { + unsigned int sequence; /**< */ +} xcb_sync_get_priority_cookie_t; + +/** Opcode for xcb_sync_get_priority. */ +#define XCB_SYNC_GET_PRIORITY 13 + +/** + * @brief xcb_sync_get_priority_request_t + **/ +typedef struct xcb_sync_get_priority_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t id; /**< */ +} xcb_sync_get_priority_request_t; + +/** + * @brief xcb_sync_get_priority_reply_t + **/ +typedef struct xcb_sync_get_priority_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + int32_t priority; /**< */ +} xcb_sync_get_priority_reply_t; + +/** Opcode for xcb_sync_create_fence. */ +#define XCB_SYNC_CREATE_FENCE 14 + +/** + * @brief xcb_sync_create_fence_request_t + **/ +typedef struct xcb_sync_create_fence_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_sync_fence_t fence; /**< */ + uint8_t initially_triggered; /**< */ +} xcb_sync_create_fence_request_t; + +/** Opcode for xcb_sync_trigger_fence. */ +#define XCB_SYNC_TRIGGER_FENCE 15 + +/** + * @brief xcb_sync_trigger_fence_request_t + **/ +typedef struct xcb_sync_trigger_fence_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_fence_t fence; /**< */ +} xcb_sync_trigger_fence_request_t; + +/** Opcode for xcb_sync_reset_fence. */ +#define XCB_SYNC_RESET_FENCE 16 + +/** + * @brief xcb_sync_reset_fence_request_t + **/ +typedef struct xcb_sync_reset_fence_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_fence_t fence; /**< */ +} xcb_sync_reset_fence_request_t; + +/** Opcode for xcb_sync_destroy_fence. */ +#define XCB_SYNC_DESTROY_FENCE 17 + +/** + * @brief xcb_sync_destroy_fence_request_t + **/ +typedef struct xcb_sync_destroy_fence_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_fence_t fence; /**< */ +} xcb_sync_destroy_fence_request_t; + +/** + * @brief xcb_sync_query_fence_cookie_t + **/ +typedef struct xcb_sync_query_fence_cookie_t { + unsigned int sequence; /**< */ +} xcb_sync_query_fence_cookie_t; + +/** Opcode for xcb_sync_query_fence. */ +#define XCB_SYNC_QUERY_FENCE 18 + +/** + * @brief xcb_sync_query_fence_request_t + **/ +typedef struct xcb_sync_query_fence_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_sync_fence_t fence; /**< */ +} xcb_sync_query_fence_request_t; + +/** + * @brief xcb_sync_query_fence_reply_t + **/ +typedef struct xcb_sync_query_fence_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t triggered; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_sync_query_fence_reply_t; + +/** Opcode for xcb_sync_await_fence. */ +#define XCB_SYNC_AWAIT_FENCE 19 + +/** + * @brief xcb_sync_await_fence_request_t + **/ +typedef struct xcb_sync_await_fence_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_sync_await_fence_request_t; + +/** Opcode for xcb_sync_counter_notify. */ +#define XCB_SYNC_COUNTER_NOTIFY 0 + +/** + * @brief xcb_sync_counter_notify_event_t + **/ +typedef struct xcb_sync_counter_notify_event_t { + uint8_t response_type; /**< */ + uint8_t kind; /**< */ + uint16_t sequence; /**< */ + xcb_sync_counter_t counter; /**< */ + xcb_sync_int64_t wait_value; /**< */ + xcb_sync_int64_t counter_value; /**< */ + xcb_timestamp_t timestamp; /**< */ + uint16_t count; /**< */ + uint8_t destroyed; /**< */ + uint8_t pad0; /**< */ +} xcb_sync_counter_notify_event_t; + +/** Opcode for xcb_sync_alarm_notify. */ +#define XCB_SYNC_ALARM_NOTIFY 1 + +/** + * @brief xcb_sync_alarm_notify_event_t + **/ +typedef struct xcb_sync_alarm_notify_event_t { + uint8_t response_type; /**< */ + uint8_t kind; /**< */ + uint16_t sequence; /**< */ + xcb_sync_alarm_t alarm; /**< */ + xcb_sync_int64_t counter_value; /**< */ + xcb_sync_int64_t alarm_value; /**< */ + xcb_timestamp_t timestamp; /**< */ + uint8_t state; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_sync_alarm_notify_event_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_sync_alarm_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_sync_alarm_t) + */ + +/***************************************************************************** + ** + ** void xcb_sync_alarm_next + ** + ** @param xcb_sync_alarm_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_alarm_next (xcb_sync_alarm_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_sync_alarm_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_alarm_end + ** + ** @param xcb_sync_alarm_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_alarm_end (xcb_sync_alarm_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_sync_counter_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_sync_counter_t) + */ + +/***************************************************************************** + ** + ** void xcb_sync_counter_next + ** + ** @param xcb_sync_counter_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_counter_next (xcb_sync_counter_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_sync_counter_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_counter_end + ** + ** @param xcb_sync_counter_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_counter_end (xcb_sync_counter_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_sync_fence_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_sync_fence_t) + */ + +/***************************************************************************** + ** + ** void xcb_sync_fence_next + ** + ** @param xcb_sync_fence_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_fence_next (xcb_sync_fence_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_sync_fence_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_fence_end + ** + ** @param xcb_sync_fence_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_fence_end (xcb_sync_fence_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_sync_int64_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_sync_int64_t) + */ + +/***************************************************************************** + ** + ** void xcb_sync_int64_next + ** + ** @param xcb_sync_int64_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_int64_next (xcb_sync_int64_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_sync_int64_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_int64_end + ** + ** @param xcb_sync_int64_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_int64_end (xcb_sync_int64_iterator_t i /**< */); + +int +xcb_sync_systemcounter_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_sync_systemcounter_name + ** + ** @param const xcb_sync_systemcounter_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_sync_systemcounter_name (const xcb_sync_systemcounter_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_sync_systemcounter_name_length + ** + ** @param const xcb_sync_systemcounter_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_sync_systemcounter_name_length (const xcb_sync_systemcounter_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_systemcounter_name_end + ** + ** @param const xcb_sync_systemcounter_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_systemcounter_name_end (const xcb_sync_systemcounter_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_sync_systemcounter_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_sync_systemcounter_t) + */ + +/***************************************************************************** + ** + ** void xcb_sync_systemcounter_next + ** + ** @param xcb_sync_systemcounter_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_systemcounter_next (xcb_sync_systemcounter_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_sync_systemcounter_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_systemcounter_end + ** + ** @param xcb_sync_systemcounter_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_systemcounter_end (xcb_sync_systemcounter_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_sync_trigger_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_sync_trigger_t) + */ + +/***************************************************************************** + ** + ** void xcb_sync_trigger_next + ** + ** @param xcb_sync_trigger_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_trigger_next (xcb_sync_trigger_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_sync_trigger_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_trigger_end + ** + ** @param xcb_sync_trigger_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_trigger_end (xcb_sync_trigger_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_sync_waitcondition_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_sync_waitcondition_t) + */ + +/***************************************************************************** + ** + ** void xcb_sync_waitcondition_next + ** + ** @param xcb_sync_waitcondition_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_sync_waitcondition_next (xcb_sync_waitcondition_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_sync_waitcondition_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_sync_waitcondition_end + ** + ** @param xcb_sync_waitcondition_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_sync_waitcondition_end (xcb_sync_waitcondition_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_sync_initialize_cookie_t xcb_sync_initialize + ** + ** @param xcb_connection_t *c + ** @param uint8_t desired_major_version + ** @param uint8_t desired_minor_version + ** @returns xcb_sync_initialize_cookie_t + ** + *****************************************************************************/ + +xcb_sync_initialize_cookie_t +xcb_sync_initialize (xcb_connection_t *c /**< */, + uint8_t desired_major_version /**< */, + uint8_t desired_minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_sync_initialize_cookie_t xcb_sync_initialize_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t desired_major_version + ** @param uint8_t desired_minor_version + ** @returns xcb_sync_initialize_cookie_t + ** + *****************************************************************************/ + +xcb_sync_initialize_cookie_t +xcb_sync_initialize_unchecked (xcb_connection_t *c /**< */, + uint8_t desired_major_version /**< */, + uint8_t desired_minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_sync_initialize_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_sync_initialize_reply_t * xcb_sync_initialize_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_initialize_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_initialize_reply_t * + ** + *****************************************************************************/ + +xcb_sync_initialize_reply_t * +xcb_sync_initialize_reply (xcb_connection_t *c /**< */, + xcb_sync_initialize_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_sync_list_system_counters_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_sync_list_system_counters_cookie_t xcb_sync_list_system_counters + ** + ** @param xcb_connection_t *c + ** @returns xcb_sync_list_system_counters_cookie_t + ** + *****************************************************************************/ + +xcb_sync_list_system_counters_cookie_t +xcb_sync_list_system_counters (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_sync_list_system_counters_cookie_t xcb_sync_list_system_counters_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_sync_list_system_counters_cookie_t + ** + *****************************************************************************/ + +xcb_sync_list_system_counters_cookie_t +xcb_sync_list_system_counters_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** int xcb_sync_list_system_counters_counters_length + ** + ** @param const xcb_sync_list_system_counters_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_sync_list_system_counters_counters_length (const xcb_sync_list_system_counters_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_sync_systemcounter_iterator_t xcb_sync_list_system_counters_counters_iterator + ** + ** @param const xcb_sync_list_system_counters_reply_t *R + ** @returns xcb_sync_systemcounter_iterator_t + ** + *****************************************************************************/ + +xcb_sync_systemcounter_iterator_t +xcb_sync_list_system_counters_counters_iterator (const xcb_sync_list_system_counters_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_sync_list_system_counters_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_sync_list_system_counters_reply_t * xcb_sync_list_system_counters_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_list_system_counters_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_list_system_counters_reply_t * + ** + *****************************************************************************/ + +xcb_sync_list_system_counters_reply_t * +xcb_sync_list_system_counters_reply (xcb_connection_t *c /**< */, + xcb_sync_list_system_counters_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_counter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t id + ** @param xcb_sync_int64_t initial_value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_counter_checked (xcb_connection_t *c /**< */, + xcb_sync_counter_t id /**< */, + xcb_sync_int64_t initial_value /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t id + ** @param xcb_sync_int64_t initial_value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t id /**< */, + xcb_sync_int64_t initial_value /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_counter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_counter_checked (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_sync_query_counter_cookie_t xcb_sync_query_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @returns xcb_sync_query_counter_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_counter_cookie_t +xcb_sync_query_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_sync_query_counter_cookie_t xcb_sync_query_counter_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @returns xcb_sync_query_counter_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_counter_cookie_t +xcb_sync_query_counter_unchecked (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_sync_query_counter_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_sync_query_counter_reply_t * xcb_sync_query_counter_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_query_counter_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_query_counter_reply_t * + ** + *****************************************************************************/ + +xcb_sync_query_counter_reply_t * +xcb_sync_query_counter_reply (xcb_connection_t *c /**< */, + xcb_sync_query_counter_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_sync_await_sizeof (const void *_buffer /**< */, + uint32_t wait_list_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_await_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t wait_list_len + ** @param const xcb_sync_waitcondition_t *wait_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_await_checked (xcb_connection_t *c /**< */, + uint32_t wait_list_len /**< */, + const xcb_sync_waitcondition_t *wait_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_await + ** + ** @param xcb_connection_t *c + ** @param uint32_t wait_list_len + ** @param const xcb_sync_waitcondition_t *wait_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_await (xcb_connection_t *c /**< */, + uint32_t wait_list_len /**< */, + const xcb_sync_waitcondition_t *wait_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_change_counter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @param xcb_sync_int64_t amount + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_change_counter_checked (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */, + xcb_sync_int64_t amount /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_change_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @param xcb_sync_int64_t amount + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_change_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */, + xcb_sync_int64_t amount /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_set_counter_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @param xcb_sync_int64_t value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_set_counter_checked (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */, + xcb_sync_int64_t value /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_set_counter + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_counter_t counter + ** @param xcb_sync_int64_t value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_set_counter (xcb_connection_t *c /**< */, + xcb_sync_counter_t counter /**< */, + xcb_sync_int64_t value /**< */); + +int +xcb_sync_create_alarm_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_alarm_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t id + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_alarm_checked (xcb_connection_t *c /**< */, + xcb_sync_alarm_t id /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_alarm + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t id + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_alarm (xcb_connection_t *c /**< */, + xcb_sync_alarm_t id /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +int +xcb_sync_change_alarm_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_change_alarm_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t id + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_change_alarm_checked (xcb_connection_t *c /**< */, + xcb_sync_alarm_t id /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_change_alarm + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t id + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_change_alarm (xcb_connection_t *c /**< */, + xcb_sync_alarm_t id /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_alarm_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t alarm + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_alarm_checked (xcb_connection_t *c /**< */, + xcb_sync_alarm_t alarm /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_alarm + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t alarm + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_alarm (xcb_connection_t *c /**< */, + xcb_sync_alarm_t alarm /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_sync_query_alarm_cookie_t xcb_sync_query_alarm + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t alarm + ** @returns xcb_sync_query_alarm_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_alarm_cookie_t +xcb_sync_query_alarm (xcb_connection_t *c /**< */, + xcb_sync_alarm_t alarm /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_sync_query_alarm_cookie_t xcb_sync_query_alarm_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_alarm_t alarm + ** @returns xcb_sync_query_alarm_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_alarm_cookie_t +xcb_sync_query_alarm_unchecked (xcb_connection_t *c /**< */, + xcb_sync_alarm_t alarm /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_sync_query_alarm_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_sync_query_alarm_reply_t * xcb_sync_query_alarm_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_query_alarm_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_query_alarm_reply_t * + ** + *****************************************************************************/ + +xcb_sync_query_alarm_reply_t * +xcb_sync_query_alarm_reply (xcb_connection_t *c /**< */, + xcb_sync_query_alarm_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_set_priority_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t id + ** @param int32_t priority + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_set_priority_checked (xcb_connection_t *c /**< */, + uint32_t id /**< */, + int32_t priority /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_set_priority + ** + ** @param xcb_connection_t *c + ** @param uint32_t id + ** @param int32_t priority + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_set_priority (xcb_connection_t *c /**< */, + uint32_t id /**< */, + int32_t priority /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_sync_get_priority_cookie_t xcb_sync_get_priority + ** + ** @param xcb_connection_t *c + ** @param uint32_t id + ** @returns xcb_sync_get_priority_cookie_t + ** + *****************************************************************************/ + +xcb_sync_get_priority_cookie_t +xcb_sync_get_priority (xcb_connection_t *c /**< */, + uint32_t id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_sync_get_priority_cookie_t xcb_sync_get_priority_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t id + ** @returns xcb_sync_get_priority_cookie_t + ** + *****************************************************************************/ + +xcb_sync_get_priority_cookie_t +xcb_sync_get_priority_unchecked (xcb_connection_t *c /**< */, + uint32_t id /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_sync_get_priority_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_sync_get_priority_reply_t * xcb_sync_get_priority_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_get_priority_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_get_priority_reply_t * + ** + *****************************************************************************/ + +xcb_sync_get_priority_reply_t * +xcb_sync_get_priority_reply (xcb_connection_t *c /**< */, + xcb_sync_get_priority_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_fence_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_sync_fence_t fence + ** @param uint8_t initially_triggered + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_fence_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_sync_fence_t fence /**< */, + uint8_t initially_triggered /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_create_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_sync_fence_t fence + ** @param uint8_t initially_triggered + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_create_fence (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_sync_fence_t fence /**< */, + uint8_t initially_triggered /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_trigger_fence_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_trigger_fence_checked (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_trigger_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_trigger_fence (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_reset_fence_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_reset_fence_checked (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_reset_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_reset_fence (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_fence_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_fence_checked (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_destroy_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_destroy_fence (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_sync_query_fence_cookie_t xcb_sync_query_fence + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_sync_query_fence_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_fence_cookie_t +xcb_sync_query_fence (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_sync_query_fence_cookie_t xcb_sync_query_fence_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_fence_t fence + ** @returns xcb_sync_query_fence_cookie_t + ** + *****************************************************************************/ + +xcb_sync_query_fence_cookie_t +xcb_sync_query_fence_unchecked (xcb_connection_t *c /**< */, + xcb_sync_fence_t fence /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_sync_query_fence_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_sync_query_fence_reply_t * xcb_sync_query_fence_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_sync_query_fence_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_sync_query_fence_reply_t * + ** + *****************************************************************************/ + +xcb_sync_query_fence_reply_t * +xcb_sync_query_fence_reply (xcb_connection_t *c /**< */, + xcb_sync_query_fence_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_sync_await_fence_sizeof (const void *_buffer /**< */, + uint32_t fence_list_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_await_fence_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t fence_list_len + ** @param const xcb_sync_fence_t *fence_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_await_fence_checked (xcb_connection_t *c /**< */, + uint32_t fence_list_len /**< */, + const xcb_sync_fence_t *fence_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_sync_await_fence + ** + ** @param xcb_connection_t *c + ** @param uint32_t fence_list_len + ** @param const xcb_sync_fence_t *fence_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_sync_await_fence (xcb_connection_t *c /**< */, + uint32_t fence_list_len /**< */, + const xcb_sync_fence_t *fence_list /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xc_misc.c b/external/mit/xorg/lib/libxcb/files/xc_misc.c new file mode 100644 index 000000000..101fd15d5 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xc_misc.c @@ -0,0 +1,382 @@ +/* + * This file generated automatically from xc_misc.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xc_misc.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) + +xcb_extension_t xcb_xc_misc_id = { "XC-MISC", 0 }; + + +/***************************************************************************** + ** + ** xcb_xc_misc_get_version_cookie_t xcb_xc_misc_get_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_xc_misc_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_version_cookie_t +xcb_xc_misc_get_version (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xc_misc_id, + /* opcode */ XCB_XC_MISC_GET_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xc_misc_get_version_cookie_t xcb_ret; + xcb_xc_misc_get_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xc_misc_get_version_cookie_t xcb_xc_misc_get_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_xc_misc_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_version_cookie_t +xcb_xc_misc_get_version_unchecked (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xc_misc_id, + /* opcode */ XCB_XC_MISC_GET_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xc_misc_get_version_cookie_t xcb_ret; + xcb_xc_misc_get_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xc_misc_get_version_reply_t * xcb_xc_misc_get_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xc_misc_get_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xc_misc_get_version_reply_t * + ** + *****************************************************************************/ + +xcb_xc_misc_get_version_reply_t * +xcb_xc_misc_get_version_reply (xcb_connection_t *c /**< */, + xcb_xc_misc_get_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xc_misc_get_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_range_cookie_t xcb_xc_misc_get_xid_range + ** + ** @param xcb_connection_t *c + ** @returns xcb_xc_misc_get_xid_range_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_range_cookie_t +xcb_xc_misc_get_xid_range (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xc_misc_id, + /* opcode */ XCB_XC_MISC_GET_XID_RANGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xc_misc_get_xid_range_cookie_t xcb_ret; + xcb_xc_misc_get_xid_range_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_range_cookie_t xcb_xc_misc_get_xid_range_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xc_misc_get_xid_range_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_range_cookie_t +xcb_xc_misc_get_xid_range_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xc_misc_id, + /* opcode */ XCB_XC_MISC_GET_XID_RANGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xc_misc_get_xid_range_cookie_t xcb_ret; + xcb_xc_misc_get_xid_range_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_range_reply_t * xcb_xc_misc_get_xid_range_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xc_misc_get_xid_range_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xc_misc_get_xid_range_reply_t * + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_range_reply_t * +xcb_xc_misc_get_xid_range_reply (xcb_connection_t *c /**< */, + xcb_xc_misc_get_xid_range_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xc_misc_get_xid_range_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xc_misc_get_xid_list_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xc_misc_get_xid_list_reply_t *_aux = (xcb_xc_misc_get_xid_list_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xc_misc_get_xid_list_reply_t); + xcb_tmp += xcb_block_len; + /* ids */ + xcb_block_len += _aux->ids_len * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_list_cookie_t xcb_xc_misc_get_xid_list + ** + ** @param xcb_connection_t *c + ** @param uint32_t count + ** @returns xcb_xc_misc_get_xid_list_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_list_cookie_t +xcb_xc_misc_get_xid_list (xcb_connection_t *c /**< */, + uint32_t count /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xc_misc_id, + /* opcode */ XCB_XC_MISC_GET_XID_LIST, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xc_misc_get_xid_list_cookie_t xcb_ret; + xcb_xc_misc_get_xid_list_request_t xcb_out; + + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_list_cookie_t xcb_xc_misc_get_xid_list_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t count + ** @returns xcb_xc_misc_get_xid_list_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_list_cookie_t +xcb_xc_misc_get_xid_list_unchecked (xcb_connection_t *c /**< */, + uint32_t count /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xc_misc_id, + /* opcode */ XCB_XC_MISC_GET_XID_LIST, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xc_misc_get_xid_list_cookie_t xcb_ret; + xcb_xc_misc_get_xid_list_request_t xcb_out; + + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xc_misc_get_xid_list_ids + ** + ** @param const xcb_xc_misc_get_xid_list_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xc_misc_get_xid_list_ids (const xcb_xc_misc_get_xid_list_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xc_misc_get_xid_list_ids_length + ** + ** @param const xcb_xc_misc_get_xid_list_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xc_misc_get_xid_list_ids_length (const xcb_xc_misc_get_xid_list_reply_t *R /**< */) +{ + return R->ids_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xc_misc_get_xid_list_ids_end + ** + ** @param const xcb_xc_misc_get_xid_list_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xc_misc_get_xid_list_ids_end (const xcb_xc_misc_get_xid_list_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->ids_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_list_reply_t * xcb_xc_misc_get_xid_list_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xc_misc_get_xid_list_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xc_misc_get_xid_list_reply_t * + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_list_reply_t * +xcb_xc_misc_get_xid_list_reply (xcb_connection_t *c /**< */, + xcb_xc_misc_get_xid_list_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xc_misc_get_xid_list_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/xc_misc.h b/external/mit/xorg/lib/libxcb/files/xc_misc.h new file mode 100644 index 000000000..91ee811eb --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xc_misc.h @@ -0,0 +1,413 @@ +/* + * This file generated automatically from xc_misc.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_XCMisc_API XCB XCMisc API + * @brief XCMisc XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XC_MISC_H +#define __XC_MISC_H + +#include "xcb.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_XCMISC_MAJOR_VERSION 1 +#define XCB_XCMISC_MINOR_VERSION 1 + +extern xcb_extension_t xcb_xc_misc_id; + +/** + * @brief xcb_xc_misc_get_version_cookie_t + **/ +typedef struct xcb_xc_misc_get_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_xc_misc_get_version_cookie_t; + +/** Opcode for xcb_xc_misc_get_version. */ +#define XCB_XC_MISC_GET_VERSION 0 + +/** + * @brief xcb_xc_misc_get_version_request_t + **/ +typedef struct xcb_xc_misc_get_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t client_major_version; /**< */ + uint16_t client_minor_version; /**< */ +} xcb_xc_misc_get_version_request_t; + +/** + * @brief xcb_xc_misc_get_version_reply_t + **/ +typedef struct xcb_xc_misc_get_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t server_major_version; /**< */ + uint16_t server_minor_version; /**< */ +} xcb_xc_misc_get_version_reply_t; + +/** + * @brief xcb_xc_misc_get_xid_range_cookie_t + **/ +typedef struct xcb_xc_misc_get_xid_range_cookie_t { + unsigned int sequence; /**< */ +} xcb_xc_misc_get_xid_range_cookie_t; + +/** Opcode for xcb_xc_misc_get_xid_range. */ +#define XCB_XC_MISC_GET_XID_RANGE 1 + +/** + * @brief xcb_xc_misc_get_xid_range_request_t + **/ +typedef struct xcb_xc_misc_get_xid_range_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_xc_misc_get_xid_range_request_t; + +/** + * @brief xcb_xc_misc_get_xid_range_reply_t + **/ +typedef struct xcb_xc_misc_get_xid_range_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t start_id; /**< */ + uint32_t count; /**< */ +} xcb_xc_misc_get_xid_range_reply_t; + +/** + * @brief xcb_xc_misc_get_xid_list_cookie_t + **/ +typedef struct xcb_xc_misc_get_xid_list_cookie_t { + unsigned int sequence; /**< */ +} xcb_xc_misc_get_xid_list_cookie_t; + +/** Opcode for xcb_xc_misc_get_xid_list. */ +#define XCB_XC_MISC_GET_XID_LIST 2 + +/** + * @brief xcb_xc_misc_get_xid_list_request_t + **/ +typedef struct xcb_xc_misc_get_xid_list_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t count; /**< */ +} xcb_xc_misc_get_xid_list_request_t; + +/** + * @brief xcb_xc_misc_get_xid_list_reply_t + **/ +typedef struct xcb_xc_misc_get_xid_list_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t ids_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_xc_misc_get_xid_list_reply_t; + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xc_misc_get_version_cookie_t xcb_xc_misc_get_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_xc_misc_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_version_cookie_t +xcb_xc_misc_get_version (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xc_misc_get_version_cookie_t xcb_xc_misc_get_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_xc_misc_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_version_cookie_t +xcb_xc_misc_get_version_unchecked (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xc_misc_get_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xc_misc_get_version_reply_t * xcb_xc_misc_get_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xc_misc_get_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xc_misc_get_version_reply_t * + ** + *****************************************************************************/ + +xcb_xc_misc_get_version_reply_t * +xcb_xc_misc_get_version_reply (xcb_connection_t *c /**< */, + xcb_xc_misc_get_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_range_cookie_t xcb_xc_misc_get_xid_range + ** + ** @param xcb_connection_t *c + ** @returns xcb_xc_misc_get_xid_range_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_range_cookie_t +xcb_xc_misc_get_xid_range (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_range_cookie_t xcb_xc_misc_get_xid_range_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xc_misc_get_xid_range_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_range_cookie_t +xcb_xc_misc_get_xid_range_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xc_misc_get_xid_range_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_range_reply_t * xcb_xc_misc_get_xid_range_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xc_misc_get_xid_range_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xc_misc_get_xid_range_reply_t * + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_range_reply_t * +xcb_xc_misc_get_xid_range_reply (xcb_connection_t *c /**< */, + xcb_xc_misc_get_xid_range_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xc_misc_get_xid_list_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_list_cookie_t xcb_xc_misc_get_xid_list + ** + ** @param xcb_connection_t *c + ** @param uint32_t count + ** @returns xcb_xc_misc_get_xid_list_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_list_cookie_t +xcb_xc_misc_get_xid_list (xcb_connection_t *c /**< */, + uint32_t count /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_list_cookie_t xcb_xc_misc_get_xid_list_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t count + ** @returns xcb_xc_misc_get_xid_list_cookie_t + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_list_cookie_t +xcb_xc_misc_get_xid_list_unchecked (xcb_connection_t *c /**< */, + uint32_t count /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xc_misc_get_xid_list_ids + ** + ** @param const xcb_xc_misc_get_xid_list_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xc_misc_get_xid_list_ids (const xcb_xc_misc_get_xid_list_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xc_misc_get_xid_list_ids_length + ** + ** @param const xcb_xc_misc_get_xid_list_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xc_misc_get_xid_list_ids_length (const xcb_xc_misc_get_xid_list_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xc_misc_get_xid_list_ids_end + ** + ** @param const xcb_xc_misc_get_xid_list_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xc_misc_get_xid_list_ids_end (const xcb_xc_misc_get_xid_list_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xc_misc_get_xid_list_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xc_misc_get_xid_list_reply_t * xcb_xc_misc_get_xid_list_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xc_misc_get_xid_list_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xc_misc_get_xid_list_reply_t * + ** + *****************************************************************************/ + +xcb_xc_misc_get_xid_list_reply_t * +xcb_xc_misc_get_xid_list_reply (xcb_connection_t *c /**< */, + xcb_xc_misc_get_xid_list_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xcb.h b/external/mit/xorg/lib/libxcb/files/xcb.h new file mode 100644 index 000000000..079b9ea1c --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb.h @@ -0,0 +1,536 @@ +/* + * Copyright (C) 2001-2006 Bart Massey, Jamey Sharp, and Josh Triplett. + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +#ifndef __XCB_H__ +#define __XCB_H__ +#include + +#if defined(__solaris__) +#include +#else +#include +#endif + +#if defined(__minix) +#define _MTHREADIFY_PTHREADS 1 +#include +#endif /* defined(__minix) */ + +#ifndef _WIN32 +#include +#else +#include "xcb_windefs.h" +#endif +#if !defined(__minix) +#include +#endif /* !defined(__minix) */ + + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @file xcb.h + */ + +/** + * @defgroup XCB_Core_API XCB Core API + * @brief Core API of the XCB library. + * + * @{ + */ + +/* Pre-defined constants */ + +/** Current protocol version */ +#define X_PROTOCOL 11 + +/** Current minor version */ +#define X_PROTOCOL_REVISION 0 + +/** X_TCP_PORT + display number = server port for TCP transport */ +#define X_TCP_PORT 6000 + +/** xcb connection errors because of socket, pipe and other stream errors. */ +#define XCB_CONN_ERROR 1 + +/** xcb connection shutdown because of extension not supported */ +#define XCB_CONN_CLOSED_EXT_NOTSUPPORTED 2 + +/** malloc(), calloc() and realloc() error upon failure, for eg ENOMEM */ +#define XCB_CONN_CLOSED_MEM_INSUFFICIENT 3 + +/** Connection closed, exceeding request length that server accepts. */ +#define XCB_CONN_CLOSED_REQ_LEN_EXCEED 4 + +/** Connection closed, error during parsing display string. */ +#define XCB_CONN_CLOSED_PARSE_ERR 5 + +/** Connection closed because the server does not have a screen matching the display. */ +#define XCB_CONN_CLOSED_INVALID_SCREEN 6 + +#define XCB_TYPE_PAD(T,I) (-(I) & (sizeof(T) > 4 ? 3 : sizeof(T) - 1)) + +/* Opaque structures */ + +/** + * @brief XCB Connection structure. + * + * A structure that contain all data that XCB needs to communicate with an X server. + */ +typedef struct xcb_connection_t xcb_connection_t; /**< Opaque structure containing all data that XCB needs to communicate with an X server. */ + + +/* Other types */ + +/** + * @brief Generic iterator. + * + * A generic iterator structure. + */ +typedef struct { + void *data; /**< Data of the current iterator */ + int rem; /**< remaining elements */ + int index; /**< index of the current iterator */ +} xcb_generic_iterator_t; + +/** + * @brief Generic reply. + * + * A generic reply structure. + */ +typedef struct { + uint8_t response_type; /**< Type of the response */ + uint8_t pad0; /**< Padding */ + uint16_t sequence; /**< Sequence number */ + uint32_t length; /**< Length of the response */ +} xcb_generic_reply_t; + +/** + * @brief Generic event. + * + * A generic event structure. + */ +typedef struct { + uint8_t response_type; /**< Type of the response */ + uint8_t pad0; /**< Padding */ + uint16_t sequence; /**< Sequence number */ + uint32_t pad[7]; /**< Padding */ + uint32_t full_sequence; /**< full sequence */ +} xcb_generic_event_t; + +/** + * @brief GE event + * + * An event as sent by the XGE extension. The length field specifies the + * number of 4-byte blocks trailing the struct. + */ +typedef struct { + uint8_t response_type; /**< Type of the response */ + uint8_t pad0; /**< Padding */ + uint16_t sequence; /**< Sequence number */ + uint32_t length; + uint16_t event_type; + uint16_t pad1; + uint32_t pad[5]; /**< Padding */ + uint32_t full_sequence; /**< full sequence */ +} xcb_ge_event_t; + +/** + * @brief Generic error. + * + * A generic error structure. + */ +typedef struct { + uint8_t response_type; /**< Type of the response */ + uint8_t error_code; /**< Error code */ + uint16_t sequence; /**< Sequence number */ + uint32_t resource_id; /** < Resource ID for requests with side effects only */ + uint16_t minor_code; /** < Minor opcode of the failed request */ + uint8_t major_code; /** < Major opcode of the failed request */ + uint8_t pad0; + uint32_t pad[5]; /**< Padding */ + uint32_t full_sequence; /**< full sequence */ +} xcb_generic_error_t; + +/** + * @brief Generic cookie. + * + * A generic cookie structure. + */ +typedef struct { + unsigned int sequence; /**< Sequence number */ +} xcb_void_cookie_t; + + +/* Include the generated xproto header. */ +#include "xproto.h" + + +/** XCB_NONE is the universal null resource or null atom parameter value for many core X requests */ +#define XCB_NONE 0L + +/** XCB_COPY_FROM_PARENT can be used for many xcb_create_window parameters */ +#define XCB_COPY_FROM_PARENT 0L + +/** XCB_CURRENT_TIME can be used in most requests that take an xcb_timestamp_t */ +#define XCB_CURRENT_TIME 0L + +/** XCB_NO_SYMBOL fills in unused entries in xcb_keysym_t tables */ +#define XCB_NO_SYMBOL 0L + + +/* xcb_auth.c */ + +/** + * @brief Container for authorization information. + * + * A container for authorization information to be sent to the X server. + */ +typedef struct xcb_auth_info_t { + int namelen; /**< Length of the string name (as returned by strlen). */ + char *name; /**< String containing the authentication protocol name, such as "MIT-MAGIC-COOKIE-1" or "XDM-AUTHORIZATION-1". */ + int datalen; /**< Length of the data member. */ + char *data; /**< Data interpreted in a protocol-specific manner. */ +} xcb_auth_info_t; + + +/* xcb_out.c */ + +/** + * @brief Forces any buffered output to be written to the server. + * @param c: The connection to the X server. + * @return > @c 0 on success, <= @c 0 otherwise. + * + * Forces any buffered output to be written to the server. Blocks + * until the write is complete. + */ +int xcb_flush(xcb_connection_t *c); + +/** + * @brief Returns the maximum request length that this server accepts. + * @param c: The connection to the X server. + * @return The maximum request length field. + * + * In the absence of the BIG-REQUESTS extension, returns the + * maximum request length field from the connection setup data, which + * may be as much as 65535. If the server supports BIG-REQUESTS, then + * the maximum request length field from the reply to the + * BigRequestsEnable request will be returned instead. + * + * Note that this length is measured in four-byte units, making the + * theoretical maximum lengths roughly 256kB without BIG-REQUESTS and + * 16GB with. + */ +uint32_t xcb_get_maximum_request_length(xcb_connection_t *c); + +/** + * @brief Prefetch the maximum request length without blocking. + * @param c: The connection to the X server. + * + * Without blocking, does as much work as possible toward computing + * the maximum request length accepted by the X server. + * + * Invoking this function may cause a call to xcb_big_requests_enable, + * but will not block waiting for the reply. + * xcb_get_maximum_request_length will return the prefetched data + * after possibly blocking while the reply is retrieved. + * + * Note that in order for this function to be fully non-blocking, the + * application must previously have called + * xcb_prefetch_extension_data(c, &xcb_big_requests_id) and the reply + * must have already arrived. + */ +void xcb_prefetch_maximum_request_length(xcb_connection_t *c); + + +/* xcb_in.c */ + +/** + * @brief Returns the next event or error from the server. + * @param c: The connection to the X server. + * @return The next event from the server. + * + * Returns the next event or error from the server, or returns null in + * the event of an I/O error. Blocks until either an event or error + * arrive, or an I/O error occurs. + */ +xcb_generic_event_t *xcb_wait_for_event(xcb_connection_t *c); + +/** + * @brief Returns the next event or error from the server. + * @param c: The connection to the X server. + * error status of the operation. + * @return The next event from the server. + * + * Returns the next event or error from the server, if one is + * available, or returns @c NULL otherwise. If no event is available, that + * might be because an I/O error like connection close occurred while + * attempting to read the next event, in which case the connection is + * shut down when this function returns. + */ +xcb_generic_event_t *xcb_poll_for_event(xcb_connection_t *c); + +/** + * @brief Returns the next event without reading from the connection. + * @param c: The connection to the X server. + * @return The next already queued event from the server. + * + * This is a version of xcb_poll_for_event that only examines the + * event queue for new events. The function doesn't try to read new + * events from the connection if no queued events are found. + * + * This function is useful for callers that know in advance that all + * interesting events have already been read from the connection. For + * example, callers might use xcb_wait_for_reply and be interested + * only of events that preceded a specific reply. + */ +xcb_generic_event_t *xcb_poll_for_queued_event(xcb_connection_t *c); + +/** + * @brief Return the error for a request, or NULL if none can ever arrive. + * @param c: The connection to the X server. + * @param cookie: The request cookie. + * @return The error for the request, or NULL if none can ever arrive. + * + * The xcb_void_cookie_t cookie supplied to this function must have resulted + * from a call to xcb_[request_name]_checked(). This function will block + * until one of two conditions happens. If an error is received, it will be + * returned. If a reply to a subsequent request has already arrived, no error + * can arrive for this request, so this function will return NULL. + * + * Note that this function will perform a sync if needed to ensure that the + * sequence number will advance beyond that provided in cookie; this is a + * convenience to avoid races in determining whether the sync is needed. + */ +xcb_generic_error_t *xcb_request_check(xcb_connection_t *c, xcb_void_cookie_t cookie); + +/** + * @brief Discards the reply for a request. + * @param c: The connection to the X server. + * @param sequence: The request sequence number from a cookie. + * + * Discards the reply for a request. Additionally, any error generated + * by the request is also discarded (unless it was an _unchecked request + * and the error has already arrived). + * + * This function will not block even if the reply is not yet available. + * + * Note that the sequence really does have to come from an xcb cookie; + * this function is not designed to operate on socket-handoff replies. + */ +void xcb_discard_reply(xcb_connection_t *c, unsigned int sequence); + + +/* xcb_ext.c */ + +/** + * @typedef typedef struct xcb_extension_t xcb_extension_t + */ +typedef struct xcb_extension_t xcb_extension_t; /**< Opaque structure used as key for xcb_get_extension_data_t. */ + +/** + * @brief Caches reply information from QueryExtension requests. + * @param c: The connection. + * @param ext: The extension data. + * @return A pointer to the xcb_query_extension_reply_t for the extension. + * + * This function is the primary interface to the "extension cache", + * which caches reply information from QueryExtension + * requests. Invoking this function may cause a call to + * xcb_query_extension to retrieve extension information from the + * server, and may block until extension data is received from the + * server. + * + * The result must not be freed. This storage is managed by the cache + * itself. + */ +const xcb_query_extension_reply_t *xcb_get_extension_data(xcb_connection_t *c, xcb_extension_t *ext); + +/** + * @brief Prefetch of extension data into the extension cache + * @param c: The connection. + * @param ext: The extension data. + * + * This function allows a "prefetch" of extension data into the + * extension cache. Invoking the function may cause a call to + * xcb_query_extension, but will not block waiting for the + * reply. xcb_get_extension_data will return the prefetched data after + * possibly blocking while it is retrieved. + */ +void xcb_prefetch_extension_data(xcb_connection_t *c, xcb_extension_t *ext); + + +/* xcb_conn.c */ + +/** + * @brief Access the data returned by the server. + * @param c: The connection. + * @return A pointer to an xcb_setup_t structure. + * + * Accessor for the data returned by the server when the xcb_connection_t + * was initialized. This data includes + * - the server's required format for images, + * - a list of available visuals, + * - a list of available screens, + * - the server's maximum request length (in the absence of the + * BIG-REQUESTS extension), + * - and other assorted information. + * + * See the X protocol specification for more details. + * + * The result must not be freed. + */ +const xcb_setup_t *xcb_get_setup(xcb_connection_t *c); + +/** + * @brief Access the file descriptor of the connection. + * @param c: The connection. + * @return The file descriptor. + * + * Accessor for the file descriptor that was passed to the + * xcb_connect_to_fd call that returned @p c. + */ +int xcb_get_file_descriptor(xcb_connection_t *c); + +/** + * @brief Test whether the connection has shut down due to a fatal error. + * @param c: The connection. + * @return > 0 if the connection is in an error state; 0 otherwise. + * + * Some errors that occur in the context of an xcb_connection_t + * are unrecoverable. When such an error occurs, the + * connection is shut down and further operations on the + * xcb_connection_t have no effect. + * + * @return XCB_CONN_ERROR, because of socket errors, pipe errors or other stream errors. + * @return XCB_CONN_CLOSED_EXT_NOTSUPPORTED, when extension not supported. + * @return XCB_CONN_CLOSED_MEM_INSUFFICIENT, when memory not available. + * @return XCB_CONN_CLOSED_REQ_LEN_EXCEED, exceeding request length that server accepts. + * @return XCB_CONN_CLOSED_PARSE_ERR, error during parsing display string. + * @return XCB_CONN_CLOSED_INVALID_SCREEN, because the server does not have a screen matching the display. + */ +int xcb_connection_has_error(xcb_connection_t *c); + +/** + * @brief Connects to the X server. + * @param fd: The file descriptor. + * @param auth_info: Authentication data. + * @return A newly allocated xcb_connection_t structure. + * + * Connects to an X server, given the open socket @p fd and the + * xcb_auth_info_t @p auth_info. The file descriptor @p fd is + * bidirectionally connected to an X server. If the connection + * should be unauthenticated, @p auth_info must be @c + * NULL. + */ +xcb_connection_t *xcb_connect_to_fd(int fd, xcb_auth_info_t *auth_info); + +/** + * @brief Closes the connection. + * @param c: The connection. + * + * Closes the file descriptor and frees all memory associated with the + * connection @c c. + */ +void xcb_disconnect(xcb_connection_t *c); + + +/* xcb_util.c */ + +/** + * @brief Parses a display string name in the form documented by X(7x). + * @param name: The name of the display. + * @param host: A pointer to a malloc'd copy of the hostname. + * @param display: A pointer to the display number. + * @param screen: A pointer to the screen number. + * @return 0 on failure, non 0 otherwise. + * + * Parses the display string name @p display_name in the form + * documented by X(7x). Has no side effects on failure. If + * @p displayname is @c NULL or empty, it uses the environment + * variable DISPLAY. @p hostp is a pointer to a newly allocated string + * that contain the host name. @p displayp is set to the display + * number and @p screenp to the preferred screen number. @p screenp + * can be @c NULL. If @p displayname does not contain a screen number, + * it is set to @c 0. + */ +int xcb_parse_display(const char *name, char **host, int *display, int *screen); + +/** + * @brief Connects to the X server. + * @param displayname: The name of the display. + * @param screenp: A pointer to a preferred screen number. + * @return A newly allocated xcb_connection_t structure. + * + * Connects to the X server specified by @p displayname. If @p + * displayname is @c NULL, uses the value of the DISPLAY environment + * variable. If a particular screen on that server is preferred, the + * int pointed to by @p screenp (if not @c NULL) will be set to that + * screen; otherwise the screen will be set to 0. + */ +xcb_connection_t *xcb_connect(const char *displayname, int *screenp); + +/** + * @brief Connects to the X server, using an authorization information. + * @param display: The name of the display. + * @param auth: The authorization information. + * @param screen: A pointer to a preferred screen number. + * @return A newly allocated xcb_connection_t structure. + * + * Connects to the X server specified by @p displayname, using the + * authorization @p auth. If a particular screen on that server is + * preferred, the int pointed to by @p screenp (if not @c NULL) will + * be set to that screen; otherwise @p screenp will be set to 0. + */ +xcb_connection_t *xcb_connect_to_display_with_auth_info(const char *display, xcb_auth_info_t *auth, int *screen); + + +/* xcb_xid.c */ + +/** + * @brief Allocates an XID for a new object. + * @param c: The connection. + * @return A newly allocated XID. + * + * Allocates an XID for a new object. Typically used just prior to + * various object creation functions, such as xcb_create_window. + */ +uint32_t xcb_generate_id(xcb_connection_t *c); + + +/** + * @} + */ + +#ifdef __cplusplus +} +#endif + + +#endif /* __XCB_H__ */ diff --git a/external/mit/xorg/lib/libxcb/files/xcb_auth.c b/external/mit/xorg/lib/libxcb/files/xcb_auth.c new file mode 100644 index 000000000..a5b730c0c --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb_auth.c @@ -0,0 +1,379 @@ +/* Copyright (C) 2001-2004 Bart Massey and Jamey Sharp. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +/* Authorization systems for the X protocol. */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include + +#ifdef __INTERIX +/* _don't_ ask. interix has INADDR_LOOPBACK in here. */ +#include +#endif + +#ifdef _WIN32 +#ifdef HASXDMAUTH +/* We must include the wrapped windows.h before any system header which includes + it unwrapped, to avoid conflicts with types defined in X headers */ +#include +#endif +#include "xcb_windefs.h" +#else +#include +#include +#include +#include +#endif /* _WIN32 */ + +#include "xcb.h" +#include "xcbint.h" + +#ifdef HASXDMAUTH +#include +#endif + +enum auth_protos { +#ifdef HASXDMAUTH + AUTH_XA1, +#endif + AUTH_MC1, + N_AUTH_PROTOS +}; + +#define AUTH_PROTO_XDM_AUTHORIZATION "XDM-AUTHORIZATION-1" +#define AUTH_PROTO_MIT_MAGIC_COOKIE "MIT-MAGIC-COOKIE-1" + +static char *authnames[N_AUTH_PROTOS] = { +#ifdef HASXDMAUTH + AUTH_PROTO_XDM_AUTHORIZATION, +#endif + AUTH_PROTO_MIT_MAGIC_COOKIE, +}; + +static int authnameslen[N_AUTH_PROTOS] = { +#ifdef HASXDMAUTH + sizeof(AUTH_PROTO_XDM_AUTHORIZATION) - 1, +#endif + sizeof(AUTH_PROTO_MIT_MAGIC_COOKIE) - 1, +}; + +static size_t memdup(char **dst, void *src, size_t len) +{ + if(len) + *dst = malloc(len); + else + *dst = 0; + if(!*dst) + return 0; + memcpy(*dst, src, len); + return len; +} + +static int authname_match(enum auth_protos kind, char *name, size_t namelen) +{ + if(authnameslen[kind] != namelen) + return 0; + if(memcmp(authnames[kind], name, namelen)) + return 0; + return 1; +} + +#define SIN6_ADDR(s) (&((struct sockaddr_in6 *)s)->sin6_addr) + +static Xauth *get_authptr(struct sockaddr *sockname, int display) +{ + char *addr = 0; + int addrlen = 0; + unsigned short family; + char hostnamebuf[256]; /* big enough for max hostname */ + char dispbuf[40]; /* big enough to hold more than 2^64 base 10 */ + int dispbuflen; + + family = FamilyLocal; /* 256 */ + switch(sockname->sa_family) + { +#ifdef AF_INET6 + case AF_INET6: + addr = (char *) SIN6_ADDR(sockname); + addrlen = sizeof(*SIN6_ADDR(sockname)); + if(!IN6_IS_ADDR_V4MAPPED(SIN6_ADDR(sockname))) + { + if(!IN6_IS_ADDR_LOOPBACK(SIN6_ADDR(sockname))) + family = XCB_FAMILY_INTERNET_6; + break; + } + addr += 12; + /* if v4-mapped, fall through. */ +#endif + case AF_INET: + if(!addr) + addr = (char *) &((struct sockaddr_in *)sockname)->sin_addr; + addrlen = sizeof(((struct sockaddr_in *)sockname)->sin_addr); + if(*(in_addr_t *) addr != htonl(INADDR_LOOPBACK)) + family = XCB_FAMILY_INTERNET; + break; + case AF_UNIX: + break; + default: + return 0; /* cannot authenticate this family */ + } + + dispbuflen = snprintf(dispbuf, sizeof(dispbuf), "%d", display); + if(dispbuflen < 0) + return 0; + /* snprintf may have truncate our text */ + dispbuflen = MIN(dispbuflen, sizeof(dispbuf) - 1); + + if (family == FamilyLocal) { + if (gethostname(hostnamebuf, sizeof(hostnamebuf)) == -1) + return 0; /* do not know own hostname */ + addr = hostnamebuf; + addrlen = strlen(addr); + } + + return XauGetBestAuthByAddr (family, + (unsigned short) addrlen, addr, + (unsigned short) dispbuflen, dispbuf, + N_AUTH_PROTOS, authnames, authnameslen); +} + +#ifdef HASXDMAUTH +static int next_nonce(void) +{ + static int nonce = 0; + static pthread_mutex_t nonce_mutex = PTHREAD_MUTEX_INITIALIZER; + int ret; + pthread_mutex_lock(&nonce_mutex); + ret = nonce++; + pthread_mutex_unlock(&nonce_mutex); + return ret; +} + +static void do_append(char *buf, int *idxp, void *val, size_t valsize) { + memcpy(buf + *idxp, val, valsize); + *idxp += valsize; +} +#endif + +static int compute_auth(xcb_auth_info_t *info, Xauth *authptr, struct sockaddr *sockname) +{ + if (authname_match(AUTH_MC1, authptr->name, authptr->name_length)) { + info->datalen = memdup(&info->data, authptr->data, authptr->data_length); + if(!info->datalen) + return 0; + return 1; + } +#ifdef HASXDMAUTH +#define APPEND(buf,idx,val) do_append((buf),&(idx),&(val),sizeof(val)) + if (authname_match(AUTH_XA1, authptr->name, authptr->name_length)) { + int j; + + info->data = malloc(192 / 8); + if(!info->data) + return 0; + + for (j = 0; j < 8; j++) + info->data[j] = authptr->data[j]; + switch(sockname->sa_family) { + case AF_INET: + /*block*/ { + struct sockaddr_in *si = (struct sockaddr_in *) sockname; + APPEND(info->data, j, si->sin_addr.s_addr); + APPEND(info->data, j, si->sin_port); + } + break; +#ifdef AF_INET6 + case AF_INET6: + /*block*/ { + struct sockaddr_in6 *si6 = (struct sockaddr_in6 *) sockname; + if(IN6_IS_ADDR_V4MAPPED(SIN6_ADDR(sockname))) + { + do_append(info->data, &j, &si6->sin6_addr.s6_addr[12], 4); + APPEND(info->data, j, si6->sin6_port); + } + else + { + /* XDM-AUTHORIZATION-1 does not handle IPv6 correctly. Do the + same thing Xlib does: use all zeroes for the 4-byte address + and 2-byte port number. */ + uint32_t fakeaddr = 0; + uint16_t fakeport = 0; + APPEND(info->data, j, fakeaddr); + APPEND(info->data, j, fakeport); + } + } + break; +#endif + case AF_UNIX: + /*block*/ { + uint32_t fakeaddr = htonl(0xffffffff - next_nonce()); + uint16_t fakeport = htons(getpid()); + APPEND(info->data, j, fakeaddr); + APPEND(info->data, j, fakeport); + } + break; + default: + free(info->data); + return 0; /* do not know how to build this */ + } + { + uint32_t now = htonl(time(0)); + APPEND(info->data, j, now); + } + assert(j <= 192 / 8); + while (j < 192 / 8) + info->data[j++] = 0; + info->datalen = j; + XdmcpWrap ((unsigned char *) info->data, (unsigned char *) authptr->data + 8, (unsigned char *) info->data, info->datalen); + return 1; + } +#undef APPEND +#endif + + return 0; /* Unknown authorization type */ +} + +/* `sockaddr_un.sun_path' typical size usually ranges between 92 and 108 */ +#define INITIAL_SOCKNAME_SLACK 108 + +/* Return a dynamically allocated socket address structure according + to the value returned by either getpeername() or getsockname() + (according to POSIX, applications should not assume a particular + length for `sockaddr_un.sun_path') */ +static struct sockaddr *get_peer_sock_name(int (*socket_func)(int, + struct sockaddr *, + socklen_t *), + int fd) +{ + socklen_t socknamelen = sizeof(struct sockaddr) + INITIAL_SOCKNAME_SLACK; + socklen_t actual_socknamelen = socknamelen; + struct sockaddr *sockname = malloc(socknamelen); + + if (sockname == NULL) + return NULL; + + /* Both getpeername() and getsockname() truncates sockname if + there is not enough space and set the required length in + actual_socknamelen */ + if (socket_func(fd, sockname, &actual_socknamelen) == -1) + goto sock_or_realloc_error; + + if (actual_socknamelen > socknamelen) + { + struct sockaddr *new_sockname = NULL; + socknamelen = actual_socknamelen; + + if ((new_sockname = realloc(sockname, actual_socknamelen)) == NULL) + goto sock_or_realloc_error; + + sockname = new_sockname; + + if (socket_func(fd, sockname, &actual_socknamelen) == -1 || + actual_socknamelen > socknamelen) + goto sock_or_realloc_error; + } + + return sockname; + + sock_or_realloc_error: + free(sockname); + return NULL; +} + +int _xcb_get_auth_info(int fd, xcb_auth_info_t *info, int display) +{ + /* code adapted from Xlib/ConnDis.c, xtrans/Xtranssocket.c, + xtrans/Xtransutils.c */ + struct sockaddr *sockname = NULL; + int gotsockname = 0; + Xauth *authptr = 0; + int ret = 1; + + /* Some systems like hpux or Hurd do not expose peer names + * for UNIX Domain Sockets, but this is irrelevant, + * since compute_auth() ignores the peer name in this + * case anyway.*/ + if ((sockname = get_peer_sock_name(getpeername, fd)) == NULL) + { + if ((sockname = get_peer_sock_name(getsockname, fd)) == NULL) + return 0; /* can only authenticate sockets */ + if (sockname->sa_family != AF_UNIX) + { + free(sockname); + return 0; /* except for AF_UNIX, sockets should have peernames */ + } + gotsockname = 1; + } + + authptr = get_authptr(sockname, display); + if (authptr == 0) + { + free(sockname); + return 0; /* cannot find good auth data */ + } + + info->namelen = memdup(&info->name, authptr->name, authptr->name_length); + if (!info->namelen) + goto no_auth; /* out of memory */ + + if (!gotsockname) + { + free(sockname); + + if ((sockname = get_peer_sock_name(getsockname, fd)) == NULL) + { + free(info->name); + goto no_auth; /* can only authenticate sockets */ + } + } + + ret = compute_auth(info, authptr, sockname); + if(!ret) + { + free(info->name); + goto no_auth; /* cannot build auth record */ + } + + free(sockname); + sockname = NULL; + + XauDisposeAuth(authptr); + return ret; + + no_auth: + free(sockname); + + info->name = 0; + info->namelen = 0; + XauDisposeAuth(authptr); + return 0; +} diff --git a/external/mit/xorg/lib/libxcb/files/xcb_conn.c b/external/mit/xorg/lib/libxcb/files/xcb_conn.c new file mode 100644 index 000000000..6a7a8060a --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb_conn.c @@ -0,0 +1,465 @@ +/* Copyright (C) 2001-2004 Bart Massey and Jamey Sharp. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +/* Connection management: the core of XCB. */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "xcb.h" +#include "xcbint.h" +#if USE_POLL +#include +#elif !defined _WIN32 +#include +#endif + +#ifdef _WIN32 +#include "xcb_windefs.h" +#else +#include +#include +#endif /* _WIN32 */ + +/* SHUT_RDWR is fairly recent and is not available on all platforms */ +#if !defined(SHUT_RDWR) +#define SHUT_RDWR 2 +#endif + +typedef struct { + uint8_t status; + uint8_t pad0[5]; + uint16_t length; +} xcb_setup_generic_t; + +static const int xcb_con_error = XCB_CONN_ERROR; +static const int xcb_con_closed_mem_er = XCB_CONN_CLOSED_MEM_INSUFFICIENT; +static const int xcb_con_closed_parse_er = XCB_CONN_CLOSED_PARSE_ERR; +static const int xcb_con_closed_screen_er = XCB_CONN_CLOSED_INVALID_SCREEN; + +static int set_fd_flags(const int fd) +{ +/* Win32 doesn't have file descriptors and the fcntl function. This block sets the socket in non-blocking mode */ + +#ifdef _WIN32 + u_long iMode = 1; /* non-zero puts it in non-blocking mode, 0 in blocking mode */ + int ret = 0; + + ret = ioctlsocket(fd, FIONBIO, &iMode); + if(ret != 0) + return 0; + return 1; +#else + int flags = fcntl(fd, F_GETFL, 0); + if(flags == -1) + return 0; + flags |= O_NONBLOCK; + if(fcntl(fd, F_SETFL, flags) == -1) + return 0; + if(fcntl(fd, F_SETFD, FD_CLOEXEC) == -1) + return 0; + return 1; +#endif /* _WIN32 */ +} + +static int write_setup(xcb_connection_t *c, xcb_auth_info_t *auth_info) +{ + static const char pad[3]; + xcb_setup_request_t out; + struct iovec parts[6]; + int count = 0; + static const uint32_t endian = 0x01020304; + int ret; + + memset(&out, 0, sizeof(out)); + + /* B = 0x42 = MSB first, l = 0x6c = LSB first */ + if(htonl(endian) == endian) + out.byte_order = 0x42; + else + out.byte_order = 0x6c; + out.protocol_major_version = X_PROTOCOL; + out.protocol_minor_version = X_PROTOCOL_REVISION; + out.authorization_protocol_name_len = 0; + out.authorization_protocol_data_len = 0; + parts[count].iov_len = sizeof(xcb_setup_request_t); + parts[count++].iov_base = &out; + parts[count].iov_len = XCB_PAD(sizeof(xcb_setup_request_t)); + parts[count++].iov_base = (char *) pad; + + if(auth_info) + { + parts[count].iov_len = out.authorization_protocol_name_len = auth_info->namelen; + parts[count++].iov_base = auth_info->name; + parts[count].iov_len = XCB_PAD(out.authorization_protocol_name_len); + parts[count++].iov_base = (char *) pad; + parts[count].iov_len = out.authorization_protocol_data_len = auth_info->datalen; + parts[count++].iov_base = auth_info->data; + parts[count].iov_len = XCB_PAD(out.authorization_protocol_data_len); + parts[count++].iov_base = (char *) pad; + } + assert(count <= (int) (sizeof(parts) / sizeof(*parts))); + + pthread_mutex_lock(&c->iolock); + ret = _xcb_out_send(c, parts, count); + pthread_mutex_unlock(&c->iolock); + return ret; +} + +static int read_setup(xcb_connection_t *c) +{ + /* Read the server response */ + c->setup = malloc(sizeof(xcb_setup_generic_t)); + if(!c->setup) + return 0; + + if(_xcb_in_read_block(c, c->setup, sizeof(xcb_setup_generic_t)) != sizeof(xcb_setup_generic_t)) + return 0; + + { + void *tmp = realloc(c->setup, c->setup->length * 4 + sizeof(xcb_setup_generic_t)); + if(!tmp) + return 0; + c->setup = tmp; + } + + if(_xcb_in_read_block(c, (char *) c->setup + sizeof(xcb_setup_generic_t), c->setup->length * 4) <= 0) + return 0; + + /* 0 = failed, 2 = authenticate, 1 = success */ + switch(c->setup->status) + { + case 0: /* failed */ + { + xcb_setup_failed_t *setup = (xcb_setup_failed_t *) c->setup; + write(STDERR_FILENO, xcb_setup_failed_reason(setup), xcb_setup_failed_reason_length(setup)); + return 0; + } + + case 2: /* authenticate */ + { + xcb_setup_authenticate_t *setup = (xcb_setup_authenticate_t *) c->setup; + write(STDERR_FILENO, xcb_setup_authenticate_reason(setup), xcb_setup_authenticate_reason_length(setup)); + return 0; + } + } + + return 1; +} + +/* precondition: there must be something for us to write. */ +static int write_vec(xcb_connection_t *c, struct iovec **vector, int *count) +{ + int n; + assert(!c->out.queue_len); + +#ifdef _WIN32 + int i = 0; + int ret = 0,err = 0; + struct iovec *vec; + n = 0; + + /* Could use the WSASend win32 function for scatter/gather i/o but setting up the WSABUF struct from + an iovec would require more work and I'm not sure of the benefit....works for now */ + vec = *vector; + while(i < *count) + { + ret = send(c->fd,vec->iov_base,vec->iov_len,0); + if(ret == SOCKET_ERROR) + { + err = WSAGetLastError(); + if(err == WSAEWOULDBLOCK) + { + return 1; + } + } + n += ret; + *vec++; + i++; + } +#else + n = *count; + if (n > IOV_MAX) + n = IOV_MAX; + + n = writev(c->fd, *vector, n); + if(n < 0 && errno == EAGAIN) + return 1; +#endif /* _WIN32 */ + + if(n <= 0) + { + _xcb_conn_shutdown(c, XCB_CONN_ERROR); + return 0; + } + + for(; *count; --*count, ++*vector) + { + int cur = (*vector)->iov_len; + if(cur > n) + cur = n; + (*vector)->iov_len -= cur; + (*vector)->iov_base = (char *) (*vector)->iov_base + cur; + n -= cur; + if((*vector)->iov_len) + break; + } + if(!*count) + *vector = 0; + assert(n == 0); + return 1; +} + +/* Public interface */ + +const xcb_setup_t *xcb_get_setup(xcb_connection_t *c) +{ + if(c->has_error) + return 0; + /* doesn't need locking because it's never written to. */ + return c->setup; +} + +int xcb_get_file_descriptor(xcb_connection_t *c) +{ + if(c->has_error) + return -1; + /* doesn't need locking because it's never written to. */ + return c->fd; +} + +int xcb_connection_has_error(xcb_connection_t *c) +{ + /* doesn't need locking because it's read and written atomically. */ + return c->has_error; +} + +xcb_connection_t *xcb_connect_to_fd(int fd, xcb_auth_info_t *auth_info) +{ + xcb_connection_t* c; + +#ifndef _WIN32 +#ifndef USE_POLL + if(fd >= FD_SETSIZE) /* would overflow in FD_SET */ + { + close(fd); + return _xcb_conn_ret_error(XCB_CONN_ERROR); + } +#endif +#endif /* !_WIN32*/ + + c = calloc(1, sizeof(xcb_connection_t)); + if(!c) { + close(fd); + return _xcb_conn_ret_error(XCB_CONN_CLOSED_MEM_INSUFFICIENT) ; + } + + c->fd = fd; + + if(!( + set_fd_flags(fd) && + pthread_mutex_init(&c->iolock, 0) == 0 && + _xcb_in_init(&c->in) && + _xcb_out_init(&c->out) && + write_setup(c, auth_info) && + read_setup(c) && + _xcb_ext_init(c) && + _xcb_xid_init(c) + )) + { + xcb_disconnect(c); + return _xcb_conn_ret_error(XCB_CONN_ERROR); + } + + return c; +} + +void xcb_disconnect(xcb_connection_t *c) +{ + if(c->has_error) + return; + + free(c->setup); + + /* disallow further sends and receives */ + shutdown(c->fd, SHUT_RDWR); + close(c->fd); + + pthread_mutex_destroy(&c->iolock); + _xcb_in_destroy(&c->in); + _xcb_out_destroy(&c->out); + + _xcb_ext_destroy(c); + _xcb_xid_destroy(c); + + free(c); + +#ifdef _WIN32 + WSACleanup(); +#endif +} + +/* Private interface */ + +void _xcb_conn_shutdown(xcb_connection_t *c, int err) +{ + c->has_error = err; +} + +/* Return connection error state. + * To make thread-safe, I need a seperate static + * variable for every possible error. + */ +xcb_connection_t *_xcb_conn_ret_error(int err) +{ + + switch(err) + { + case XCB_CONN_CLOSED_MEM_INSUFFICIENT: + { + return (xcb_connection_t *) &xcb_con_closed_mem_er; + } + case XCB_CONN_CLOSED_PARSE_ERR: + { + return (xcb_connection_t *) &xcb_con_closed_parse_er; + } + case XCB_CONN_CLOSED_INVALID_SCREEN: + { + return (xcb_connection_t *) &xcb_con_closed_screen_er; + } + case XCB_CONN_ERROR: + default: + { + return (xcb_connection_t *) &xcb_con_error; + } + } +} + +int _xcb_conn_wait(xcb_connection_t *c, pthread_cond_t *cond, struct iovec **vector, int *count) +{ + int ret; +#if USE_POLL + struct pollfd fd; +#else + fd_set rfds, wfds; +#endif + + /* If the thing I should be doing is already being done, wait for it. */ + if(count ? c->out.writing : c->in.reading) + { + pthread_cond_wait(cond, &c->iolock); + return 1; + } + +#if USE_POLL + memset(&fd, 0, sizeof(fd)); + fd.fd = c->fd; + fd.events = POLLIN; +#else + FD_ZERO(&rfds); + FD_SET(c->fd, &rfds); +#endif + ++c->in.reading; + +#if USE_POLL + if(count) + { + fd.events |= POLLOUT; + ++c->out.writing; + } +#else + FD_ZERO(&wfds); + if(count) + { + FD_SET(c->fd, &wfds); + ++c->out.writing; + } +#endif + + pthread_mutex_unlock(&c->iolock); + do { +#if USE_POLL + ret = poll(&fd, 1, -1); + /* If poll() returns an event we didn't expect, such as POLLNVAL, treat + * it as if it failed. */ + if(ret >= 0 && (fd.revents & ~fd.events)) + { + ret = -1; + break; + } +#else + ret = select(c->fd + 1, &rfds, &wfds, 0, 0); +#endif + } while (ret == -1 && errno == EINTR); + if(ret < 0) + { + _xcb_conn_shutdown(c, XCB_CONN_ERROR); + ret = 0; + } + pthread_mutex_lock(&c->iolock); + + if(ret) + { + /* The code allows two threads to call select()/poll() at the same time. + * First thread just wants to read, a second thread wants to write, too. + * We have to make sure that we don't steal the reading thread's reply + * and let it get stuck in select()/poll(). + * So a thread may read if either: + * - There is no other thread that wants to read (the above situation + * did not occur). + * - It is the reading thread (above situation occurred). + */ + int may_read = c->in.reading == 1 || !count; +#if USE_POLL + if(may_read && (fd.revents & POLLIN) == POLLIN) +#else + if(may_read && FD_ISSET(c->fd, &rfds)) +#endif + ret = ret && _xcb_in_read(c); + +#if USE_POLL + if((fd.revents & POLLOUT) == POLLOUT) +#else + if(FD_ISSET(c->fd, &wfds)) +#endif + ret = ret && write_vec(c, vector, count); + } + + if(count) + --c->out.writing; + --c->in.reading; + + return ret; +} diff --git a/external/mit/xorg/lib/libxcb/files/xcb_ext.c b/external/mit/xorg/lib/libxcb/files/xcb_ext.c new file mode 100644 index 000000000..831f28381 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb_ext.c @@ -0,0 +1,131 @@ +/* Copyright (C) 2001-2004 Bart Massey and Jamey Sharp. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +/* A cache for QueryExtension results. */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include + +#include "xcb.h" +#include "xcbext.h" +#include "xcbint.h" + +typedef struct lazyreply { + enum lazy_reply_tag tag; + union { + xcb_query_extension_cookie_t cookie; + xcb_query_extension_reply_t *reply; + } value; +} lazyreply; + +static lazyreply *get_index(xcb_connection_t *c, int idx) +{ + if(idx > c->ext.extensions_size) + { + int new_size = idx << 1; + lazyreply *new_extensions = realloc(c->ext.extensions, sizeof(lazyreply) * new_size); + if(!new_extensions) + return 0; + memset(new_extensions + c->ext.extensions_size, 0, sizeof(lazyreply) * (new_size - c->ext.extensions_size)); + c->ext.extensions = new_extensions; + c->ext.extensions_size = new_size; + } + return c->ext.extensions + idx - 1; +} + +static lazyreply *get_lazyreply(xcb_connection_t *c, xcb_extension_t *ext) +{ + static pthread_mutex_t global_lock = PTHREAD_MUTEX_INITIALIZER; + static int next_global_id; + + lazyreply *data; + + pthread_mutex_lock(&global_lock); + if(!ext->global_id) + ext->global_id = ++next_global_id; + pthread_mutex_unlock(&global_lock); + + data = get_index(c, ext->global_id); + if(data && data->tag == LAZY_NONE) + { + /* cache miss: query the server */ + data->tag = LAZY_COOKIE; + data->value.cookie = xcb_query_extension(c, strlen(ext->name), ext->name); + } + return data; +} + +/* Public interface */ + +/* Do not free the returned xcb_query_extension_reply_t - on return, it's aliased + * from the cache. */ +const xcb_query_extension_reply_t *xcb_get_extension_data(xcb_connection_t *c, xcb_extension_t *ext) +{ + lazyreply *data; + if(c->has_error) + return 0; + + pthread_mutex_lock(&c->ext.lock); + data = get_lazyreply(c, ext); + if(data && data->tag == LAZY_COOKIE) + { + data->tag = LAZY_FORCED; + data->value.reply = xcb_query_extension_reply(c, data->value.cookie, 0); + } + pthread_mutex_unlock(&c->ext.lock); + + return data ? data->value.reply : 0; +} + +void xcb_prefetch_extension_data(xcb_connection_t *c, xcb_extension_t *ext) +{ + if(c->has_error) + return; + pthread_mutex_lock(&c->ext.lock); + get_lazyreply(c, ext); + pthread_mutex_unlock(&c->ext.lock); +} + +/* Private interface */ + +int _xcb_ext_init(xcb_connection_t *c) +{ + if(pthread_mutex_init(&c->ext.lock, 0)) + return 0; + return 1; +} + +void _xcb_ext_destroy(xcb_connection_t *c) +{ + pthread_mutex_destroy(&c->ext.lock); + while(c->ext.extensions_size-- > 0) + if(c->ext.extensions[c->ext.extensions_size].tag == LAZY_FORCED) + free(c->ext.extensions[c->ext.extensions_size].value.reply); + free(c->ext.extensions); +} diff --git a/external/mit/xorg/lib/libxcb/files/xcb_in.c b/external/mit/xorg/lib/libxcb/files/xcb_in.c new file mode 100644 index 000000000..b8107834c --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb_in.c @@ -0,0 +1,699 @@ +/* Copyright (C) 2001-2004 Bart Massey and Jamey Sharp. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +/* Stuff that reads stuff from the server. */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "xcb.h" +#include "xcbext.h" +#include "xcbint.h" +#if USE_POLL +#include +#endif +#ifndef _WIN32 +#include +#include +#endif + +#ifdef _WIN32 +#include "xcb_windefs.h" +#endif /* _WIN32 */ + +#define XCB_ERROR 0 +#define XCB_REPLY 1 +#define XCB_XGE_EVENT 35 + +struct event_list { + xcb_generic_event_t *event; + struct event_list *next; +}; + +struct reply_list { + void *reply; + struct reply_list *next; +}; + +typedef struct pending_reply { + uint64_t first_request; + uint64_t last_request; + enum workarounds workaround; + int flags; + struct pending_reply *next; +} pending_reply; + +typedef struct reader_list { + uint64_t request; + pthread_cond_t *data; + struct reader_list *next; +} reader_list; + +static void remove_finished_readers(reader_list **prev_reader, uint64_t completed) +{ + while(*prev_reader && XCB_SEQUENCE_COMPARE((*prev_reader)->request, <=, completed)) + { + /* If you don't have what you're looking for now, you never + * will. Wake up and leave me alone. */ + pthread_cond_signal((*prev_reader)->data); + *prev_reader = (*prev_reader)->next; + } +} + +static int read_packet(xcb_connection_t *c) +{ + xcb_generic_reply_t genrep; + int length = 32; + int eventlength = 0; /* length after first 32 bytes for GenericEvents */ + void *buf; + pending_reply *pend = 0; + struct event_list *event; + + /* Wait for there to be enough data for us to read a whole packet */ + if(c->in.queue_len < length) + return 0; + + /* Get the response type, length, and sequence number. */ + memcpy(&genrep, c->in.queue, sizeof(genrep)); + + /* Compute 32-bit sequence number of this packet. */ + if((genrep.response_type & 0x7f) != XCB_KEYMAP_NOTIFY) + { + uint64_t lastread = c->in.request_read; + c->in.request_read = (lastread & UINT64_C(0xffffffffffff0000)) | genrep.sequence; + if(XCB_SEQUENCE_COMPARE(c->in.request_read, <, lastread)) + c->in.request_read += 0x10000; + if(XCB_SEQUENCE_COMPARE(c->in.request_read, >, c->in.request_expected)) + c->in.request_expected = c->in.request_read; + + if(c->in.request_read != lastread) + { + if(c->in.current_reply) + { + _xcb_map_put(c->in.replies, lastread, c->in.current_reply); + c->in.current_reply = 0; + c->in.current_reply_tail = &c->in.current_reply; + } + c->in.request_completed = c->in.request_read - 1; + } + + while(c->in.pending_replies && + c->in.pending_replies->workaround != WORKAROUND_EXTERNAL_SOCKET_OWNER && + XCB_SEQUENCE_COMPARE (c->in.pending_replies->last_request, <=, c->in.request_completed)) + { + pending_reply *oldpend = c->in.pending_replies; + c->in.pending_replies = oldpend->next; + if(!oldpend->next) + c->in.pending_replies_tail = &c->in.pending_replies; + free(oldpend); + } + + if(genrep.response_type == XCB_ERROR) + c->in.request_completed = c->in.request_read; + + remove_finished_readers(&c->in.readers, c->in.request_completed); + } + + if(genrep.response_type == XCB_ERROR || genrep.response_type == XCB_REPLY) + { + pend = c->in.pending_replies; + if(pend && + !(XCB_SEQUENCE_COMPARE(pend->first_request, <=, c->in.request_read) && + (pend->workaround == WORKAROUND_EXTERNAL_SOCKET_OWNER || + XCB_SEQUENCE_COMPARE(c->in.request_read, <=, pend->last_request)))) + pend = 0; + } + + /* For reply packets, check that the entire packet is available. */ + if(genrep.response_type == XCB_REPLY) + { + if(pend && pend->workaround == WORKAROUND_GLX_GET_FB_CONFIGS_BUG) + { + uint32_t *p = (uint32_t *) c->in.queue; + genrep.length = p[2] * p[3] * 2; + } + length += genrep.length * 4; + } + + /* XGE events may have sizes > 32 */ + if ((genrep.response_type & 0x7f) == XCB_XGE_EVENT) + eventlength = genrep.length * 4; + + buf = malloc(length + eventlength + + (genrep.response_type == XCB_REPLY ? 0 : sizeof(uint32_t))); + if(!buf) + { + _xcb_conn_shutdown(c, XCB_CONN_CLOSED_MEM_INSUFFICIENT); + return 0; + } + + if(_xcb_in_read_block(c, buf, length) <= 0) + { + free(buf); + return 0; + } + + /* pull in XGE event data if available, append after event struct */ + if (eventlength) + { + if(_xcb_in_read_block(c, &((xcb_generic_event_t*)buf)[1], eventlength) <= 0) + { + free(buf); + return 0; + } + } + + if(pend && (pend->flags & XCB_REQUEST_DISCARD_REPLY)) + { + free(buf); + return 1; + } + + if(genrep.response_type != XCB_REPLY) + ((xcb_generic_event_t *) buf)->full_sequence = c->in.request_read; + + /* reply, or checked error */ + if( genrep.response_type == XCB_REPLY || + (genrep.response_type == XCB_ERROR && pend && (pend->flags & XCB_REQUEST_CHECKED))) + { + struct reply_list *cur = malloc(sizeof(struct reply_list)); + if(!cur) + { + _xcb_conn_shutdown(c, XCB_CONN_CLOSED_MEM_INSUFFICIENT); + free(buf); + return 0; + } + cur->reply = buf; + cur->next = 0; + *c->in.current_reply_tail = cur; + c->in.current_reply_tail = &cur->next; + if(c->in.readers && c->in.readers->request == c->in.request_read) + pthread_cond_signal(c->in.readers->data); + return 1; + } + + /* event, or unchecked error */ + event = malloc(sizeof(struct event_list)); + if(!event) + { + _xcb_conn_shutdown(c, XCB_CONN_CLOSED_MEM_INSUFFICIENT); + free(buf); + return 0; + } + event->event = buf; + event->next = 0; + *c->in.events_tail = event; + c->in.events_tail = &event->next; + pthread_cond_signal(&c->in.event_cond); + return 1; /* I have something for you... */ +} + +static xcb_generic_event_t *get_event(xcb_connection_t *c) +{ + struct event_list *cur = c->in.events; + xcb_generic_event_t *ret; + if(!c->in.events) + return 0; + ret = cur->event; + c->in.events = cur->next; + if(!cur->next) + c->in.events_tail = &c->in.events; + free(cur); + return ret; +} + +static void free_reply_list(struct reply_list *head) +{ + while(head) + { + struct reply_list *cur = head; + head = cur->next; + free(cur->reply); + free(cur); + } +} + +static int read_block(const int fd, void *buf, const ssize_t len) +{ + int done = 0; + while(done < len) + { + int ret = recv(fd, ((char *) buf) + done, len - done, 0); + if(ret > 0) + done += ret; +#ifndef _WIN32 + if(ret < 0 && errno == EAGAIN) +#else + if(ret == SOCKET_ERROR && WSAGetLastError() == WSAEWOULDBLOCK) +#endif /* !_Win32 */ + { +#if USE_POLL + struct pollfd pfd; + pfd.fd = fd; + pfd.events = POLLIN; + pfd.revents = 0; + do { + ret = poll(&pfd, 1, -1); + } while (ret == -1 && errno == EINTR); +#else + fd_set fds; + FD_ZERO(&fds); + FD_SET(fd, &fds); + + /* Initializing errno here makes sure that for Win32 this loop will execute only once */ + errno = 0; + do { + ret = select(fd + 1, &fds, 0, 0, 0); + } while (ret == -1 && errno == EINTR); +#endif /* USE_POLL */ + } + if(ret <= 0) + return ret; + } + return len; +} + +static int poll_for_reply(xcb_connection_t *c, uint64_t request, void **reply, xcb_generic_error_t **error) +{ + struct reply_list *head; + + /* If an error occurred when issuing the request, fail immediately. */ + if(!request) + head = 0; + /* We've read requests past the one we want, so if it has replies we have + * them all and they're in the replies map. */ + else if(XCB_SEQUENCE_COMPARE(request, <, c->in.request_read)) + { + head = _xcb_map_remove(c->in.replies, request); + if(head && head->next) + _xcb_map_put(c->in.replies, request, head->next); + } + /* We're currently processing the responses to the request we want, and we + * have a reply ready to return. So just return it without blocking. */ + else if(request == c->in.request_read && c->in.current_reply) + { + head = c->in.current_reply; + c->in.current_reply = head->next; + if(!head->next) + c->in.current_reply_tail = &c->in.current_reply; + } + /* We know this request can't have any more replies, and we've already + * established it doesn't have a reply now. Don't bother blocking. */ + else if(request == c->in.request_completed) + head = 0; + /* We may have more replies on the way for this request: block until we're + * sure. */ + else + return 0; + + if(error) + *error = 0; + *reply = 0; + + if(head) + { + if(((xcb_generic_reply_t *) head->reply)->response_type == XCB_ERROR) + { + if(error) + *error = head->reply; + else + free(head->reply); + } + else + *reply = head->reply; + + free(head); + } + + return 1; +} + +static void insert_reader(reader_list **prev_reader, reader_list *reader, uint64_t request, pthread_cond_t *cond) +{ + while(*prev_reader && XCB_SEQUENCE_COMPARE((*prev_reader)->request, <=, request)) + prev_reader = &(*prev_reader)->next; + reader->request = request; + reader->data = cond; + reader->next = *prev_reader; + *prev_reader = reader; +} + +static void remove_reader(reader_list **prev_reader, reader_list *reader) +{ + while(*prev_reader && XCB_SEQUENCE_COMPARE((*prev_reader)->request, <=, reader->request)) + if(*prev_reader == reader) + { + *prev_reader = (*prev_reader)->next; + break; + } +} + +static void *wait_for_reply(xcb_connection_t *c, uint64_t request, xcb_generic_error_t **e) +{ + void *ret = 0; + + /* If this request has not been written yet, write it. */ + if(c->out.return_socket || _xcb_out_flush_to(c, request)) + { + pthread_cond_t cond = PTHREAD_COND_INITIALIZER; + reader_list reader; + + insert_reader(&c->in.readers, &reader, request, &cond); + + while(!poll_for_reply(c, request, &ret, e)) + if(!_xcb_conn_wait(c, &cond, 0, 0)) + break; + + remove_reader(&c->in.readers, &reader); + pthread_cond_destroy(&cond); + } + + _xcb_in_wake_up_next_reader(c); + return ret; +} + +static uint64_t widen(xcb_connection_t *c, unsigned int request) +{ + uint64_t widened_request = (c->out.request & UINT64_C(0xffffffff00000000)) | request; + if(widened_request > c->out.request) + widened_request -= UINT64_C(1) << 32; + return widened_request; +} + +/* Public interface */ + +void *xcb_wait_for_reply(xcb_connection_t *c, unsigned int request, xcb_generic_error_t **e) +{ + void *ret; + if(e) + *e = 0; + if(c->has_error) + return 0; + + pthread_mutex_lock(&c->iolock); + ret = wait_for_reply(c, widen(c, request), e); + pthread_mutex_unlock(&c->iolock); + return ret; +} + +static void insert_pending_discard(xcb_connection_t *c, pending_reply **prev_next, uint64_t seq) +{ + pending_reply *pend; + pend = malloc(sizeof(*pend)); + if(!pend) + { + _xcb_conn_shutdown(c, XCB_CONN_CLOSED_MEM_INSUFFICIENT); + return; + } + + pend->first_request = seq; + pend->last_request = seq; + pend->workaround = 0; + pend->flags = XCB_REQUEST_DISCARD_REPLY; + pend->next = *prev_next; + *prev_next = pend; + + if(!pend->next) + c->in.pending_replies_tail = &pend->next; +} + +static void discard_reply(xcb_connection_t *c, uint64_t request) +{ + void *reply; + pending_reply **prev_pend; + + /* Free any replies or errors that we've already read. Stop if + * xcb_wait_for_reply would block or we've run out of replies. */ + while(poll_for_reply(c, request, &reply, 0) && reply) + free(reply); + + /* If we've proven there are no more responses coming, we're done. */ + if(XCB_SEQUENCE_COMPARE(request, <=, c->in.request_completed)) + return; + + /* Walk the list of pending requests. Mark the first match for deletion. */ + for(prev_pend = &c->in.pending_replies; *prev_pend; prev_pend = &(*prev_pend)->next) + { + if(XCB_SEQUENCE_COMPARE((*prev_pend)->first_request, >, request)) + break; + + if((*prev_pend)->first_request == request) + { + /* Pending reply found. Mark for discard: */ + (*prev_pend)->flags |= XCB_REQUEST_DISCARD_REPLY; + return; + } + } + + /* Pending reply not found (likely due to _unchecked request). Create one: */ + insert_pending_discard(c, prev_pend, request); +} + +void xcb_discard_reply(xcb_connection_t *c, unsigned int sequence) +{ + if(c->has_error) + return; + + /* If an error occurred when issuing the request, fail immediately. */ + if(!sequence) + return; + + pthread_mutex_lock(&c->iolock); + discard_reply(c, widen(c, sequence)); + pthread_mutex_unlock(&c->iolock); +} + +int xcb_poll_for_reply(xcb_connection_t *c, unsigned int request, void **reply, xcb_generic_error_t **error) +{ + int ret; + if(c->has_error) + { + *reply = 0; + if(error) + *error = 0; + return 1; /* would not block */ + } + assert(reply != 0); + pthread_mutex_lock(&c->iolock); + ret = poll_for_reply(c, widen(c, request), reply, error); + pthread_mutex_unlock(&c->iolock); + return ret; +} + +xcb_generic_event_t *xcb_wait_for_event(xcb_connection_t *c) +{ + xcb_generic_event_t *ret; + if(c->has_error) + return 0; + pthread_mutex_lock(&c->iolock); + /* get_event returns 0 on empty list. */ + while(!(ret = get_event(c))) + if(!_xcb_conn_wait(c, &c->in.event_cond, 0, 0)) + break; + + _xcb_in_wake_up_next_reader(c); + pthread_mutex_unlock(&c->iolock); + return ret; +} + +static xcb_generic_event_t *poll_for_next_event(xcb_connection_t *c, int queued) +{ + xcb_generic_event_t *ret = 0; + if(!c->has_error) + { + pthread_mutex_lock(&c->iolock); + /* FIXME: follow X meets Z architecture changes. */ + ret = get_event(c); + if(!ret && !queued && c->in.reading == 0 && _xcb_in_read(c)) /* _xcb_in_read shuts down the connection on error */ + ret = get_event(c); + pthread_mutex_unlock(&c->iolock); + } + return ret; +} + +xcb_generic_event_t *xcb_poll_for_event(xcb_connection_t *c) +{ + return poll_for_next_event(c, 0); +} + +xcb_generic_event_t *xcb_poll_for_queued_event(xcb_connection_t *c) +{ + return poll_for_next_event(c, 1); +} + +xcb_generic_error_t *xcb_request_check(xcb_connection_t *c, xcb_void_cookie_t cookie) +{ + uint64_t request; + xcb_generic_error_t *ret = 0; + void *reply; + if(c->has_error) + return 0; + pthread_mutex_lock(&c->iolock); + request = widen(c, cookie.sequence); + if(XCB_SEQUENCE_COMPARE(request, >=, c->in.request_expected) + && XCB_SEQUENCE_COMPARE(request, >, c->in.request_completed)) + { + _xcb_out_send_sync(c); + _xcb_out_flush_to(c, c->out.request); + } + reply = wait_for_reply(c, request, &ret); + assert(!reply); + pthread_mutex_unlock(&c->iolock); + return ret; +} + +/* Private interface */ + +int _xcb_in_init(_xcb_in *in) +{ + if(pthread_cond_init(&in->event_cond, 0)) + return 0; + in->reading = 0; + + in->queue_len = 0; + + in->request_read = 0; + in->request_completed = 0; + + in->replies = _xcb_map_new(); + if(!in->replies) + return 0; + + in->current_reply_tail = &in->current_reply; + in->events_tail = &in->events; + in->pending_replies_tail = &in->pending_replies; + + return 1; +} + +void _xcb_in_destroy(_xcb_in *in) +{ + pthread_cond_destroy(&in->event_cond); + free_reply_list(in->current_reply); + _xcb_map_delete(in->replies, (void (*)(void *)) free_reply_list); + while(in->events) + { + struct event_list *e = in->events; + in->events = e->next; + free(e->event); + free(e); + } + while(in->pending_replies) + { + pending_reply *pend = in->pending_replies; + in->pending_replies = pend->next; + free(pend); + } +} + +void _xcb_in_wake_up_next_reader(xcb_connection_t *c) +{ + int pthreadret; + if(c->in.readers) + pthreadret = pthread_cond_signal(c->in.readers->data); + else + pthreadret = pthread_cond_signal(&c->in.event_cond); + assert(pthreadret == 0); +} + +int _xcb_in_expect_reply(xcb_connection_t *c, uint64_t request, enum workarounds workaround, int flags) +{ + pending_reply *pend = malloc(sizeof(pending_reply)); + assert(workaround != WORKAROUND_NONE || flags != 0); + if(!pend) + { + _xcb_conn_shutdown(c, XCB_CONN_CLOSED_MEM_INSUFFICIENT); + return 0; + } + pend->first_request = pend->last_request = request; + pend->workaround = workaround; + pend->flags = flags; + pend->next = 0; + *c->in.pending_replies_tail = pend; + c->in.pending_replies_tail = &pend->next; + return 1; +} + +void _xcb_in_replies_done(xcb_connection_t *c) +{ + struct pending_reply *pend; + if (c->in.pending_replies_tail != &c->in.pending_replies) + { + pend = container_of(c->in.pending_replies_tail, struct pending_reply, next); + if(pend->workaround == WORKAROUND_EXTERNAL_SOCKET_OWNER) + { + pend->last_request = c->out.request; + pend->workaround = WORKAROUND_NONE; + } + } +} + +int _xcb_in_read(xcb_connection_t *c) +{ + int n = recv(c->fd, c->in.queue + c->in.queue_len, sizeof(c->in.queue) - c->in.queue_len, 0); + if(n > 0) + c->in.queue_len += n; + while(read_packet(c)) + /* empty */; +#ifndef _WIN32 + if((n > 0) || (n < 0 && errno == EAGAIN)) +#else + if((n > 0) || (n < 0 && WSAGetLastError() == WSAEWOULDBLOCK)) +#endif /* !_WIN32 */ + return 1; + _xcb_conn_shutdown(c, XCB_CONN_ERROR); + return 0; +} + +int _xcb_in_read_block(xcb_connection_t *c, void *buf, int len) +{ + int done = c->in.queue_len; + if(len < done) + done = len; + + memcpy(buf, c->in.queue, done); + c->in.queue_len -= done; + memmove(c->in.queue, c->in.queue + done, c->in.queue_len); + + if(len > done) + { + int ret = read_block(c->fd, (char *) buf + done, len - done); + if(ret <= 0) + { + _xcb_conn_shutdown(c, XCB_CONN_ERROR); + return ret; + } + } + + return len; +} diff --git a/external/mit/xorg/lib/libxcb/files/xcb_list.c b/external/mit/xorg/lib/libxcb/files/xcb_list.c new file mode 100644 index 000000000..6f5c61190 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb_list.c @@ -0,0 +1,105 @@ +/* Copyright (C) 2001-2004 Bart Massey and Jamey Sharp. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +/* A generic implementation of a list of void-pointers. */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include + +#include "xcb.h" +#include "xcbint.h" + +typedef struct node { + struct node *next; + unsigned int key; + void *data; +} node; + +struct _xcb_map { + node *head; + node **tail; +}; + +/* Private interface */ + +_xcb_map *_xcb_map_new() +{ + _xcb_map *list; + list = malloc(sizeof(_xcb_map)); + if(!list) + return 0; + list->head = 0; + list->tail = &list->head; + return list; +} + +void _xcb_map_delete(_xcb_map *list, xcb_list_free_func_t do_free) +{ + if(!list) + return; + while(list->head) + { + node *cur = list->head; + if(do_free) + do_free(cur->data); + list->head = cur->next; + free(cur); + } + free(list); +} + +int _xcb_map_put(_xcb_map *list, unsigned int key, void *data) +{ + node *cur = malloc(sizeof(node)); + if(!cur) + return 0; + cur->key = key; + cur->data = data; + cur->next = 0; + *list->tail = cur; + list->tail = &cur->next; + return 1; +} + +void *_xcb_map_remove(_xcb_map *list, unsigned int key) +{ + node **cur; + for(cur = &list->head; *cur; cur = &(*cur)->next) + if((*cur)->key == key) + { + node *tmp = *cur; + void *ret = (*cur)->data; + *cur = (*cur)->next; + if(!*cur) + list->tail = cur; + + free(tmp); + return ret; + } + return 0; +} diff --git a/external/mit/xorg/lib/libxcb/files/xcb_out.c b/external/mit/xorg/lib/libxcb/files/xcb_out.c new file mode 100644 index 000000000..405f963de --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb_out.c @@ -0,0 +1,382 @@ +/* Copyright (C) 2001-2004 Bart Massey and Jamey Sharp. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +/* Stuff that sends stuff to the server. */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include + +#include "xcb.h" +#include "xcbext.h" +#include "xcbint.h" +#include "bigreq.h" + +static inline void send_request(xcb_connection_t *c, int isvoid, enum workarounds workaround, int flags, struct iovec *vector, int count) +{ + if(c->has_error) + return; + + ++c->out.request; + if(!isvoid) + c->in.request_expected = c->out.request; + if(workaround != WORKAROUND_NONE || flags != 0) + _xcb_in_expect_reply(c, c->out.request, workaround, flags); + + while(count && c->out.queue_len + vector[0].iov_len <= sizeof(c->out.queue)) + { + memcpy(c->out.queue + c->out.queue_len, vector[0].iov_base, vector[0].iov_len); + c->out.queue_len += vector[0].iov_len; + vector[0].iov_base = (char *) vector[0].iov_base + vector[0].iov_len; + vector[0].iov_len = 0; + ++vector, --count; + } + if(!count) + return; + + --vector, ++count; + vector[0].iov_base = c->out.queue; + vector[0].iov_len = c->out.queue_len; + c->out.queue_len = 0; + _xcb_out_send(c, vector, count); +} + +static void send_sync(xcb_connection_t *c) +{ + static const union { + struct { + uint8_t major; + uint8_t pad; + uint16_t len; + } fields; + uint32_t packet; + } sync_req = { { /* GetInputFocus */ 43, 0, 1 } }; + struct iovec vector[2]; + vector[1].iov_base = (char *) &sync_req; + vector[1].iov_len = sizeof(sync_req); + send_request(c, 0, WORKAROUND_NONE, XCB_REQUEST_DISCARD_REPLY, vector + 1, 1); +} + +static void get_socket_back(xcb_connection_t *c) +{ + while(c->out.return_socket && c->out.socket_moving) + pthread_cond_wait(&c->out.socket_cond, &c->iolock); + if(!c->out.return_socket) + return; + + c->out.socket_moving = 1; + pthread_mutex_unlock(&c->iolock); + c->out.return_socket(c->out.socket_closure); + pthread_mutex_lock(&c->iolock); + c->out.socket_moving = 0; + + pthread_cond_broadcast(&c->out.socket_cond); + c->out.return_socket = 0; + c->out.socket_closure = 0; + _xcb_in_replies_done(c); +} + +/* Public interface */ + +void xcb_prefetch_maximum_request_length(xcb_connection_t *c) +{ + if(c->has_error) + return; + pthread_mutex_lock(&c->out.reqlenlock); + if(c->out.maximum_request_length_tag == LAZY_NONE) + { + const xcb_query_extension_reply_t *ext; + ext = xcb_get_extension_data(c, &xcb_big_requests_id); + if(ext && ext->present) + { + c->out.maximum_request_length_tag = LAZY_COOKIE; + c->out.maximum_request_length.cookie = xcb_big_requests_enable(c); + } + else + { + c->out.maximum_request_length_tag = LAZY_FORCED; + c->out.maximum_request_length.value = c->setup->maximum_request_length; + } + } + pthread_mutex_unlock(&c->out.reqlenlock); +} + +uint32_t xcb_get_maximum_request_length(xcb_connection_t *c) +{ + if(c->has_error) + return 0; + xcb_prefetch_maximum_request_length(c); + pthread_mutex_lock(&c->out.reqlenlock); + if(c->out.maximum_request_length_tag == LAZY_COOKIE) + { + xcb_big_requests_enable_reply_t *r = xcb_big_requests_enable_reply(c, c->out.maximum_request_length.cookie, 0); + c->out.maximum_request_length_tag = LAZY_FORCED; + if(r) + { + c->out.maximum_request_length.value = r->maximum_request_length; + free(r); + } + else + c->out.maximum_request_length.value = c->setup->maximum_request_length; + } + pthread_mutex_unlock(&c->out.reqlenlock); + return c->out.maximum_request_length.value; +} + +unsigned int xcb_send_request(xcb_connection_t *c, int flags, struct iovec *vector, const xcb_protocol_request_t *req) +{ + uint64_t request; + uint32_t prefix[2]; + int veclen = req->count; + enum workarounds workaround = WORKAROUND_NONE; + + if(c->has_error) + return 0; + + assert(c != 0); + assert(vector != 0); + assert(req->count > 0); + + if(!(flags & XCB_REQUEST_RAW)) + { + static const char pad[3]; + unsigned int i; + uint16_t shortlen = 0; + size_t longlen = 0; + assert(vector[0].iov_len >= 4); + /* set the major opcode, and the minor opcode for extensions */ + if(req->ext) + { + const xcb_query_extension_reply_t *extension = xcb_get_extension_data(c, req->ext); + if(!(extension && extension->present)) + { + _xcb_conn_shutdown(c, XCB_CONN_CLOSED_EXT_NOTSUPPORTED); + return 0; + } + ((uint8_t *) vector[0].iov_base)[0] = extension->major_opcode; + ((uint8_t *) vector[0].iov_base)[1] = req->opcode; + } + else + ((uint8_t *) vector[0].iov_base)[0] = req->opcode; + + /* put together the length field, possibly using BIGREQUESTS */ + for(i = 0; i < req->count; ++i) + { + longlen += vector[i].iov_len; + if(!vector[i].iov_base) + { + vector[i].iov_base = (char *) pad; + assert(vector[i].iov_len <= sizeof(pad)); + } + } + assert((longlen & 3) == 0); + longlen >>= 2; + + if(longlen <= c->setup->maximum_request_length) + { + /* we don't need BIGREQUESTS. */ + shortlen = longlen; + longlen = 0; + } + else if(longlen > xcb_get_maximum_request_length(c)) + { + _xcb_conn_shutdown(c, XCB_CONN_CLOSED_REQ_LEN_EXCEED); + return 0; /* server can't take this; maybe need BIGREQUESTS? */ + } + + /* set the length field. */ + ((uint16_t *) vector[0].iov_base)[1] = shortlen; + if(!shortlen) + { + prefix[0] = ((uint32_t *) vector[0].iov_base)[0]; + prefix[1] = ++longlen; + vector[0].iov_base = (uint32_t *) vector[0].iov_base + 1; + vector[0].iov_len -= sizeof(uint32_t); + --vector, ++veclen; + vector[0].iov_base = prefix; + vector[0].iov_len = sizeof(prefix); + } + } + flags &= ~XCB_REQUEST_RAW; + + /* do we need to work around the X server bug described in glx.xml? */ + /* XXX: GetFBConfigs won't use BIG-REQUESTS in any sane + * configuration, but that should be handled here anyway. */ + if(req->ext && !req->isvoid && !strcmp(req->ext->name, "GLX") && + ((req->opcode == 17 && ((uint32_t *) vector[0].iov_base)[1] == 0x10004) || + req->opcode == 21)) + workaround = WORKAROUND_GLX_GET_FB_CONFIGS_BUG; + + /* get a sequence number and arrange for delivery. */ + pthread_mutex_lock(&c->iolock); + /* wait for other writing threads to get out of my way. */ + while(c->out.writing) + pthread_cond_wait(&c->out.cond, &c->iolock); + get_socket_back(c); + + /* send GetInputFocus (sync_req) when 64k-2 requests have been sent without + * a reply. */ + if(req->isvoid && c->out.request == c->in.request_expected + (1 << 16) - 2) + send_sync(c); + /* Also send sync_req (could use NoOp) at 32-bit wrap to avoid having + * applications see sequence 0 as that is used to indicate + * an error in sending the request */ + if((unsigned int) (c->out.request + 1) == 0) + send_sync(c); + + /* The above send_sync calls could drop the I/O lock, but this + * thread will still exclude any other thread that tries to write, + * so the sequence number postconditions still hold. */ + send_request(c, req->isvoid, workaround, flags, vector, veclen); + request = c->has_error ? 0 : c->out.request; + pthread_mutex_unlock(&c->iolock); + return request; +} + +int xcb_take_socket(xcb_connection_t *c, void (*return_socket)(void *closure), void *closure, int flags, uint64_t *sent) +{ + int ret; + if(c->has_error) + return 0; + pthread_mutex_lock(&c->iolock); + get_socket_back(c); + + /* _xcb_out_flush may drop the iolock allowing other threads to + * write requests, so keep flushing until we're done + */ + do + ret = _xcb_out_flush_to(c, c->out.request); + while (ret && c->out.request != c->out.request_written); + if(ret) + { + c->out.return_socket = return_socket; + c->out.socket_closure = closure; + if(flags) + _xcb_in_expect_reply(c, c->out.request, WORKAROUND_EXTERNAL_SOCKET_OWNER, flags); + assert(c->out.request == c->out.request_written); + *sent = c->out.request; + } + pthread_mutex_unlock(&c->iolock); + return ret; +} + +int xcb_writev(xcb_connection_t *c, struct iovec *vector, int count, uint64_t requests) +{ + int ret; + if(c->has_error) + return 0; + pthread_mutex_lock(&c->iolock); + c->out.request += requests; + ret = _xcb_out_send(c, vector, count); + pthread_mutex_unlock(&c->iolock); + return ret; +} + +int xcb_flush(xcb_connection_t *c) +{ + int ret; + if(c->has_error) + return 0; + pthread_mutex_lock(&c->iolock); + ret = _xcb_out_flush_to(c, c->out.request); + pthread_mutex_unlock(&c->iolock); + return ret; +} + +/* Private interface */ + +int _xcb_out_init(_xcb_out *out) +{ + if(pthread_cond_init(&out->socket_cond, 0)) + return 0; + out->return_socket = 0; + out->socket_closure = 0; + out->socket_moving = 0; + + if(pthread_cond_init(&out->cond, 0)) + return 0; + out->writing = 0; + + out->queue_len = 0; + + out->request = 0; + out->request_written = 0; + + if(pthread_mutex_init(&out->reqlenlock, 0)) + return 0; + out->maximum_request_length_tag = LAZY_NONE; + + return 1; +} + +void _xcb_out_destroy(_xcb_out *out) +{ + pthread_cond_destroy(&out->cond); + pthread_mutex_destroy(&out->reqlenlock); +} + +int _xcb_out_send(xcb_connection_t *c, struct iovec *vector, int count) +{ + int ret = 1; + while(ret && count) + ret = _xcb_conn_wait(c, &c->out.cond, &vector, &count); + c->out.request_written = c->out.request; + pthread_cond_broadcast(&c->out.cond); + _xcb_in_wake_up_next_reader(c); + return ret; +} + +void _xcb_out_send_sync(xcb_connection_t *c) +{ + /* wait for other writing threads to get out of my way. */ + while(c->out.writing) + pthread_cond_wait(&c->out.cond, &c->iolock); + get_socket_back(c); + send_sync(c); +} + +int _xcb_out_flush_to(xcb_connection_t *c, uint64_t request) +{ + assert(XCB_SEQUENCE_COMPARE(request, <=, c->out.request)); + if(XCB_SEQUENCE_COMPARE(c->out.request_written, >=, request)) + return 1; + if(c->out.queue_len) + { + struct iovec vec; + vec.iov_base = c->out.queue; + vec.iov_len = c->out.queue_len; + c->out.queue_len = 0; + return _xcb_out_send(c, &vec, 1); + } + while(c->out.writing) + pthread_cond_wait(&c->out.cond, &c->iolock); + assert(XCB_SEQUENCE_COMPARE(c->out.request_written, >=, request)); + return 1; +} diff --git a/external/mit/xorg/lib/libxcb/files/xcb_util.c b/external/mit/xorg/lib/libxcb/files/xcb_util.c new file mode 100644 index 000000000..463d085f6 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb_util.c @@ -0,0 +1,484 @@ +/* Copyright (C) 2001-2004 Bart Massey and Jamey Sharp. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +/* Utility functions implementable using only public APIs. */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#ifdef _WIN32 +#include "xcb_windefs.h" +#else +#include +#include +#include +#include +#include +#include +#include +#endif /* _WIN32 */ + +#include "xcb.h" +#include "xcbext.h" +#include "xcbint.h" + +#if defined(HAVE_TSOL_LABEL_H) && defined(HAVE_IS_SYSTEM_LABELED) +# include +# include +#endif + +int xcb_popcount(uint32_t mask) +{ + uint32_t y; + y = (mask >> 1) & 033333333333; + y = mask - y - ((y >> 1) & 033333333333); + return ((y + (y >> 3)) & 030707070707) % 077; +} + +int xcb_sumof(uint8_t *list, int len) +{ + int i, s = 0; + for(i=0; i= 0 || (errno != ENOENT && errno != ECONNREFUSED)) + { + free(file); + return fd; + } + +#endif + fd = _xcb_open_unix(protocol, file); + free(file); + + if (fd < 0 && !protocol && *host == '\0') { + unsigned short port = X_TCP_PORT + display; + fd = _xcb_open_tcp(host, protocol, port); + } + + return fd; +#endif /* !_WIN32 */ + return -1; /* if control reaches here then something has gone wrong */ +} + +static int _xcb_socket(int family, int type, int proto) +{ + int fd; + +#ifdef SOCK_CLOEXEC + fd = socket(family, type | SOCK_CLOEXEC, proto); + if (fd == -1 && errno == EINVAL) +#endif + { + fd = socket(family, type, proto); +#ifndef _WIN32 + if (fd >= 0) + fcntl(fd, F_SETFD, FD_CLOEXEC); +#endif + } + return fd; +} + + +static int _xcb_do_connect(int fd, const struct sockaddr* addr, int addrlen) { + int on = 1; + + if(fd < 0) + return -1; + + setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, &on, sizeof(on)); + setsockopt(fd, SOL_SOCKET, SO_KEEPALIVE, &on, sizeof(on)); + + return connect(fd, addr, addrlen); +} + +static int _xcb_open_tcp(const char *host, char *protocol, const unsigned short port) +{ + int fd = -1; +#if HAVE_GETADDRINFO + struct addrinfo hints; + char service[6]; /* "65535" with the trailing '\0' */ + struct addrinfo *results, *addr; + char *bracket; +#endif + + if (protocol && strcmp("tcp",protocol) && strcmp("inet",protocol) +#ifdef AF_INET6 + && strcmp("inet6",protocol) +#endif + ) + return -1; + + if (*host == '\0') + host = "localhost"; + +#if HAVE_GETADDRINFO + memset(&hints, 0, sizeof(hints)); +#ifdef AI_NUMERICSERV + hints.ai_flags |= AI_NUMERICSERV; +#endif + hints.ai_family = AF_UNSPEC; + hints.ai_socktype = SOCK_STREAM; + +#ifdef AF_INET6 + /* Allow IPv6 addresses enclosed in brackets. */ + if(host[0] == '[' && (bracket = strrchr(host, ']')) && bracket[1] == '\0') + { + *bracket = '\0'; + ++host; + hints.ai_flags |= AI_NUMERICHOST; + hints.ai_family = AF_INET6; + } +#endif + + snprintf(service, sizeof(service), "%hu", port); + if(getaddrinfo(host, service, &hints, &results)) + /* FIXME: use gai_strerror, and fill in error connection */ + return -1; + + for(addr = results; addr; addr = addr->ai_next) + { + fd = _xcb_socket(addr->ai_family, addr->ai_socktype, addr->ai_protocol); + if (_xcb_do_connect(fd, addr->ai_addr, addr->ai_addrlen) >= 0) + break; + close(fd); + fd = -1; + } + freeaddrinfo(results); + return fd; +#else + { + struct hostent* _h; + struct sockaddr_in _s; + struct in_addr ** _c; + + if((_h = gethostbyname(host)) == NULL) + return -1; + + _c = (struct in_addr**)_h->h_addr_list; + fd = -1; + + while(*_c) { + _s.sin_family = AF_INET; + _s.sin_port = htons(port); + _s.sin_addr = *(*_c); + + fd = _xcb_socket(_s.sin_family, SOCK_STREAM, 0); + if(_xcb_do_connect(fd, (struct sockaddr*)&_s, sizeof(_s)) >= 0) + break; + + close(fd); + fd = -1; + ++_c; + } + + return fd; + } +#endif +} + +#ifndef _WIN32 +static int _xcb_open_unix(char *protocol, const char *file) +{ + int fd; + struct sockaddr_un addr; + + if (protocol && strcmp("unix",protocol)) + return -1; + + strcpy(addr.sun_path, file); + addr.sun_family = AF_UNIX; +#ifdef HAVE_SOCKADDR_SUN_LEN + addr.sun_len = SUN_LEN(&addr); +#endif + fd = _xcb_socket(AF_UNIX, SOCK_STREAM, 0); + if(fd == -1) + return -1; + if(connect(fd, (struct sockaddr *) &addr, sizeof(addr)) == -1) { + close(fd); + return -1; + } + return fd; +} +#endif /* !_WIN32 */ + +#ifdef HAVE_ABSTRACT_SOCKETS +static int _xcb_open_abstract(char *protocol, const char *file, size_t filelen) +{ + int fd; + struct sockaddr_un addr = {0}; + socklen_t namelen; + + if (protocol && strcmp("unix",protocol)) + return -1; + + strcpy(addr.sun_path + 1, file); + addr.sun_family = AF_UNIX; + namelen = offsetof(struct sockaddr_un, sun_path) + 1 + filelen; +#ifdef HAVE_SOCKADDR_SUN_LEN + addr.sun_len = 1 + filelen; +#endif + fd = _xcb_socket(AF_UNIX, SOCK_STREAM, 0); + if (fd == -1) + return -1; + if (connect(fd, (struct sockaddr *) &addr, namelen) == -1) { + close(fd); + return -1; + } + return fd; +} +#endif + +xcb_connection_t *xcb_connect(const char *displayname, int *screenp) +{ + return xcb_connect_to_display_with_auth_info(displayname, NULL, screenp); +} + +xcb_connection_t *xcb_connect_to_display_with_auth_info(const char *displayname, xcb_auth_info_t *auth, int *screenp) +{ + int fd, display = 0; + char *host = NULL; + char *protocol = NULL; + xcb_auth_info_t ourauth; + xcb_connection_t *c; + + int parsed = _xcb_parse_display(displayname, &host, &protocol, &display, screenp); + + if(!parsed) { + c = _xcb_conn_ret_error(XCB_CONN_CLOSED_PARSE_ERR); + goto out; + } else { +#ifdef _WIN32 + WSADATA wsaData; + if (WSAStartup(MAKEWORD(2, 2), &wsaData) != 0) { + c = _xcb_conn_ret_error(XCB_CONN_ERROR); + goto out; + } +#endif + fd = _xcb_open(host, protocol, display); + } + + if(fd == -1) { + c = _xcb_conn_ret_error(XCB_CONN_ERROR); +#ifdef _WIN32 + WSACleanup(); +#endif + goto out; + } + + if(auth) { + c = xcb_connect_to_fd(fd, auth); + goto out; + } + + if(_xcb_get_auth_info(fd, &ourauth, display)) + { + c = xcb_connect_to_fd(fd, &ourauth); + free(ourauth.name); + free(ourauth.data); + } + else + c = xcb_connect_to_fd(fd, 0); + + if(c->has_error) + goto out; + + /* Make sure requested screen number is in bounds for this server */ + if((screenp != NULL) && (*screenp >= (int) c->setup->roots_len)) { + xcb_disconnect(c); + c = _xcb_conn_ret_error(XCB_CONN_CLOSED_INVALID_SCREEN); + goto out; + } + +out: + free(host); + free(protocol); + return c; +} diff --git a/external/mit/xorg/lib/libxcb/files/xcb_windefs.h b/external/mit/xorg/lib/libxcb/files/xcb_windefs.h new file mode 100644 index 000000000..d6c732940 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb_windefs.h @@ -0,0 +1,45 @@ +/* Copyright (C) 2009 Jatin Golani. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + + +#ifndef _XCB_WINDEFS_H +#define _XCB_WINDEFS_H + +#ifndef WINVER +#define WINVER 0x0501 /* required for getaddrinfo/freeaddrinfo defined only for WinXP and above */ +#endif + +#include +#include +#include + +struct iovec { + void *iov_base; /* Pointer to data. */ + int iov_len; /* Length of data. */ +}; + +typedef unsigned int in_addr_t; + +#endif /* xcb_windefs.h */ diff --git a/external/mit/xorg/lib/libxcb/files/xcb_xid.c b/external/mit/xorg/lib/libxcb/files/xcb_xid.c new file mode 100644 index 000000000..79a9a27de --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcb_xid.c @@ -0,0 +1,101 @@ +/* Copyright (C) 2001-2008 Bart Massey and Jamey Sharp. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +/* XID allocators. */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include "xcb.h" +#include "xcbext.h" +#include "xcbint.h" +#include "xc_misc.h" + +/* Public interface */ + +uint32_t xcb_generate_id(xcb_connection_t *c) +{ + uint32_t ret; + if(c->has_error) + return -1; + pthread_mutex_lock(&c->xid.lock); + if(c->xid.last >= c->xid.max - c->xid.inc + 1) + { + xcb_xc_misc_get_xid_range_reply_t *range; + assert(c->xid.last == c->xid.max); + if (c->xid.last == 0) { + /* finish setting up initial range */ + c->xid.max = c->setup->resource_id_mask; + } else { + /* check for extension */ + const xcb_query_extension_reply_t *xc_misc_reply = + xcb_get_extension_data(c, &xcb_xc_misc_id); + if (!xc_misc_reply) { + pthread_mutex_unlock(&c->xid.lock); + return -1; + } + /* get new range */ + range = xcb_xc_misc_get_xid_range_reply(c, + xcb_xc_misc_get_xid_range(c), 0); + /* XXX The latter disjunct is what the server returns + when it is out of XIDs. Sweet. */ + if(!range || (range->start_id == 0 && range->count == 1)) + { + pthread_mutex_unlock(&c->xid.lock); + return -1; + } + assert(range->count > 0 && range->start_id > 0); + c->xid.last = range->start_id; + c->xid.max = range->start_id + (range->count - 1) * c->xid.inc; + free(range); + } + } else { + c->xid.last += c->xid.inc; + } + ret = c->xid.last | c->xid.base; + pthread_mutex_unlock(&c->xid.lock); + return ret; +} + +/* Private interface */ + +int _xcb_xid_init(xcb_connection_t *c) +{ + if(pthread_mutex_init(&c->xid.lock, 0)) + return 0; + c->xid.last = 0; + c->xid.max = 0; + c->xid.base = c->setup->resource_id_base; + c->xid.inc = c->setup->resource_id_mask & -(c->setup->resource_id_mask); + return 1; +} + +void _xcb_xid_destroy(xcb_connection_t *c) +{ + pthread_mutex_destroy(&c->xid.lock); +} diff --git a/external/mit/xorg/lib/libxcb/files/xcbext.h b/external/mit/xorg/lib/libxcb/files/xcbext.h new file mode 100644 index 000000000..98b3c93c1 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcbext.h @@ -0,0 +1,102 @@ +/* + * Copyright (C) 2001-2004 Bart Massey and Jamey Sharp. + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +#ifndef __XCBEXT_H +#define __XCBEXT_H + +#include "xcb.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/* xcb_ext.c */ + +struct xcb_extension_t { + const char *name; + int global_id; +}; + + +/* xcb_out.c */ + +typedef struct { + size_t count; + xcb_extension_t *ext; + uint8_t opcode; + uint8_t isvoid; +} xcb_protocol_request_t; + +enum xcb_send_request_flags_t { + XCB_REQUEST_CHECKED = 1 << 0, + XCB_REQUEST_RAW = 1 << 1, + XCB_REQUEST_DISCARD_REPLY = 1 << 2 +}; + +unsigned int xcb_send_request(xcb_connection_t *c, int flags, struct iovec *vector, const xcb_protocol_request_t *request); + +/* xcb_take_socket allows external code to ask XCB for permission to + * take over the write side of the socket and send raw data with + * xcb_writev. xcb_take_socket provides the sequence number of the last + * request XCB sent. The caller of xcb_take_socket must supply a + * callback which XCB can call when it wants the write side of the + * socket back to make a request. This callback synchronizes with the + * external socket owner and flushes any output queues if appropriate. + * If you are sending requests which won't cause a reply, please note the + * comment for xcb_writev which explains some sequence number wrap issues. + * */ +int xcb_take_socket(xcb_connection_t *c, void (*return_socket)(void *closure), void *closure, int flags, uint64_t *sent); + +/* You must own the write-side of the socket (you've called + * xcb_take_socket, and haven't returned from return_socket yet) to call + * xcb_writev. Also, the iovec must have at least 1 byte of data in it. + * You have to make sure that xcb can detect sequence number wraps correctly. + * This means that the first request you send after xcb_take_socket must cause a + * reply (e.g. just insert a GetInputFocus request). After every (1 << 16) - 1 + * requests without a reply, you have to insert a request which will cause a + * reply. You can again use GetInputFocus for this. You do not have to wait for + * any of the GetInputFocus replies, but can instead handle them via + * xcb_discard_reply(). */ +int xcb_writev(xcb_connection_t *c, struct iovec *vector, int count, uint64_t requests); + + +/* xcb_in.c */ + +void *xcb_wait_for_reply(xcb_connection_t *c, unsigned int request, xcb_generic_error_t **e); +int xcb_poll_for_reply(xcb_connection_t *c, unsigned int request, void **reply, xcb_generic_error_t **error); + + +/* xcb_util.c */ + +int xcb_popcount(uint32_t mask); +int xcb_sumof(uint8_t *list, int len); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/external/mit/xorg/lib/libxcb/files/xcbint.h b/external/mit/xorg/lib/libxcb/files/xcbint.h new file mode 100644 index 000000000..f9e5a52f7 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xcbint.h @@ -0,0 +1,209 @@ +/* + * Copyright (C) 2001-2004 Bart Massey and Jamey Sharp. + * All Rights Reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a + * copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * Except as contained in this notice, the names of the authors or their + * institutions shall not be used in advertising or otherwise to promote the + * sale, use or other dealings in this Software without prior written + * authorization from the authors. + */ + +#ifndef __XCBINT_H +#define __XCBINT_H + +#include "bigreq.h" + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifdef GCC_HAS_VISIBILITY +#pragma GCC visibility push(hidden) +#endif + +enum workarounds { + WORKAROUND_NONE, + WORKAROUND_GLX_GET_FB_CONFIGS_BUG, + WORKAROUND_EXTERNAL_SOCKET_OWNER +}; + +enum lazy_reply_tag +{ + LAZY_NONE = 0, + LAZY_COOKIE, + LAZY_FORCED +}; + +#define XCB_PAD(i) (-(i) & 3) + +#define XCB_SEQUENCE_COMPARE(a,op,b) ((int64_t) ((a) - (b)) op 0) + +#ifndef offsetof +#define offsetof(type,member) ((size_t) &((type *)0)->member) +#endif + +#ifndef MIN +#define MIN(x,y) ((x) < (y) ? (x) : (y)) +#endif + +#define container_of(pointer,type,member) ((type *)(((char *)(pointer)) - offsetof(type, member))) + +/* xcb_list.c */ + +typedef void (*xcb_list_free_func_t)(void *); + +typedef struct _xcb_map _xcb_map; + +_xcb_map *_xcb_map_new(void); +void _xcb_map_delete(_xcb_map *q, xcb_list_free_func_t do_free); +int _xcb_map_put(_xcb_map *q, unsigned int key, void *data); +void *_xcb_map_remove(_xcb_map *q, unsigned int key); + + +/* xcb_out.c */ + +typedef struct _xcb_out { + pthread_cond_t cond; + int writing; + + pthread_cond_t socket_cond; + void (*return_socket)(void *closure); + void *socket_closure; + int socket_moving; + + char queue[XCB_QUEUE_BUFFER_SIZE]; + int queue_len; + + uint64_t request; + uint64_t request_written; + + pthread_mutex_t reqlenlock; + enum lazy_reply_tag maximum_request_length_tag; + union { + xcb_big_requests_enable_cookie_t cookie; + uint32_t value; + } maximum_request_length; +} _xcb_out; + +int _xcb_out_init(_xcb_out *out); +void _xcb_out_destroy(_xcb_out *out); + +int _xcb_out_send(xcb_connection_t *c, struct iovec *vector, int count); +void _xcb_out_send_sync(xcb_connection_t *c); +int _xcb_out_flush_to(xcb_connection_t *c, uint64_t request); + + +/* xcb_in.c */ + +typedef struct _xcb_in { + pthread_cond_t event_cond; + int reading; + + char queue[4096]; + int queue_len; + + uint64_t request_expected; + uint64_t request_read; + uint64_t request_completed; + struct reply_list *current_reply; + struct reply_list **current_reply_tail; + + _xcb_map *replies; + struct event_list *events; + struct event_list **events_tail; + struct reader_list *readers; + + struct pending_reply *pending_replies; + struct pending_reply **pending_replies_tail; +} _xcb_in; + +int _xcb_in_init(_xcb_in *in); +void _xcb_in_destroy(_xcb_in *in); + +void _xcb_in_wake_up_next_reader(xcb_connection_t *c); + +int _xcb_in_expect_reply(xcb_connection_t *c, uint64_t request, enum workarounds workaround, int flags); +void _xcb_in_replies_done(xcb_connection_t *c); + +int _xcb_in_read(xcb_connection_t *c); +int _xcb_in_read_block(xcb_connection_t *c, void *buf, int nread); + + +/* xcb_xid.c */ + +typedef struct _xcb_xid { + pthread_mutex_t lock; + uint32_t last; + uint32_t base; + uint32_t max; + uint32_t inc; +} _xcb_xid; + +int _xcb_xid_init(xcb_connection_t *c); +void _xcb_xid_destroy(xcb_connection_t *c); + + +/* xcb_ext.c */ + +typedef struct _xcb_ext { + pthread_mutex_t lock; + struct lazyreply *extensions; + int extensions_size; +} _xcb_ext; + +int _xcb_ext_init(xcb_connection_t *c); +void _xcb_ext_destroy(xcb_connection_t *c); + + +/* xcb_conn.c */ + +struct xcb_connection_t { + int has_error; + + /* constant data */ + xcb_setup_t *setup; + int fd; + + /* I/O data */ + pthread_mutex_t iolock; + _xcb_in in; + _xcb_out out; + + /* misc data */ + _xcb_ext ext; + _xcb_xid xid; +}; + +void _xcb_conn_shutdown(xcb_connection_t *c, int err); + +xcb_connection_t *_xcb_conn_ret_error(int err); + +int _xcb_conn_wait(xcb_connection_t *c, pthread_cond_t *cond, struct iovec **vector, int *count); + + +/* xcb_auth.c */ + +int _xcb_get_auth_info(int fd, xcb_auth_info_t *info, int display); + +#ifdef GCC_HAS_VISIBILITY +#pragma GCC visibility pop +#endif + +#endif diff --git a/external/mit/xorg/lib/libxcb/files/xevie.c b/external/mit/xorg/lib/libxcb/files/xevie.c new file mode 100644 index 000000000..4a68de89f --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xevie.c @@ -0,0 +1,541 @@ +/* + * This file generated automatically from xevie.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xevie.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) + +xcb_extension_t xcb_xevie_id = { "XEVIE", 0 }; + + +/***************************************************************************** + ** + ** xcb_xevie_query_version_cookie_t xcb_xevie_query_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_xevie_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_query_version_cookie_t +xcb_xevie_query_version (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_query_version_cookie_t xcb_ret; + xcb_xevie_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_query_version_cookie_t xcb_xevie_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_xevie_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_query_version_cookie_t +xcb_xevie_query_version_unchecked (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_query_version_cookie_t xcb_ret; + xcb_xevie_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_query_version_reply_t * xcb_xevie_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_query_version_reply_t * +xcb_xevie_query_version_reply (xcb_connection_t *c /**< */, + xcb_xevie_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xevie_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xevie_start_cookie_t xcb_xevie_start + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xevie_start_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_start_cookie_t +xcb_xevie_start (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_START, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_start_cookie_t xcb_ret; + xcb_xevie_start_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_start_cookie_t xcb_xevie_start_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xevie_start_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_start_cookie_t +xcb_xevie_start_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_START, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_start_cookie_t xcb_ret; + xcb_xevie_start_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_start_reply_t * xcb_xevie_start_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_start_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_start_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_start_reply_t * +xcb_xevie_start_reply (xcb_connection_t *c /**< */, + xcb_xevie_start_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xevie_start_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xevie_end_cookie_t xcb_xevie_end + ** + ** @param xcb_connection_t *c + ** @param uint32_t cmap + ** @returns xcb_xevie_end_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_end_cookie_t +xcb_xevie_end (xcb_connection_t *c /**< */, + uint32_t cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_END, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_end_cookie_t xcb_ret; + xcb_xevie_end_request_t xcb_out; + + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_end_cookie_t xcb_xevie_end_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t cmap + ** @returns xcb_xevie_end_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_end_cookie_t +xcb_xevie_end_unchecked (xcb_connection_t *c /**< */, + uint32_t cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_END, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_end_cookie_t xcb_ret; + xcb_xevie_end_request_t xcb_out; + + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_end_reply_t * xcb_xevie_end_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_end_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_end_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_end_reply_t * +xcb_xevie_end_reply (xcb_connection_t *c /**< */, + xcb_xevie_end_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xevie_end_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_xevie_event_next + ** + ** @param xcb_xevie_event_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xevie_event_next (xcb_xevie_event_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xevie_event_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xevie_event_end + ** + ** @param xcb_xevie_event_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xevie_event_end (xcb_xevie_event_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_send_cookie_t xcb_xevie_send + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_event_t event + ** @param uint32_t data_type + ** @returns xcb_xevie_send_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_send_cookie_t +xcb_xevie_send (xcb_connection_t *c /**< */, + xcb_xevie_event_t event /**< */, + uint32_t data_type /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_SEND, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_send_cookie_t xcb_ret; + xcb_xevie_send_request_t xcb_out; + + xcb_out.event = event; + xcb_out.data_type = data_type; + memset(xcb_out.pad0, 0, 64); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_send_cookie_t xcb_xevie_send_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_event_t event + ** @param uint32_t data_type + ** @returns xcb_xevie_send_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_send_cookie_t +xcb_xevie_send_unchecked (xcb_connection_t *c /**< */, + xcb_xevie_event_t event /**< */, + uint32_t data_type /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_SEND, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_send_cookie_t xcb_ret; + xcb_xevie_send_request_t xcb_out; + + xcb_out.event = event; + xcb_out.data_type = data_type; + memset(xcb_out.pad0, 0, 64); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_send_reply_t * xcb_xevie_send_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_send_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_send_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_send_reply_t * +xcb_xevie_send_reply (xcb_connection_t *c /**< */, + xcb_xevie_send_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xevie_send_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xevie_select_input_cookie_t xcb_xevie_select_input + ** + ** @param xcb_connection_t *c + ** @param uint32_t event_mask + ** @returns xcb_xevie_select_input_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_select_input_cookie_t +xcb_xevie_select_input (xcb_connection_t *c /**< */, + uint32_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_SELECT_INPUT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_select_input_cookie_t xcb_ret; + xcb_xevie_select_input_request_t xcb_out; + + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_select_input_cookie_t xcb_xevie_select_input_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t event_mask + ** @returns xcb_xevie_select_input_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_select_input_cookie_t +xcb_xevie_select_input_unchecked (xcb_connection_t *c /**< */, + uint32_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xevie_id, + /* opcode */ XCB_XEVIE_SELECT_INPUT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xevie_select_input_cookie_t xcb_ret; + xcb_xevie_select_input_request_t xcb_out; + + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xevie_select_input_reply_t * xcb_xevie_select_input_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_select_input_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_select_input_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_select_input_reply_t * +xcb_xevie_select_input_reply (xcb_connection_t *c /**< */, + xcb_xevie_select_input_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xevie_select_input_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/xevie.h b/external/mit/xorg/lib/libxcb/files/xevie.h new file mode 100644 index 000000000..7a67da198 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xevie.h @@ -0,0 +1,667 @@ +/* + * This file generated automatically from xevie.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Xevie_API XCB Xevie API + * @brief Xevie XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XEVIE_H +#define __XEVIE_H + +#include "xcb.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_XEVIE_MAJOR_VERSION 1 +#define XCB_XEVIE_MINOR_VERSION 0 + +extern xcb_extension_t xcb_xevie_id; + +/** + * @brief xcb_xevie_query_version_cookie_t + **/ +typedef struct xcb_xevie_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_xevie_query_version_cookie_t; + +/** Opcode for xcb_xevie_query_version. */ +#define XCB_XEVIE_QUERY_VERSION 0 + +/** + * @brief xcb_xevie_query_version_request_t + **/ +typedef struct xcb_xevie_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t client_major_version; /**< */ + uint16_t client_minor_version; /**< */ +} xcb_xevie_query_version_request_t; + +/** + * @brief xcb_xevie_query_version_reply_t + **/ +typedef struct xcb_xevie_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t server_major_version; /**< */ + uint16_t server_minor_version; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_xevie_query_version_reply_t; + +/** + * @brief xcb_xevie_start_cookie_t + **/ +typedef struct xcb_xevie_start_cookie_t { + unsigned int sequence; /**< */ +} xcb_xevie_start_cookie_t; + +/** Opcode for xcb_xevie_start. */ +#define XCB_XEVIE_START 1 + +/** + * @brief xcb_xevie_start_request_t + **/ +typedef struct xcb_xevie_start_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ +} xcb_xevie_start_request_t; + +/** + * @brief xcb_xevie_start_reply_t + **/ +typedef struct xcb_xevie_start_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_xevie_start_reply_t; + +/** + * @brief xcb_xevie_end_cookie_t + **/ +typedef struct xcb_xevie_end_cookie_t { + unsigned int sequence; /**< */ +} xcb_xevie_end_cookie_t; + +/** Opcode for xcb_xevie_end. */ +#define XCB_XEVIE_END 2 + +/** + * @brief xcb_xevie_end_request_t + **/ +typedef struct xcb_xevie_end_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t cmap; /**< */ +} xcb_xevie_end_request_t; + +/** + * @brief xcb_xevie_end_reply_t + **/ +typedef struct xcb_xevie_end_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_xevie_end_reply_t; + +typedef enum xcb_xevie_datatype_t { + XCB_XEVIE_DATATYPE_UNMODIFIED, + XCB_XEVIE_DATATYPE_MODIFIED +} xcb_xevie_datatype_t; + +/** + * @brief xcb_xevie_event_t + **/ +typedef struct xcb_xevie_event_t { + uint8_t pad0[32]; /**< */ +} xcb_xevie_event_t; + +/** + * @brief xcb_xevie_event_iterator_t + **/ +typedef struct xcb_xevie_event_iterator_t { + xcb_xevie_event_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xevie_event_iterator_t; + +/** + * @brief xcb_xevie_send_cookie_t + **/ +typedef struct xcb_xevie_send_cookie_t { + unsigned int sequence; /**< */ +} xcb_xevie_send_cookie_t; + +/** Opcode for xcb_xevie_send. */ +#define XCB_XEVIE_SEND 3 + +/** + * @brief xcb_xevie_send_request_t + **/ +typedef struct xcb_xevie_send_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xevie_event_t event; /**< */ + uint32_t data_type; /**< */ + uint8_t pad0[64]; /**< */ +} xcb_xevie_send_request_t; + +/** + * @brief xcb_xevie_send_reply_t + **/ +typedef struct xcb_xevie_send_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_xevie_send_reply_t; + +/** + * @brief xcb_xevie_select_input_cookie_t + **/ +typedef struct xcb_xevie_select_input_cookie_t { + unsigned int sequence; /**< */ +} xcb_xevie_select_input_cookie_t; + +/** Opcode for xcb_xevie_select_input. */ +#define XCB_XEVIE_SELECT_INPUT 4 + +/** + * @brief xcb_xevie_select_input_request_t + **/ +typedef struct xcb_xevie_select_input_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t event_mask; /**< */ +} xcb_xevie_select_input_request_t; + +/** + * @brief xcb_xevie_select_input_reply_t + **/ +typedef struct xcb_xevie_select_input_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_xevie_select_input_reply_t; + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xevie_query_version_cookie_t xcb_xevie_query_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_xevie_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_query_version_cookie_t +xcb_xevie_query_version (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xevie_query_version_cookie_t xcb_xevie_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t client_major_version + ** @param uint16_t client_minor_version + ** @returns xcb_xevie_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_query_version_cookie_t +xcb_xevie_query_version_unchecked (xcb_connection_t *c /**< */, + uint16_t client_major_version /**< */, + uint16_t client_minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xevie_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xevie_query_version_reply_t * xcb_xevie_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_query_version_reply_t * +xcb_xevie_query_version_reply (xcb_connection_t *c /**< */, + xcb_xevie_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xevie_start_cookie_t xcb_xevie_start + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xevie_start_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_start_cookie_t +xcb_xevie_start (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xevie_start_cookie_t xcb_xevie_start_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xevie_start_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_start_cookie_t +xcb_xevie_start_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xevie_start_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xevie_start_reply_t * xcb_xevie_start_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_start_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_start_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_start_reply_t * +xcb_xevie_start_reply (xcb_connection_t *c /**< */, + xcb_xevie_start_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xevie_end_cookie_t xcb_xevie_end + ** + ** @param xcb_connection_t *c + ** @param uint32_t cmap + ** @returns xcb_xevie_end_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_end_cookie_t +xcb_xevie_end (xcb_connection_t *c /**< */, + uint32_t cmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xevie_end_cookie_t xcb_xevie_end_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t cmap + ** @returns xcb_xevie_end_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_end_cookie_t +xcb_xevie_end_unchecked (xcb_connection_t *c /**< */, + uint32_t cmap /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xevie_end_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xevie_end_reply_t * xcb_xevie_end_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_end_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_end_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_end_reply_t * +xcb_xevie_end_reply (xcb_connection_t *c /**< */, + xcb_xevie_end_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xevie_event_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xevie_event_t) + */ + +/***************************************************************************** + ** + ** void xcb_xevie_event_next + ** + ** @param xcb_xevie_event_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xevie_event_next (xcb_xevie_event_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xevie_event_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xevie_event_end + ** + ** @param xcb_xevie_event_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xevie_event_end (xcb_xevie_event_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xevie_send_cookie_t xcb_xevie_send + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_event_t event + ** @param uint32_t data_type + ** @returns xcb_xevie_send_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_send_cookie_t +xcb_xevie_send (xcb_connection_t *c /**< */, + xcb_xevie_event_t event /**< */, + uint32_t data_type /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xevie_send_cookie_t xcb_xevie_send_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_event_t event + ** @param uint32_t data_type + ** @returns xcb_xevie_send_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_send_cookie_t +xcb_xevie_send_unchecked (xcb_connection_t *c /**< */, + xcb_xevie_event_t event /**< */, + uint32_t data_type /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xevie_send_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xevie_send_reply_t * xcb_xevie_send_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_send_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_send_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_send_reply_t * +xcb_xevie_send_reply (xcb_connection_t *c /**< */, + xcb_xevie_send_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xevie_select_input_cookie_t xcb_xevie_select_input + ** + ** @param xcb_connection_t *c + ** @param uint32_t event_mask + ** @returns xcb_xevie_select_input_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_select_input_cookie_t +xcb_xevie_select_input (xcb_connection_t *c /**< */, + uint32_t event_mask /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xevie_select_input_cookie_t xcb_xevie_select_input_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t event_mask + ** @returns xcb_xevie_select_input_cookie_t + ** + *****************************************************************************/ + +xcb_xevie_select_input_cookie_t +xcb_xevie_select_input_unchecked (xcb_connection_t *c /**< */, + uint32_t event_mask /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xevie_select_input_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xevie_select_input_reply_t * xcb_xevie_select_input_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xevie_select_input_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xevie_select_input_reply_t * + ** + *****************************************************************************/ + +xcb_xevie_select_input_reply_t * +xcb_xevie_select_input_reply (xcb_connection_t *c /**< */, + xcb_xevie_select_input_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xf86dri.c b/external/mit/xorg/lib/libxcb/files/xf86dri.c new file mode 100644 index 000000000..c203c3b78 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xf86dri.c @@ -0,0 +1,1551 @@ +/* + * This file generated automatically from xf86dri.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xf86dri.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) + +xcb_extension_t xcb_xf86dri_id = { "XFree86-DRI", 0 }; + + +/***************************************************************************** + ** + ** void xcb_xf86dri_drm_clip_rect_next + ** + ** @param xcb_xf86dri_drm_clip_rect_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xf86dri_drm_clip_rect_next (xcb_xf86dri_drm_clip_rect_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xf86dri_drm_clip_rect_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xf86dri_drm_clip_rect_end + ** + ** @param xcb_xf86dri_drm_clip_rect_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xf86dri_drm_clip_rect_end (xcb_xf86dri_drm_clip_rect_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_query_version_cookie_t xcb_xf86dri_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_xf86dri_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_query_version_cookie_t +xcb_xf86dri_query_version (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_query_version_cookie_t xcb_ret; + xcb_xf86dri_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_query_version_cookie_t xcb_xf86dri_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xf86dri_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_query_version_cookie_t +xcb_xf86dri_query_version_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_query_version_cookie_t xcb_ret; + xcb_xf86dri_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_query_version_reply_t * xcb_xf86dri_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_query_version_reply_t * +xcb_xf86dri_query_version_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xf86dri_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_query_direct_rendering_capable_cookie_t xcb_xf86dri_query_direct_rendering_capable + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_query_direct_rendering_capable_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_query_direct_rendering_capable_cookie_t +xcb_xf86dri_query_direct_rendering_capable (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_QUERY_DIRECT_RENDERING_CAPABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_query_direct_rendering_capable_cookie_t xcb_ret; + xcb_xf86dri_query_direct_rendering_capable_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_query_direct_rendering_capable_cookie_t xcb_xf86dri_query_direct_rendering_capable_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_query_direct_rendering_capable_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_query_direct_rendering_capable_cookie_t +xcb_xf86dri_query_direct_rendering_capable_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_QUERY_DIRECT_RENDERING_CAPABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_query_direct_rendering_capable_cookie_t xcb_ret; + xcb_xf86dri_query_direct_rendering_capable_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_query_direct_rendering_capable_reply_t * xcb_xf86dri_query_direct_rendering_capable_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_query_direct_rendering_capable_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_query_direct_rendering_capable_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_query_direct_rendering_capable_reply_t * +xcb_xf86dri_query_direct_rendering_capable_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_query_direct_rendering_capable_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xf86dri_query_direct_rendering_capable_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xf86dri_open_connection_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xf86dri_open_connection_reply_t *_aux = (xcb_xf86dri_open_connection_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xf86dri_open_connection_reply_t); + xcb_tmp += xcb_block_len; + /* bus_id */ + xcb_block_len += _aux->bus_id_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_open_connection_cookie_t xcb_xf86dri_open_connection + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_open_connection_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_open_connection_cookie_t +xcb_xf86dri_open_connection (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_OPEN_CONNECTION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_open_connection_cookie_t xcb_ret; + xcb_xf86dri_open_connection_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_open_connection_cookie_t xcb_xf86dri_open_connection_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_open_connection_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_open_connection_cookie_t +xcb_xf86dri_open_connection_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_OPEN_CONNECTION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_open_connection_cookie_t xcb_ret; + xcb_xf86dri_open_connection_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_xf86dri_open_connection_bus_id + ** + ** @param const xcb_xf86dri_open_connection_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xf86dri_open_connection_bus_id (const xcb_xf86dri_open_connection_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xf86dri_open_connection_bus_id_length + ** + ** @param const xcb_xf86dri_open_connection_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_open_connection_bus_id_length (const xcb_xf86dri_open_connection_reply_t *R /**< */) +{ + return R->bus_id_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xf86dri_open_connection_bus_id_end + ** + ** @param const xcb_xf86dri_open_connection_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xf86dri_open_connection_bus_id_end (const xcb_xf86dri_open_connection_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->bus_id_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_open_connection_reply_t * xcb_xf86dri_open_connection_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_open_connection_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_open_connection_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_open_connection_reply_t * +xcb_xf86dri_open_connection_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_open_connection_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xf86dri_open_connection_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_close_connection_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_close_connection_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_CLOSE_CONNECTION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xf86dri_close_connection_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_close_connection + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_close_connection (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_CLOSE_CONNECTION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xf86dri_close_connection_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xf86dri_get_client_driver_name_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xf86dri_get_client_driver_name_reply_t *_aux = (xcb_xf86dri_get_client_driver_name_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xf86dri_get_client_driver_name_reply_t); + xcb_tmp += xcb_block_len; + /* client_driver_name */ + xcb_block_len += _aux->client_driver_name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_get_client_driver_name_cookie_t xcb_xf86dri_get_client_driver_name + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_get_client_driver_name_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_client_driver_name_cookie_t +xcb_xf86dri_get_client_driver_name (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_GET_CLIENT_DRIVER_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_get_client_driver_name_cookie_t xcb_ret; + xcb_xf86dri_get_client_driver_name_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_get_client_driver_name_cookie_t xcb_xf86dri_get_client_driver_name_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_get_client_driver_name_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_client_driver_name_cookie_t +xcb_xf86dri_get_client_driver_name_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_GET_CLIENT_DRIVER_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_get_client_driver_name_cookie_t xcb_ret; + xcb_xf86dri_get_client_driver_name_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_xf86dri_get_client_driver_name_client_driver_name + ** + ** @param const xcb_xf86dri_get_client_driver_name_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xf86dri_get_client_driver_name_client_driver_name (const xcb_xf86dri_get_client_driver_name_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xf86dri_get_client_driver_name_client_driver_name_length + ** + ** @param const xcb_xf86dri_get_client_driver_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_get_client_driver_name_client_driver_name_length (const xcb_xf86dri_get_client_driver_name_reply_t *R /**< */) +{ + return R->client_driver_name_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xf86dri_get_client_driver_name_client_driver_name_end + ** + ** @param const xcb_xf86dri_get_client_driver_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xf86dri_get_client_driver_name_client_driver_name_end (const xcb_xf86dri_get_client_driver_name_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->client_driver_name_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_get_client_driver_name_reply_t * xcb_xf86dri_get_client_driver_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_get_client_driver_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_get_client_driver_name_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_get_client_driver_name_reply_t * +xcb_xf86dri_get_client_driver_name_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_get_client_driver_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xf86dri_get_client_driver_name_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_create_context_cookie_t xcb_xf86dri_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t visual + ** @param uint32_t context + ** @returns xcb_xf86dri_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_create_context_cookie_t +xcb_xf86dri_create_context (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t visual /**< */, + uint32_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_create_context_cookie_t xcb_ret; + xcb_xf86dri_create_context_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.visual = visual; + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_create_context_cookie_t xcb_xf86dri_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t visual + ** @param uint32_t context + ** @returns xcb_xf86dri_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_create_context_cookie_t +xcb_xf86dri_create_context_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t visual /**< */, + uint32_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_create_context_cookie_t xcb_ret; + xcb_xf86dri_create_context_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.visual = visual; + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_create_context_reply_t * xcb_xf86dri_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_create_context_reply_t * +xcb_xf86dri_create_context_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xf86dri_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_destroy_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_destroy_context_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_DESTROY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xf86dri_destroy_context_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_destroy_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_destroy_context (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_DESTROY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xf86dri_destroy_context_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_create_drawable_cookie_t xcb_xf86dri_create_drawable + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_xf86dri_create_drawable_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_create_drawable_cookie_t +xcb_xf86dri_create_drawable (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_CREATE_DRAWABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_create_drawable_cookie_t xcb_ret; + xcb_xf86dri_create_drawable_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_create_drawable_cookie_t xcb_xf86dri_create_drawable_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_xf86dri_create_drawable_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_create_drawable_cookie_t +xcb_xf86dri_create_drawable_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_CREATE_DRAWABLE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_create_drawable_cookie_t xcb_ret; + xcb_xf86dri_create_drawable_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_create_drawable_reply_t * xcb_xf86dri_create_drawable_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_create_drawable_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_create_drawable_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_create_drawable_reply_t * +xcb_xf86dri_create_drawable_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_create_drawable_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xf86dri_create_drawable_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_destroy_drawable_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_destroy_drawable_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_DESTROY_DRAWABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xf86dri_destroy_drawable_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_destroy_drawable + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_destroy_drawable (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_DESTROY_DRAWABLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xf86dri_destroy_drawable_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xf86dri_get_drawable_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xf86dri_get_drawable_info_reply_t *_aux = (xcb_xf86dri_get_drawable_info_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xf86dri_get_drawable_info_reply_t); + xcb_tmp += xcb_block_len; + /* clip_rects */ + xcb_block_len += _aux->num_clip_rects * sizeof(xcb_xf86dri_drm_clip_rect_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xf86dri_drm_clip_rect_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* back_clip_rects */ + xcb_block_len += _aux->num_back_clip_rects * sizeof(xcb_xf86dri_drm_clip_rect_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xf86dri_drm_clip_rect_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_get_drawable_info_cookie_t xcb_xf86dri_get_drawable_info + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_xf86dri_get_drawable_info_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_drawable_info_cookie_t +xcb_xf86dri_get_drawable_info (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_GET_DRAWABLE_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_get_drawable_info_cookie_t xcb_ret; + xcb_xf86dri_get_drawable_info_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_get_drawable_info_cookie_t xcb_xf86dri_get_drawable_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_xf86dri_get_drawable_info_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_drawable_info_cookie_t +xcb_xf86dri_get_drawable_info_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_GET_DRAWABLE_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_get_drawable_info_cookie_t xcb_ret; + xcb_xf86dri_get_drawable_info_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_drm_clip_rect_t * xcb_xf86dri_get_drawable_info_clip_rects + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns xcb_xf86dri_drm_clip_rect_t * + ** + *****************************************************************************/ + +xcb_xf86dri_drm_clip_rect_t * +xcb_xf86dri_get_drawable_info_clip_rects (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */) +{ + return (xcb_xf86dri_drm_clip_rect_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xf86dri_get_drawable_info_clip_rects_length + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_get_drawable_info_clip_rects_length (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */) +{ + return R->num_clip_rects; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_drm_clip_rect_iterator_t xcb_xf86dri_get_drawable_info_clip_rects_iterator + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns xcb_xf86dri_drm_clip_rect_iterator_t + ** + *****************************************************************************/ + +xcb_xf86dri_drm_clip_rect_iterator_t +xcb_xf86dri_get_drawable_info_clip_rects_iterator (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */) +{ + xcb_xf86dri_drm_clip_rect_iterator_t i; + i.data = (xcb_xf86dri_drm_clip_rect_t *) (R + 1); + i.rem = R->num_clip_rects; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_drm_clip_rect_t * xcb_xf86dri_get_drawable_info_back_clip_rects + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns xcb_xf86dri_drm_clip_rect_t * + ** + *****************************************************************************/ + +xcb_xf86dri_drm_clip_rect_t * +xcb_xf86dri_get_drawable_info_back_clip_rects (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xf86dri_drm_clip_rect_end(xcb_xf86dri_get_drawable_info_clip_rects_iterator(R)); + return (xcb_xf86dri_drm_clip_rect_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xf86dri_drm_clip_rect_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xf86dri_get_drawable_info_back_clip_rects_length + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_get_drawable_info_back_clip_rects_length (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */) +{ + return R->num_back_clip_rects; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_drm_clip_rect_iterator_t xcb_xf86dri_get_drawable_info_back_clip_rects_iterator + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns xcb_xf86dri_drm_clip_rect_iterator_t + ** + *****************************************************************************/ + +xcb_xf86dri_drm_clip_rect_iterator_t +xcb_xf86dri_get_drawable_info_back_clip_rects_iterator (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */) +{ + xcb_xf86dri_drm_clip_rect_iterator_t i; + xcb_generic_iterator_t prev = xcb_xf86dri_drm_clip_rect_end(xcb_xf86dri_get_drawable_info_clip_rects_iterator(R)); + i.data = (xcb_xf86dri_drm_clip_rect_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xf86dri_drm_clip_rect_t, prev.index)); + i.rem = R->num_back_clip_rects; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_get_drawable_info_reply_t * xcb_xf86dri_get_drawable_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_get_drawable_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_get_drawable_info_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_get_drawable_info_reply_t * +xcb_xf86dri_get_drawable_info_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_get_drawable_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xf86dri_get_drawable_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xf86dri_get_device_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xf86dri_get_device_info_reply_t *_aux = (xcb_xf86dri_get_device_info_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xf86dri_get_device_info_reply_t); + xcb_tmp += xcb_block_len; + /* device_private */ + xcb_block_len += _aux->device_private_size * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_get_device_info_cookie_t xcb_xf86dri_get_device_info + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_get_device_info_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_device_info_cookie_t +xcb_xf86dri_get_device_info (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_GET_DEVICE_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_get_device_info_cookie_t xcb_ret; + xcb_xf86dri_get_device_info_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_get_device_info_cookie_t xcb_xf86dri_get_device_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_get_device_info_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_device_info_cookie_t +xcb_xf86dri_get_device_info_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_GET_DEVICE_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_get_device_info_cookie_t xcb_ret; + xcb_xf86dri_get_device_info_request_t xcb_out; + + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xf86dri_get_device_info_device_private + ** + ** @param const xcb_xf86dri_get_device_info_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xf86dri_get_device_info_device_private (const xcb_xf86dri_get_device_info_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xf86dri_get_device_info_device_private_length + ** + ** @param const xcb_xf86dri_get_device_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_get_device_info_device_private_length (const xcb_xf86dri_get_device_info_reply_t *R /**< */) +{ + return R->device_private_size; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xf86dri_get_device_info_device_private_end + ** + ** @param const xcb_xf86dri_get_device_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xf86dri_get_device_info_device_private_end (const xcb_xf86dri_get_device_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->device_private_size); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_get_device_info_reply_t * xcb_xf86dri_get_device_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_get_device_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_get_device_info_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_get_device_info_reply_t * +xcb_xf86dri_get_device_info_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_get_device_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xf86dri_get_device_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_auth_connection_cookie_t xcb_xf86dri_auth_connection + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t magic + ** @returns xcb_xf86dri_auth_connection_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_auth_connection_cookie_t +xcb_xf86dri_auth_connection (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t magic /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_AUTH_CONNECTION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_auth_connection_cookie_t xcb_ret; + xcb_xf86dri_auth_connection_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.magic = magic; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_auth_connection_cookie_t xcb_xf86dri_auth_connection_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t magic + ** @returns xcb_xf86dri_auth_connection_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_auth_connection_cookie_t +xcb_xf86dri_auth_connection_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t magic /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xf86dri_id, + /* opcode */ XCB_XF86DRI_AUTH_CONNECTION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xf86dri_auth_connection_cookie_t xcb_ret; + xcb_xf86dri_auth_connection_request_t xcb_out; + + xcb_out.screen = screen; + xcb_out.magic = magic; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xf86dri_auth_connection_reply_t * xcb_xf86dri_auth_connection_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_auth_connection_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_auth_connection_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_auth_connection_reply_t * +xcb_xf86dri_auth_connection_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_auth_connection_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xf86dri_auth_connection_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/xf86dri.h b/external/mit/xorg/lib/libxcb/files/xf86dri.h new file mode 100644 index 000000000..fb32e2434 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xf86dri.h @@ -0,0 +1,1542 @@ +/* + * This file generated automatically from xf86dri.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_XF86Dri_API XCB XF86Dri API + * @brief XF86Dri XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XF86DRI_H +#define __XF86DRI_H + +#include "xcb.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_XF86DRI_MAJOR_VERSION 4 +#define XCB_XF86DRI_MINOR_VERSION 1 + +extern xcb_extension_t xcb_xf86dri_id; + +/** + * @brief xcb_xf86dri_drm_clip_rect_t + **/ +typedef struct xcb_xf86dri_drm_clip_rect_t { + int16_t x1; /**< */ + int16_t y1; /**< */ + int16_t x2; /**< */ + int16_t x3; /**< */ +} xcb_xf86dri_drm_clip_rect_t; + +/** + * @brief xcb_xf86dri_drm_clip_rect_iterator_t + **/ +typedef struct xcb_xf86dri_drm_clip_rect_iterator_t { + xcb_xf86dri_drm_clip_rect_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xf86dri_drm_clip_rect_iterator_t; + +/** + * @brief xcb_xf86dri_query_version_cookie_t + **/ +typedef struct xcb_xf86dri_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_xf86dri_query_version_cookie_t; + +/** Opcode for xcb_xf86dri_query_version. */ +#define XCB_XF86DRI_QUERY_VERSION 0 + +/** + * @brief xcb_xf86dri_query_version_request_t + **/ +typedef struct xcb_xf86dri_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_xf86dri_query_version_request_t; + +/** + * @brief xcb_xf86dri_query_version_reply_t + **/ +typedef struct xcb_xf86dri_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t dri_major_version; /**< */ + uint16_t dri_minor_version; /**< */ + uint32_t dri_minor_patch; /**< */ +} xcb_xf86dri_query_version_reply_t; + +/** + * @brief xcb_xf86dri_query_direct_rendering_capable_cookie_t + **/ +typedef struct xcb_xf86dri_query_direct_rendering_capable_cookie_t { + unsigned int sequence; /**< */ +} xcb_xf86dri_query_direct_rendering_capable_cookie_t; + +/** Opcode for xcb_xf86dri_query_direct_rendering_capable. */ +#define XCB_XF86DRI_QUERY_DIRECT_RENDERING_CAPABLE 1 + +/** + * @brief xcb_xf86dri_query_direct_rendering_capable_request_t + **/ +typedef struct xcb_xf86dri_query_direct_rendering_capable_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ +} xcb_xf86dri_query_direct_rendering_capable_request_t; + +/** + * @brief xcb_xf86dri_query_direct_rendering_capable_reply_t + **/ +typedef struct xcb_xf86dri_query_direct_rendering_capable_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t is_capable; /**< */ +} xcb_xf86dri_query_direct_rendering_capable_reply_t; + +/** + * @brief xcb_xf86dri_open_connection_cookie_t + **/ +typedef struct xcb_xf86dri_open_connection_cookie_t { + unsigned int sequence; /**< */ +} xcb_xf86dri_open_connection_cookie_t; + +/** Opcode for xcb_xf86dri_open_connection. */ +#define XCB_XF86DRI_OPEN_CONNECTION 2 + +/** + * @brief xcb_xf86dri_open_connection_request_t + **/ +typedef struct xcb_xf86dri_open_connection_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ +} xcb_xf86dri_open_connection_request_t; + +/** + * @brief xcb_xf86dri_open_connection_reply_t + **/ +typedef struct xcb_xf86dri_open_connection_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t sarea_handle_low; /**< */ + uint32_t sarea_handle_high; /**< */ + uint32_t bus_id_len; /**< */ + uint8_t pad1[12]; /**< */ +} xcb_xf86dri_open_connection_reply_t; + +/** Opcode for xcb_xf86dri_close_connection. */ +#define XCB_XF86DRI_CLOSE_CONNECTION 3 + +/** + * @brief xcb_xf86dri_close_connection_request_t + **/ +typedef struct xcb_xf86dri_close_connection_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ +} xcb_xf86dri_close_connection_request_t; + +/** + * @brief xcb_xf86dri_get_client_driver_name_cookie_t + **/ +typedef struct xcb_xf86dri_get_client_driver_name_cookie_t { + unsigned int sequence; /**< */ +} xcb_xf86dri_get_client_driver_name_cookie_t; + +/** Opcode for xcb_xf86dri_get_client_driver_name. */ +#define XCB_XF86DRI_GET_CLIENT_DRIVER_NAME 4 + +/** + * @brief xcb_xf86dri_get_client_driver_name_request_t + **/ +typedef struct xcb_xf86dri_get_client_driver_name_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ +} xcb_xf86dri_get_client_driver_name_request_t; + +/** + * @brief xcb_xf86dri_get_client_driver_name_reply_t + **/ +typedef struct xcb_xf86dri_get_client_driver_name_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t client_driver_major_version; /**< */ + uint32_t client_driver_minor_version; /**< */ + uint32_t client_driver_patch_version; /**< */ + uint32_t client_driver_name_len; /**< */ + uint8_t pad1[8]; /**< */ +} xcb_xf86dri_get_client_driver_name_reply_t; + +/** + * @brief xcb_xf86dri_create_context_cookie_t + **/ +typedef struct xcb_xf86dri_create_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_xf86dri_create_context_cookie_t; + +/** Opcode for xcb_xf86dri_create_context. */ +#define XCB_XF86DRI_CREATE_CONTEXT 5 + +/** + * @brief xcb_xf86dri_create_context_request_t + **/ +typedef struct xcb_xf86dri_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + uint32_t visual; /**< */ + uint32_t context; /**< */ +} xcb_xf86dri_create_context_request_t; + +/** + * @brief xcb_xf86dri_create_context_reply_t + **/ +typedef struct xcb_xf86dri_create_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t hw_context; /**< */ +} xcb_xf86dri_create_context_reply_t; + +/** Opcode for xcb_xf86dri_destroy_context. */ +#define XCB_XF86DRI_DESTROY_CONTEXT 6 + +/** + * @brief xcb_xf86dri_destroy_context_request_t + **/ +typedef struct xcb_xf86dri_destroy_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + uint32_t context; /**< */ +} xcb_xf86dri_destroy_context_request_t; + +/** + * @brief xcb_xf86dri_create_drawable_cookie_t + **/ +typedef struct xcb_xf86dri_create_drawable_cookie_t { + unsigned int sequence; /**< */ +} xcb_xf86dri_create_drawable_cookie_t; + +/** Opcode for xcb_xf86dri_create_drawable. */ +#define XCB_XF86DRI_CREATE_DRAWABLE 7 + +/** + * @brief xcb_xf86dri_create_drawable_request_t + **/ +typedef struct xcb_xf86dri_create_drawable_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + uint32_t drawable; /**< */ +} xcb_xf86dri_create_drawable_request_t; + +/** + * @brief xcb_xf86dri_create_drawable_reply_t + **/ +typedef struct xcb_xf86dri_create_drawable_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t hw_drawable_handle; /**< */ +} xcb_xf86dri_create_drawable_reply_t; + +/** Opcode for xcb_xf86dri_destroy_drawable. */ +#define XCB_XF86DRI_DESTROY_DRAWABLE 8 + +/** + * @brief xcb_xf86dri_destroy_drawable_request_t + **/ +typedef struct xcb_xf86dri_destroy_drawable_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + uint32_t drawable; /**< */ +} xcb_xf86dri_destroy_drawable_request_t; + +/** + * @brief xcb_xf86dri_get_drawable_info_cookie_t + **/ +typedef struct xcb_xf86dri_get_drawable_info_cookie_t { + unsigned int sequence; /**< */ +} xcb_xf86dri_get_drawable_info_cookie_t; + +/** Opcode for xcb_xf86dri_get_drawable_info. */ +#define XCB_XF86DRI_GET_DRAWABLE_INFO 9 + +/** + * @brief xcb_xf86dri_get_drawable_info_request_t + **/ +typedef struct xcb_xf86dri_get_drawable_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + uint32_t drawable; /**< */ +} xcb_xf86dri_get_drawable_info_request_t; + +/** + * @brief xcb_xf86dri_get_drawable_info_reply_t + **/ +typedef struct xcb_xf86dri_get_drawable_info_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t drawable_table_index; /**< */ + uint32_t drawable_table_stamp; /**< */ + int16_t drawable_origin_X; /**< */ + int16_t drawable_origin_Y; /**< */ + int16_t drawable_size_W; /**< */ + int16_t drawable_size_H; /**< */ + uint32_t num_clip_rects; /**< */ + int16_t back_x; /**< */ + int16_t back_y; /**< */ + uint32_t num_back_clip_rects; /**< */ +} xcb_xf86dri_get_drawable_info_reply_t; + +/** + * @brief xcb_xf86dri_get_device_info_cookie_t + **/ +typedef struct xcb_xf86dri_get_device_info_cookie_t { + unsigned int sequence; /**< */ +} xcb_xf86dri_get_device_info_cookie_t; + +/** Opcode for xcb_xf86dri_get_device_info. */ +#define XCB_XF86DRI_GET_DEVICE_INFO 10 + +/** + * @brief xcb_xf86dri_get_device_info_request_t + **/ +typedef struct xcb_xf86dri_get_device_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ +} xcb_xf86dri_get_device_info_request_t; + +/** + * @brief xcb_xf86dri_get_device_info_reply_t + **/ +typedef struct xcb_xf86dri_get_device_info_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t framebuffer_handle_low; /**< */ + uint32_t framebuffer_handle_high; /**< */ + uint32_t framebuffer_origin_offset; /**< */ + uint32_t framebuffer_size; /**< */ + uint32_t framebuffer_stride; /**< */ + uint32_t device_private_size; /**< */ +} xcb_xf86dri_get_device_info_reply_t; + +/** + * @brief xcb_xf86dri_auth_connection_cookie_t + **/ +typedef struct xcb_xf86dri_auth_connection_cookie_t { + unsigned int sequence; /**< */ +} xcb_xf86dri_auth_connection_cookie_t; + +/** Opcode for xcb_xf86dri_auth_connection. */ +#define XCB_XF86DRI_AUTH_CONNECTION 11 + +/** + * @brief xcb_xf86dri_auth_connection_request_t + **/ +typedef struct xcb_xf86dri_auth_connection_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t screen; /**< */ + uint32_t magic; /**< */ +} xcb_xf86dri_auth_connection_request_t; + +/** + * @brief xcb_xf86dri_auth_connection_reply_t + **/ +typedef struct xcb_xf86dri_auth_connection_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t authenticated; /**< */ +} xcb_xf86dri_auth_connection_reply_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xf86dri_drm_clip_rect_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xf86dri_drm_clip_rect_t) + */ + +/***************************************************************************** + ** + ** void xcb_xf86dri_drm_clip_rect_next + ** + ** @param xcb_xf86dri_drm_clip_rect_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xf86dri_drm_clip_rect_next (xcb_xf86dri_drm_clip_rect_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xf86dri_drm_clip_rect_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xf86dri_drm_clip_rect_end + ** + ** @param xcb_xf86dri_drm_clip_rect_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xf86dri_drm_clip_rect_end (xcb_xf86dri_drm_clip_rect_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_query_version_cookie_t xcb_xf86dri_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_xf86dri_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_query_version_cookie_t +xcb_xf86dri_query_version (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_query_version_cookie_t xcb_xf86dri_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xf86dri_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_query_version_cookie_t +xcb_xf86dri_query_version_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xf86dri_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_query_version_reply_t * xcb_xf86dri_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_query_version_reply_t * +xcb_xf86dri_query_version_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_query_direct_rendering_capable_cookie_t xcb_xf86dri_query_direct_rendering_capable + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_query_direct_rendering_capable_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_query_direct_rendering_capable_cookie_t +xcb_xf86dri_query_direct_rendering_capable (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_query_direct_rendering_capable_cookie_t xcb_xf86dri_query_direct_rendering_capable_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_query_direct_rendering_capable_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_query_direct_rendering_capable_cookie_t +xcb_xf86dri_query_direct_rendering_capable_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xf86dri_query_direct_rendering_capable_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_query_direct_rendering_capable_reply_t * xcb_xf86dri_query_direct_rendering_capable_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_query_direct_rendering_capable_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_query_direct_rendering_capable_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_query_direct_rendering_capable_reply_t * +xcb_xf86dri_query_direct_rendering_capable_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_query_direct_rendering_capable_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xf86dri_open_connection_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_open_connection_cookie_t xcb_xf86dri_open_connection + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_open_connection_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_open_connection_cookie_t +xcb_xf86dri_open_connection (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_open_connection_cookie_t xcb_xf86dri_open_connection_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_open_connection_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_open_connection_cookie_t +xcb_xf86dri_open_connection_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + + +/***************************************************************************** + ** + ** char * xcb_xf86dri_open_connection_bus_id + ** + ** @param const xcb_xf86dri_open_connection_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xf86dri_open_connection_bus_id (const xcb_xf86dri_open_connection_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xf86dri_open_connection_bus_id_length + ** + ** @param const xcb_xf86dri_open_connection_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_open_connection_bus_id_length (const xcb_xf86dri_open_connection_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xf86dri_open_connection_bus_id_end + ** + ** @param const xcb_xf86dri_open_connection_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xf86dri_open_connection_bus_id_end (const xcb_xf86dri_open_connection_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xf86dri_open_connection_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_open_connection_reply_t * xcb_xf86dri_open_connection_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_open_connection_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_open_connection_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_open_connection_reply_t * +xcb_xf86dri_open_connection_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_open_connection_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_close_connection_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_close_connection_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_close_connection + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_close_connection (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +int +xcb_xf86dri_get_client_driver_name_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_get_client_driver_name_cookie_t xcb_xf86dri_get_client_driver_name + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_get_client_driver_name_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_client_driver_name_cookie_t +xcb_xf86dri_get_client_driver_name (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_get_client_driver_name_cookie_t xcb_xf86dri_get_client_driver_name_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_get_client_driver_name_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_client_driver_name_cookie_t +xcb_xf86dri_get_client_driver_name_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + + +/***************************************************************************** + ** + ** char * xcb_xf86dri_get_client_driver_name_client_driver_name + ** + ** @param const xcb_xf86dri_get_client_driver_name_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xf86dri_get_client_driver_name_client_driver_name (const xcb_xf86dri_get_client_driver_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xf86dri_get_client_driver_name_client_driver_name_length + ** + ** @param const xcb_xf86dri_get_client_driver_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_get_client_driver_name_client_driver_name_length (const xcb_xf86dri_get_client_driver_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xf86dri_get_client_driver_name_client_driver_name_end + ** + ** @param const xcb_xf86dri_get_client_driver_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xf86dri_get_client_driver_name_client_driver_name_end (const xcb_xf86dri_get_client_driver_name_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xf86dri_get_client_driver_name_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_get_client_driver_name_reply_t * xcb_xf86dri_get_client_driver_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_get_client_driver_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_get_client_driver_name_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_get_client_driver_name_reply_t * +xcb_xf86dri_get_client_driver_name_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_get_client_driver_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_create_context_cookie_t xcb_xf86dri_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t visual + ** @param uint32_t context + ** @returns xcb_xf86dri_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_create_context_cookie_t +xcb_xf86dri_create_context (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t visual /**< */, + uint32_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_create_context_cookie_t xcb_xf86dri_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t visual + ** @param uint32_t context + ** @returns xcb_xf86dri_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_create_context_cookie_t +xcb_xf86dri_create_context_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t visual /**< */, + uint32_t context /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xf86dri_create_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_create_context_reply_t * xcb_xf86dri_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_create_context_reply_t * +xcb_xf86dri_create_context_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_destroy_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_destroy_context_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_destroy_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_destroy_context (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_create_drawable_cookie_t xcb_xf86dri_create_drawable + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_xf86dri_create_drawable_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_create_drawable_cookie_t +xcb_xf86dri_create_drawable (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_create_drawable_cookie_t xcb_xf86dri_create_drawable_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_xf86dri_create_drawable_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_create_drawable_cookie_t +xcb_xf86dri_create_drawable_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xf86dri_create_drawable_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_create_drawable_reply_t * xcb_xf86dri_create_drawable_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_create_drawable_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_create_drawable_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_create_drawable_reply_t * +xcb_xf86dri_create_drawable_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_create_drawable_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_destroy_drawable_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_destroy_drawable_checked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xf86dri_destroy_drawable + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xf86dri_destroy_drawable (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */); + +int +xcb_xf86dri_get_drawable_info_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_get_drawable_info_cookie_t xcb_xf86dri_get_drawable_info + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_xf86dri_get_drawable_info_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_drawable_info_cookie_t +xcb_xf86dri_get_drawable_info (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_get_drawable_info_cookie_t xcb_xf86dri_get_drawable_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t drawable + ** @returns xcb_xf86dri_get_drawable_info_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_drawable_info_cookie_t +xcb_xf86dri_get_drawable_info_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t drawable /**< */); + + +/***************************************************************************** + ** + ** xcb_xf86dri_drm_clip_rect_t * xcb_xf86dri_get_drawable_info_clip_rects + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns xcb_xf86dri_drm_clip_rect_t * + ** + *****************************************************************************/ + +xcb_xf86dri_drm_clip_rect_t * +xcb_xf86dri_get_drawable_info_clip_rects (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xf86dri_get_drawable_info_clip_rects_length + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_get_drawable_info_clip_rects_length (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xf86dri_drm_clip_rect_iterator_t xcb_xf86dri_get_drawable_info_clip_rects_iterator + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns xcb_xf86dri_drm_clip_rect_iterator_t + ** + *****************************************************************************/ + +xcb_xf86dri_drm_clip_rect_iterator_t +xcb_xf86dri_get_drawable_info_clip_rects_iterator (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xf86dri_drm_clip_rect_t * xcb_xf86dri_get_drawable_info_back_clip_rects + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns xcb_xf86dri_drm_clip_rect_t * + ** + *****************************************************************************/ + +xcb_xf86dri_drm_clip_rect_t * +xcb_xf86dri_get_drawable_info_back_clip_rects (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xf86dri_get_drawable_info_back_clip_rects_length + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_get_drawable_info_back_clip_rects_length (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xf86dri_drm_clip_rect_iterator_t xcb_xf86dri_get_drawable_info_back_clip_rects_iterator + ** + ** @param const xcb_xf86dri_get_drawable_info_reply_t *R + ** @returns xcb_xf86dri_drm_clip_rect_iterator_t + ** + *****************************************************************************/ + +xcb_xf86dri_drm_clip_rect_iterator_t +xcb_xf86dri_get_drawable_info_back_clip_rects_iterator (const xcb_xf86dri_get_drawable_info_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xf86dri_get_drawable_info_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_get_drawable_info_reply_t * xcb_xf86dri_get_drawable_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_get_drawable_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_get_drawable_info_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_get_drawable_info_reply_t * +xcb_xf86dri_get_drawable_info_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_get_drawable_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xf86dri_get_device_info_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_get_device_info_cookie_t xcb_xf86dri_get_device_info + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_get_device_info_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_device_info_cookie_t +xcb_xf86dri_get_device_info (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_get_device_info_cookie_t xcb_xf86dri_get_device_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @returns xcb_xf86dri_get_device_info_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_get_device_info_cookie_t +xcb_xf86dri_get_device_info_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xf86dri_get_device_info_device_private + ** + ** @param const xcb_xf86dri_get_device_info_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xf86dri_get_device_info_device_private (const xcb_xf86dri_get_device_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xf86dri_get_device_info_device_private_length + ** + ** @param const xcb_xf86dri_get_device_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xf86dri_get_device_info_device_private_length (const xcb_xf86dri_get_device_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xf86dri_get_device_info_device_private_end + ** + ** @param const xcb_xf86dri_get_device_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xf86dri_get_device_info_device_private_end (const xcb_xf86dri_get_device_info_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xf86dri_get_device_info_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_get_device_info_reply_t * xcb_xf86dri_get_device_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_get_device_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_get_device_info_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_get_device_info_reply_t * +xcb_xf86dri_get_device_info_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_get_device_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_auth_connection_cookie_t xcb_xf86dri_auth_connection + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t magic + ** @returns xcb_xf86dri_auth_connection_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_auth_connection_cookie_t +xcb_xf86dri_auth_connection (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t magic /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_auth_connection_cookie_t xcb_xf86dri_auth_connection_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t screen + ** @param uint32_t magic + ** @returns xcb_xf86dri_auth_connection_cookie_t + ** + *****************************************************************************/ + +xcb_xf86dri_auth_connection_cookie_t +xcb_xf86dri_auth_connection_unchecked (xcb_connection_t *c /**< */, + uint32_t screen /**< */, + uint32_t magic /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xf86dri_auth_connection_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xf86dri_auth_connection_reply_t * xcb_xf86dri_auth_connection_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xf86dri_auth_connection_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xf86dri_auth_connection_reply_t * + ** + *****************************************************************************/ + +xcb_xf86dri_auth_connection_reply_t * +xcb_xf86dri_auth_connection_reply (xcb_connection_t *c /**< */, + xcb_xf86dri_auth_connection_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xfixes.c b/external/mit/xorg/lib/libxcb/files/xfixes.c new file mode 100644 index 000000000..4c0dc84b6 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xfixes.c @@ -0,0 +1,3274 @@ +/* + * This file generated automatically from xfixes.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xfixes.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" +#include "render.h" +#include "shape.h" + +xcb_extension_t xcb_xfixes_id = { "XFIXES", 0 }; + + +/***************************************************************************** + ** + ** xcb_xfixes_query_version_cookie_t xcb_xfixes_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_xfixes_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_query_version_cookie_t +xcb_xfixes_query_version (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_query_version_cookie_t xcb_ret; + xcb_xfixes_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_query_version_cookie_t xcb_xfixes_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_xfixes_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_query_version_cookie_t +xcb_xfixes_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_query_version_cookie_t xcb_ret; + xcb_xfixes_query_version_request_t xcb_out; + + xcb_out.client_major_version = client_major_version; + xcb_out.client_minor_version = client_minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_query_version_reply_t * xcb_xfixes_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_query_version_reply_t * +xcb_xfixes_query_version_reply (xcb_connection_t *c /**< */, + xcb_xfixes_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xfixes_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_save_set_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param uint8_t target + ** @param uint8_t map + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_save_set_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + uint8_t target /**< */, + uint8_t map /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CHANGE_SAVE_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_change_save_set_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.target = target; + xcb_out.map = map; + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_save_set + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param uint8_t target + ** @param uint8_t map + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_save_set (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + uint8_t target /**< */, + uint8_t map /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CHANGE_SAVE_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_change_save_set_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.target = target; + xcb_out.map = map; + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_select_selection_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t selection + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_select_selection_input_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t selection /**< */, + uint32_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SELECT_SELECTION_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_select_selection_input_request_t xcb_out; + + xcb_out.window = window; + xcb_out.selection = selection; + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_select_selection_input + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t selection + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_select_selection_input (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t selection /**< */, + uint32_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SELECT_SELECTION_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_select_selection_input_request_t xcb_out; + + xcb_out.window = window; + xcb_out.selection = selection; + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_select_cursor_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_select_cursor_input_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SELECT_CURSOR_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_select_cursor_input_request_t xcb_out; + + xcb_out.window = window; + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_select_cursor_input + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_select_cursor_input (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SELECT_CURSOR_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_select_cursor_input_request_t xcb_out; + + xcb_out.window = window; + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xfixes_get_cursor_image_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xfixes_get_cursor_image_reply_t *_aux = (xcb_xfixes_get_cursor_image_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xfixes_get_cursor_image_reply_t); + xcb_tmp += xcb_block_len; + /* cursor_image */ + xcb_block_len += (_aux->width * _aux->height) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_cookie_t xcb_xfixes_get_cursor_image + ** + ** @param xcb_connection_t *c + ** @returns xcb_xfixes_get_cursor_image_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_cookie_t +xcb_xfixes_get_cursor_image (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_GET_CURSOR_IMAGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_get_cursor_image_cookie_t xcb_ret; + xcb_xfixes_get_cursor_image_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_cookie_t xcb_xfixes_get_cursor_image_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xfixes_get_cursor_image_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_cookie_t +xcb_xfixes_get_cursor_image_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_GET_CURSOR_IMAGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_get_cursor_image_cookie_t xcb_ret; + xcb_xfixes_get_cursor_image_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xfixes_get_cursor_image_cursor_image + ** + ** @param const xcb_xfixes_get_cursor_image_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xfixes_get_cursor_image_cursor_image (const xcb_xfixes_get_cursor_image_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xfixes_get_cursor_image_cursor_image_length + ** + ** @param const xcb_xfixes_get_cursor_image_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_get_cursor_image_cursor_image_length (const xcb_xfixes_get_cursor_image_reply_t *R /**< */) +{ + return (R->width * R->height); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_get_cursor_image_cursor_image_end + ** + ** @param const xcb_xfixes_get_cursor_image_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_get_cursor_image_cursor_image_end (const xcb_xfixes_get_cursor_image_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + ((R->width * R->height)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_reply_t * xcb_xfixes_get_cursor_image_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_get_cursor_image_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_get_cursor_image_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_reply_t * +xcb_xfixes_get_cursor_image_reply (xcb_connection_t *c /**< */, + xcb_xfixes_get_cursor_image_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xfixes_get_cursor_image_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_xfixes_region_next + ** + ** @param xcb_xfixes_region_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xfixes_region_next (xcb_xfixes_region_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xfixes_region_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_region_end + ** + ** @param xcb_xfixes_region_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_region_end (xcb_xfixes_region_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_xfixes_create_region_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xfixes_create_region_request_t); + xcb_tmp += xcb_block_len; + /* rectangles */ + xcb_block_len += rectangles_len * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_request_t xcb_out; + + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_request_t xcb_out; + + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_bitmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_pixmap_t bitmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_bitmap_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_pixmap_t bitmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION_FROM_BITMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_from_bitmap_request_t xcb_out; + + xcb_out.region = region; + xcb_out.bitmap = bitmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_bitmap + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_pixmap_t bitmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_bitmap (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_pixmap_t bitmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION_FROM_BITMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_from_bitmap_request_t xcb_out; + + xcb_out.region = region; + xcb_out.bitmap = bitmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_window_t window + ** @param xcb_shape_kind_t kind + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_window_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_window_t window /**< */, + xcb_shape_kind_t kind /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION_FROM_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_from_window_request_t xcb_out; + + xcb_out.region = region; + xcb_out.window = window; + xcb_out.kind = kind; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_window + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_window_t window + ** @param xcb_shape_kind_t kind + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_window (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_window_t window /**< */, + xcb_shape_kind_t kind /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION_FROM_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_from_window_request_t xcb_out; + + xcb_out.region = region; + xcb_out.window = window; + xcb_out.kind = kind; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_gcontext_t gc + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_gc_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_gcontext_t gc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION_FROM_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_from_gc_request_t xcb_out; + + xcb_out.region = region; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_gcontext_t gc + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_gc (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_gcontext_t gc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION_FROM_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_from_gc_request_t xcb_out; + + xcb_out.region = region; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_picture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_render_picture_t picture + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_picture_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_render_picture_t picture /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION_FROM_PICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_from_picture_request_t xcb_out; + + xcb_out.region = region; + xcb_out.picture = picture; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_picture + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_render_picture_t picture + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_picture (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_render_picture_t picture /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CREATE_REGION_FROM_PICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_create_region_from_picture_request_t xcb_out; + + xcb_out.region = region; + xcb_out.picture = picture; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_destroy_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_destroy_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_DESTROY_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_destroy_region_request_t xcb_out; + + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_destroy_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_destroy_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_DESTROY_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_destroy_region_request_t xcb_out; + + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xfixes_set_region_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xfixes_set_region_request_t); + xcb_tmp += xcb_block_len; + /* rectangles */ + xcb_block_len += rectangles_len * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_region_request_t xcb_out; + + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_region_request_t xcb_out; + + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_copy_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_copy_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_COPY_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_copy_region_request_t xcb_out; + + xcb_out.source = source; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_copy_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_copy_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_COPY_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_copy_region_request_t xcb_out; + + xcb_out.source = source; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_union_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_union_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_UNION_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_union_region_request_t xcb_out; + + xcb_out.source1 = source1; + xcb_out.source2 = source2; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_union_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_union_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_UNION_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_union_region_request_t xcb_out; + + xcb_out.source1 = source1; + xcb_out.source2 = source2; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_intersect_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_intersect_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_INTERSECT_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_intersect_region_request_t xcb_out; + + xcb_out.source1 = source1; + xcb_out.source2 = source2; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_intersect_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_intersect_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_INTERSECT_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_intersect_region_request_t xcb_out; + + xcb_out.source1 = source1; + xcb_out.source2 = source2; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_subtract_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_subtract_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SUBTRACT_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_subtract_region_request_t xcb_out; + + xcb_out.source1 = source1; + xcb_out.source2 = source2; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_subtract_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_subtract_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SUBTRACT_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_subtract_region_request_t xcb_out; + + xcb_out.source1 = source1; + xcb_out.source2 = source2; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_invert_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_rectangle_t bounds + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_invert_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_rectangle_t bounds /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_INVERT_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_invert_region_request_t xcb_out; + + xcb_out.source = source; + xcb_out.bounds = bounds; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_invert_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_rectangle_t bounds + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_invert_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_rectangle_t bounds /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_INVERT_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_invert_region_request_t xcb_out; + + xcb_out.source = source; + xcb_out.bounds = bounds; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_translate_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param int16_t dx + ** @param int16_t dy + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_translate_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + int16_t dx /**< */, + int16_t dy /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_TRANSLATE_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_translate_region_request_t xcb_out; + + xcb_out.region = region; + xcb_out.dx = dx; + xcb_out.dy = dy; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_translate_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param int16_t dx + ** @param int16_t dy + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_translate_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + int16_t dx /**< */, + int16_t dy /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_TRANSLATE_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_translate_region_request_t xcb_out; + + xcb_out.region = region; + xcb_out.dx = dx; + xcb_out.dy = dy; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_region_extents_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_region_extents_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_REGION_EXTENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_region_extents_request_t xcb_out; + + xcb_out.source = source; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_region_extents + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_region_extents (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_REGION_EXTENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_region_extents_request_t xcb_out; + + xcb_out.source = source; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xfixes_fetch_region_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xfixes_fetch_region_reply_t *_aux = (xcb_xfixes_fetch_region_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xfixes_fetch_region_reply_t); + xcb_tmp += xcb_block_len; + /* rectangles */ + xcb_block_len += (_aux->length / 2) * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_fetch_region_cookie_t xcb_xfixes_fetch_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @returns xcb_xfixes_fetch_region_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_fetch_region_cookie_t +xcb_xfixes_fetch_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_FETCH_REGION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_fetch_region_cookie_t xcb_ret; + xcb_xfixes_fetch_region_request_t xcb_out; + + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_fetch_region_cookie_t xcb_xfixes_fetch_region_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @returns xcb_xfixes_fetch_region_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_fetch_region_cookie_t +xcb_xfixes_fetch_region_unchecked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_FETCH_REGION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_fetch_region_cookie_t xcb_ret; + xcb_xfixes_fetch_region_request_t xcb_out; + + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_rectangle_t * xcb_xfixes_fetch_region_rectangles + ** + ** @param const xcb_xfixes_fetch_region_reply_t *R + ** @returns xcb_rectangle_t * + ** + *****************************************************************************/ + +xcb_rectangle_t * +xcb_xfixes_fetch_region_rectangles (const xcb_xfixes_fetch_region_reply_t *R /**< */) +{ + return (xcb_rectangle_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xfixes_fetch_region_rectangles_length + ** + ** @param const xcb_xfixes_fetch_region_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_fetch_region_rectangles_length (const xcb_xfixes_fetch_region_reply_t *R /**< */) +{ + return (R->length / 2); +} + + +/***************************************************************************** + ** + ** xcb_rectangle_iterator_t xcb_xfixes_fetch_region_rectangles_iterator + ** + ** @param const xcb_xfixes_fetch_region_reply_t *R + ** @returns xcb_rectangle_iterator_t + ** + *****************************************************************************/ + +xcb_rectangle_iterator_t +xcb_xfixes_fetch_region_rectangles_iterator (const xcb_xfixes_fetch_region_reply_t *R /**< */) +{ + xcb_rectangle_iterator_t i; + i.data = (xcb_rectangle_t *) (R + 1); + i.rem = (R->length / 2); + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_fetch_region_reply_t * xcb_xfixes_fetch_region_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_fetch_region_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_fetch_region_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_fetch_region_reply_t * +xcb_xfixes_fetch_region_reply (xcb_connection_t *c /**< */, + xcb_xfixes_fetch_region_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xfixes_fetch_region_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_gc_clip_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param xcb_xfixes_region_t region + ** @param int16_t x_origin + ** @param int16_t y_origin + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_gc_clip_region_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + xcb_xfixes_region_t region /**< */, + int16_t x_origin /**< */, + int16_t y_origin /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_GC_CLIP_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_gc_clip_region_request_t xcb_out; + + xcb_out.gc = gc; + xcb_out.region = region; + xcb_out.x_origin = x_origin; + xcb_out.y_origin = y_origin; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_gc_clip_region + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param xcb_xfixes_region_t region + ** @param int16_t x_origin + ** @param int16_t y_origin + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_gc_clip_region (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + xcb_xfixes_region_t region /**< */, + int16_t x_origin /**< */, + int16_t y_origin /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_GC_CLIP_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_gc_clip_region_request_t xcb_out; + + xcb_out.gc = gc; + xcb_out.region = region; + xcb_out.x_origin = x_origin; + xcb_out.y_origin = y_origin; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_window_shape_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t dest + ** @param xcb_shape_kind_t dest_kind + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_window_shape_region_checked (xcb_connection_t *c /**< */, + xcb_window_t dest /**< */, + xcb_shape_kind_t dest_kind /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_xfixes_region_t region /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_WINDOW_SHAPE_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_window_shape_region_request_t xcb_out; + + xcb_out.dest = dest; + xcb_out.dest_kind = dest_kind; + memset(xcb_out.pad0, 0, 3); + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_window_shape_region + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t dest + ** @param xcb_shape_kind_t dest_kind + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_window_shape_region (xcb_connection_t *c /**< */, + xcb_window_t dest /**< */, + xcb_shape_kind_t dest_kind /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_xfixes_region_t region /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_WINDOW_SHAPE_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_window_shape_region_request_t xcb_out; + + xcb_out.dest = dest; + xcb_out.dest_kind = dest_kind; + memset(xcb_out.pad0, 0, 3); + xcb_out.x_offset = x_offset; + xcb_out.y_offset = y_offset; + xcb_out.region = region; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_picture_clip_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_xfixes_region_t region + ** @param int16_t x_origin + ** @param int16_t y_origin + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_picture_clip_region_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_xfixes_region_t region /**< */, + int16_t x_origin /**< */, + int16_t y_origin /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_PICTURE_CLIP_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_picture_clip_region_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.region = region; + xcb_out.x_origin = x_origin; + xcb_out.y_origin = y_origin; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_picture_clip_region + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_xfixes_region_t region + ** @param int16_t x_origin + ** @param int16_t y_origin + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_picture_clip_region (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_xfixes_region_t region /**< */, + int16_t x_origin /**< */, + int16_t y_origin /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_PICTURE_CLIP_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_picture_clip_region_request_t xcb_out; + + xcb_out.picture = picture; + xcb_out.region = region; + xcb_out.x_origin = x_origin; + xcb_out.y_origin = y_origin; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xfixes_set_cursor_name_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xfixes_set_cursor_name_request_t *_aux = (xcb_xfixes_set_cursor_name_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xfixes_set_cursor_name_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->nbytes * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_cursor_name_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param uint16_t nbytes + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_cursor_name_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + uint16_t nbytes /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_CURSOR_NAME, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_cursor_name_request_t xcb_out; + + xcb_out.cursor = cursor; + xcb_out.nbytes = nbytes; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = nbytes * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_cursor_name + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param uint16_t nbytes + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_cursor_name (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + uint16_t nbytes /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SET_CURSOR_NAME, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_set_cursor_name_request_t xcb_out; + + xcb_out.cursor = cursor; + xcb_out.nbytes = nbytes; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = nbytes * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xfixes_get_cursor_name_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xfixes_get_cursor_name_reply_t *_aux = (xcb_xfixes_get_cursor_name_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xfixes_get_cursor_name_reply_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->nbytes * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_name_cookie_t xcb_xfixes_get_cursor_name + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @returns xcb_xfixes_get_cursor_name_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_name_cookie_t +xcb_xfixes_get_cursor_name (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_GET_CURSOR_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_get_cursor_name_cookie_t xcb_ret; + xcb_xfixes_get_cursor_name_request_t xcb_out; + + xcb_out.cursor = cursor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_name_cookie_t xcb_xfixes_get_cursor_name_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @returns xcb_xfixes_get_cursor_name_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_name_cookie_t +xcb_xfixes_get_cursor_name_unchecked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_GET_CURSOR_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_get_cursor_name_cookie_t xcb_ret; + xcb_xfixes_get_cursor_name_request_t xcb_out; + + xcb_out.cursor = cursor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_xfixes_get_cursor_name_name + ** + ** @param const xcb_xfixes_get_cursor_name_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xfixes_get_cursor_name_name (const xcb_xfixes_get_cursor_name_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xfixes_get_cursor_name_name_length + ** + ** @param const xcb_xfixes_get_cursor_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_get_cursor_name_name_length (const xcb_xfixes_get_cursor_name_reply_t *R /**< */) +{ + return R->nbytes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_get_cursor_name_name_end + ** + ** @param const xcb_xfixes_get_cursor_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_get_cursor_name_name_end (const xcb_xfixes_get_cursor_name_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->nbytes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_name_reply_t * xcb_xfixes_get_cursor_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_get_cursor_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_get_cursor_name_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_name_reply_t * +xcb_xfixes_get_cursor_name_reply (xcb_connection_t *c /**< */, + xcb_xfixes_get_cursor_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xfixes_get_cursor_name_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xfixes_get_cursor_image_and_name_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xfixes_get_cursor_image_and_name_reply_t *_aux = (xcb_xfixes_get_cursor_image_and_name_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xfixes_get_cursor_image_and_name_reply_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->nbytes * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* cursor_image */ + xcb_block_len += (_aux->width * _aux->height) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_and_name_cookie_t xcb_xfixes_get_cursor_image_and_name + ** + ** @param xcb_connection_t *c + ** @returns xcb_xfixes_get_cursor_image_and_name_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_and_name_cookie_t +xcb_xfixes_get_cursor_image_and_name (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_GET_CURSOR_IMAGE_AND_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_get_cursor_image_and_name_cookie_t xcb_ret; + xcb_xfixes_get_cursor_image_and_name_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_and_name_cookie_t xcb_xfixes_get_cursor_image_and_name_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xfixes_get_cursor_image_and_name_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_and_name_cookie_t +xcb_xfixes_get_cursor_image_and_name_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_GET_CURSOR_IMAGE_AND_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xfixes_get_cursor_image_and_name_cookie_t xcb_ret; + xcb_xfixes_get_cursor_image_and_name_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_xfixes_get_cursor_image_and_name_name + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xfixes_get_cursor_image_and_name_name (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xfixes_get_cursor_image_and_name_name_length + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_get_cursor_image_and_name_name_length (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */) +{ + return R->nbytes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_get_cursor_image_and_name_name_end + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_get_cursor_image_and_name_name_end (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->nbytes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xfixes_get_cursor_image_and_name_cursor_image + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xfixes_get_cursor_image_and_name_cursor_image (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xfixes_get_cursor_image_and_name_name_end(R); + return (uint32_t *) ((char *) prev.data + XCB_TYPE_PAD(uint32_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xfixes_get_cursor_image_and_name_cursor_image_length + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_get_cursor_image_and_name_cursor_image_length (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */) +{ + return (R->width * R->height); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_get_cursor_image_and_name_cursor_image_end + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_get_cursor_image_and_name_cursor_image_end (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_xfixes_get_cursor_image_and_name_name_end(R); + i.data = ((uint32_t *) child.data) + ((R->width * R->height)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_and_name_reply_t * xcb_xfixes_get_cursor_image_and_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_get_cursor_image_and_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_get_cursor_image_and_name_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_and_name_reply_t * +xcb_xfixes_get_cursor_image_and_name_reply (xcb_connection_t *c /**< */, + xcb_xfixes_get_cursor_image_and_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xfixes_get_cursor_image_and_name_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t source + ** @param xcb_cursor_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t source /**< */, + xcb_cursor_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CHANGE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_change_cursor_request_t xcb_out; + + xcb_out.source = source; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t source + ** @param xcb_cursor_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t source /**< */, + xcb_cursor_t destination /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CHANGE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_change_cursor_request_t xcb_out; + + xcb_out.source = source; + xcb_out.destination = destination; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xfixes_change_cursor_by_name_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xfixes_change_cursor_by_name_request_t *_aux = (xcb_xfixes_change_cursor_by_name_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xfixes_change_cursor_by_name_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->nbytes * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_cursor_by_name_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t src + ** @param uint16_t nbytes + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_cursor_by_name_checked (xcb_connection_t *c /**< */, + xcb_cursor_t src /**< */, + uint16_t nbytes /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CHANGE_CURSOR_BY_NAME, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_change_cursor_by_name_request_t xcb_out; + + xcb_out.src = src; + xcb_out.nbytes = nbytes; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = nbytes * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_cursor_by_name + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t src + ** @param uint16_t nbytes + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_cursor_by_name (xcb_connection_t *c /**< */, + xcb_cursor_t src /**< */, + uint16_t nbytes /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_CHANGE_CURSOR_BY_NAME, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_change_cursor_by_name_request_t xcb_out; + + xcb_out.src = src; + xcb_out.nbytes = nbytes; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = nbytes * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_expand_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @param uint16_t left + ** @param uint16_t right + ** @param uint16_t top + ** @param uint16_t bottom + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_expand_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */, + uint16_t left /**< */, + uint16_t right /**< */, + uint16_t top /**< */, + uint16_t bottom /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_EXPAND_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_expand_region_request_t xcb_out; + + xcb_out.source = source; + xcb_out.destination = destination; + xcb_out.left = left; + xcb_out.right = right; + xcb_out.top = top; + xcb_out.bottom = bottom; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_expand_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @param uint16_t left + ** @param uint16_t right + ** @param uint16_t top + ** @param uint16_t bottom + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_expand_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */, + uint16_t left /**< */, + uint16_t right /**< */, + uint16_t top /**< */, + uint16_t bottom /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_EXPAND_REGION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_expand_region_request_t xcb_out; + + xcb_out.source = source; + xcb_out.destination = destination; + xcb_out.left = left; + xcb_out.right = right; + xcb_out.top = top; + xcb_out.bottom = bottom; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_hide_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_hide_cursor_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_HIDE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_hide_cursor_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_hide_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_hide_cursor (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_HIDE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_hide_cursor_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_show_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_show_cursor_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SHOW_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_show_cursor_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_show_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_show_cursor (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xfixes_id, + /* opcode */ XCB_XFIXES_SHOW_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xfixes_show_cursor_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/xfixes.h b/external/mit/xorg/lib/libxcb/files/xfixes.h new file mode 100644 index 000000000..b67aa8513 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xfixes.h @@ -0,0 +1,2816 @@ +/* + * This file generated automatically from xfixes.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_XFixes_API XCB XFixes API + * @brief XFixes XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XFIXES_H +#define __XFIXES_H + +#include "xcb.h" +#include "xproto.h" +#include "render.h" +#include "shape.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_XFIXES_MAJOR_VERSION 4 +#define XCB_XFIXES_MINOR_VERSION 0 + +extern xcb_extension_t xcb_xfixes_id; + +/** + * @brief xcb_xfixes_query_version_cookie_t + **/ +typedef struct xcb_xfixes_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_xfixes_query_version_cookie_t; + +/** Opcode for xcb_xfixes_query_version. */ +#define XCB_XFIXES_QUERY_VERSION 0 + +/** + * @brief xcb_xfixes_query_version_request_t + **/ +typedef struct xcb_xfixes_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t client_major_version; /**< */ + uint32_t client_minor_version; /**< */ +} xcb_xfixes_query_version_request_t; + +/** + * @brief xcb_xfixes_query_version_reply_t + **/ +typedef struct xcb_xfixes_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t major_version; /**< */ + uint32_t minor_version; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_xfixes_query_version_reply_t; + +typedef enum xcb_xfixes_save_set_mode_t { + XCB_XFIXES_SAVE_SET_MODE_INSERT, + XCB_XFIXES_SAVE_SET_MODE_DELETE +} xcb_xfixes_save_set_mode_t; + +typedef enum xcb_xfixes_save_set_target_t { + XCB_XFIXES_SAVE_SET_TARGET_NEAREST, + XCB_XFIXES_SAVE_SET_TARGET_ROOT +} xcb_xfixes_save_set_target_t; + +typedef enum xcb_xfixes_save_set_mapping_t { + XCB_XFIXES_SAVE_SET_MAPPING_MAP, + XCB_XFIXES_SAVE_SET_MAPPING_UNMAP +} xcb_xfixes_save_set_mapping_t; + +/** Opcode for xcb_xfixes_change_save_set. */ +#define XCB_XFIXES_CHANGE_SAVE_SET 1 + +/** + * @brief xcb_xfixes_change_save_set_request_t + **/ +typedef struct xcb_xfixes_change_save_set_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t mode; /**< */ + uint8_t target; /**< */ + uint8_t map; /**< */ + uint8_t pad0; /**< */ + xcb_window_t window; /**< */ +} xcb_xfixes_change_save_set_request_t; + +typedef enum xcb_xfixes_selection_event_t { + XCB_XFIXES_SELECTION_EVENT_SET_SELECTION_OWNER, + XCB_XFIXES_SELECTION_EVENT_SELECTION_WINDOW_DESTROY, + XCB_XFIXES_SELECTION_EVENT_SELECTION_CLIENT_CLOSE +} xcb_xfixes_selection_event_t; + +typedef enum xcb_xfixes_selection_event_mask_t { + XCB_XFIXES_SELECTION_EVENT_MASK_SET_SELECTION_OWNER = 1, + XCB_XFIXES_SELECTION_EVENT_MASK_SELECTION_WINDOW_DESTROY = 2, + XCB_XFIXES_SELECTION_EVENT_MASK_SELECTION_CLIENT_CLOSE = 4 +} xcb_xfixes_selection_event_mask_t; + +/** Opcode for xcb_xfixes_selection_notify. */ +#define XCB_XFIXES_SELECTION_NOTIFY 0 + +/** + * @brief xcb_xfixes_selection_notify_event_t + **/ +typedef struct xcb_xfixes_selection_notify_event_t { + uint8_t response_type; /**< */ + uint8_t subtype; /**< */ + uint16_t sequence; /**< */ + xcb_window_t window; /**< */ + xcb_window_t owner; /**< */ + xcb_atom_t selection; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_timestamp_t selection_timestamp; /**< */ + uint8_t pad0[8]; /**< */ +} xcb_xfixes_selection_notify_event_t; + +/** Opcode for xcb_xfixes_select_selection_input. */ +#define XCB_XFIXES_SELECT_SELECTION_INPUT 2 + +/** + * @brief xcb_xfixes_select_selection_input_request_t + **/ +typedef struct xcb_xfixes_select_selection_input_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_atom_t selection; /**< */ + uint32_t event_mask; /**< */ +} xcb_xfixes_select_selection_input_request_t; + +typedef enum xcb_xfixes_cursor_notify_t { + XCB_XFIXES_CURSOR_NOTIFY_DISPLAY_CURSOR +} xcb_xfixes_cursor_notify_t; + +typedef enum xcb_xfixes_cursor_notify_mask_t { + XCB_XFIXES_CURSOR_NOTIFY_MASK_DISPLAY_CURSOR = 1 +} xcb_xfixes_cursor_notify_mask_t; + +/** Opcode for xcb_xfixes_cursor_notify. */ +#define XCB_XFIXES_CURSOR_NOTIFY 1 + +/** + * @brief xcb_xfixes_cursor_notify_event_t + **/ +typedef struct xcb_xfixes_cursor_notify_event_t { + uint8_t response_type; /**< */ + uint8_t subtype; /**< */ + uint16_t sequence; /**< */ + xcb_window_t window; /**< */ + uint32_t cursor_serial; /**< */ + xcb_timestamp_t timestamp; /**< */ + xcb_atom_t name; /**< */ + uint8_t pad0[12]; /**< */ +} xcb_xfixes_cursor_notify_event_t; + +/** Opcode for xcb_xfixes_select_cursor_input. */ +#define XCB_XFIXES_SELECT_CURSOR_INPUT 3 + +/** + * @brief xcb_xfixes_select_cursor_input_request_t + **/ +typedef struct xcb_xfixes_select_cursor_input_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint32_t event_mask; /**< */ +} xcb_xfixes_select_cursor_input_request_t; + +/** + * @brief xcb_xfixes_get_cursor_image_cookie_t + **/ +typedef struct xcb_xfixes_get_cursor_image_cookie_t { + unsigned int sequence; /**< */ +} xcb_xfixes_get_cursor_image_cookie_t; + +/** Opcode for xcb_xfixes_get_cursor_image. */ +#define XCB_XFIXES_GET_CURSOR_IMAGE 4 + +/** + * @brief xcb_xfixes_get_cursor_image_request_t + **/ +typedef struct xcb_xfixes_get_cursor_image_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_xfixes_get_cursor_image_request_t; + +/** + * @brief xcb_xfixes_get_cursor_image_reply_t + **/ +typedef struct xcb_xfixes_get_cursor_image_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t xhot; /**< */ + uint16_t yhot; /**< */ + uint32_t cursor_serial; /**< */ + uint8_t pad1[8]; /**< */ +} xcb_xfixes_get_cursor_image_reply_t; + +typedef uint32_t xcb_xfixes_region_t; + +/** + * @brief xcb_xfixes_region_iterator_t + **/ +typedef struct xcb_xfixes_region_iterator_t { + xcb_xfixes_region_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xfixes_region_iterator_t; + +/** Opcode for xcb_xfixes_bad_region. */ +#define XCB_XFIXES_BAD_REGION 0 + +/** + * @brief xcb_xfixes_bad_region_error_t + **/ +typedef struct xcb_xfixes_bad_region_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_xfixes_bad_region_error_t; + +typedef enum xcb_xfixes_region_enum_t { + XCB_XFIXES_REGION_NONE +} xcb_xfixes_region_enum_t; + +/** Opcode for xcb_xfixes_create_region. */ +#define XCB_XFIXES_CREATE_REGION 5 + +/** + * @brief xcb_xfixes_create_region_request_t + **/ +typedef struct xcb_xfixes_create_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ +} xcb_xfixes_create_region_request_t; + +/** Opcode for xcb_xfixes_create_region_from_bitmap. */ +#define XCB_XFIXES_CREATE_REGION_FROM_BITMAP 6 + +/** + * @brief xcb_xfixes_create_region_from_bitmap_request_t + **/ +typedef struct xcb_xfixes_create_region_from_bitmap_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ + xcb_pixmap_t bitmap; /**< */ +} xcb_xfixes_create_region_from_bitmap_request_t; + +/** Opcode for xcb_xfixes_create_region_from_window. */ +#define XCB_XFIXES_CREATE_REGION_FROM_WINDOW 7 + +/** + * @brief xcb_xfixes_create_region_from_window_request_t + **/ +typedef struct xcb_xfixes_create_region_from_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ + xcb_window_t window; /**< */ + xcb_shape_kind_t kind; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xfixes_create_region_from_window_request_t; + +/** Opcode for xcb_xfixes_create_region_from_gc. */ +#define XCB_XFIXES_CREATE_REGION_FROM_GC 8 + +/** + * @brief xcb_xfixes_create_region_from_gc_request_t + **/ +typedef struct xcb_xfixes_create_region_from_gc_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ + xcb_gcontext_t gc; /**< */ +} xcb_xfixes_create_region_from_gc_request_t; + +/** Opcode for xcb_xfixes_create_region_from_picture. */ +#define XCB_XFIXES_CREATE_REGION_FROM_PICTURE 9 + +/** + * @brief xcb_xfixes_create_region_from_picture_request_t + **/ +typedef struct xcb_xfixes_create_region_from_picture_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ + xcb_render_picture_t picture; /**< */ +} xcb_xfixes_create_region_from_picture_request_t; + +/** Opcode for xcb_xfixes_destroy_region. */ +#define XCB_XFIXES_DESTROY_REGION 10 + +/** + * @brief xcb_xfixes_destroy_region_request_t + **/ +typedef struct xcb_xfixes_destroy_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ +} xcb_xfixes_destroy_region_request_t; + +/** Opcode for xcb_xfixes_set_region. */ +#define XCB_XFIXES_SET_REGION 11 + +/** + * @brief xcb_xfixes_set_region_request_t + **/ +typedef struct xcb_xfixes_set_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ +} xcb_xfixes_set_region_request_t; + +/** Opcode for xcb_xfixes_copy_region. */ +#define XCB_XFIXES_COPY_REGION 12 + +/** + * @brief xcb_xfixes_copy_region_request_t + **/ +typedef struct xcb_xfixes_copy_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t source; /**< */ + xcb_xfixes_region_t destination; /**< */ +} xcb_xfixes_copy_region_request_t; + +/** Opcode for xcb_xfixes_union_region. */ +#define XCB_XFIXES_UNION_REGION 13 + +/** + * @brief xcb_xfixes_union_region_request_t + **/ +typedef struct xcb_xfixes_union_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t source1; /**< */ + xcb_xfixes_region_t source2; /**< */ + xcb_xfixes_region_t destination; /**< */ +} xcb_xfixes_union_region_request_t; + +/** Opcode for xcb_xfixes_intersect_region. */ +#define XCB_XFIXES_INTERSECT_REGION 14 + +/** + * @brief xcb_xfixes_intersect_region_request_t + **/ +typedef struct xcb_xfixes_intersect_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t source1; /**< */ + xcb_xfixes_region_t source2; /**< */ + xcb_xfixes_region_t destination; /**< */ +} xcb_xfixes_intersect_region_request_t; + +/** Opcode for xcb_xfixes_subtract_region. */ +#define XCB_XFIXES_SUBTRACT_REGION 15 + +/** + * @brief xcb_xfixes_subtract_region_request_t + **/ +typedef struct xcb_xfixes_subtract_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t source1; /**< */ + xcb_xfixes_region_t source2; /**< */ + xcb_xfixes_region_t destination; /**< */ +} xcb_xfixes_subtract_region_request_t; + +/** Opcode for xcb_xfixes_invert_region. */ +#define XCB_XFIXES_INVERT_REGION 16 + +/** + * @brief xcb_xfixes_invert_region_request_t + **/ +typedef struct xcb_xfixes_invert_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t source; /**< */ + xcb_rectangle_t bounds; /**< */ + xcb_xfixes_region_t destination; /**< */ +} xcb_xfixes_invert_region_request_t; + +/** Opcode for xcb_xfixes_translate_region. */ +#define XCB_XFIXES_TRANSLATE_REGION 17 + +/** + * @brief xcb_xfixes_translate_region_request_t + **/ +typedef struct xcb_xfixes_translate_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ + int16_t dx; /**< */ + int16_t dy; /**< */ +} xcb_xfixes_translate_region_request_t; + +/** Opcode for xcb_xfixes_region_extents. */ +#define XCB_XFIXES_REGION_EXTENTS 18 + +/** + * @brief xcb_xfixes_region_extents_request_t + **/ +typedef struct xcb_xfixes_region_extents_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t source; /**< */ + xcb_xfixes_region_t destination; /**< */ +} xcb_xfixes_region_extents_request_t; + +/** + * @brief xcb_xfixes_fetch_region_cookie_t + **/ +typedef struct xcb_xfixes_fetch_region_cookie_t { + unsigned int sequence; /**< */ +} xcb_xfixes_fetch_region_cookie_t; + +/** Opcode for xcb_xfixes_fetch_region. */ +#define XCB_XFIXES_FETCH_REGION 19 + +/** + * @brief xcb_xfixes_fetch_region_request_t + **/ +typedef struct xcb_xfixes_fetch_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t region; /**< */ +} xcb_xfixes_fetch_region_request_t; + +/** + * @brief xcb_xfixes_fetch_region_reply_t + **/ +typedef struct xcb_xfixes_fetch_region_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_rectangle_t extents; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_xfixes_fetch_region_reply_t; + +/** Opcode for xcb_xfixes_set_gc_clip_region. */ +#define XCB_XFIXES_SET_GC_CLIP_REGION 20 + +/** + * @brief xcb_xfixes_set_gc_clip_region_request_t + **/ +typedef struct xcb_xfixes_set_gc_clip_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_gcontext_t gc; /**< */ + xcb_xfixes_region_t region; /**< */ + int16_t x_origin; /**< */ + int16_t y_origin; /**< */ +} xcb_xfixes_set_gc_clip_region_request_t; + +/** Opcode for xcb_xfixes_set_window_shape_region. */ +#define XCB_XFIXES_SET_WINDOW_SHAPE_REGION 21 + +/** + * @brief xcb_xfixes_set_window_shape_region_request_t + **/ +typedef struct xcb_xfixes_set_window_shape_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t dest; /**< */ + xcb_shape_kind_t dest_kind; /**< */ + uint8_t pad0[3]; /**< */ + int16_t x_offset; /**< */ + int16_t y_offset; /**< */ + xcb_xfixes_region_t region; /**< */ +} xcb_xfixes_set_window_shape_region_request_t; + +/** Opcode for xcb_xfixes_set_picture_clip_region. */ +#define XCB_XFIXES_SET_PICTURE_CLIP_REGION 22 + +/** + * @brief xcb_xfixes_set_picture_clip_region_request_t + **/ +typedef struct xcb_xfixes_set_picture_clip_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_render_picture_t picture; /**< */ + xcb_xfixes_region_t region; /**< */ + int16_t x_origin; /**< */ + int16_t y_origin; /**< */ +} xcb_xfixes_set_picture_clip_region_request_t; + +/** Opcode for xcb_xfixes_set_cursor_name. */ +#define XCB_XFIXES_SET_CURSOR_NAME 23 + +/** + * @brief xcb_xfixes_set_cursor_name_request_t + **/ +typedef struct xcb_xfixes_set_cursor_name_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_cursor_t cursor; /**< */ + uint16_t nbytes; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xfixes_set_cursor_name_request_t; + +/** + * @brief xcb_xfixes_get_cursor_name_cookie_t + **/ +typedef struct xcb_xfixes_get_cursor_name_cookie_t { + unsigned int sequence; /**< */ +} xcb_xfixes_get_cursor_name_cookie_t; + +/** Opcode for xcb_xfixes_get_cursor_name. */ +#define XCB_XFIXES_GET_CURSOR_NAME 24 + +/** + * @brief xcb_xfixes_get_cursor_name_request_t + **/ +typedef struct xcb_xfixes_get_cursor_name_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_cursor_t cursor; /**< */ +} xcb_xfixes_get_cursor_name_request_t; + +/** + * @brief xcb_xfixes_get_cursor_name_reply_t + **/ +typedef struct xcb_xfixes_get_cursor_name_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_atom_t atom; /**< */ + uint16_t nbytes; /**< */ + uint8_t pad1[18]; /**< */ +} xcb_xfixes_get_cursor_name_reply_t; + +/** + * @brief xcb_xfixes_get_cursor_image_and_name_cookie_t + **/ +typedef struct xcb_xfixes_get_cursor_image_and_name_cookie_t { + unsigned int sequence; /**< */ +} xcb_xfixes_get_cursor_image_and_name_cookie_t; + +/** Opcode for xcb_xfixes_get_cursor_image_and_name. */ +#define XCB_XFIXES_GET_CURSOR_IMAGE_AND_NAME 25 + +/** + * @brief xcb_xfixes_get_cursor_image_and_name_request_t + **/ +typedef struct xcb_xfixes_get_cursor_image_and_name_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_xfixes_get_cursor_image_and_name_request_t; + +/** + * @brief xcb_xfixes_get_cursor_image_and_name_reply_t + **/ +typedef struct xcb_xfixes_get_cursor_image_and_name_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t xhot; /**< */ + uint16_t yhot; /**< */ + uint32_t cursor_serial; /**< */ + xcb_atom_t cursor_atom; /**< */ + uint16_t nbytes; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_xfixes_get_cursor_image_and_name_reply_t; + +/** Opcode for xcb_xfixes_change_cursor. */ +#define XCB_XFIXES_CHANGE_CURSOR 26 + +/** + * @brief xcb_xfixes_change_cursor_request_t + **/ +typedef struct xcb_xfixes_change_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_cursor_t source; /**< */ + xcb_cursor_t destination; /**< */ +} xcb_xfixes_change_cursor_request_t; + +/** Opcode for xcb_xfixes_change_cursor_by_name. */ +#define XCB_XFIXES_CHANGE_CURSOR_BY_NAME 27 + +/** + * @brief xcb_xfixes_change_cursor_by_name_request_t + **/ +typedef struct xcb_xfixes_change_cursor_by_name_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_cursor_t src; /**< */ + uint16_t nbytes; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xfixes_change_cursor_by_name_request_t; + +/** Opcode for xcb_xfixes_expand_region. */ +#define XCB_XFIXES_EXPAND_REGION 28 + +/** + * @brief xcb_xfixes_expand_region_request_t + **/ +typedef struct xcb_xfixes_expand_region_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xfixes_region_t source; /**< */ + xcb_xfixes_region_t destination; /**< */ + uint16_t left; /**< */ + uint16_t right; /**< */ + uint16_t top; /**< */ + uint16_t bottom; /**< */ +} xcb_xfixes_expand_region_request_t; + +/** Opcode for xcb_xfixes_hide_cursor. */ +#define XCB_XFIXES_HIDE_CURSOR 29 + +/** + * @brief xcb_xfixes_hide_cursor_request_t + **/ +typedef struct xcb_xfixes_hide_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_xfixes_hide_cursor_request_t; + +/** Opcode for xcb_xfixes_show_cursor. */ +#define XCB_XFIXES_SHOW_CURSOR 30 + +/** + * @brief xcb_xfixes_show_cursor_request_t + **/ +typedef struct xcb_xfixes_show_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_xfixes_show_cursor_request_t; + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xfixes_query_version_cookie_t xcb_xfixes_query_version + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_xfixes_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_query_version_cookie_t +xcb_xfixes_query_version (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xfixes_query_version_cookie_t xcb_xfixes_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t client_major_version + ** @param uint32_t client_minor_version + ** @returns xcb_xfixes_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_query_version_cookie_t +xcb_xfixes_query_version_unchecked (xcb_connection_t *c /**< */, + uint32_t client_major_version /**< */, + uint32_t client_minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xfixes_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xfixes_query_version_reply_t * xcb_xfixes_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_query_version_reply_t * +xcb_xfixes_query_version_reply (xcb_connection_t *c /**< */, + xcb_xfixes_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_save_set_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param uint8_t target + ** @param uint8_t map + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_save_set_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + uint8_t target /**< */, + uint8_t map /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_save_set + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param uint8_t target + ** @param uint8_t map + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_save_set (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + uint8_t target /**< */, + uint8_t map /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_select_selection_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t selection + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_select_selection_input_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t selection /**< */, + uint32_t event_mask /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_select_selection_input + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t selection + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_select_selection_input (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t selection /**< */, + uint32_t event_mask /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_select_cursor_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_select_cursor_input_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t event_mask /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_select_cursor_input + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_select_cursor_input (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t event_mask /**< */); + +int +xcb_xfixes_get_cursor_image_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_cookie_t xcb_xfixes_get_cursor_image + ** + ** @param xcb_connection_t *c + ** @returns xcb_xfixes_get_cursor_image_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_cookie_t +xcb_xfixes_get_cursor_image (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_cookie_t xcb_xfixes_get_cursor_image_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xfixes_get_cursor_image_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_cookie_t +xcb_xfixes_get_cursor_image_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xfixes_get_cursor_image_cursor_image + ** + ** @param const xcb_xfixes_get_cursor_image_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xfixes_get_cursor_image_cursor_image (const xcb_xfixes_get_cursor_image_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xfixes_get_cursor_image_cursor_image_length + ** + ** @param const xcb_xfixes_get_cursor_image_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_get_cursor_image_cursor_image_length (const xcb_xfixes_get_cursor_image_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_get_cursor_image_cursor_image_end + ** + ** @param const xcb_xfixes_get_cursor_image_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_get_cursor_image_cursor_image_end (const xcb_xfixes_get_cursor_image_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xfixes_get_cursor_image_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_reply_t * xcb_xfixes_get_cursor_image_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_get_cursor_image_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_get_cursor_image_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_reply_t * +xcb_xfixes_get_cursor_image_reply (xcb_connection_t *c /**< */, + xcb_xfixes_get_cursor_image_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xfixes_region_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xfixes_region_t) + */ + +/***************************************************************************** + ** + ** void xcb_xfixes_region_next + ** + ** @param xcb_xfixes_region_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xfixes_region_next (xcb_xfixes_region_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xfixes_region_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_region_end + ** + ** @param xcb_xfixes_region_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_region_end (xcb_xfixes_region_iterator_t i /**< */); + +int +xcb_xfixes_create_region_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_bitmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_pixmap_t bitmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_bitmap_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_pixmap_t bitmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_bitmap + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_pixmap_t bitmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_bitmap (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_pixmap_t bitmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_window_t window + ** @param xcb_shape_kind_t kind + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_window_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_window_t window /**< */, + xcb_shape_kind_t kind /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_window + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_window_t window + ** @param xcb_shape_kind_t kind + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_window (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_window_t window /**< */, + xcb_shape_kind_t kind /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_gcontext_t gc + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_gc_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_gcontext_t gc /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_gcontext_t gc + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_gc (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_gcontext_t gc /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_picture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_render_picture_t picture + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_picture_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_render_picture_t picture /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_create_region_from_picture + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param xcb_render_picture_t picture + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_create_region_from_picture (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + xcb_render_picture_t picture /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_destroy_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_destroy_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_destroy_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_destroy_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */); + +int +xcb_xfixes_set_region_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_copy_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_copy_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_copy_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_copy_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_union_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_union_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_union_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_union_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_intersect_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_intersect_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_intersect_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_intersect_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_subtract_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_subtract_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_subtract_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source1 + ** @param xcb_xfixes_region_t source2 + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_subtract_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source1 /**< */, + xcb_xfixes_region_t source2 /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_invert_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_rectangle_t bounds + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_invert_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_rectangle_t bounds /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_invert_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_rectangle_t bounds + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_invert_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_rectangle_t bounds /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_translate_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param int16_t dx + ** @param int16_t dy + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_translate_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + int16_t dx /**< */, + int16_t dy /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_translate_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @param int16_t dx + ** @param int16_t dy + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_translate_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */, + int16_t dx /**< */, + int16_t dy /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_region_extents_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_region_extents_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_region_extents + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_region_extents (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */); + +int +xcb_xfixes_fetch_region_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xfixes_fetch_region_cookie_t xcb_xfixes_fetch_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @returns xcb_xfixes_fetch_region_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_fetch_region_cookie_t +xcb_xfixes_fetch_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xfixes_fetch_region_cookie_t xcb_xfixes_fetch_region_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t region + ** @returns xcb_xfixes_fetch_region_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_fetch_region_cookie_t +xcb_xfixes_fetch_region_unchecked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t region /**< */); + + +/***************************************************************************** + ** + ** xcb_rectangle_t * xcb_xfixes_fetch_region_rectangles + ** + ** @param const xcb_xfixes_fetch_region_reply_t *R + ** @returns xcb_rectangle_t * + ** + *****************************************************************************/ + +xcb_rectangle_t * +xcb_xfixes_fetch_region_rectangles (const xcb_xfixes_fetch_region_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xfixes_fetch_region_rectangles_length + ** + ** @param const xcb_xfixes_fetch_region_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_fetch_region_rectangles_length (const xcb_xfixes_fetch_region_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_rectangle_iterator_t xcb_xfixes_fetch_region_rectangles_iterator + ** + ** @param const xcb_xfixes_fetch_region_reply_t *R + ** @returns xcb_rectangle_iterator_t + ** + *****************************************************************************/ + +xcb_rectangle_iterator_t +xcb_xfixes_fetch_region_rectangles_iterator (const xcb_xfixes_fetch_region_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xfixes_fetch_region_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xfixes_fetch_region_reply_t * xcb_xfixes_fetch_region_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_fetch_region_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_fetch_region_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_fetch_region_reply_t * +xcb_xfixes_fetch_region_reply (xcb_connection_t *c /**< */, + xcb_xfixes_fetch_region_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_gc_clip_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param xcb_xfixes_region_t region + ** @param int16_t x_origin + ** @param int16_t y_origin + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_gc_clip_region_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + xcb_xfixes_region_t region /**< */, + int16_t x_origin /**< */, + int16_t y_origin /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_gc_clip_region + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param xcb_xfixes_region_t region + ** @param int16_t x_origin + ** @param int16_t y_origin + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_gc_clip_region (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + xcb_xfixes_region_t region /**< */, + int16_t x_origin /**< */, + int16_t y_origin /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_window_shape_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t dest + ** @param xcb_shape_kind_t dest_kind + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_window_shape_region_checked (xcb_connection_t *c /**< */, + xcb_window_t dest /**< */, + xcb_shape_kind_t dest_kind /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_xfixes_region_t region /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_window_shape_region + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t dest + ** @param xcb_shape_kind_t dest_kind + ** @param int16_t x_offset + ** @param int16_t y_offset + ** @param xcb_xfixes_region_t region + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_window_shape_region (xcb_connection_t *c /**< */, + xcb_window_t dest /**< */, + xcb_shape_kind_t dest_kind /**< */, + int16_t x_offset /**< */, + int16_t y_offset /**< */, + xcb_xfixes_region_t region /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_picture_clip_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_xfixes_region_t region + ** @param int16_t x_origin + ** @param int16_t y_origin + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_picture_clip_region_checked (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_xfixes_region_t region /**< */, + int16_t x_origin /**< */, + int16_t y_origin /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_picture_clip_region + ** + ** @param xcb_connection_t *c + ** @param xcb_render_picture_t picture + ** @param xcb_xfixes_region_t region + ** @param int16_t x_origin + ** @param int16_t y_origin + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_picture_clip_region (xcb_connection_t *c /**< */, + xcb_render_picture_t picture /**< */, + xcb_xfixes_region_t region /**< */, + int16_t x_origin /**< */, + int16_t y_origin /**< */); + +int +xcb_xfixes_set_cursor_name_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_cursor_name_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param uint16_t nbytes + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_cursor_name_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + uint16_t nbytes /**< */, + const char *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_set_cursor_name + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param uint16_t nbytes + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_set_cursor_name (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + uint16_t nbytes /**< */, + const char *name /**< */); + +int +xcb_xfixes_get_cursor_name_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_name_cookie_t xcb_xfixes_get_cursor_name + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @returns xcb_xfixes_get_cursor_name_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_name_cookie_t +xcb_xfixes_get_cursor_name (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_name_cookie_t xcb_xfixes_get_cursor_name_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @returns xcb_xfixes_get_cursor_name_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_name_cookie_t +xcb_xfixes_get_cursor_name_unchecked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */); + + +/***************************************************************************** + ** + ** char * xcb_xfixes_get_cursor_name_name + ** + ** @param const xcb_xfixes_get_cursor_name_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xfixes_get_cursor_name_name (const xcb_xfixes_get_cursor_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xfixes_get_cursor_name_name_length + ** + ** @param const xcb_xfixes_get_cursor_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_get_cursor_name_name_length (const xcb_xfixes_get_cursor_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_get_cursor_name_name_end + ** + ** @param const xcb_xfixes_get_cursor_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_get_cursor_name_name_end (const xcb_xfixes_get_cursor_name_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xfixes_get_cursor_name_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_name_reply_t * xcb_xfixes_get_cursor_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_get_cursor_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_get_cursor_name_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_name_reply_t * +xcb_xfixes_get_cursor_name_reply (xcb_connection_t *c /**< */, + xcb_xfixes_get_cursor_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xfixes_get_cursor_image_and_name_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_and_name_cookie_t xcb_xfixes_get_cursor_image_and_name + ** + ** @param xcb_connection_t *c + ** @returns xcb_xfixes_get_cursor_image_and_name_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_and_name_cookie_t +xcb_xfixes_get_cursor_image_and_name (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_and_name_cookie_t xcb_xfixes_get_cursor_image_and_name_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xfixes_get_cursor_image_and_name_cookie_t + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_and_name_cookie_t +xcb_xfixes_get_cursor_image_and_name_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** char * xcb_xfixes_get_cursor_image_and_name_name + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xfixes_get_cursor_image_and_name_name (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xfixes_get_cursor_image_and_name_name_length + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_get_cursor_image_and_name_name_length (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_get_cursor_image_and_name_name_end + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_get_cursor_image_and_name_name_end (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xfixes_get_cursor_image_and_name_cursor_image + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xfixes_get_cursor_image_and_name_cursor_image (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xfixes_get_cursor_image_and_name_cursor_image_length + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xfixes_get_cursor_image_and_name_cursor_image_length (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xfixes_get_cursor_image_and_name_cursor_image_end + ** + ** @param const xcb_xfixes_get_cursor_image_and_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xfixes_get_cursor_image_and_name_cursor_image_end (const xcb_xfixes_get_cursor_image_and_name_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xfixes_get_cursor_image_and_name_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xfixes_get_cursor_image_and_name_reply_t * xcb_xfixes_get_cursor_image_and_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_get_cursor_image_and_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xfixes_get_cursor_image_and_name_reply_t * + ** + *****************************************************************************/ + +xcb_xfixes_get_cursor_image_and_name_reply_t * +xcb_xfixes_get_cursor_image_and_name_reply (xcb_connection_t *c /**< */, + xcb_xfixes_get_cursor_image_and_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t source + ** @param xcb_cursor_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t source /**< */, + xcb_cursor_t destination /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t source + ** @param xcb_cursor_t destination + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t source /**< */, + xcb_cursor_t destination /**< */); + +int +xcb_xfixes_change_cursor_by_name_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_cursor_by_name_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t src + ** @param uint16_t nbytes + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_cursor_by_name_checked (xcb_connection_t *c /**< */, + xcb_cursor_t src /**< */, + uint16_t nbytes /**< */, + const char *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_change_cursor_by_name + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t src + ** @param uint16_t nbytes + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_change_cursor_by_name (xcb_connection_t *c /**< */, + xcb_cursor_t src /**< */, + uint16_t nbytes /**< */, + const char *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_expand_region_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @param uint16_t left + ** @param uint16_t right + ** @param uint16_t top + ** @param uint16_t bottom + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_expand_region_checked (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */, + uint16_t left /**< */, + uint16_t right /**< */, + uint16_t top /**< */, + uint16_t bottom /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_expand_region + ** + ** @param xcb_connection_t *c + ** @param xcb_xfixes_region_t source + ** @param xcb_xfixes_region_t destination + ** @param uint16_t left + ** @param uint16_t right + ** @param uint16_t top + ** @param uint16_t bottom + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_expand_region (xcb_connection_t *c /**< */, + xcb_xfixes_region_t source /**< */, + xcb_xfixes_region_t destination /**< */, + uint16_t left /**< */, + uint16_t right /**< */, + uint16_t top /**< */, + uint16_t bottom /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_hide_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_hide_cursor_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_hide_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_hide_cursor (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_show_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_show_cursor_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xfixes_show_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xfixes_show_cursor (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xinerama.c b/external/mit/xorg/lib/libxcb/files/xinerama.c new file mode 100644 index 000000000..e660be267 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xinerama.c @@ -0,0 +1,703 @@ +/* + * This file generated automatically from xinerama.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xinerama.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_xinerama_id = { "XINERAMA", 0 }; + + +/***************************************************************************** + ** + ** void xcb_xinerama_screen_info_next + ** + ** @param xcb_xinerama_screen_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xinerama_screen_info_next (xcb_xinerama_screen_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xinerama_screen_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xinerama_screen_info_end + ** + ** @param xcb_xinerama_screen_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xinerama_screen_info_end (xcb_xinerama_screen_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_query_version_cookie_t xcb_xinerama_query_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t major + ** @param uint8_t minor + ** @returns xcb_xinerama_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_query_version_cookie_t +xcb_xinerama_query_version (xcb_connection_t *c /**< */, + uint8_t major /**< */, + uint8_t minor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_query_version_cookie_t xcb_ret; + xcb_xinerama_query_version_request_t xcb_out; + + xcb_out.major = major; + xcb_out.minor = minor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_query_version_cookie_t xcb_xinerama_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t major + ** @param uint8_t minor + ** @returns xcb_xinerama_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_query_version_cookie_t +xcb_xinerama_query_version_unchecked (xcb_connection_t *c /**< */, + uint8_t major /**< */, + uint8_t minor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_query_version_cookie_t xcb_ret; + xcb_xinerama_query_version_request_t xcb_out; + + xcb_out.major = major; + xcb_out.minor = minor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_query_version_reply_t * xcb_xinerama_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_query_version_reply_t * +xcb_xinerama_query_version_reply (xcb_connection_t *c /**< */, + xcb_xinerama_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xinerama_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xinerama_get_state_cookie_t xcb_xinerama_get_state + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xinerama_get_state_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_state_cookie_t +xcb_xinerama_get_state (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_GET_STATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_get_state_cookie_t xcb_ret; + xcb_xinerama_get_state_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_get_state_cookie_t xcb_xinerama_get_state_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xinerama_get_state_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_state_cookie_t +xcb_xinerama_get_state_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_GET_STATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_get_state_cookie_t xcb_ret; + xcb_xinerama_get_state_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_get_state_reply_t * xcb_xinerama_get_state_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_get_state_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_get_state_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_get_state_reply_t * +xcb_xinerama_get_state_reply (xcb_connection_t *c /**< */, + xcb_xinerama_get_state_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xinerama_get_state_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_count_cookie_t xcb_xinerama_get_screen_count + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xinerama_get_screen_count_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_count_cookie_t +xcb_xinerama_get_screen_count (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_GET_SCREEN_COUNT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_get_screen_count_cookie_t xcb_ret; + xcb_xinerama_get_screen_count_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_count_cookie_t xcb_xinerama_get_screen_count_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xinerama_get_screen_count_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_count_cookie_t +xcb_xinerama_get_screen_count_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_GET_SCREEN_COUNT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_get_screen_count_cookie_t xcb_ret; + xcb_xinerama_get_screen_count_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_count_reply_t * xcb_xinerama_get_screen_count_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_get_screen_count_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_get_screen_count_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_count_reply_t * +xcb_xinerama_get_screen_count_reply (xcb_connection_t *c /**< */, + xcb_xinerama_get_screen_count_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xinerama_get_screen_count_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_size_cookie_t xcb_xinerama_get_screen_size + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t screen + ** @returns xcb_xinerama_get_screen_size_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_size_cookie_t +xcb_xinerama_get_screen_size (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_GET_SCREEN_SIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_get_screen_size_cookie_t xcb_ret; + xcb_xinerama_get_screen_size_request_t xcb_out; + + xcb_out.window = window; + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_size_cookie_t xcb_xinerama_get_screen_size_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t screen + ** @returns xcb_xinerama_get_screen_size_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_size_cookie_t +xcb_xinerama_get_screen_size_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t screen /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_GET_SCREEN_SIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_get_screen_size_cookie_t xcb_ret; + xcb_xinerama_get_screen_size_request_t xcb_out; + + xcb_out.window = window; + xcb_out.screen = screen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_size_reply_t * xcb_xinerama_get_screen_size_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_get_screen_size_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_get_screen_size_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_size_reply_t * +xcb_xinerama_get_screen_size_reply (xcb_connection_t *c /**< */, + xcb_xinerama_get_screen_size_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xinerama_get_screen_size_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xinerama_is_active_cookie_t xcb_xinerama_is_active + ** + ** @param xcb_connection_t *c + ** @returns xcb_xinerama_is_active_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_is_active_cookie_t +xcb_xinerama_is_active (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_IS_ACTIVE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_is_active_cookie_t xcb_ret; + xcb_xinerama_is_active_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_is_active_cookie_t xcb_xinerama_is_active_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xinerama_is_active_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_is_active_cookie_t +xcb_xinerama_is_active_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_IS_ACTIVE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_is_active_cookie_t xcb_ret; + xcb_xinerama_is_active_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_is_active_reply_t * xcb_xinerama_is_active_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_is_active_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_is_active_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_is_active_reply_t * +xcb_xinerama_is_active_reply (xcb_connection_t *c /**< */, + xcb_xinerama_is_active_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xinerama_is_active_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xinerama_query_screens_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xinerama_query_screens_reply_t *_aux = (xcb_xinerama_query_screens_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xinerama_query_screens_reply_t); + xcb_tmp += xcb_block_len; + /* screen_info */ + xcb_block_len += _aux->number * sizeof(xcb_xinerama_screen_info_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xinerama_screen_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_query_screens_cookie_t xcb_xinerama_query_screens + ** + ** @param xcb_connection_t *c + ** @returns xcb_xinerama_query_screens_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_query_screens_cookie_t +xcb_xinerama_query_screens (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_QUERY_SCREENS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_query_screens_cookie_t xcb_ret; + xcb_xinerama_query_screens_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_query_screens_cookie_t xcb_xinerama_query_screens_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xinerama_query_screens_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_query_screens_cookie_t +xcb_xinerama_query_screens_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xinerama_id, + /* opcode */ XCB_XINERAMA_QUERY_SCREENS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xinerama_query_screens_cookie_t xcb_ret; + xcb_xinerama_query_screens_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_screen_info_t * xcb_xinerama_query_screens_screen_info + ** + ** @param const xcb_xinerama_query_screens_reply_t *R + ** @returns xcb_xinerama_screen_info_t * + ** + *****************************************************************************/ + +xcb_xinerama_screen_info_t * +xcb_xinerama_query_screens_screen_info (const xcb_xinerama_query_screens_reply_t *R /**< */) +{ + return (xcb_xinerama_screen_info_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xinerama_query_screens_screen_info_length + ** + ** @param const xcb_xinerama_query_screens_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xinerama_query_screens_screen_info_length (const xcb_xinerama_query_screens_reply_t *R /**< */) +{ + return R->number; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_screen_info_iterator_t xcb_xinerama_query_screens_screen_info_iterator + ** + ** @param const xcb_xinerama_query_screens_reply_t *R + ** @returns xcb_xinerama_screen_info_iterator_t + ** + *****************************************************************************/ + +xcb_xinerama_screen_info_iterator_t +xcb_xinerama_query_screens_screen_info_iterator (const xcb_xinerama_query_screens_reply_t *R /**< */) +{ + xcb_xinerama_screen_info_iterator_t i; + i.data = (xcb_xinerama_screen_info_t *) (R + 1); + i.rem = R->number; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xinerama_query_screens_reply_t * xcb_xinerama_query_screens_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_query_screens_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_query_screens_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_query_screens_reply_t * +xcb_xinerama_query_screens_reply (xcb_connection_t *c /**< */, + xcb_xinerama_query_screens_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xinerama_query_screens_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/xinerama.h b/external/mit/xorg/lib/libxcb/files/xinerama.h new file mode 100644 index 000000000..f18a96c79 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xinerama.h @@ -0,0 +1,811 @@ +/* + * This file generated automatically from xinerama.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Xinerama_API XCB Xinerama API + * @brief Xinerama XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XINERAMA_H +#define __XINERAMA_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_XINERAMA_MAJOR_VERSION 1 +#define XCB_XINERAMA_MINOR_VERSION 1 + +extern xcb_extension_t xcb_xinerama_id; + +/** + * @brief xcb_xinerama_screen_info_t + **/ +typedef struct xcb_xinerama_screen_info_t { + int16_t x_org; /**< */ + int16_t y_org; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_xinerama_screen_info_t; + +/** + * @brief xcb_xinerama_screen_info_iterator_t + **/ +typedef struct xcb_xinerama_screen_info_iterator_t { + xcb_xinerama_screen_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xinerama_screen_info_iterator_t; + +/** + * @brief xcb_xinerama_query_version_cookie_t + **/ +typedef struct xcb_xinerama_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_xinerama_query_version_cookie_t; + +/** Opcode for xcb_xinerama_query_version. */ +#define XCB_XINERAMA_QUERY_VERSION 0 + +/** + * @brief xcb_xinerama_query_version_request_t + **/ +typedef struct xcb_xinerama_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t major; /**< */ + uint8_t minor; /**< */ +} xcb_xinerama_query_version_request_t; + +/** + * @brief xcb_xinerama_query_version_reply_t + **/ +typedef struct xcb_xinerama_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t major; /**< */ + uint16_t minor; /**< */ +} xcb_xinerama_query_version_reply_t; + +/** + * @brief xcb_xinerama_get_state_cookie_t + **/ +typedef struct xcb_xinerama_get_state_cookie_t { + unsigned int sequence; /**< */ +} xcb_xinerama_get_state_cookie_t; + +/** Opcode for xcb_xinerama_get_state. */ +#define XCB_XINERAMA_GET_STATE 1 + +/** + * @brief xcb_xinerama_get_state_request_t + **/ +typedef struct xcb_xinerama_get_state_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_xinerama_get_state_request_t; + +/** + * @brief xcb_xinerama_get_state_reply_t + **/ +typedef struct xcb_xinerama_get_state_reply_t { + uint8_t response_type; /**< */ + uint8_t state; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_xinerama_get_state_reply_t; + +/** + * @brief xcb_xinerama_get_screen_count_cookie_t + **/ +typedef struct xcb_xinerama_get_screen_count_cookie_t { + unsigned int sequence; /**< */ +} xcb_xinerama_get_screen_count_cookie_t; + +/** Opcode for xcb_xinerama_get_screen_count. */ +#define XCB_XINERAMA_GET_SCREEN_COUNT 2 + +/** + * @brief xcb_xinerama_get_screen_count_request_t + **/ +typedef struct xcb_xinerama_get_screen_count_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_xinerama_get_screen_count_request_t; + +/** + * @brief xcb_xinerama_get_screen_count_reply_t + **/ +typedef struct xcb_xinerama_get_screen_count_reply_t { + uint8_t response_type; /**< */ + uint8_t screen_count; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_xinerama_get_screen_count_reply_t; + +/** + * @brief xcb_xinerama_get_screen_size_cookie_t + **/ +typedef struct xcb_xinerama_get_screen_size_cookie_t { + unsigned int sequence; /**< */ +} xcb_xinerama_get_screen_size_cookie_t; + +/** Opcode for xcb_xinerama_get_screen_size. */ +#define XCB_XINERAMA_GET_SCREEN_SIZE 3 + +/** + * @brief xcb_xinerama_get_screen_size_request_t + **/ +typedef struct xcb_xinerama_get_screen_size_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint32_t screen; /**< */ +} xcb_xinerama_get_screen_size_request_t; + +/** + * @brief xcb_xinerama_get_screen_size_reply_t + **/ +typedef struct xcb_xinerama_get_screen_size_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t width; /**< */ + uint32_t height; /**< */ + xcb_window_t window; /**< */ + uint32_t screen; /**< */ +} xcb_xinerama_get_screen_size_reply_t; + +/** + * @brief xcb_xinerama_is_active_cookie_t + **/ +typedef struct xcb_xinerama_is_active_cookie_t { + unsigned int sequence; /**< */ +} xcb_xinerama_is_active_cookie_t; + +/** Opcode for xcb_xinerama_is_active. */ +#define XCB_XINERAMA_IS_ACTIVE 4 + +/** + * @brief xcb_xinerama_is_active_request_t + **/ +typedef struct xcb_xinerama_is_active_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_xinerama_is_active_request_t; + +/** + * @brief xcb_xinerama_is_active_reply_t + **/ +typedef struct xcb_xinerama_is_active_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t state; /**< */ +} xcb_xinerama_is_active_reply_t; + +/** + * @brief xcb_xinerama_query_screens_cookie_t + **/ +typedef struct xcb_xinerama_query_screens_cookie_t { + unsigned int sequence; /**< */ +} xcb_xinerama_query_screens_cookie_t; + +/** Opcode for xcb_xinerama_query_screens. */ +#define XCB_XINERAMA_QUERY_SCREENS 5 + +/** + * @brief xcb_xinerama_query_screens_request_t + **/ +typedef struct xcb_xinerama_query_screens_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_xinerama_query_screens_request_t; + +/** + * @brief xcb_xinerama_query_screens_reply_t + **/ +typedef struct xcb_xinerama_query_screens_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t number; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_xinerama_query_screens_reply_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xinerama_screen_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xinerama_screen_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_xinerama_screen_info_next + ** + ** @param xcb_xinerama_screen_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xinerama_screen_info_next (xcb_xinerama_screen_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xinerama_screen_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xinerama_screen_info_end + ** + ** @param xcb_xinerama_screen_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xinerama_screen_info_end (xcb_xinerama_screen_info_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xinerama_query_version_cookie_t xcb_xinerama_query_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t major + ** @param uint8_t minor + ** @returns xcb_xinerama_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_query_version_cookie_t +xcb_xinerama_query_version (xcb_connection_t *c /**< */, + uint8_t major /**< */, + uint8_t minor /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xinerama_query_version_cookie_t xcb_xinerama_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t major + ** @param uint8_t minor + ** @returns xcb_xinerama_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_query_version_cookie_t +xcb_xinerama_query_version_unchecked (xcb_connection_t *c /**< */, + uint8_t major /**< */, + uint8_t minor /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xinerama_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xinerama_query_version_reply_t * xcb_xinerama_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_query_version_reply_t * +xcb_xinerama_query_version_reply (xcb_connection_t *c /**< */, + xcb_xinerama_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xinerama_get_state_cookie_t xcb_xinerama_get_state + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xinerama_get_state_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_state_cookie_t +xcb_xinerama_get_state (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xinerama_get_state_cookie_t xcb_xinerama_get_state_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xinerama_get_state_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_state_cookie_t +xcb_xinerama_get_state_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xinerama_get_state_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xinerama_get_state_reply_t * xcb_xinerama_get_state_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_get_state_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_get_state_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_get_state_reply_t * +xcb_xinerama_get_state_reply (xcb_connection_t *c /**< */, + xcb_xinerama_get_state_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_count_cookie_t xcb_xinerama_get_screen_count + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xinerama_get_screen_count_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_count_cookie_t +xcb_xinerama_get_screen_count (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_count_cookie_t xcb_xinerama_get_screen_count_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xinerama_get_screen_count_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_count_cookie_t +xcb_xinerama_get_screen_count_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xinerama_get_screen_count_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_count_reply_t * xcb_xinerama_get_screen_count_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_get_screen_count_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_get_screen_count_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_count_reply_t * +xcb_xinerama_get_screen_count_reply (xcb_connection_t *c /**< */, + xcb_xinerama_get_screen_count_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_size_cookie_t xcb_xinerama_get_screen_size + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t screen + ** @returns xcb_xinerama_get_screen_size_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_size_cookie_t +xcb_xinerama_get_screen_size (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t screen /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_size_cookie_t xcb_xinerama_get_screen_size_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t screen + ** @returns xcb_xinerama_get_screen_size_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_size_cookie_t +xcb_xinerama_get_screen_size_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t screen /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xinerama_get_screen_size_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xinerama_get_screen_size_reply_t * xcb_xinerama_get_screen_size_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_get_screen_size_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_get_screen_size_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_get_screen_size_reply_t * +xcb_xinerama_get_screen_size_reply (xcb_connection_t *c /**< */, + xcb_xinerama_get_screen_size_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xinerama_is_active_cookie_t xcb_xinerama_is_active + ** + ** @param xcb_connection_t *c + ** @returns xcb_xinerama_is_active_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_is_active_cookie_t +xcb_xinerama_is_active (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xinerama_is_active_cookie_t xcb_xinerama_is_active_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xinerama_is_active_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_is_active_cookie_t +xcb_xinerama_is_active_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xinerama_is_active_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xinerama_is_active_reply_t * xcb_xinerama_is_active_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_is_active_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_is_active_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_is_active_reply_t * +xcb_xinerama_is_active_reply (xcb_connection_t *c /**< */, + xcb_xinerama_is_active_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xinerama_query_screens_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xinerama_query_screens_cookie_t xcb_xinerama_query_screens + ** + ** @param xcb_connection_t *c + ** @returns xcb_xinerama_query_screens_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_query_screens_cookie_t +xcb_xinerama_query_screens (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xinerama_query_screens_cookie_t xcb_xinerama_query_screens_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xinerama_query_screens_cookie_t + ** + *****************************************************************************/ + +xcb_xinerama_query_screens_cookie_t +xcb_xinerama_query_screens_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** xcb_xinerama_screen_info_t * xcb_xinerama_query_screens_screen_info + ** + ** @param const xcb_xinerama_query_screens_reply_t *R + ** @returns xcb_xinerama_screen_info_t * + ** + *****************************************************************************/ + +xcb_xinerama_screen_info_t * +xcb_xinerama_query_screens_screen_info (const xcb_xinerama_query_screens_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xinerama_query_screens_screen_info_length + ** + ** @param const xcb_xinerama_query_screens_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xinerama_query_screens_screen_info_length (const xcb_xinerama_query_screens_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xinerama_screen_info_iterator_t xcb_xinerama_query_screens_screen_info_iterator + ** + ** @param const xcb_xinerama_query_screens_reply_t *R + ** @returns xcb_xinerama_screen_info_iterator_t + ** + *****************************************************************************/ + +xcb_xinerama_screen_info_iterator_t +xcb_xinerama_query_screens_screen_info_iterator (const xcb_xinerama_query_screens_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xinerama_query_screens_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xinerama_query_screens_reply_t * xcb_xinerama_query_screens_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xinerama_query_screens_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xinerama_query_screens_reply_t * + ** + *****************************************************************************/ + +xcb_xinerama_query_screens_reply_t * +xcb_xinerama_query_screens_reply (xcb_connection_t *c /**< */, + xcb_xinerama_query_screens_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xinput.c b/external/mit/xorg/lib/libxcb/files/xinput.c new file mode 100644 index 000000000..ca5d27382 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xinput.c @@ -0,0 +1,6564 @@ +/* + * This file generated automatically from xinput.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xinput.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_input_id = { "XInputExtension", 0 }; + + +/***************************************************************************** + ** + ** void xcb_input_key_code_next + ** + ** @param xcb_input_key_code_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_key_code_next (xcb_input_key_code_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_key_code_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_key_code_end + ** + ** @param xcb_input_key_code_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_key_code_end (xcb_input_key_code_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_event_class_next + ** + ** @param xcb_input_event_class_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_event_class_next (xcb_input_event_class_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_event_class_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_event_class_end + ** + ** @param xcb_input_event_class_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_event_class_end (xcb_input_event_class_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_get_extension_version_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_get_extension_version_request_t *_aux = (xcb_input_get_extension_version_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_get_extension_version_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_get_extension_version_cookie_t xcb_input_get_extension_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_input_get_extension_version_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_extension_version_cookie_t +xcb_input_get_extension_version (xcb_connection_t *c /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_EXTENSION_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_get_extension_version_cookie_t xcb_ret; + xcb_input_get_extension_version_request_t xcb_out; + + xcb_out.name_len = name_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_extension_version_cookie_t xcb_input_get_extension_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_input_get_extension_version_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_extension_version_cookie_t +xcb_input_get_extension_version_unchecked (xcb_connection_t *c /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_EXTENSION_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_get_extension_version_cookie_t xcb_ret; + xcb_input_get_extension_version_request_t xcb_out; + + xcb_out.name_len = name_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_extension_version_reply_t * xcb_input_get_extension_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_extension_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_extension_version_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_extension_version_reply_t * +xcb_input_get_extension_version_reply (xcb_connection_t *c /**< */, + xcb_input_get_extension_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_extension_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_input_device_info_next + ** + ** @param xcb_input_device_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_info_next (xcb_input_device_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_info_end + ** + ** @param xcb_input_device_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_info_end (xcb_input_device_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_list_input_devices_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_list_input_devices_reply_t *_aux = (xcb_input_list_input_devices_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_list_input_devices_reply_t); + xcb_tmp += xcb_block_len; + /* devices */ + xcb_block_len += _aux->devices_len * sizeof(xcb_input_device_info_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_device_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_list_input_devices_cookie_t xcb_input_list_input_devices + ** + ** @param xcb_connection_t *c + ** @returns xcb_input_list_input_devices_cookie_t + ** + *****************************************************************************/ + +xcb_input_list_input_devices_cookie_t +xcb_input_list_input_devices (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_LIST_INPUT_DEVICES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_list_input_devices_cookie_t xcb_ret; + xcb_input_list_input_devices_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_list_input_devices_cookie_t xcb_input_list_input_devices_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_input_list_input_devices_cookie_t + ** + *****************************************************************************/ + +xcb_input_list_input_devices_cookie_t +xcb_input_list_input_devices_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_LIST_INPUT_DEVICES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_list_input_devices_cookie_t xcb_ret; + xcb_input_list_input_devices_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_device_info_t * xcb_input_list_input_devices_devices + ** + ** @param const xcb_input_list_input_devices_reply_t *R + ** @returns xcb_input_device_info_t * + ** + *****************************************************************************/ + +xcb_input_device_info_t * +xcb_input_list_input_devices_devices (const xcb_input_list_input_devices_reply_t *R /**< */) +{ + return (xcb_input_device_info_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_list_input_devices_devices_length + ** + ** @param const xcb_input_list_input_devices_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_list_input_devices_devices_length (const xcb_input_list_input_devices_reply_t *R /**< */) +{ + return R->devices_len; +} + + +/***************************************************************************** + ** + ** xcb_input_device_info_iterator_t xcb_input_list_input_devices_devices_iterator + ** + ** @param const xcb_input_list_input_devices_reply_t *R + ** @returns xcb_input_device_info_iterator_t + ** + *****************************************************************************/ + +xcb_input_device_info_iterator_t +xcb_input_list_input_devices_devices_iterator (const xcb_input_list_input_devices_reply_t *R /**< */) +{ + xcb_input_device_info_iterator_t i; + i.data = (xcb_input_device_info_t *) (R + 1); + i.rem = R->devices_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_input_list_input_devices_reply_t * xcb_input_list_input_devices_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_list_input_devices_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_list_input_devices_reply_t * + ** + *****************************************************************************/ + +xcb_input_list_input_devices_reply_t * +xcb_input_list_input_devices_reply (xcb_connection_t *c /**< */, + xcb_input_list_input_devices_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_list_input_devices_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_input_input_info_next + ** + ** @param xcb_input_input_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_input_info_next (xcb_input_input_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_input_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_input_info_end + ** + ** @param xcb_input_input_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_input_info_end (xcb_input_input_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_key_info_next + ** + ** @param xcb_input_key_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_key_info_next (xcb_input_key_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_key_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_key_info_end + ** + ** @param xcb_input_key_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_key_info_end (xcb_input_key_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_button_info_next + ** + ** @param xcb_input_button_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_button_info_next (xcb_input_button_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_button_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_button_info_end + ** + ** @param xcb_input_button_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_button_info_end (xcb_input_button_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_axis_info_next + ** + ** @param xcb_input_axis_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_axis_info_next (xcb_input_axis_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_axis_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_axis_info_end + ** + ** @param xcb_input_axis_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_axis_info_end (xcb_input_axis_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_valuator_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_valuator_info_t *_aux = (xcb_input_valuator_info_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_valuator_info_t); + xcb_tmp += xcb_block_len; + /* axes */ + xcb_block_len += _aux->axes_len * sizeof(xcb_input_axis_info_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_axis_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_axis_info_t * xcb_input_valuator_info_axes + ** + ** @param const xcb_input_valuator_info_t *R + ** @returns xcb_input_axis_info_t * + ** + *****************************************************************************/ + +xcb_input_axis_info_t * +xcb_input_valuator_info_axes (const xcb_input_valuator_info_t *R /**< */) +{ + return (xcb_input_axis_info_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_valuator_info_axes_length + ** + ** @param const xcb_input_valuator_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_valuator_info_axes_length (const xcb_input_valuator_info_t *R /**< */) +{ + return R->axes_len; +} + + +/***************************************************************************** + ** + ** xcb_input_axis_info_iterator_t xcb_input_valuator_info_axes_iterator + ** + ** @param const xcb_input_valuator_info_t *R + ** @returns xcb_input_axis_info_iterator_t + ** + *****************************************************************************/ + +xcb_input_axis_info_iterator_t +xcb_input_valuator_info_axes_iterator (const xcb_input_valuator_info_t *R /**< */) +{ + xcb_input_axis_info_iterator_t i; + i.data = (xcb_input_axis_info_t *) (R + 1); + i.rem = R->axes_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_input_valuator_info_next + ** + ** @param xcb_input_valuator_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_valuator_info_next (xcb_input_valuator_info_iterator_t *i /**< */) +{ + xcb_input_valuator_info_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_input_valuator_info_t *)(((char *)R) + xcb_input_valuator_info_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_input_valuator_info_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_valuator_info_end + ** + ** @param xcb_input_valuator_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_valuator_info_end (xcb_input_valuator_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_input_valuator_info_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_input_class_info_next + ** + ** @param xcb_input_input_class_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_input_class_info_next (xcb_input_input_class_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_input_class_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_input_class_info_end + ** + ** @param xcb_input_input_class_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_input_class_info_end (xcb_input_input_class_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_open_device_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_open_device_reply_t *_aux = (xcb_input_open_device_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_open_device_reply_t); + xcb_tmp += xcb_block_len; + /* class_info */ + xcb_block_len += _aux->num_classes * sizeof(xcb_input_input_class_info_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_input_class_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_open_device_cookie_t xcb_input_open_device + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_open_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_open_device_cookie_t +xcb_input_open_device (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_OPEN_DEVICE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_open_device_cookie_t xcb_ret; + xcb_input_open_device_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_open_device_cookie_t xcb_input_open_device_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_open_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_open_device_cookie_t +xcb_input_open_device_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_OPEN_DEVICE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_open_device_cookie_t xcb_ret; + xcb_input_open_device_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_input_class_info_t * xcb_input_open_device_class_info + ** + ** @param const xcb_input_open_device_reply_t *R + ** @returns xcb_input_input_class_info_t * + ** + *****************************************************************************/ + +xcb_input_input_class_info_t * +xcb_input_open_device_class_info (const xcb_input_open_device_reply_t *R /**< */) +{ + return (xcb_input_input_class_info_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_open_device_class_info_length + ** + ** @param const xcb_input_open_device_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_open_device_class_info_length (const xcb_input_open_device_reply_t *R /**< */) +{ + return R->num_classes; +} + + +/***************************************************************************** + ** + ** xcb_input_input_class_info_iterator_t xcb_input_open_device_class_info_iterator + ** + ** @param const xcb_input_open_device_reply_t *R + ** @returns xcb_input_input_class_info_iterator_t + ** + *****************************************************************************/ + +xcb_input_input_class_info_iterator_t +xcb_input_open_device_class_info_iterator (const xcb_input_open_device_reply_t *R /**< */) +{ + xcb_input_input_class_info_iterator_t i; + i.data = (xcb_input_input_class_info_t *) (R + 1); + i.rem = R->num_classes; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_input_open_device_reply_t * xcb_input_open_device_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_open_device_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_open_device_reply_t * + ** + *****************************************************************************/ + +xcb_input_open_device_reply_t * +xcb_input_open_device_reply (xcb_connection_t *c /**< */, + xcb_input_open_device_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_open_device_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_close_device_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_close_device_checked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CLOSE_DEVICE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_close_device_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_close_device + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_close_device (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CLOSE_DEVICE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_close_device_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_mode_cookie_t xcb_input_set_device_mode + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t mode + ** @returns xcb_input_set_device_mode_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_mode_cookie_t +xcb_input_set_device_mode (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_MODE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_set_device_mode_cookie_t xcb_ret; + xcb_input_set_device_mode_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.mode = mode; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_mode_cookie_t xcb_input_set_device_mode_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t mode + ** @returns xcb_input_set_device_mode_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_mode_cookie_t +xcb_input_set_device_mode_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_MODE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_set_device_mode_cookie_t xcb_ret; + xcb_input_set_device_mode_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.mode = mode; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_mode_reply_t * xcb_input_set_device_mode_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_set_device_mode_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_set_device_mode_reply_t * + ** + *****************************************************************************/ + +xcb_input_set_device_mode_reply_t * +xcb_input_set_device_mode_reply (xcb_connection_t *c /**< */, + xcb_input_set_device_mode_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_set_device_mode_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_input_select_extension_event_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_select_extension_event_request_t *_aux = (xcb_input_select_extension_event_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_select_extension_event_request_t); + xcb_tmp += xcb_block_len; + /* classes */ + xcb_block_len += _aux->num_classes * sizeof(xcb_input_event_class_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_event_class_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_select_extension_event_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t num_classes + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_select_extension_event_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t num_classes /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SELECT_EXTENSION_EVENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_select_extension_event_request_t xcb_out; + + xcb_out.window = window; + xcb_out.num_classes = num_classes; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_select_extension_event + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t num_classes + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_select_extension_event (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t num_classes /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SELECT_EXTENSION_EVENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_select_extension_event_request_t xcb_out; + + xcb_out.window = window; + xcb_out.num_classes = num_classes; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_input_get_selected_extension_events_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_get_selected_extension_events_reply_t *_aux = (xcb_input_get_selected_extension_events_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_get_selected_extension_events_reply_t); + xcb_tmp += xcb_block_len; + /* this_classes */ + xcb_block_len += _aux->num_this_classes * sizeof(xcb_input_event_class_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_event_class_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* all_classes */ + xcb_block_len += _aux->num_all_classes * sizeof(xcb_input_event_class_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_event_class_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_get_selected_extension_events_cookie_t xcb_input_get_selected_extension_events + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_input_get_selected_extension_events_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_selected_extension_events_cookie_t +xcb_input_get_selected_extension_events (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_SELECTED_EXTENSION_EVENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_selected_extension_events_cookie_t xcb_ret; + xcb_input_get_selected_extension_events_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_selected_extension_events_cookie_t xcb_input_get_selected_extension_events_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_input_get_selected_extension_events_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_selected_extension_events_cookie_t +xcb_input_get_selected_extension_events_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_SELECTED_EXTENSION_EVENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_selected_extension_events_cookie_t xcb_ret; + xcb_input_get_selected_extension_events_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_event_class_t * xcb_input_get_selected_extension_events_this_classes + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns xcb_input_event_class_t * + ** + *****************************************************************************/ + +xcb_input_event_class_t * +xcb_input_get_selected_extension_events_this_classes (const xcb_input_get_selected_extension_events_reply_t *R /**< */) +{ + return (xcb_input_event_class_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_get_selected_extension_events_this_classes_length + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_selected_extension_events_this_classes_length (const xcb_input_get_selected_extension_events_reply_t *R /**< */) +{ + return R->num_this_classes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_selected_extension_events_this_classes_end + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_selected_extension_events_this_classes_end (const xcb_input_get_selected_extension_events_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_input_event_class_t *) (R + 1)) + (R->num_this_classes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_input_event_class_t * xcb_input_get_selected_extension_events_all_classes + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns xcb_input_event_class_t * + ** + *****************************************************************************/ + +xcb_input_event_class_t * +xcb_input_get_selected_extension_events_all_classes (const xcb_input_get_selected_extension_events_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_input_get_selected_extension_events_this_classes_end(R); + return (xcb_input_event_class_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_input_event_class_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_input_get_selected_extension_events_all_classes_length + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_selected_extension_events_all_classes_length (const xcb_input_get_selected_extension_events_reply_t *R /**< */) +{ + return R->num_all_classes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_selected_extension_events_all_classes_end + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_selected_extension_events_all_classes_end (const xcb_input_get_selected_extension_events_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_input_get_selected_extension_events_this_classes_end(R); + i.data = ((xcb_input_event_class_t *) child.data) + (R->num_all_classes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_input_get_selected_extension_events_reply_t * xcb_input_get_selected_extension_events_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_selected_extension_events_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_selected_extension_events_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_selected_extension_events_reply_t * +xcb_input_get_selected_extension_events_reply (xcb_connection_t *c /**< */, + xcb_input_get_selected_extension_events_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_selected_extension_events_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_input_change_device_dont_propagate_list_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_change_device_dont_propagate_list_request_t *_aux = (xcb_input_change_device_dont_propagate_list_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_change_device_dont_propagate_list_request_t); + xcb_tmp += xcb_block_len; + /* classes */ + xcb_block_len += _aux->num_classes * sizeof(xcb_input_event_class_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_event_class_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_change_device_dont_propagate_list_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t num_classes + ** @param uint8_t mode + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_change_device_dont_propagate_list_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t num_classes /**< */, + uint8_t mode /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CHANGE_DEVICE_DONT_PROPAGATE_LIST, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_change_device_dont_propagate_list_request_t xcb_out; + + xcb_out.window = window; + xcb_out.num_classes = num_classes; + xcb_out.mode = mode; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_change_device_dont_propagate_list + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t num_classes + ** @param uint8_t mode + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_change_device_dont_propagate_list (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t num_classes /**< */, + uint8_t mode /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CHANGE_DEVICE_DONT_PROPAGATE_LIST, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_change_device_dont_propagate_list_request_t xcb_out; + + xcb_out.window = window; + xcb_out.num_classes = num_classes; + xcb_out.mode = mode; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_input_get_device_dont_propagate_list_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_get_device_dont_propagate_list_reply_t *_aux = (xcb_input_get_device_dont_propagate_list_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_get_device_dont_propagate_list_reply_t); + xcb_tmp += xcb_block_len; + /* classes */ + xcb_block_len += _aux->num_classes * sizeof(xcb_input_event_class_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_event_class_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_dont_propagate_list_cookie_t xcb_input_get_device_dont_propagate_list + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_input_get_device_dont_propagate_list_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_dont_propagate_list_cookie_t +xcb_input_get_device_dont_propagate_list (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_DONT_PROPAGATE_LIST, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_dont_propagate_list_cookie_t xcb_ret; + xcb_input_get_device_dont_propagate_list_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_dont_propagate_list_cookie_t xcb_input_get_device_dont_propagate_list_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_input_get_device_dont_propagate_list_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_dont_propagate_list_cookie_t +xcb_input_get_device_dont_propagate_list_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_DONT_PROPAGATE_LIST, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_dont_propagate_list_cookie_t xcb_ret; + xcb_input_get_device_dont_propagate_list_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_event_class_t * xcb_input_get_device_dont_propagate_list_classes + ** + ** @param const xcb_input_get_device_dont_propagate_list_reply_t *R + ** @returns xcb_input_event_class_t * + ** + *****************************************************************************/ + +xcb_input_event_class_t * +xcb_input_get_device_dont_propagate_list_classes (const xcb_input_get_device_dont_propagate_list_reply_t *R /**< */) +{ + return (xcb_input_event_class_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_get_device_dont_propagate_list_classes_length + ** + ** @param const xcb_input_get_device_dont_propagate_list_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_device_dont_propagate_list_classes_length (const xcb_input_get_device_dont_propagate_list_reply_t *R /**< */) +{ + return R->num_classes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_device_dont_propagate_list_classes_end + ** + ** @param const xcb_input_get_device_dont_propagate_list_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_device_dont_propagate_list_classes_end (const xcb_input_get_device_dont_propagate_list_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_input_event_class_t *) (R + 1)) + (R->num_classes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_dont_propagate_list_reply_t * xcb_input_get_device_dont_propagate_list_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_dont_propagate_list_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_dont_propagate_list_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_dont_propagate_list_reply_t * +xcb_input_get_device_dont_propagate_list_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_dont_propagate_list_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_device_dont_propagate_list_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_motion_events_cookie_t xcb_input_get_device_motion_events + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t start + ** @param xcb_timestamp_t stop + ** @param uint8_t device_id + ** @returns xcb_input_get_device_motion_events_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_motion_events_cookie_t +xcb_input_get_device_motion_events (xcb_connection_t *c /**< */, + xcb_timestamp_t start /**< */, + xcb_timestamp_t stop /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_MOTION_EVENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_motion_events_cookie_t xcb_ret; + xcb_input_get_device_motion_events_request_t xcb_out; + + xcb_out.start = start; + xcb_out.stop = stop; + xcb_out.device_id = device_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_motion_events_cookie_t xcb_input_get_device_motion_events_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t start + ** @param xcb_timestamp_t stop + ** @param uint8_t device_id + ** @returns xcb_input_get_device_motion_events_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_motion_events_cookie_t +xcb_input_get_device_motion_events_unchecked (xcb_connection_t *c /**< */, + xcb_timestamp_t start /**< */, + xcb_timestamp_t stop /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_MOTION_EVENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_motion_events_cookie_t xcb_ret; + xcb_input_get_device_motion_events_request_t xcb_out; + + xcb_out.start = start; + xcb_out.stop = stop; + xcb_out.device_id = device_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_motion_events_reply_t * xcb_input_get_device_motion_events_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_motion_events_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_motion_events_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_motion_events_reply_t * +xcb_input_get_device_motion_events_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_motion_events_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_device_motion_events_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_input_device_time_coord_next + ** + ** @param xcb_input_device_time_coord_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_time_coord_next (xcb_input_device_time_coord_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_time_coord_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_time_coord_end + ** + ** @param xcb_input_device_time_coord_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_time_coord_end (xcb_input_device_time_coord_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_input_change_keyboard_device_cookie_t xcb_input_change_keyboard_device + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_change_keyboard_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_change_keyboard_device_cookie_t +xcb_input_change_keyboard_device (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CHANGE_KEYBOARD_DEVICE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_change_keyboard_device_cookie_t xcb_ret; + xcb_input_change_keyboard_device_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_change_keyboard_device_cookie_t xcb_input_change_keyboard_device_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_change_keyboard_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_change_keyboard_device_cookie_t +xcb_input_change_keyboard_device_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CHANGE_KEYBOARD_DEVICE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_change_keyboard_device_cookie_t xcb_ret; + xcb_input_change_keyboard_device_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_change_keyboard_device_reply_t * xcb_input_change_keyboard_device_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_change_keyboard_device_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_change_keyboard_device_reply_t * + ** + *****************************************************************************/ + +xcb_input_change_keyboard_device_reply_t * +xcb_input_change_keyboard_device_reply (xcb_connection_t *c /**< */, + xcb_input_change_keyboard_device_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_change_keyboard_device_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_input_change_pointer_device_cookie_t xcb_input_change_pointer_device + ** + ** @param xcb_connection_t *c + ** @param uint8_t x_axis + ** @param uint8_t y_axis + ** @param uint8_t device_id + ** @returns xcb_input_change_pointer_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_change_pointer_device_cookie_t +xcb_input_change_pointer_device (xcb_connection_t *c /**< */, + uint8_t x_axis /**< */, + uint8_t y_axis /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CHANGE_POINTER_DEVICE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_change_pointer_device_cookie_t xcb_ret; + xcb_input_change_pointer_device_request_t xcb_out; + + xcb_out.x_axis = x_axis; + xcb_out.y_axis = y_axis; + xcb_out.device_id = device_id; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_change_pointer_device_cookie_t xcb_input_change_pointer_device_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t x_axis + ** @param uint8_t y_axis + ** @param uint8_t device_id + ** @returns xcb_input_change_pointer_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_change_pointer_device_cookie_t +xcb_input_change_pointer_device_unchecked (xcb_connection_t *c /**< */, + uint8_t x_axis /**< */, + uint8_t y_axis /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CHANGE_POINTER_DEVICE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_change_pointer_device_cookie_t xcb_ret; + xcb_input_change_pointer_device_request_t xcb_out; + + xcb_out.x_axis = x_axis; + xcb_out.y_axis = y_axis; + xcb_out.device_id = device_id; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_change_pointer_device_reply_t * xcb_input_change_pointer_device_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_change_pointer_device_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_change_pointer_device_reply_t * + ** + *****************************************************************************/ + +xcb_input_change_pointer_device_reply_t * +xcb_input_change_pointer_device_reply (xcb_connection_t *c /**< */, + xcb_input_change_pointer_device_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_change_pointer_device_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_input_grab_device_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_grab_device_request_t *_aux = (xcb_input_grab_device_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_grab_device_request_t); + xcb_tmp += xcb_block_len; + /* classes */ + xcb_block_len += _aux->num_classes * sizeof(xcb_input_event_class_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_event_class_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_grab_device_cookie_t xcb_input_grab_device + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param xcb_timestamp_t time + ** @param uint16_t num_classes + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t owner_events + ** @param uint8_t device_id + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_input_grab_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_grab_device_cookie_t +xcb_input_grab_device (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + xcb_timestamp_t time /**< */, + uint16_t num_classes /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t owner_events /**< */, + uint8_t device_id /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GRAB_DEVICE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_grab_device_cookie_t xcb_ret; + xcb_input_grab_device_request_t xcb_out; + + xcb_out.grab_window = grab_window; + xcb_out.time = time; + xcb_out.num_classes = num_classes; + xcb_out.this_device_mode = this_device_mode; + xcb_out.other_device_mode = other_device_mode; + xcb_out.owner_events = owner_events; + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_grab_device_cookie_t xcb_input_grab_device_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param xcb_timestamp_t time + ** @param uint16_t num_classes + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t owner_events + ** @param uint8_t device_id + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_input_grab_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_grab_device_cookie_t +xcb_input_grab_device_unchecked (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + xcb_timestamp_t time /**< */, + uint16_t num_classes /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t owner_events /**< */, + uint8_t device_id /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GRAB_DEVICE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_grab_device_cookie_t xcb_ret; + xcb_input_grab_device_request_t xcb_out; + + xcb_out.grab_window = grab_window; + xcb_out.time = time; + xcb_out.num_classes = num_classes; + xcb_out.this_device_mode = this_device_mode; + xcb_out.other_device_mode = other_device_mode; + xcb_out.owner_events = owner_events; + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_grab_device_reply_t * xcb_input_grab_device_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_grab_device_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_grab_device_reply_t * + ** + *****************************************************************************/ + +xcb_input_grab_device_reply_t * +xcb_input_grab_device_reply (xcb_connection_t *c /**< */, + xcb_input_grab_device_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_grab_device_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_checked (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_UNGRAB_DEVICE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_ungrab_device_request_t xcb_out; + + xcb_out.time = time; + xcb_out.device_id = device_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_UNGRAB_DEVICE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_ungrab_device_request_t xcb_out; + + xcb_out.time = time; + xcb_out.device_id = device_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_input_grab_device_key_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_grab_device_key_request_t *_aux = (xcb_input_grab_device_key_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_grab_device_key_request_t); + xcb_tmp += xcb_block_len; + /* classes */ + xcb_block_len += _aux->num_classes * sizeof(xcb_input_event_class_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_event_class_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_grab_device_key_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint16_t num_classes + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t grabbed_device + ** @param uint8_t key + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t owner_events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_grab_device_key_checked (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint16_t num_classes /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t grabbed_device /**< */, + uint8_t key /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t owner_events /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GRAB_DEVICE_KEY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_grab_device_key_request_t xcb_out; + + xcb_out.grab_window = grab_window; + xcb_out.num_classes = num_classes; + xcb_out.modifiers = modifiers; + xcb_out.modifier_device = modifier_device; + xcb_out.grabbed_device = grabbed_device; + xcb_out.key = key; + xcb_out.this_device_mode = this_device_mode; + xcb_out.other_device_mode = other_device_mode; + xcb_out.owner_events = owner_events; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_grab_device_key + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint16_t num_classes + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t grabbed_device + ** @param uint8_t key + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t owner_events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_grab_device_key (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint16_t num_classes /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t grabbed_device /**< */, + uint8_t key /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t owner_events /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GRAB_DEVICE_KEY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_grab_device_key_request_t xcb_out; + + xcb_out.grab_window = grab_window; + xcb_out.num_classes = num_classes; + xcb_out.modifiers = modifiers; + xcb_out.modifier_device = modifier_device; + xcb_out.grabbed_device = grabbed_device; + xcb_out.key = key; + xcb_out.this_device_mode = this_device_mode; + xcb_out.other_device_mode = other_device_mode; + xcb_out.owner_events = owner_events; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_key_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grabWindow + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t key + ** @param uint8_t grabbed_device + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_key_checked (xcb_connection_t *c /**< */, + xcb_window_t grabWindow /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t key /**< */, + uint8_t grabbed_device /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_UNGRAB_DEVICE_KEY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_ungrab_device_key_request_t xcb_out; + + xcb_out.grabWindow = grabWindow; + xcb_out.modifiers = modifiers; + xcb_out.modifier_device = modifier_device; + xcb_out.key = key; + xcb_out.grabbed_device = grabbed_device; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_key + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grabWindow + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t key + ** @param uint8_t grabbed_device + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_key (xcb_connection_t *c /**< */, + xcb_window_t grabWindow /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t key /**< */, + uint8_t grabbed_device /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_UNGRAB_DEVICE_KEY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_ungrab_device_key_request_t xcb_out; + + xcb_out.grabWindow = grabWindow; + xcb_out.modifiers = modifiers; + xcb_out.modifier_device = modifier_device; + xcb_out.key = key; + xcb_out.grabbed_device = grabbed_device; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_input_grab_device_button_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_grab_device_button_request_t *_aux = (xcb_input_grab_device_button_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_grab_device_button_request_t); + xcb_tmp += xcb_block_len; + /* classes */ + xcb_block_len += _aux->num_classes * sizeof(xcb_input_event_class_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_event_class_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_grab_device_button_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint8_t grabbed_device + ** @param uint8_t modifier_device + ** @param uint16_t num_classes + ** @param uint16_t modifiers + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t button + ** @param uint8_t owner_events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_grab_device_button_checked (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint8_t grabbed_device /**< */, + uint8_t modifier_device /**< */, + uint16_t num_classes /**< */, + uint16_t modifiers /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t button /**< */, + uint8_t owner_events /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GRAB_DEVICE_BUTTON, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_grab_device_button_request_t xcb_out; + + xcb_out.grab_window = grab_window; + xcb_out.grabbed_device = grabbed_device; + xcb_out.modifier_device = modifier_device; + xcb_out.num_classes = num_classes; + xcb_out.modifiers = modifiers; + xcb_out.this_device_mode = this_device_mode; + xcb_out.other_device_mode = other_device_mode; + xcb_out.button = button; + xcb_out.owner_events = owner_events; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_grab_device_button + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint8_t grabbed_device + ** @param uint8_t modifier_device + ** @param uint16_t num_classes + ** @param uint16_t modifiers + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t button + ** @param uint8_t owner_events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_grab_device_button (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint8_t grabbed_device /**< */, + uint8_t modifier_device /**< */, + uint16_t num_classes /**< */, + uint16_t modifiers /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t button /**< */, + uint8_t owner_events /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GRAB_DEVICE_BUTTON, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_grab_device_button_request_t xcb_out; + + xcb_out.grab_window = grab_window; + xcb_out.grabbed_device = grabbed_device; + xcb_out.modifier_device = modifier_device; + xcb_out.num_classes = num_classes; + xcb_out.modifiers = modifiers; + xcb_out.this_device_mode = this_device_mode; + xcb_out.other_device_mode = other_device_mode; + xcb_out.button = button; + xcb_out.owner_events = owner_events; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[4].iov_base = (char *) classes; + xcb_parts[4].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_button_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t button + ** @param uint8_t grabbed_device + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_button_checked (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t button /**< */, + uint8_t grabbed_device /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_UNGRAB_DEVICE_BUTTON, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_ungrab_device_button_request_t xcb_out; + + xcb_out.grab_window = grab_window; + xcb_out.modifiers = modifiers; + xcb_out.modifier_device = modifier_device; + xcb_out.button = button; + xcb_out.grabbed_device = grabbed_device; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_button + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t button + ** @param uint8_t grabbed_device + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_button (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t button /**< */, + uint8_t grabbed_device /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_UNGRAB_DEVICE_BUTTON, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_ungrab_device_button_request_t xcb_out; + + xcb_out.grab_window = grab_window; + xcb_out.modifiers = modifiers; + xcb_out.modifier_device = modifier_device; + xcb_out.button = button; + xcb_out.grabbed_device = grabbed_device; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_allow_device_events_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @param uint8_t mode + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_allow_device_events_checked (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */, + uint8_t mode /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_ALLOW_DEVICE_EVENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_allow_device_events_request_t xcb_out; + + xcb_out.time = time; + xcb_out.mode = mode; + xcb_out.device_id = device_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_allow_device_events + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @param uint8_t mode + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_allow_device_events (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */, + uint8_t mode /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_ALLOW_DEVICE_EVENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_allow_device_events_request_t xcb_out; + + xcb_out.time = time; + xcb_out.mode = mode; + xcb_out.device_id = device_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_focus_cookie_t xcb_input_get_device_focus + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_focus_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_focus_cookie_t +xcb_input_get_device_focus (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_FOCUS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_focus_cookie_t xcb_ret; + xcb_input_get_device_focus_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_focus_cookie_t xcb_input_get_device_focus_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_focus_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_focus_cookie_t +xcb_input_get_device_focus_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_FOCUS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_focus_cookie_t xcb_ret; + xcb_input_get_device_focus_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_focus_reply_t * xcb_input_get_device_focus_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_focus_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_focus_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_focus_reply_t * +xcb_input_get_device_focus_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_focus_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_device_focus_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_set_device_focus_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t focus + ** @param xcb_timestamp_t time + ** @param uint8_t revert_to + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_set_device_focus_checked (xcb_connection_t *c /**< */, + xcb_window_t focus /**< */, + xcb_timestamp_t time /**< */, + uint8_t revert_to /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_FOCUS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_set_device_focus_request_t xcb_out; + + xcb_out.focus = focus; + xcb_out.time = time; + xcb_out.revert_to = revert_to; + xcb_out.device_id = device_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_set_device_focus + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t focus + ** @param xcb_timestamp_t time + ** @param uint8_t revert_to + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_set_device_focus (xcb_connection_t *c /**< */, + xcb_window_t focus /**< */, + xcb_timestamp_t time /**< */, + uint8_t revert_to /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_FOCUS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_set_device_focus_request_t xcb_out; + + xcb_out.focus = focus; + xcb_out.time = time; + xcb_out.revert_to = revert_to; + xcb_out.device_id = device_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_feedback_control_cookie_t xcb_input_get_feedback_control + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_feedback_control_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_feedback_control_cookie_t +xcb_input_get_feedback_control (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_FEEDBACK_CONTROL, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_feedback_control_cookie_t xcb_ret; + xcb_input_get_feedback_control_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_feedback_control_cookie_t xcb_input_get_feedback_control_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_feedback_control_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_feedback_control_cookie_t +xcb_input_get_feedback_control_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_FEEDBACK_CONTROL, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_feedback_control_cookie_t xcb_ret; + xcb_input_get_feedback_control_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_feedback_control_reply_t * xcb_input_get_feedback_control_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_feedback_control_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_feedback_control_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_feedback_control_reply_t * +xcb_input_get_feedback_control_reply (xcb_connection_t *c /**< */, + xcb_input_get_feedback_control_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_feedback_control_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_input_feedback_state_next + ** + ** @param xcb_input_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_feedback_state_next (xcb_input_feedback_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_feedback_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_feedback_state_end + ** + ** @param xcb_input_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_feedback_state_end (xcb_input_feedback_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_kbd_feedback_state_next + ** + ** @param xcb_input_kbd_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_kbd_feedback_state_next (xcb_input_kbd_feedback_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_kbd_feedback_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_kbd_feedback_state_end + ** + ** @param xcb_input_kbd_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_kbd_feedback_state_end (xcb_input_kbd_feedback_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_ptr_feedback_state_next + ** + ** @param xcb_input_ptr_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_ptr_feedback_state_next (xcb_input_ptr_feedback_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_ptr_feedback_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_ptr_feedback_state_end + ** + ** @param xcb_input_ptr_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_ptr_feedback_state_end (xcb_input_ptr_feedback_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_integer_feedback_state_next + ** + ** @param xcb_input_integer_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_integer_feedback_state_next (xcb_input_integer_feedback_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_integer_feedback_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_integer_feedback_state_end + ** + ** @param xcb_input_integer_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_integer_feedback_state_end (xcb_input_integer_feedback_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_string_feedback_state_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_string_feedback_state_t *_aux = (xcb_input_string_feedback_state_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_string_feedback_state_t); + xcb_tmp += xcb_block_len; + /* keysyms */ + xcb_block_len += _aux->num_keysyms * sizeof(xcb_keysym_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_keysym_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_input_string_feedback_state_keysyms + ** + ** @param const xcb_input_string_feedback_state_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_input_string_feedback_state_keysyms (const xcb_input_string_feedback_state_t *R /**< */) +{ + return (xcb_keysym_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_string_feedback_state_keysyms_length + ** + ** @param const xcb_input_string_feedback_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_string_feedback_state_keysyms_length (const xcb_input_string_feedback_state_t *R /**< */) +{ + return R->num_keysyms; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_string_feedback_state_keysyms_end + ** + ** @param const xcb_input_string_feedback_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_string_feedback_state_keysyms_end (const xcb_input_string_feedback_state_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_keysym_t *) (R + 1)) + (R->num_keysyms); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_input_string_feedback_state_next + ** + ** @param xcb_input_string_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_string_feedback_state_next (xcb_input_string_feedback_state_iterator_t *i /**< */) +{ + xcb_input_string_feedback_state_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_input_string_feedback_state_t *)(((char *)R) + xcb_input_string_feedback_state_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_input_string_feedback_state_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_string_feedback_state_end + ** + ** @param xcb_input_string_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_string_feedback_state_end (xcb_input_string_feedback_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_input_string_feedback_state_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_bell_feedback_state_next + ** + ** @param xcb_input_bell_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_bell_feedback_state_next (xcb_input_bell_feedback_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_bell_feedback_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_bell_feedback_state_end + ** + ** @param xcb_input_bell_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_bell_feedback_state_end (xcb_input_bell_feedback_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_led_feedback_state_next + ** + ** @param xcb_input_led_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_led_feedback_state_next (xcb_input_led_feedback_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_led_feedback_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_led_feedback_state_end + ** + ** @param xcb_input_led_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_led_feedback_state_end (xcb_input_led_feedback_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_feedback_ctl_next + ** + ** @param xcb_input_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_feedback_ctl_next (xcb_input_feedback_ctl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_feedback_ctl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_feedback_ctl_end + ** + ** @param xcb_input_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_feedback_ctl_end (xcb_input_feedback_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_kbd_feedback_ctl_next + ** + ** @param xcb_input_kbd_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_kbd_feedback_ctl_next (xcb_input_kbd_feedback_ctl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_kbd_feedback_ctl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_kbd_feedback_ctl_end + ** + ** @param xcb_input_kbd_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_kbd_feedback_ctl_end (xcb_input_kbd_feedback_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_ptr_feedback_ctl_next + ** + ** @param xcb_input_ptr_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_ptr_feedback_ctl_next (xcb_input_ptr_feedback_ctl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_ptr_feedback_ctl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_ptr_feedback_ctl_end + ** + ** @param xcb_input_ptr_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_ptr_feedback_ctl_end (xcb_input_ptr_feedback_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_integer_feedback_ctl_next + ** + ** @param xcb_input_integer_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_integer_feedback_ctl_next (xcb_input_integer_feedback_ctl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_integer_feedback_ctl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_integer_feedback_ctl_end + ** + ** @param xcb_input_integer_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_integer_feedback_ctl_end (xcb_input_integer_feedback_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_string_feedback_ctl_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_string_feedback_ctl_t *_aux = (xcb_input_string_feedback_ctl_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_string_feedback_ctl_t); + xcb_tmp += xcb_block_len; + /* keysyms */ + xcb_block_len += _aux->num_keysyms * sizeof(xcb_keysym_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_keysym_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_input_string_feedback_ctl_keysyms + ** + ** @param const xcb_input_string_feedback_ctl_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_input_string_feedback_ctl_keysyms (const xcb_input_string_feedback_ctl_t *R /**< */) +{ + return (xcb_keysym_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_string_feedback_ctl_keysyms_length + ** + ** @param const xcb_input_string_feedback_ctl_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_string_feedback_ctl_keysyms_length (const xcb_input_string_feedback_ctl_t *R /**< */) +{ + return R->num_keysyms; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_string_feedback_ctl_keysyms_end + ** + ** @param const xcb_input_string_feedback_ctl_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_string_feedback_ctl_keysyms_end (const xcb_input_string_feedback_ctl_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_keysym_t *) (R + 1)) + (R->num_keysyms); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_input_string_feedback_ctl_next + ** + ** @param xcb_input_string_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_string_feedback_ctl_next (xcb_input_string_feedback_ctl_iterator_t *i /**< */) +{ + xcb_input_string_feedback_ctl_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_input_string_feedback_ctl_t *)(((char *)R) + xcb_input_string_feedback_ctl_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_input_string_feedback_ctl_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_string_feedback_ctl_end + ** + ** @param xcb_input_string_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_string_feedback_ctl_end (xcb_input_string_feedback_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_input_string_feedback_ctl_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_bell_feedback_ctl_next + ** + ** @param xcb_input_bell_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_bell_feedback_ctl_next (xcb_input_bell_feedback_ctl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_bell_feedback_ctl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_bell_feedback_ctl_end + ** + ** @param xcb_input_bell_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_bell_feedback_ctl_end (xcb_input_bell_feedback_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_led_feedback_ctl_next + ** + ** @param xcb_input_led_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_led_feedback_ctl_next (xcb_input_led_feedback_ctl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_led_feedback_ctl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_led_feedback_ctl_end + ** + ** @param xcb_input_led_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_led_feedback_ctl_end (xcb_input_led_feedback_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_get_device_key_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_get_device_key_mapping_reply_t *_aux = (xcb_input_get_device_key_mapping_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_get_device_key_mapping_reply_t); + xcb_tmp += xcb_block_len; + /* keysyms */ + xcb_block_len += _aux->length * sizeof(xcb_keysym_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_keysym_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_key_mapping_cookie_t xcb_input_get_device_key_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param xcb_input_key_code_t first_keycode + ** @param uint8_t count + ** @returns xcb_input_get_device_key_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_key_mapping_cookie_t +xcb_input_get_device_key_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + xcb_input_key_code_t first_keycode /**< */, + uint8_t count /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_KEY_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_key_mapping_cookie_t xcb_ret; + xcb_input_get_device_key_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.first_keycode = first_keycode; + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_key_mapping_cookie_t xcb_input_get_device_key_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param xcb_input_key_code_t first_keycode + ** @param uint8_t count + ** @returns xcb_input_get_device_key_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_key_mapping_cookie_t +xcb_input_get_device_key_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + xcb_input_key_code_t first_keycode /**< */, + uint8_t count /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_KEY_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_key_mapping_cookie_t xcb_ret; + xcb_input_get_device_key_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.first_keycode = first_keycode; + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_input_get_device_key_mapping_keysyms + ** + ** @param const xcb_input_get_device_key_mapping_reply_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_input_get_device_key_mapping_keysyms (const xcb_input_get_device_key_mapping_reply_t *R /**< */) +{ + return (xcb_keysym_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_get_device_key_mapping_keysyms_length + ** + ** @param const xcb_input_get_device_key_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_device_key_mapping_keysyms_length (const xcb_input_get_device_key_mapping_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_device_key_mapping_keysyms_end + ** + ** @param const xcb_input_get_device_key_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_device_key_mapping_keysyms_end (const xcb_input_get_device_key_mapping_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_keysym_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_key_mapping_reply_t * xcb_input_get_device_key_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_key_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_key_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_key_mapping_reply_t * +xcb_input_get_device_key_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_key_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_device_key_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_input_change_device_key_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_change_device_key_mapping_request_t *_aux = (xcb_input_change_device_key_mapping_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_change_device_key_mapping_request_t); + xcb_tmp += xcb_block_len; + /* keysyms */ + xcb_block_len += (_aux->keycode_count * _aux->keysyms_per_keycode) * sizeof(xcb_keysym_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_keysym_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_change_device_key_mapping_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param xcb_input_key_code_t first_keycode + ** @param uint8_t keysyms_per_keycode + ** @param uint8_t keycode_count + ** @param const xcb_keysym_t *keysyms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_change_device_key_mapping_checked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + xcb_input_key_code_t first_keycode /**< */, + uint8_t keysyms_per_keycode /**< */, + uint8_t keycode_count /**< */, + const xcb_keysym_t *keysyms /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CHANGE_DEVICE_KEY_MAPPING, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_change_device_key_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.first_keycode = first_keycode; + xcb_out.keysyms_per_keycode = keysyms_per_keycode; + xcb_out.keycode_count = keycode_count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_keysym_t keysyms */ + xcb_parts[4].iov_base = (char *) keysyms; + xcb_parts[4].iov_len = (keycode_count * keysyms_per_keycode) * sizeof(xcb_keysym_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_change_device_key_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param xcb_input_key_code_t first_keycode + ** @param uint8_t keysyms_per_keycode + ** @param uint8_t keycode_count + ** @param const xcb_keysym_t *keysyms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_change_device_key_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + xcb_input_key_code_t first_keycode /**< */, + uint8_t keysyms_per_keycode /**< */, + uint8_t keycode_count /**< */, + const xcb_keysym_t *keysyms /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_CHANGE_DEVICE_KEY_MAPPING, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_input_change_device_key_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.first_keycode = first_keycode; + xcb_out.keysyms_per_keycode = keysyms_per_keycode; + xcb_out.keycode_count = keycode_count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_keysym_t keysyms */ + xcb_parts[4].iov_base = (char *) keysyms; + xcb_parts[4].iov_len = (keycode_count * keysyms_per_keycode) * sizeof(xcb_keysym_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_input_get_device_modifier_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_get_device_modifier_mapping_reply_t *_aux = (xcb_input_get_device_modifier_mapping_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_get_device_modifier_mapping_reply_t); + xcb_tmp += xcb_block_len; + /* keymaps */ + xcb_block_len += (_aux->keycodes_per_modifier * 8) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_modifier_mapping_cookie_t xcb_input_get_device_modifier_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_modifier_mapping_cookie_t +xcb_input_get_device_modifier_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_MODIFIER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_modifier_mapping_cookie_t xcb_ret; + xcb_input_get_device_modifier_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_modifier_mapping_cookie_t xcb_input_get_device_modifier_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_modifier_mapping_cookie_t +xcb_input_get_device_modifier_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_MODIFIER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_modifier_mapping_cookie_t xcb_ret; + xcb_input_get_device_modifier_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_input_get_device_modifier_mapping_keymaps + ** + ** @param const xcb_input_get_device_modifier_mapping_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_input_get_device_modifier_mapping_keymaps (const xcb_input_get_device_modifier_mapping_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_get_device_modifier_mapping_keymaps_length + ** + ** @param const xcb_input_get_device_modifier_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_device_modifier_mapping_keymaps_length (const xcb_input_get_device_modifier_mapping_reply_t *R /**< */) +{ + return (R->keycodes_per_modifier * 8); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_device_modifier_mapping_keymaps_end + ** + ** @param const xcb_input_get_device_modifier_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_device_modifier_mapping_keymaps_end (const xcb_input_get_device_modifier_mapping_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->keycodes_per_modifier * 8)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_modifier_mapping_reply_t * xcb_input_get_device_modifier_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_modifier_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_modifier_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_modifier_mapping_reply_t * +xcb_input_get_device_modifier_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_modifier_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_device_modifier_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_input_set_device_modifier_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_set_device_modifier_mapping_request_t *_aux = (xcb_input_set_device_modifier_mapping_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_set_device_modifier_mapping_request_t); + xcb_tmp += xcb_block_len; + /* keymaps */ + xcb_block_len += (_aux->keycodes_per_modifier * 8) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_modifier_mapping_cookie_t xcb_input_set_device_modifier_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t keycodes_per_modifier + ** @param const uint8_t *keymaps + ** @returns xcb_input_set_device_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_modifier_mapping_cookie_t +xcb_input_set_device_modifier_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t keycodes_per_modifier /**< */, + const uint8_t *keymaps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_MODIFIER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_set_device_modifier_mapping_cookie_t xcb_ret; + xcb_input_set_device_modifier_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.keycodes_per_modifier = keycodes_per_modifier; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t keymaps */ + xcb_parts[4].iov_base = (char *) keymaps; + xcb_parts[4].iov_len = (keycodes_per_modifier * 8) * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_modifier_mapping_cookie_t xcb_input_set_device_modifier_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t keycodes_per_modifier + ** @param const uint8_t *keymaps + ** @returns xcb_input_set_device_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_modifier_mapping_cookie_t +xcb_input_set_device_modifier_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t keycodes_per_modifier /**< */, + const uint8_t *keymaps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_MODIFIER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_set_device_modifier_mapping_cookie_t xcb_ret; + xcb_input_set_device_modifier_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.keycodes_per_modifier = keycodes_per_modifier; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t keymaps */ + xcb_parts[4].iov_base = (char *) keymaps; + xcb_parts[4].iov_len = (keycodes_per_modifier * 8) * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_modifier_mapping_reply_t * xcb_input_set_device_modifier_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_set_device_modifier_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_set_device_modifier_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_set_device_modifier_mapping_reply_t * +xcb_input_set_device_modifier_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_set_device_modifier_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_set_device_modifier_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_input_get_device_button_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_get_device_button_mapping_reply_t *_aux = (xcb_input_get_device_button_mapping_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_get_device_button_mapping_reply_t); + xcb_tmp += xcb_block_len; + /* map */ + xcb_block_len += _aux->map_size * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_button_mapping_cookie_t xcb_input_get_device_button_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_button_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_button_mapping_cookie_t +xcb_input_get_device_button_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_BUTTON_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_button_mapping_cookie_t xcb_ret; + xcb_input_get_device_button_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_button_mapping_cookie_t xcb_input_get_device_button_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_button_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_button_mapping_cookie_t +xcb_input_get_device_button_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_BUTTON_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_button_mapping_cookie_t xcb_ret; + xcb_input_get_device_button_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_input_get_device_button_mapping_map + ** + ** @param const xcb_input_get_device_button_mapping_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_input_get_device_button_mapping_map (const xcb_input_get_device_button_mapping_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_get_device_button_mapping_map_length + ** + ** @param const xcb_input_get_device_button_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_device_button_mapping_map_length (const xcb_input_get_device_button_mapping_reply_t *R /**< */) +{ + return R->map_size; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_device_button_mapping_map_end + ** + ** @param const xcb_input_get_device_button_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_device_button_mapping_map_end (const xcb_input_get_device_button_mapping_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + (R->map_size); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_button_mapping_reply_t * xcb_input_get_device_button_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_button_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_button_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_button_mapping_reply_t * +xcb_input_get_device_button_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_button_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_device_button_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_input_set_device_button_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_set_device_button_mapping_request_t *_aux = (xcb_input_set_device_button_mapping_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_set_device_button_mapping_request_t); + xcb_tmp += xcb_block_len; + /* map */ + xcb_block_len += _aux->map_size * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_button_mapping_cookie_t xcb_input_set_device_button_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t map_size + ** @param const uint8_t *map + ** @returns xcb_input_set_device_button_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_button_mapping_cookie_t +xcb_input_set_device_button_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t map_size /**< */, + const uint8_t *map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_BUTTON_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_set_device_button_mapping_cookie_t xcb_ret; + xcb_input_set_device_button_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.map_size = map_size; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t map */ + xcb_parts[4].iov_base = (char *) map; + xcb_parts[4].iov_len = map_size * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_button_mapping_cookie_t xcb_input_set_device_button_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t map_size + ** @param const uint8_t *map + ** @returns xcb_input_set_device_button_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_button_mapping_cookie_t +xcb_input_set_device_button_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t map_size /**< */, + const uint8_t *map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_BUTTON_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_set_device_button_mapping_cookie_t xcb_ret; + xcb_input_set_device_button_mapping_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.map_size = map_size; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t map */ + xcb_parts[4].iov_base = (char *) map; + xcb_parts[4].iov_len = map_size * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_button_mapping_reply_t * xcb_input_set_device_button_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_set_device_button_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_set_device_button_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_set_device_button_mapping_reply_t * +xcb_input_set_device_button_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_set_device_button_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_set_device_button_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_input_query_device_state_cookie_t xcb_input_query_device_state + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_query_device_state_cookie_t + ** + *****************************************************************************/ + +xcb_input_query_device_state_cookie_t +xcb_input_query_device_state (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_QUERY_DEVICE_STATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_query_device_state_cookie_t xcb_ret; + xcb_input_query_device_state_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_query_device_state_cookie_t xcb_input_query_device_state_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_query_device_state_cookie_t + ** + *****************************************************************************/ + +xcb_input_query_device_state_cookie_t +xcb_input_query_device_state_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_QUERY_DEVICE_STATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_query_device_state_cookie_t xcb_ret; + xcb_input_query_device_state_request_t xcb_out; + + xcb_out.device_id = device_id; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_query_device_state_reply_t * xcb_input_query_device_state_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_query_device_state_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_query_device_state_reply_t * + ** + *****************************************************************************/ + +xcb_input_query_device_state_reply_t * +xcb_input_query_device_state_reply (xcb_connection_t *c /**< */, + xcb_input_query_device_state_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_query_device_state_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_input_input_state_next + ** + ** @param xcb_input_input_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_input_state_next (xcb_input_input_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_input_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_input_state_end + ** + ** @param xcb_input_input_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_input_state_end (xcb_input_input_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_key_state_next + ** + ** @param xcb_input_key_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_key_state_next (xcb_input_key_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_key_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_key_state_end + ** + ** @param xcb_input_key_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_key_state_end (xcb_input_key_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_button_state_next + ** + ** @param xcb_input_button_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_button_state_next (xcb_input_button_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_button_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_button_state_end + ** + ** @param xcb_input_button_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_button_state_end (xcb_input_button_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_valuator_state_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_valuator_state_t *_aux = (xcb_input_valuator_state_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_valuator_state_t); + xcb_tmp += xcb_block_len; + /* valuators */ + xcb_block_len += _aux->num_valuators * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_valuator_state_valuators + ** + ** @param const xcb_input_valuator_state_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_valuator_state_valuators (const xcb_input_valuator_state_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_valuator_state_valuators_length + ** + ** @param const xcb_input_valuator_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_valuator_state_valuators_length (const xcb_input_valuator_state_t *R /**< */) +{ + return R->num_valuators; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_valuator_state_valuators_end + ** + ** @param const xcb_input_valuator_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_valuator_state_valuators_end (const xcb_input_valuator_state_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->num_valuators); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_input_valuator_state_next + ** + ** @param xcb_input_valuator_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_valuator_state_next (xcb_input_valuator_state_iterator_t *i /**< */) +{ + xcb_input_valuator_state_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_input_valuator_state_t *)(((char *)R) + xcb_input_valuator_state_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_input_valuator_state_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_valuator_state_end + ** + ** @param xcb_input_valuator_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_valuator_state_end (xcb_input_valuator_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_input_valuator_state_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_input_send_extension_event_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_send_extension_event_request_t *_aux = (xcb_input_send_extension_event_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_send_extension_event_request_t); + xcb_tmp += xcb_block_len; + /* events */ + xcb_block_len += (_aux->num_events * 32) * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* classes */ + xcb_block_len += _aux->num_classes * sizeof(xcb_input_event_class_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_input_event_class_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_send_extension_event_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination + ** @param uint8_t device_id + ** @param uint8_t propagate + ** @param uint16_t num_classes + ** @param uint8_t num_events + ** @param const char *events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_send_extension_event_checked (xcb_connection_t *c /**< */, + xcb_window_t destination /**< */, + uint8_t device_id /**< */, + uint8_t propagate /**< */, + uint16_t num_classes /**< */, + uint8_t num_events /**< */, + const char *events /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SEND_EXTENSION_EVENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_input_send_extension_event_request_t xcb_out; + + xcb_out.destination = destination; + xcb_out.device_id = device_id; + xcb_out.propagate = propagate; + xcb_out.num_classes = num_classes; + xcb_out.num_events = num_events; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char events */ + xcb_parts[4].iov_base = (char *) events; + xcb_parts[4].iov_len = (num_events * 32) * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[6].iov_base = (char *) classes; + xcb_parts[6].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_send_extension_event + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination + ** @param uint8_t device_id + ** @param uint8_t propagate + ** @param uint16_t num_classes + ** @param uint8_t num_events + ** @param const char *events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_send_extension_event (xcb_connection_t *c /**< */, + xcb_window_t destination /**< */, + uint8_t device_id /**< */, + uint8_t propagate /**< */, + uint16_t num_classes /**< */, + uint8_t num_events /**< */, + const char *events /**< */, + const xcb_input_event_class_t *classes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SEND_EXTENSION_EVENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_input_send_extension_event_request_t xcb_out; + + xcb_out.destination = destination; + xcb_out.device_id = device_id; + xcb_out.propagate = propagate; + xcb_out.num_classes = num_classes; + xcb_out.num_events = num_events; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char events */ + xcb_parts[4].iov_base = (char *) events; + xcb_parts[4].iov_len = (num_events * 32) * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_input_event_class_t classes */ + xcb_parts[6].iov_base = (char *) classes; + xcb_parts[6].iov_len = num_classes * sizeof(xcb_input_event_class_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_device_bell_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t feedback_id + ** @param uint8_t feedback_class + ** @param int8_t percent + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_device_bell_checked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t feedback_id /**< */, + uint8_t feedback_class /**< */, + int8_t percent /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_DEVICE_BELL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_device_bell_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.feedback_id = feedback_id; + xcb_out.feedback_class = feedback_class; + xcb_out.percent = percent; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_device_bell + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t feedback_id + ** @param uint8_t feedback_class + ** @param int8_t percent + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_device_bell (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t feedback_id /**< */, + uint8_t feedback_class /**< */, + int8_t percent /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_DEVICE_BELL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_input_device_bell_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.feedback_id = feedback_id; + xcb_out.feedback_class = feedback_class; + xcb_out.percent = percent; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_input_set_device_valuators_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_set_device_valuators_request_t *_aux = (xcb_input_set_device_valuators_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_set_device_valuators_request_t); + xcb_tmp += xcb_block_len; + /* valuators */ + xcb_block_len += _aux->num_valuators * sizeof(int32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(int32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_valuators_cookie_t xcb_input_set_device_valuators + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t first_valuator + ** @param uint8_t num_valuators + ** @param const int32_t *valuators + ** @returns xcb_input_set_device_valuators_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_valuators_cookie_t +xcb_input_set_device_valuators (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t first_valuator /**< */, + uint8_t num_valuators /**< */, + const int32_t *valuators /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_VALUATORS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_set_device_valuators_cookie_t xcb_ret; + xcb_input_set_device_valuators_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.first_valuator = first_valuator; + xcb_out.num_valuators = num_valuators; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* int32_t valuators */ + xcb_parts[4].iov_base = (char *) valuators; + xcb_parts[4].iov_len = num_valuators * sizeof(int32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_valuators_cookie_t xcb_input_set_device_valuators_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t first_valuator + ** @param uint8_t num_valuators + ** @param const int32_t *valuators + ** @returns xcb_input_set_device_valuators_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_valuators_cookie_t +xcb_input_set_device_valuators_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t first_valuator /**< */, + uint8_t num_valuators /**< */, + const int32_t *valuators /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_SET_DEVICE_VALUATORS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_input_set_device_valuators_cookie_t xcb_ret; + xcb_input_set_device_valuators_request_t xcb_out; + + xcb_out.device_id = device_id; + xcb_out.first_valuator = first_valuator; + xcb_out.num_valuators = num_valuators; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* int32_t valuators */ + xcb_parts[4].iov_base = (char *) valuators; + xcb_parts[4].iov_len = num_valuators * sizeof(int32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_set_device_valuators_reply_t * xcb_input_set_device_valuators_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_set_device_valuators_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_set_device_valuators_reply_t * + ** + *****************************************************************************/ + +xcb_input_set_device_valuators_reply_t * +xcb_input_set_device_valuators_reply (xcb_connection_t *c /**< */, + xcb_input_set_device_valuators_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_set_device_valuators_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_control_cookie_t xcb_input_get_device_control + ** + ** @param xcb_connection_t *c + ** @param uint16_t control_id + ** @param uint8_t device_id + ** @returns xcb_input_get_device_control_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_control_cookie_t +xcb_input_get_device_control (xcb_connection_t *c /**< */, + uint16_t control_id /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_CONTROL, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_control_cookie_t xcb_ret; + xcb_input_get_device_control_request_t xcb_out; + + xcb_out.control_id = control_id; + xcb_out.device_id = device_id; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_control_cookie_t xcb_input_get_device_control_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t control_id + ** @param uint8_t device_id + ** @returns xcb_input_get_device_control_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_control_cookie_t +xcb_input_get_device_control_unchecked (xcb_connection_t *c /**< */, + uint16_t control_id /**< */, + uint8_t device_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_input_id, + /* opcode */ XCB_INPUT_GET_DEVICE_CONTROL, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_input_get_device_control_cookie_t xcb_ret; + xcb_input_get_device_control_request_t xcb_out; + + xcb_out.control_id = control_id; + xcb_out.device_id = device_id; + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_input_get_device_control_reply_t * xcb_input_get_device_control_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_control_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_control_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_control_reply_t * +xcb_input_get_device_control_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_control_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_input_get_device_control_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_input_device_state_next + ** + ** @param xcb_input_device_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_state_next (xcb_input_device_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_state_end + ** + ** @param xcb_input_device_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_state_end (xcb_input_device_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_device_resolution_state_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_device_resolution_state_t *_aux = (xcb_input_device_resolution_state_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_device_resolution_state_t); + xcb_tmp += xcb_block_len; + /* resolution_values */ + xcb_block_len += _aux->num_valuators * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* resolution_min */ + xcb_block_len += _aux->num_valuators * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* resolution_max */ + xcb_block_len += _aux->num_valuators * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_device_resolution_state_resolution_values + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_device_resolution_state_resolution_values (const xcb_input_device_resolution_state_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_device_resolution_state_resolution_values_length + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_device_resolution_state_resolution_values_length (const xcb_input_device_resolution_state_t *R /**< */) +{ + return R->num_valuators; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_state_resolution_values_end + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_state_resolution_values_end (const xcb_input_device_resolution_state_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->num_valuators); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_device_resolution_state_resolution_min + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_device_resolution_state_resolution_min (const xcb_input_device_resolution_state_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_input_device_resolution_state_resolution_values_end(R); + return (uint32_t *) ((char *) prev.data + XCB_TYPE_PAD(uint32_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_input_device_resolution_state_resolution_min_length + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_device_resolution_state_resolution_min_length (const xcb_input_device_resolution_state_t *R /**< */) +{ + return R->num_valuators; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_state_resolution_min_end + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_state_resolution_min_end (const xcb_input_device_resolution_state_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_input_device_resolution_state_resolution_values_end(R); + i.data = ((uint32_t *) child.data) + (R->num_valuators); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_device_resolution_state_resolution_max + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_device_resolution_state_resolution_max (const xcb_input_device_resolution_state_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_input_device_resolution_state_resolution_min_end(R); + return (uint32_t *) ((char *) prev.data + XCB_TYPE_PAD(uint32_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_input_device_resolution_state_resolution_max_length + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_device_resolution_state_resolution_max_length (const xcb_input_device_resolution_state_t *R /**< */) +{ + return R->num_valuators; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_state_resolution_max_end + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_state_resolution_max_end (const xcb_input_device_resolution_state_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_input_device_resolution_state_resolution_min_end(R); + i.data = ((uint32_t *) child.data) + (R->num_valuators); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_resolution_state_next + ** + ** @param xcb_input_device_resolution_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_resolution_state_next (xcb_input_device_resolution_state_iterator_t *i /**< */) +{ + xcb_input_device_resolution_state_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_input_device_resolution_state_t *)(((char *)R) + xcb_input_device_resolution_state_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_input_device_resolution_state_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_state_end + ** + ** @param xcb_input_device_resolution_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_state_end (xcb_input_device_resolution_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_input_device_resolution_state_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_abs_calib_state_next + ** + ** @param xcb_input_device_abs_calib_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_abs_calib_state_next (xcb_input_device_abs_calib_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_abs_calib_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_abs_calib_state_end + ** + ** @param xcb_input_device_abs_calib_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_abs_calib_state_end (xcb_input_device_abs_calib_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_abs_area_state_next + ** + ** @param xcb_input_device_abs_area_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_abs_area_state_next (xcb_input_device_abs_area_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_abs_area_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_abs_area_state_end + ** + ** @param xcb_input_device_abs_area_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_abs_area_state_end (xcb_input_device_abs_area_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_core_state_next + ** + ** @param xcb_input_device_core_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_core_state_next (xcb_input_device_core_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_core_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_core_state_end + ** + ** @param xcb_input_device_core_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_core_state_end (xcb_input_device_core_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_enable_state_next + ** + ** @param xcb_input_device_enable_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_enable_state_next (xcb_input_device_enable_state_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_enable_state_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_enable_state_end + ** + ** @param xcb_input_device_enable_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_enable_state_end (xcb_input_device_enable_state_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_ctl_next + ** + ** @param xcb_input_device_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_ctl_next (xcb_input_device_ctl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_ctl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_ctl_end + ** + ** @param xcb_input_device_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_ctl_end (xcb_input_device_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_input_device_resolution_ctl_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_input_device_resolution_ctl_t *_aux = (xcb_input_device_resolution_ctl_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_input_device_resolution_ctl_t); + xcb_tmp += xcb_block_len; + /* resolution_values */ + xcb_block_len += _aux->num_valuators * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_device_resolution_ctl_resolution_values + ** + ** @param const xcb_input_device_resolution_ctl_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_device_resolution_ctl_resolution_values (const xcb_input_device_resolution_ctl_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_input_device_resolution_ctl_resolution_values_length + ** + ** @param const xcb_input_device_resolution_ctl_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_device_resolution_ctl_resolution_values_length (const xcb_input_device_resolution_ctl_t *R /**< */) +{ + return R->num_valuators; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_ctl_resolution_values_end + ** + ** @param const xcb_input_device_resolution_ctl_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_ctl_resolution_values_end (const xcb_input_device_resolution_ctl_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->num_valuators); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_resolution_ctl_next + ** + ** @param xcb_input_device_resolution_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_resolution_ctl_next (xcb_input_device_resolution_ctl_iterator_t *i /**< */) +{ + xcb_input_device_resolution_ctl_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_input_device_resolution_ctl_t *)(((char *)R) + xcb_input_device_resolution_ctl_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_input_device_resolution_ctl_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_ctl_end + ** + ** @param xcb_input_device_resolution_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_ctl_end (xcb_input_device_resolution_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_input_device_resolution_ctl_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_abs_calib_ctl_next + ** + ** @param xcb_input_device_abs_calib_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_abs_calib_ctl_next (xcb_input_device_abs_calib_ctl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_abs_calib_ctl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_abs_calib_ctl_end + ** + ** @param xcb_input_device_abs_calib_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_abs_calib_ctl_end (xcb_input_device_abs_calib_ctl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_abs_area_ctrl_next + ** + ** @param xcb_input_device_abs_area_ctrl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_abs_area_ctrl_next (xcb_input_device_abs_area_ctrl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_abs_area_ctrl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_abs_area_ctrl_end + ** + ** @param xcb_input_device_abs_area_ctrl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_abs_area_ctrl_end (xcb_input_device_abs_area_ctrl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_core_ctrl_next + ** + ** @param xcb_input_device_core_ctrl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_core_ctrl_next (xcb_input_device_core_ctrl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_core_ctrl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_core_ctrl_end + ** + ** @param xcb_input_device_core_ctrl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_core_ctrl_end (xcb_input_device_core_ctrl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_input_device_enable_ctrl_next + ** + ** @param xcb_input_device_enable_ctrl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_enable_ctrl_next (xcb_input_device_enable_ctrl_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_input_device_enable_ctrl_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_enable_ctrl_end + ** + ** @param xcb_input_device_enable_ctrl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_enable_ctrl_end (xcb_input_device_enable_ctrl_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/xinput.h b/external/mit/xorg/lib/libxcb/files/xinput.h new file mode 100644 index 000000000..b6ba38014 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xinput.h @@ -0,0 +1,6954 @@ +/* + * This file generated automatically from xinput.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Input_API XCB Input API + * @brief Input XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XINPUT_H +#define __XINPUT_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_INPUT_MAJOR_VERSION 1 +#define XCB_INPUT_MINOR_VERSION 4 + +extern xcb_extension_t xcb_input_id; + +typedef uint8_t xcb_input_key_code_t; + +/** + * @brief xcb_input_key_code_iterator_t + **/ +typedef struct xcb_input_key_code_iterator_t { + xcb_input_key_code_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_key_code_iterator_t; + +typedef uint32_t xcb_input_event_class_t; + +/** + * @brief xcb_input_event_class_iterator_t + **/ +typedef struct xcb_input_event_class_iterator_t { + xcb_input_event_class_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_event_class_iterator_t; + +typedef enum xcb_input_valuator_mode_t { + XCB_INPUT_VALUATOR_MODE_RELATIVE = 0, + XCB_INPUT_VALUATOR_MODE_ABSOLUTE = 1 +} xcb_input_valuator_mode_t; + +typedef enum xcb_input_propagate_mode_t { + XCB_INPUT_PROPAGATE_MODE_ADD_TO_LIST = 0, + XCB_INPUT_PROPAGATE_MODE_DELETE_FROM_LIST = 1 +} xcb_input_propagate_mode_t; + +/** + * @brief xcb_input_get_extension_version_cookie_t + **/ +typedef struct xcb_input_get_extension_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_extension_version_cookie_t; + +/** Opcode for xcb_input_get_extension_version. */ +#define XCB_INPUT_GET_EXTENSION_VERSION 1 + +/** + * @brief xcb_input_get_extension_version_request_t + **/ +typedef struct xcb_input_get_extension_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t name_len; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_input_get_extension_version_request_t; + +/** + * @brief xcb_input_get_extension_version_reply_t + **/ +typedef struct xcb_input_get_extension_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t server_major; /**< */ + uint16_t server_minor; /**< */ + uint8_t present; /**< */ + uint8_t pad1[19]; /**< */ +} xcb_input_get_extension_version_reply_t; + +typedef enum xcb_input_device_use_t { + XCB_INPUT_DEVICE_USE_IS_X_POINTER = 0, + XCB_INPUT_DEVICE_USE_IS_X_KEYBOARD = 1, + XCB_INPUT_DEVICE_USE_IS_X_EXTENSION_DEVICE = 2, + XCB_INPUT_DEVICE_USE_IS_X_EXTENSION_KEYBOARD = 3, + XCB_INPUT_DEVICE_USE_IS_X_EXTENSION_POINTER = 4 +} xcb_input_device_use_t; + +/** + * @brief xcb_input_device_info_t + **/ +typedef struct xcb_input_device_info_t { + xcb_atom_t device_type; /**< */ + uint8_t device_id; /**< */ + uint8_t num_class_info; /**< */ + uint8_t device_use; /**< */ + uint8_t pad0; /**< */ +} xcb_input_device_info_t; + +/** + * @brief xcb_input_device_info_iterator_t + **/ +typedef struct xcb_input_device_info_iterator_t { + xcb_input_device_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_info_iterator_t; + +/** + * @brief xcb_input_list_input_devices_cookie_t + **/ +typedef struct xcb_input_list_input_devices_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_list_input_devices_cookie_t; + +/** Opcode for xcb_input_list_input_devices. */ +#define XCB_INPUT_LIST_INPUT_DEVICES 2 + +/** + * @brief xcb_input_list_input_devices_request_t + **/ +typedef struct xcb_input_list_input_devices_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_input_list_input_devices_request_t; + +/** + * @brief xcb_input_list_input_devices_reply_t + **/ +typedef struct xcb_input_list_input_devices_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t devices_len; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_list_input_devices_reply_t; + +typedef enum xcb_input_input_class_t { + XCB_INPUT_INPUT_CLASS_KEY = 0, + XCB_INPUT_INPUT_CLASS_BUTTON = 1, + XCB_INPUT_INPUT_CLASS_VALUATOR = 2, + XCB_INPUT_INPUT_CLASS_FEEDBACK = 3, + XCB_INPUT_INPUT_CLASS_PROXIMITY = 4, + XCB_INPUT_INPUT_CLASS_FOCUS = 5, + XCB_INPUT_INPUT_CLASS_OTHER = 6 +} xcb_input_input_class_t; + +/** + * @brief xcb_input_input_info_t + **/ +typedef struct xcb_input_input_info_t { + uint8_t class_id; /**< */ + uint8_t len; /**< */ +} xcb_input_input_info_t; + +/** + * @brief xcb_input_input_info_iterator_t + **/ +typedef struct xcb_input_input_info_iterator_t { + xcb_input_input_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_input_info_iterator_t; + +/** + * @brief xcb_input_key_info_t + **/ +typedef struct xcb_input_key_info_t { + uint8_t class_id; /**< */ + uint8_t len; /**< */ + xcb_input_key_code_t min_keycode; /**< */ + xcb_input_key_code_t max_keycode; /**< */ + uint16_t num_keys; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_input_key_info_t; + +/** + * @brief xcb_input_key_info_iterator_t + **/ +typedef struct xcb_input_key_info_iterator_t { + xcb_input_key_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_key_info_iterator_t; + +/** + * @brief xcb_input_button_info_t + **/ +typedef struct xcb_input_button_info_t { + uint8_t class_id; /**< */ + uint8_t len; /**< */ + uint16_t num_buttons; /**< */ +} xcb_input_button_info_t; + +/** + * @brief xcb_input_button_info_iterator_t + **/ +typedef struct xcb_input_button_info_iterator_t { + xcb_input_button_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_button_info_iterator_t; + +/** + * @brief xcb_input_axis_info_t + **/ +typedef struct xcb_input_axis_info_t { + uint32_t resolution; /**< */ + int32_t minimum; /**< */ + int32_t maximum; /**< */ +} xcb_input_axis_info_t; + +/** + * @brief xcb_input_axis_info_iterator_t + **/ +typedef struct xcb_input_axis_info_iterator_t { + xcb_input_axis_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_axis_info_iterator_t; + +/** + * @brief xcb_input_valuator_info_t + **/ +typedef struct xcb_input_valuator_info_t { + uint8_t class_id; /**< */ + uint8_t len; /**< */ + uint8_t axes_len; /**< */ + uint8_t mode; /**< */ + uint32_t motion_size; /**< */ +} xcb_input_valuator_info_t; + +/** + * @brief xcb_input_valuator_info_iterator_t + **/ +typedef struct xcb_input_valuator_info_iterator_t { + xcb_input_valuator_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_valuator_info_iterator_t; + +/** + * @brief xcb_input_input_class_info_t + **/ +typedef struct xcb_input_input_class_info_t { + uint8_t class_id; /**< */ + uint8_t event_type_base; /**< */ +} xcb_input_input_class_info_t; + +/** + * @brief xcb_input_input_class_info_iterator_t + **/ +typedef struct xcb_input_input_class_info_iterator_t { + xcb_input_input_class_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_input_class_info_iterator_t; + +/** + * @brief xcb_input_open_device_cookie_t + **/ +typedef struct xcb_input_open_device_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_open_device_cookie_t; + +/** Opcode for xcb_input_open_device. */ +#define XCB_INPUT_OPEN_DEVICE 3 + +/** + * @brief xcb_input_open_device_request_t + **/ +typedef struct xcb_input_open_device_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_open_device_request_t; + +/** + * @brief xcb_input_open_device_reply_t + **/ +typedef struct xcb_input_open_device_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t num_classes; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_open_device_reply_t; + +/** Opcode for xcb_input_close_device. */ +#define XCB_INPUT_CLOSE_DEVICE 4 + +/** + * @brief xcb_input_close_device_request_t + **/ +typedef struct xcb_input_close_device_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_close_device_request_t; + +/** + * @brief xcb_input_set_device_mode_cookie_t + **/ +typedef struct xcb_input_set_device_mode_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_set_device_mode_cookie_t; + +/** Opcode for xcb_input_set_device_mode. */ +#define XCB_INPUT_SET_DEVICE_MODE 5 + +/** + * @brief xcb_input_set_device_mode_request_t + **/ +typedef struct xcb_input_set_device_mode_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t mode; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_input_set_device_mode_request_t; + +/** + * @brief xcb_input_set_device_mode_reply_t + **/ +typedef struct xcb_input_set_device_mode_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t status; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_set_device_mode_reply_t; + +/** Opcode for xcb_input_select_extension_event. */ +#define XCB_INPUT_SELECT_EXTENSION_EVENT 6 + +/** + * @brief xcb_input_select_extension_event_request_t + **/ +typedef struct xcb_input_select_extension_event_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint16_t num_classes; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_input_select_extension_event_request_t; + +/** + * @brief xcb_input_get_selected_extension_events_cookie_t + **/ +typedef struct xcb_input_get_selected_extension_events_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_selected_extension_events_cookie_t; + +/** Opcode for xcb_input_get_selected_extension_events. */ +#define XCB_INPUT_GET_SELECTED_EXTENSION_EVENTS 7 + +/** + * @brief xcb_input_get_selected_extension_events_request_t + **/ +typedef struct xcb_input_get_selected_extension_events_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_input_get_selected_extension_events_request_t; + +/** + * @brief xcb_input_get_selected_extension_events_reply_t + **/ +typedef struct xcb_input_get_selected_extension_events_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t num_this_classes; /**< */ + uint16_t num_all_classes; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_input_get_selected_extension_events_reply_t; + +/** Opcode for xcb_input_change_device_dont_propagate_list. */ +#define XCB_INPUT_CHANGE_DEVICE_DONT_PROPAGATE_LIST 8 + +/** + * @brief xcb_input_change_device_dont_propagate_list_request_t + **/ +typedef struct xcb_input_change_device_dont_propagate_list_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint16_t num_classes; /**< */ + uint8_t mode; /**< */ + uint8_t pad0; /**< */ +} xcb_input_change_device_dont_propagate_list_request_t; + +/** + * @brief xcb_input_get_device_dont_propagate_list_cookie_t + **/ +typedef struct xcb_input_get_device_dont_propagate_list_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_device_dont_propagate_list_cookie_t; + +/** Opcode for xcb_input_get_device_dont_propagate_list. */ +#define XCB_INPUT_GET_DEVICE_DONT_PROPAGATE_LIST 9 + +/** + * @brief xcb_input_get_device_dont_propagate_list_request_t + **/ +typedef struct xcb_input_get_device_dont_propagate_list_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_input_get_device_dont_propagate_list_request_t; + +/** + * @brief xcb_input_get_device_dont_propagate_list_reply_t + **/ +typedef struct xcb_input_get_device_dont_propagate_list_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t num_classes; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_input_get_device_dont_propagate_list_reply_t; + +/** + * @brief xcb_input_get_device_motion_events_cookie_t + **/ +typedef struct xcb_input_get_device_motion_events_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_device_motion_events_cookie_t; + +/** Opcode for xcb_input_get_device_motion_events. */ +#define XCB_INPUT_GET_DEVICE_MOTION_EVENTS 10 + +/** + * @brief xcb_input_get_device_motion_events_request_t + **/ +typedef struct xcb_input_get_device_motion_events_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_timestamp_t start; /**< */ + xcb_timestamp_t stop; /**< */ + uint8_t device_id; /**< */ +} xcb_input_get_device_motion_events_request_t; + +/** + * @brief xcb_input_get_device_motion_events_reply_t + **/ +typedef struct xcb_input_get_device_motion_events_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_coords; /**< */ + uint8_t num_axes; /**< */ + uint8_t device_mode; /**< */ + uint8_t pad1[18]; /**< */ +} xcb_input_get_device_motion_events_reply_t; + +/** + * @brief xcb_input_device_time_coord_t + **/ +typedef struct xcb_input_device_time_coord_t { + xcb_timestamp_t time; /**< */ +} xcb_input_device_time_coord_t; + +/** + * @brief xcb_input_device_time_coord_iterator_t + **/ +typedef struct xcb_input_device_time_coord_iterator_t { + xcb_input_device_time_coord_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_time_coord_iterator_t; + +/** + * @brief xcb_input_change_keyboard_device_cookie_t + **/ +typedef struct xcb_input_change_keyboard_device_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_change_keyboard_device_cookie_t; + +/** Opcode for xcb_input_change_keyboard_device. */ +#define XCB_INPUT_CHANGE_KEYBOARD_DEVICE 11 + +/** + * @brief xcb_input_change_keyboard_device_request_t + **/ +typedef struct xcb_input_change_keyboard_device_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_change_keyboard_device_request_t; + +/** + * @brief xcb_input_change_keyboard_device_reply_t + **/ +typedef struct xcb_input_change_keyboard_device_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t status; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_change_keyboard_device_reply_t; + +/** + * @brief xcb_input_change_pointer_device_cookie_t + **/ +typedef struct xcb_input_change_pointer_device_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_change_pointer_device_cookie_t; + +/** Opcode for xcb_input_change_pointer_device. */ +#define XCB_INPUT_CHANGE_POINTER_DEVICE 12 + +/** + * @brief xcb_input_change_pointer_device_request_t + **/ +typedef struct xcb_input_change_pointer_device_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t x_axis; /**< */ + uint8_t y_axis; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0; /**< */ +} xcb_input_change_pointer_device_request_t; + +/** + * @brief xcb_input_change_pointer_device_reply_t + **/ +typedef struct xcb_input_change_pointer_device_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t status; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_change_pointer_device_reply_t; + +/** + * @brief xcb_input_grab_device_cookie_t + **/ +typedef struct xcb_input_grab_device_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_grab_device_cookie_t; + +/** Opcode for xcb_input_grab_device. */ +#define XCB_INPUT_GRAB_DEVICE 13 + +/** + * @brief xcb_input_grab_device_request_t + **/ +typedef struct xcb_input_grab_device_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + xcb_timestamp_t time; /**< */ + uint16_t num_classes; /**< */ + uint8_t this_device_mode; /**< */ + uint8_t other_device_mode; /**< */ + uint8_t owner_events; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_input_grab_device_request_t; + +/** + * @brief xcb_input_grab_device_reply_t + **/ +typedef struct xcb_input_grab_device_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t status; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_grab_device_reply_t; + +/** Opcode for xcb_input_ungrab_device. */ +#define XCB_INPUT_UNGRAB_DEVICE 14 + +/** + * @brief xcb_input_ungrab_device_request_t + **/ +typedef struct xcb_input_ungrab_device_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t device_id; /**< */ +} xcb_input_ungrab_device_request_t; + +/** Opcode for xcb_input_grab_device_key. */ +#define XCB_INPUT_GRAB_DEVICE_KEY 15 + +/** + * @brief xcb_input_grab_device_key_request_t + **/ +typedef struct xcb_input_grab_device_key_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + uint16_t num_classes; /**< */ + uint16_t modifiers; /**< */ + uint8_t modifier_device; /**< */ + uint8_t grabbed_device; /**< */ + uint8_t key; /**< */ + uint8_t this_device_mode; /**< */ + uint8_t other_device_mode; /**< */ + uint8_t owner_events; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_input_grab_device_key_request_t; + +/** Opcode for xcb_input_ungrab_device_key. */ +#define XCB_INPUT_UNGRAB_DEVICE_KEY 16 + +/** + * @brief xcb_input_ungrab_device_key_request_t + **/ +typedef struct xcb_input_ungrab_device_key_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t grabWindow; /**< */ + uint16_t modifiers; /**< */ + uint8_t modifier_device; /**< */ + uint8_t key; /**< */ + uint8_t grabbed_device; /**< */ +} xcb_input_ungrab_device_key_request_t; + +/** Opcode for xcb_input_grab_device_button. */ +#define XCB_INPUT_GRAB_DEVICE_BUTTON 17 + +/** + * @brief xcb_input_grab_device_button_request_t + **/ +typedef struct xcb_input_grab_device_button_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + uint8_t grabbed_device; /**< */ + uint8_t modifier_device; /**< */ + uint16_t num_classes; /**< */ + uint16_t modifiers; /**< */ + uint8_t this_device_mode; /**< */ + uint8_t other_device_mode; /**< */ + uint8_t button; /**< */ + uint8_t owner_events; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_input_grab_device_button_request_t; + +/** Opcode for xcb_input_ungrab_device_button. */ +#define XCB_INPUT_UNGRAB_DEVICE_BUTTON 18 + +/** + * @brief xcb_input_ungrab_device_button_request_t + **/ +typedef struct xcb_input_ungrab_device_button_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + uint16_t modifiers; /**< */ + uint8_t modifier_device; /**< */ + uint8_t button; /**< */ + uint8_t grabbed_device; /**< */ +} xcb_input_ungrab_device_button_request_t; + +typedef enum xcb_input_device_input_mode_t { + XCB_INPUT_DEVICE_INPUT_MODE_ASYNC_THIS_DEVICE, + XCB_INPUT_DEVICE_INPUT_MODE_SYNC_THIS_DEVICE, + XCB_INPUT_DEVICE_INPUT_MODE_REPLAY_THIS_DEVICE, + XCB_INPUT_DEVICE_INPUT_MODE_ASYNC_OTHER_DEVICES, + XCB_INPUT_DEVICE_INPUT_MODE_ASYNC_ALL, + XCB_INPUT_DEVICE_INPUT_MODE_SYNC_ALL +} xcb_input_device_input_mode_t; + +/** Opcode for xcb_input_allow_device_events. */ +#define XCB_INPUT_ALLOW_DEVICE_EVENTS 19 + +/** + * @brief xcb_input_allow_device_events_request_t + **/ +typedef struct xcb_input_allow_device_events_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t mode; /**< */ + uint8_t device_id; /**< */ +} xcb_input_allow_device_events_request_t; + +/** + * @brief xcb_input_get_device_focus_cookie_t + **/ +typedef struct xcb_input_get_device_focus_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_device_focus_cookie_t; + +/** Opcode for xcb_input_get_device_focus. */ +#define XCB_INPUT_GET_DEVICE_FOCUS 20 + +/** + * @brief xcb_input_get_device_focus_request_t + **/ +typedef struct xcb_input_get_device_focus_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_get_device_focus_request_t; + +/** + * @brief xcb_input_get_device_focus_reply_t + **/ +typedef struct xcb_input_get_device_focus_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t focus; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t revert_to; /**< */ + uint8_t pad1[15]; /**< */ +} xcb_input_get_device_focus_reply_t; + +/** Opcode for xcb_input_set_device_focus. */ +#define XCB_INPUT_SET_DEVICE_FOCUS 21 + +/** + * @brief xcb_input_set_device_focus_request_t + **/ +typedef struct xcb_input_set_device_focus_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t focus; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t revert_to; /**< */ + uint8_t device_id; /**< */ +} xcb_input_set_device_focus_request_t; + +/** + * @brief xcb_input_get_feedback_control_cookie_t + **/ +typedef struct xcb_input_get_feedback_control_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_feedback_control_cookie_t; + +/** Opcode for xcb_input_get_feedback_control. */ +#define XCB_INPUT_GET_FEEDBACK_CONTROL 22 + +/** + * @brief xcb_input_get_feedback_control_request_t + **/ +typedef struct xcb_input_get_feedback_control_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_get_feedback_control_request_t; + +/** + * @brief xcb_input_get_feedback_control_reply_t + **/ +typedef struct xcb_input_get_feedback_control_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t num_feedback; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_input_get_feedback_control_reply_t; + +typedef enum xcb_input_feedback_class_t { + XCB_INPUT_FEEDBACK_CLASS_KEYBOARD, + XCB_INPUT_FEEDBACK_CLASS_POINTER, + XCB_INPUT_FEEDBACK_CLASS_STRING, + XCB_INPUT_FEEDBACK_CLASS_INTEGER, + XCB_INPUT_FEEDBACK_CLASS_LED, + XCB_INPUT_FEEDBACK_CLASS_BELL +} xcb_input_feedback_class_t; + +/** + * @brief xcb_input_feedback_state_t + **/ +typedef struct xcb_input_feedback_state_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ +} xcb_input_feedback_state_t; + +/** + * @brief xcb_input_feedback_state_iterator_t + **/ +typedef struct xcb_input_feedback_state_iterator_t { + xcb_input_feedback_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_feedback_state_iterator_t; + +/** + * @brief xcb_input_kbd_feedback_state_t + **/ +typedef struct xcb_input_kbd_feedback_state_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + uint16_t pitch; /**< */ + uint16_t duration; /**< */ + uint32_t led_mask; /**< */ + uint32_t led_values; /**< */ + uint8_t global_auto_repeat; /**< */ + uint8_t click; /**< */ + uint8_t percent; /**< */ + uint8_t pad0; /**< */ + uint8_t auto_repeats[32]; /**< */ +} xcb_input_kbd_feedback_state_t; + +/** + * @brief xcb_input_kbd_feedback_state_iterator_t + **/ +typedef struct xcb_input_kbd_feedback_state_iterator_t { + xcb_input_kbd_feedback_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_kbd_feedback_state_iterator_t; + +/** + * @brief xcb_input_ptr_feedback_state_t + **/ +typedef struct xcb_input_ptr_feedback_state_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + uint8_t pad0[2]; /**< */ + uint16_t accel_num; /**< */ + uint16_t accel_denom; /**< */ + uint16_t threshold; /**< */ +} xcb_input_ptr_feedback_state_t; + +/** + * @brief xcb_input_ptr_feedback_state_iterator_t + **/ +typedef struct xcb_input_ptr_feedback_state_iterator_t { + xcb_input_ptr_feedback_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_ptr_feedback_state_iterator_t; + +/** + * @brief xcb_input_integer_feedback_state_t + **/ +typedef struct xcb_input_integer_feedback_state_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + uint32_t resolution; /**< */ + int32_t min_value; /**< */ + int32_t max_value; /**< */ +} xcb_input_integer_feedback_state_t; + +/** + * @brief xcb_input_integer_feedback_state_iterator_t + **/ +typedef struct xcb_input_integer_feedback_state_iterator_t { + xcb_input_integer_feedback_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_integer_feedback_state_iterator_t; + +/** + * @brief xcb_input_string_feedback_state_t + **/ +typedef struct xcb_input_string_feedback_state_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + uint16_t max_symbols; /**< */ + uint16_t num_keysyms; /**< */ +} xcb_input_string_feedback_state_t; + +/** + * @brief xcb_input_string_feedback_state_iterator_t + **/ +typedef struct xcb_input_string_feedback_state_iterator_t { + xcb_input_string_feedback_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_string_feedback_state_iterator_t; + +/** + * @brief xcb_input_bell_feedback_state_t + **/ +typedef struct xcb_input_bell_feedback_state_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + uint8_t percent; /**< */ + uint8_t pad0[3]; /**< */ + uint16_t pitch; /**< */ + uint16_t duration; /**< */ +} xcb_input_bell_feedback_state_t; + +/** + * @brief xcb_input_bell_feedback_state_iterator_t + **/ +typedef struct xcb_input_bell_feedback_state_iterator_t { + xcb_input_bell_feedback_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_bell_feedback_state_iterator_t; + +/** + * @brief xcb_input_led_feedback_state_t + **/ +typedef struct xcb_input_led_feedback_state_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + uint32_t led_mask; /**< */ + uint32_t led_values; /**< */ +} xcb_input_led_feedback_state_t; + +/** + * @brief xcb_input_led_feedback_state_iterator_t + **/ +typedef struct xcb_input_led_feedback_state_iterator_t { + xcb_input_led_feedback_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_led_feedback_state_iterator_t; + +/** + * @brief xcb_input_feedback_ctl_t + **/ +typedef struct xcb_input_feedback_ctl_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ +} xcb_input_feedback_ctl_t; + +/** + * @brief xcb_input_feedback_ctl_iterator_t + **/ +typedef struct xcb_input_feedback_ctl_iterator_t { + xcb_input_feedback_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_feedback_ctl_iterator_t; + +/** + * @brief xcb_input_kbd_feedback_ctl_t + **/ +typedef struct xcb_input_kbd_feedback_ctl_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + xcb_input_key_code_t key; /**< */ + uint8_t auto_repeat_mode; /**< */ + int8_t key_click_percent; /**< */ + int8_t bell_percent; /**< */ + int16_t bell_pitch; /**< */ + int16_t bell_duration; /**< */ + uint32_t led_mask; /**< */ + uint32_t led_values; /**< */ +} xcb_input_kbd_feedback_ctl_t; + +/** + * @brief xcb_input_kbd_feedback_ctl_iterator_t + **/ +typedef struct xcb_input_kbd_feedback_ctl_iterator_t { + xcb_input_kbd_feedback_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_kbd_feedback_ctl_iterator_t; + +/** + * @brief xcb_input_ptr_feedback_ctl_t + **/ +typedef struct xcb_input_ptr_feedback_ctl_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + uint8_t pad0[2]; /**< */ + int16_t num; /**< */ + int16_t denom; /**< */ + int16_t threshold; /**< */ +} xcb_input_ptr_feedback_ctl_t; + +/** + * @brief xcb_input_ptr_feedback_ctl_iterator_t + **/ +typedef struct xcb_input_ptr_feedback_ctl_iterator_t { + xcb_input_ptr_feedback_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_ptr_feedback_ctl_iterator_t; + +/** + * @brief xcb_input_integer_feedback_ctl_t + **/ +typedef struct xcb_input_integer_feedback_ctl_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + int32_t int_to_display; /**< */ +} xcb_input_integer_feedback_ctl_t; + +/** + * @brief xcb_input_integer_feedback_ctl_iterator_t + **/ +typedef struct xcb_input_integer_feedback_ctl_iterator_t { + xcb_input_integer_feedback_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_integer_feedback_ctl_iterator_t; + +/** + * @brief xcb_input_string_feedback_ctl_t + **/ +typedef struct xcb_input_string_feedback_ctl_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + uint8_t pad0[2]; /**< */ + uint16_t num_keysyms; /**< */ +} xcb_input_string_feedback_ctl_t; + +/** + * @brief xcb_input_string_feedback_ctl_iterator_t + **/ +typedef struct xcb_input_string_feedback_ctl_iterator_t { + xcb_input_string_feedback_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_string_feedback_ctl_iterator_t; + +/** + * @brief xcb_input_bell_feedback_ctl_t + **/ +typedef struct xcb_input_bell_feedback_ctl_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + int8_t percent; /**< */ + uint8_t pad0[3]; /**< */ + int16_t pitch; /**< */ + int16_t duration; /**< */ +} xcb_input_bell_feedback_ctl_t; + +/** + * @brief xcb_input_bell_feedback_ctl_iterator_t + **/ +typedef struct xcb_input_bell_feedback_ctl_iterator_t { + xcb_input_bell_feedback_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_bell_feedback_ctl_iterator_t; + +/** + * @brief xcb_input_led_feedback_ctl_t + **/ +typedef struct xcb_input_led_feedback_ctl_t { + uint8_t class_id; /**< */ + uint8_t id; /**< */ + uint16_t len; /**< */ + uint32_t led_mask; /**< */ + uint32_t led_values; /**< */ +} xcb_input_led_feedback_ctl_t; + +/** + * @brief xcb_input_led_feedback_ctl_iterator_t + **/ +typedef struct xcb_input_led_feedback_ctl_iterator_t { + xcb_input_led_feedback_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_led_feedback_ctl_iterator_t; + +/** + * @brief xcb_input_get_device_key_mapping_cookie_t + **/ +typedef struct xcb_input_get_device_key_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_device_key_mapping_cookie_t; + +/** Opcode for xcb_input_get_device_key_mapping. */ +#define XCB_INPUT_GET_DEVICE_KEY_MAPPING 24 + +/** + * @brief xcb_input_get_device_key_mapping_request_t + **/ +typedef struct xcb_input_get_device_key_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + xcb_input_key_code_t first_keycode; /**< */ + uint8_t count; /**< */ +} xcb_input_get_device_key_mapping_request_t; + +/** + * @brief xcb_input_get_device_key_mapping_reply_t + **/ +typedef struct xcb_input_get_device_key_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t keysyms_per_keycode; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_get_device_key_mapping_reply_t; + +/** Opcode for xcb_input_change_device_key_mapping. */ +#define XCB_INPUT_CHANGE_DEVICE_KEY_MAPPING 25 + +/** + * @brief xcb_input_change_device_key_mapping_request_t + **/ +typedef struct xcb_input_change_device_key_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + xcb_input_key_code_t first_keycode; /**< */ + uint8_t keysyms_per_keycode; /**< */ + uint8_t keycode_count; /**< */ +} xcb_input_change_device_key_mapping_request_t; + +/** + * @brief xcb_input_get_device_modifier_mapping_cookie_t + **/ +typedef struct xcb_input_get_device_modifier_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_device_modifier_mapping_cookie_t; + +/** Opcode for xcb_input_get_device_modifier_mapping. */ +#define XCB_INPUT_GET_DEVICE_MODIFIER_MAPPING 26 + +/** + * @brief xcb_input_get_device_modifier_mapping_request_t + **/ +typedef struct xcb_input_get_device_modifier_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_get_device_modifier_mapping_request_t; + +/** + * @brief xcb_input_get_device_modifier_mapping_reply_t + **/ +typedef struct xcb_input_get_device_modifier_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t keycodes_per_modifier; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_get_device_modifier_mapping_reply_t; + +/** + * @brief xcb_input_set_device_modifier_mapping_cookie_t + **/ +typedef struct xcb_input_set_device_modifier_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_set_device_modifier_mapping_cookie_t; + +/** Opcode for xcb_input_set_device_modifier_mapping. */ +#define XCB_INPUT_SET_DEVICE_MODIFIER_MAPPING 27 + +/** + * @brief xcb_input_set_device_modifier_mapping_request_t + **/ +typedef struct xcb_input_set_device_modifier_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t keycodes_per_modifier; /**< */ + uint8_t pad0; /**< */ +} xcb_input_set_device_modifier_mapping_request_t; + +/** + * @brief xcb_input_set_device_modifier_mapping_reply_t + **/ +typedef struct xcb_input_set_device_modifier_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t status; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_set_device_modifier_mapping_reply_t; + +/** + * @brief xcb_input_get_device_button_mapping_cookie_t + **/ +typedef struct xcb_input_get_device_button_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_device_button_mapping_cookie_t; + +/** Opcode for xcb_input_get_device_button_mapping. */ +#define XCB_INPUT_GET_DEVICE_BUTTON_MAPPING 28 + +/** + * @brief xcb_input_get_device_button_mapping_request_t + **/ +typedef struct xcb_input_get_device_button_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_get_device_button_mapping_request_t; + +/** + * @brief xcb_input_get_device_button_mapping_reply_t + **/ +typedef struct xcb_input_get_device_button_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t map_size; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_get_device_button_mapping_reply_t; + +/** + * @brief xcb_input_set_device_button_mapping_cookie_t + **/ +typedef struct xcb_input_set_device_button_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_set_device_button_mapping_cookie_t; + +/** Opcode for xcb_input_set_device_button_mapping. */ +#define XCB_INPUT_SET_DEVICE_BUTTON_MAPPING 29 + +/** + * @brief xcb_input_set_device_button_mapping_request_t + **/ +typedef struct xcb_input_set_device_button_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t map_size; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_input_set_device_button_mapping_request_t; + +/** + * @brief xcb_input_set_device_button_mapping_reply_t + **/ +typedef struct xcb_input_set_device_button_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t status; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_set_device_button_mapping_reply_t; + +/** + * @brief xcb_input_query_device_state_cookie_t + **/ +typedef struct xcb_input_query_device_state_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_query_device_state_cookie_t; + +/** Opcode for xcb_input_query_device_state. */ +#define XCB_INPUT_QUERY_DEVICE_STATE 30 + +/** + * @brief xcb_input_query_device_state_request_t + **/ +typedef struct xcb_input_query_device_state_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_query_device_state_request_t; + +/** + * @brief xcb_input_query_device_state_reply_t + **/ +typedef struct xcb_input_query_device_state_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t num_classes; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_query_device_state_reply_t; + +/** + * @brief xcb_input_input_state_t + **/ +typedef struct xcb_input_input_state_t { + uint8_t class_id; /**< */ + uint8_t len; /**< */ + uint8_t num_items; /**< */ +} xcb_input_input_state_t; + +/** + * @brief xcb_input_input_state_iterator_t + **/ +typedef struct xcb_input_input_state_iterator_t { + xcb_input_input_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_input_state_iterator_t; + +/** + * @brief xcb_input_key_state_t + **/ +typedef struct xcb_input_key_state_t { + uint8_t class_id; /**< */ + uint8_t len; /**< */ + uint8_t num_keys; /**< */ + uint8_t pad0; /**< */ + uint8_t keys[32]; /**< */ +} xcb_input_key_state_t; + +/** + * @brief xcb_input_key_state_iterator_t + **/ +typedef struct xcb_input_key_state_iterator_t { + xcb_input_key_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_key_state_iterator_t; + +/** + * @brief xcb_input_button_state_t + **/ +typedef struct xcb_input_button_state_t { + uint8_t class_id; /**< */ + uint8_t len; /**< */ + uint8_t num_buttons; /**< */ + uint8_t pad0; /**< */ + uint8_t buttons[32]; /**< */ +} xcb_input_button_state_t; + +/** + * @brief xcb_input_button_state_iterator_t + **/ +typedef struct xcb_input_button_state_iterator_t { + xcb_input_button_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_button_state_iterator_t; + +/** + * @brief xcb_input_valuator_state_t + **/ +typedef struct xcb_input_valuator_state_t { + uint8_t class_id; /**< */ + uint8_t len; /**< */ + uint8_t num_valuators; /**< */ + uint8_t mode; /**< */ +} xcb_input_valuator_state_t; + +/** + * @brief xcb_input_valuator_state_iterator_t + **/ +typedef struct xcb_input_valuator_state_iterator_t { + xcb_input_valuator_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_valuator_state_iterator_t; + +/** Opcode for xcb_input_send_extension_event. */ +#define XCB_INPUT_SEND_EXTENSION_EVENT 31 + +/** + * @brief xcb_input_send_extension_event_request_t + **/ +typedef struct xcb_input_send_extension_event_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t destination; /**< */ + uint8_t device_id; /**< */ + uint8_t propagate; /**< */ + uint16_t num_classes; /**< */ + uint8_t num_events; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_send_extension_event_request_t; + +/** Opcode for xcb_input_device_bell. */ +#define XCB_INPUT_DEVICE_BELL 32 + +/** + * @brief xcb_input_device_bell_request_t + **/ +typedef struct xcb_input_device_bell_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t feedback_id; /**< */ + uint8_t feedback_class; /**< */ + int8_t percent; /**< */ +} xcb_input_device_bell_request_t; + +/** + * @brief xcb_input_set_device_valuators_cookie_t + **/ +typedef struct xcb_input_set_device_valuators_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_set_device_valuators_cookie_t; + +/** Opcode for xcb_input_set_device_valuators. */ +#define XCB_INPUT_SET_DEVICE_VALUATORS 33 + +/** + * @brief xcb_input_set_device_valuators_request_t + **/ +typedef struct xcb_input_set_device_valuators_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t device_id; /**< */ + uint8_t first_valuator; /**< */ + uint8_t num_valuators; /**< */ + uint8_t pad0; /**< */ +} xcb_input_set_device_valuators_request_t; + +/** + * @brief xcb_input_set_device_valuators_reply_t + **/ +typedef struct xcb_input_set_device_valuators_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t status; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_set_device_valuators_reply_t; + +/** + * @brief xcb_input_get_device_control_cookie_t + **/ +typedef struct xcb_input_get_device_control_cookie_t { + unsigned int sequence; /**< */ +} xcb_input_get_device_control_cookie_t; + +/** Opcode for xcb_input_get_device_control. */ +#define XCB_INPUT_GET_DEVICE_CONTROL 34 + +/** + * @brief xcb_input_get_device_control_request_t + **/ +typedef struct xcb_input_get_device_control_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t control_id; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0; /**< */ +} xcb_input_get_device_control_request_t; + +/** + * @brief xcb_input_get_device_control_reply_t + **/ +typedef struct xcb_input_get_device_control_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t status; /**< */ + uint8_t pad1[23]; /**< */ +} xcb_input_get_device_control_reply_t; + +/** + * @brief xcb_input_device_state_t + **/ +typedef struct xcb_input_device_state_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ +} xcb_input_device_state_t; + +/** + * @brief xcb_input_device_state_iterator_t + **/ +typedef struct xcb_input_device_state_iterator_t { + xcb_input_device_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_state_iterator_t; + +/** + * @brief xcb_input_device_resolution_state_t + **/ +typedef struct xcb_input_device_resolution_state_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + uint32_t num_valuators; /**< */ +} xcb_input_device_resolution_state_t; + +/** + * @brief xcb_input_device_resolution_state_iterator_t + **/ +typedef struct xcb_input_device_resolution_state_iterator_t { + xcb_input_device_resolution_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_resolution_state_iterator_t; + +/** + * @brief xcb_input_device_abs_calib_state_t + **/ +typedef struct xcb_input_device_abs_calib_state_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + int32_t min_x; /**< */ + int32_t max_x; /**< */ + int32_t min_y; /**< */ + int32_t max_y; /**< */ + uint32_t flip_x; /**< */ + uint32_t flip_y; /**< */ + uint32_t rotation; /**< */ + uint32_t button_threshold; /**< */ +} xcb_input_device_abs_calib_state_t; + +/** + * @brief xcb_input_device_abs_calib_state_iterator_t + **/ +typedef struct xcb_input_device_abs_calib_state_iterator_t { + xcb_input_device_abs_calib_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_abs_calib_state_iterator_t; + +/** + * @brief xcb_input_device_abs_area_state_t + **/ +typedef struct xcb_input_device_abs_area_state_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + uint32_t offset_x; /**< */ + uint32_t offset_y; /**< */ + uint32_t width; /**< */ + uint32_t height; /**< */ + uint32_t screen; /**< */ + uint32_t following; /**< */ +} xcb_input_device_abs_area_state_t; + +/** + * @brief xcb_input_device_abs_area_state_iterator_t + **/ +typedef struct xcb_input_device_abs_area_state_iterator_t { + xcb_input_device_abs_area_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_abs_area_state_iterator_t; + +/** + * @brief xcb_input_device_core_state_t + **/ +typedef struct xcb_input_device_core_state_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + uint8_t status; /**< */ + uint8_t iscore; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_input_device_core_state_t; + +/** + * @brief xcb_input_device_core_state_iterator_t + **/ +typedef struct xcb_input_device_core_state_iterator_t { + xcb_input_device_core_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_core_state_iterator_t; + +/** + * @brief xcb_input_device_enable_state_t + **/ +typedef struct xcb_input_device_enable_state_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + uint8_t enable; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_device_enable_state_t; + +/** + * @brief xcb_input_device_enable_state_iterator_t + **/ +typedef struct xcb_input_device_enable_state_iterator_t { + xcb_input_device_enable_state_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_enable_state_iterator_t; + +/** + * @brief xcb_input_device_ctl_t + **/ +typedef struct xcb_input_device_ctl_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ +} xcb_input_device_ctl_t; + +/** + * @brief xcb_input_device_ctl_iterator_t + **/ +typedef struct xcb_input_device_ctl_iterator_t { + xcb_input_device_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_ctl_iterator_t; + +/** + * @brief xcb_input_device_resolution_ctl_t + **/ +typedef struct xcb_input_device_resolution_ctl_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + uint8_t first_valuator; /**< */ + uint8_t num_valuators; /**< */ +} xcb_input_device_resolution_ctl_t; + +/** + * @brief xcb_input_device_resolution_ctl_iterator_t + **/ +typedef struct xcb_input_device_resolution_ctl_iterator_t { + xcb_input_device_resolution_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_resolution_ctl_iterator_t; + +/** + * @brief xcb_input_device_abs_calib_ctl_t + **/ +typedef struct xcb_input_device_abs_calib_ctl_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + int32_t min_x; /**< */ + int32_t max_x; /**< */ + int32_t min_y; /**< */ + int32_t max_y; /**< */ + uint32_t flip_x; /**< */ + uint32_t flip_y; /**< */ + uint32_t rotation; /**< */ + uint32_t button_threshold; /**< */ +} xcb_input_device_abs_calib_ctl_t; + +/** + * @brief xcb_input_device_abs_calib_ctl_iterator_t + **/ +typedef struct xcb_input_device_abs_calib_ctl_iterator_t { + xcb_input_device_abs_calib_ctl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_abs_calib_ctl_iterator_t; + +/** + * @brief xcb_input_device_abs_area_ctrl_t + **/ +typedef struct xcb_input_device_abs_area_ctrl_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + uint32_t offset_x; /**< */ + uint32_t offset_y; /**< */ + int32_t width; /**< */ + int32_t height; /**< */ + int32_t screen; /**< */ + uint32_t following; /**< */ +} xcb_input_device_abs_area_ctrl_t; + +/** + * @brief xcb_input_device_abs_area_ctrl_iterator_t + **/ +typedef struct xcb_input_device_abs_area_ctrl_iterator_t { + xcb_input_device_abs_area_ctrl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_abs_area_ctrl_iterator_t; + +/** + * @brief xcb_input_device_core_ctrl_t + **/ +typedef struct xcb_input_device_core_ctrl_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + uint8_t status; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_device_core_ctrl_t; + +/** + * @brief xcb_input_device_core_ctrl_iterator_t + **/ +typedef struct xcb_input_device_core_ctrl_iterator_t { + xcb_input_device_core_ctrl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_core_ctrl_iterator_t; + +/** + * @brief xcb_input_device_enable_ctrl_t + **/ +typedef struct xcb_input_device_enable_ctrl_t { + uint16_t control_id; /**< */ + uint16_t len; /**< */ + uint8_t enable; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_input_device_enable_ctrl_t; + +/** + * @brief xcb_input_device_enable_ctrl_iterator_t + **/ +typedef struct xcb_input_device_enable_ctrl_iterator_t { + xcb_input_device_enable_ctrl_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_input_device_enable_ctrl_iterator_t; + +/** Opcode for xcb_input_device_valuator. */ +#define XCB_INPUT_DEVICE_VALUATOR 0 + +/** + * @brief xcb_input_device_valuator_event_t + **/ +typedef struct xcb_input_device_valuator_event_t { + uint8_t response_type; /**< */ + uint8_t device_id; /**< */ + uint16_t sequence; /**< */ + uint16_t device_state; /**< */ + uint8_t num_valuators; /**< */ + uint8_t first_valuator; /**< */ + int32_t valuators[6]; /**< */ +} xcb_input_device_valuator_event_t; + +/** Opcode for xcb_input_device_key_press. */ +#define XCB_INPUT_DEVICE_KEY_PRESS 1 + +/** + * @brief xcb_input_device_key_press_event_t + **/ +typedef struct xcb_input_device_key_press_event_t { + uint8_t response_type; /**< */ + uint8_t detail; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t root; /**< */ + xcb_window_t event; /**< */ + xcb_window_t child; /**< */ + int16_t root_x; /**< */ + int16_t root_y; /**< */ + int16_t event_x; /**< */ + int16_t event_y; /**< */ + uint16_t state; /**< */ + uint8_t same_screen; /**< */ + uint8_t device_id; /**< */ +} xcb_input_device_key_press_event_t; + +/** Opcode for xcb_input_device_key_release. */ +#define XCB_INPUT_DEVICE_KEY_RELEASE 2 + +typedef xcb_input_device_key_press_event_t xcb_input_device_key_release_event_t; + +/** Opcode for xcb_input_device_button_press. */ +#define XCB_INPUT_DEVICE_BUTTON_PRESS 3 + +typedef xcb_input_device_key_press_event_t xcb_input_device_button_press_event_t; + +/** Opcode for xcb_input_device_button_release. */ +#define XCB_INPUT_DEVICE_BUTTON_RELEASE 4 + +typedef xcb_input_device_key_press_event_t xcb_input_device_button_release_event_t; + +/** Opcode for xcb_input_device_motion_notify. */ +#define XCB_INPUT_DEVICE_MOTION_NOTIFY 5 + +typedef xcb_input_device_key_press_event_t xcb_input_device_motion_notify_event_t; + +/** Opcode for xcb_input_proximity_in. */ +#define XCB_INPUT_PROXIMITY_IN 8 + +typedef xcb_input_device_key_press_event_t xcb_input_proximity_in_event_t; + +/** Opcode for xcb_input_proximity_out. */ +#define XCB_INPUT_PROXIMITY_OUT 9 + +typedef xcb_input_device_key_press_event_t xcb_input_proximity_out_event_t; + +/** Opcode for xcb_input_focus_in. */ +#define XCB_INPUT_FOCUS_IN 6 + +/** + * @brief xcb_input_focus_in_event_t + **/ +typedef struct xcb_input_focus_in_event_t { + uint8_t response_type; /**< */ + uint8_t detail; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t window; /**< */ + uint8_t mode; /**< */ + uint8_t device_id; /**< */ + uint8_t pad0[18]; /**< */ +} xcb_input_focus_in_event_t; + +/** Opcode for xcb_input_focus_out. */ +#define XCB_INPUT_FOCUS_OUT 7 + +typedef xcb_input_focus_in_event_t xcb_input_focus_out_event_t; + +/** Opcode for xcb_input_device_state_notify. */ +#define XCB_INPUT_DEVICE_STATE_NOTIFY 10 + +/** + * @brief xcb_input_device_state_notify_event_t + **/ +typedef struct xcb_input_device_state_notify_event_t { + uint8_t response_type; /**< */ + uint8_t device_id; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t num_keys; /**< */ + uint8_t num_buttons; /**< */ + uint8_t num_valuators; /**< */ + uint8_t classes_reported; /**< */ + uint8_t buttons[4]; /**< */ + uint8_t keys[4]; /**< */ + uint32_t valuators[3]; /**< */ +} xcb_input_device_state_notify_event_t; + +/** Opcode for xcb_input_device_mapping_notify. */ +#define XCB_INPUT_DEVICE_MAPPING_NOTIFY 11 + +/** + * @brief xcb_input_device_mapping_notify_event_t + **/ +typedef struct xcb_input_device_mapping_notify_event_t { + uint8_t response_type; /**< */ + uint8_t device_id; /**< */ + uint16_t sequence; /**< */ + uint8_t request; /**< */ + xcb_input_key_code_t first_keycode; /**< */ + uint8_t count; /**< */ + uint8_t pad0; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_input_device_mapping_notify_event_t; + +/** Opcode for xcb_input_change_device_notify. */ +#define XCB_INPUT_CHANGE_DEVICE_NOTIFY 12 + +/** + * @brief xcb_input_change_device_notify_event_t + **/ +typedef struct xcb_input_change_device_notify_event_t { + uint8_t response_type; /**< */ + uint8_t device_id; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t request; /**< */ + uint8_t pad0[23]; /**< */ +} xcb_input_change_device_notify_event_t; + +/** Opcode for xcb_input_device_key_state_notify. */ +#define XCB_INPUT_DEVICE_KEY_STATE_NOTIFY 13 + +/** + * @brief xcb_input_device_key_state_notify_event_t + **/ +typedef struct xcb_input_device_key_state_notify_event_t { + uint8_t response_type; /**< */ + uint8_t device_id; /**< */ + uint16_t sequence; /**< */ + uint8_t keys[28]; /**< */ +} xcb_input_device_key_state_notify_event_t; + +/** Opcode for xcb_input_device_button_state_notify. */ +#define XCB_INPUT_DEVICE_BUTTON_STATE_NOTIFY 14 + +/** + * @brief xcb_input_device_button_state_notify_event_t + **/ +typedef struct xcb_input_device_button_state_notify_event_t { + uint8_t response_type; /**< */ + uint8_t device_id; /**< */ + uint16_t sequence; /**< */ + uint8_t buttons[28]; /**< */ +} xcb_input_device_button_state_notify_event_t; + +/** Opcode for xcb_input_device_presence_notify. */ +#define XCB_INPUT_DEVICE_PRESENCE_NOTIFY 15 + +/** + * @brief xcb_input_device_presence_notify_event_t + **/ +typedef struct xcb_input_device_presence_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t devchange; /**< */ + uint8_t device_id; /**< */ + uint16_t control; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_input_device_presence_notify_event_t; + +/** Opcode for xcb_input_device. */ +#define XCB_INPUT_DEVICE 0 + +/** + * @brief xcb_input_device_error_t + **/ +typedef struct xcb_input_device_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_input_device_error_t; + +/** Opcode for xcb_input_event. */ +#define XCB_INPUT_EVENT 1 + +/** + * @brief xcb_input_event_error_t + **/ +typedef struct xcb_input_event_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_input_event_error_t; + +/** Opcode for xcb_input_mode. */ +#define XCB_INPUT_MODE 2 + +/** + * @brief xcb_input_mode_error_t + **/ +typedef struct xcb_input_mode_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_input_mode_error_t; + +/** Opcode for xcb_input_device_busy. */ +#define XCB_INPUT_DEVICE_BUSY 3 + +/** + * @brief xcb_input_device_busy_error_t + **/ +typedef struct xcb_input_device_busy_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_input_device_busy_error_t; + +/** Opcode for xcb_input_class. */ +#define XCB_INPUT_CLASS 4 + +/** + * @brief xcb_input_class_error_t + **/ +typedef struct xcb_input_class_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_input_class_error_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_key_code_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_key_code_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_key_code_next + ** + ** @param xcb_input_key_code_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_key_code_next (xcb_input_key_code_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_key_code_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_key_code_end + ** + ** @param xcb_input_key_code_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_key_code_end (xcb_input_key_code_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_event_class_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_event_class_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_event_class_next + ** + ** @param xcb_input_event_class_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_event_class_next (xcb_input_event_class_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_event_class_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_event_class_end + ** + ** @param xcb_input_event_class_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_event_class_end (xcb_input_event_class_iterator_t i /**< */); + +int +xcb_input_get_extension_version_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_extension_version_cookie_t xcb_input_get_extension_version + ** + ** @param xcb_connection_t *c + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_input_get_extension_version_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_extension_version_cookie_t +xcb_input_get_extension_version (xcb_connection_t *c /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_extension_version_cookie_t xcb_input_get_extension_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_input_get_extension_version_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_extension_version_cookie_t +xcb_input_get_extension_version_unchecked (xcb_connection_t *c /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_extension_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_extension_version_reply_t * xcb_input_get_extension_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_extension_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_extension_version_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_extension_version_reply_t * +xcb_input_get_extension_version_reply (xcb_connection_t *c /**< */, + xcb_input_get_extension_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_info_next + ** + ** @param xcb_input_device_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_info_next (xcb_input_device_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_info_end + ** + ** @param xcb_input_device_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_info_end (xcb_input_device_info_iterator_t i /**< */); + +int +xcb_input_list_input_devices_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_list_input_devices_cookie_t xcb_input_list_input_devices + ** + ** @param xcb_connection_t *c + ** @returns xcb_input_list_input_devices_cookie_t + ** + *****************************************************************************/ + +xcb_input_list_input_devices_cookie_t +xcb_input_list_input_devices (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_list_input_devices_cookie_t xcb_input_list_input_devices_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_input_list_input_devices_cookie_t + ** + *****************************************************************************/ + +xcb_input_list_input_devices_cookie_t +xcb_input_list_input_devices_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** xcb_input_device_info_t * xcb_input_list_input_devices_devices + ** + ** @param const xcb_input_list_input_devices_reply_t *R + ** @returns xcb_input_device_info_t * + ** + *****************************************************************************/ + +xcb_input_device_info_t * +xcb_input_list_input_devices_devices (const xcb_input_list_input_devices_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_list_input_devices_devices_length + ** + ** @param const xcb_input_list_input_devices_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_list_input_devices_devices_length (const xcb_input_list_input_devices_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_input_device_info_iterator_t xcb_input_list_input_devices_devices_iterator + ** + ** @param const xcb_input_list_input_devices_reply_t *R + ** @returns xcb_input_device_info_iterator_t + ** + *****************************************************************************/ + +xcb_input_device_info_iterator_t +xcb_input_list_input_devices_devices_iterator (const xcb_input_list_input_devices_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_list_input_devices_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_list_input_devices_reply_t * xcb_input_list_input_devices_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_list_input_devices_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_list_input_devices_reply_t * + ** + *****************************************************************************/ + +xcb_input_list_input_devices_reply_t * +xcb_input_list_input_devices_reply (xcb_connection_t *c /**< */, + xcb_input_list_input_devices_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_input_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_input_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_input_info_next + ** + ** @param xcb_input_input_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_input_info_next (xcb_input_input_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_input_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_input_info_end + ** + ** @param xcb_input_input_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_input_info_end (xcb_input_input_info_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_key_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_key_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_key_info_next + ** + ** @param xcb_input_key_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_key_info_next (xcb_input_key_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_key_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_key_info_end + ** + ** @param xcb_input_key_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_key_info_end (xcb_input_key_info_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_button_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_button_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_button_info_next + ** + ** @param xcb_input_button_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_button_info_next (xcb_input_button_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_button_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_button_info_end + ** + ** @param xcb_input_button_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_button_info_end (xcb_input_button_info_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_axis_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_axis_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_axis_info_next + ** + ** @param xcb_input_axis_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_axis_info_next (xcb_input_axis_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_axis_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_axis_info_end + ** + ** @param xcb_input_axis_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_axis_info_end (xcb_input_axis_info_iterator_t i /**< */); + +int +xcb_input_valuator_info_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_input_axis_info_t * xcb_input_valuator_info_axes + ** + ** @param const xcb_input_valuator_info_t *R + ** @returns xcb_input_axis_info_t * + ** + *****************************************************************************/ + +xcb_input_axis_info_t * +xcb_input_valuator_info_axes (const xcb_input_valuator_info_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_valuator_info_axes_length + ** + ** @param const xcb_input_valuator_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_valuator_info_axes_length (const xcb_input_valuator_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_input_axis_info_iterator_t xcb_input_valuator_info_axes_iterator + ** + ** @param const xcb_input_valuator_info_t *R + ** @returns xcb_input_axis_info_iterator_t + ** + *****************************************************************************/ + +xcb_input_axis_info_iterator_t +xcb_input_valuator_info_axes_iterator (const xcb_input_valuator_info_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_valuator_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_valuator_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_valuator_info_next + ** + ** @param xcb_input_valuator_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_valuator_info_next (xcb_input_valuator_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_valuator_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_valuator_info_end + ** + ** @param xcb_input_valuator_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_valuator_info_end (xcb_input_valuator_info_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_input_class_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_input_class_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_input_class_info_next + ** + ** @param xcb_input_input_class_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_input_class_info_next (xcb_input_input_class_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_input_class_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_input_class_info_end + ** + ** @param xcb_input_input_class_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_input_class_info_end (xcb_input_input_class_info_iterator_t i /**< */); + +int +xcb_input_open_device_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_open_device_cookie_t xcb_input_open_device + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_open_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_open_device_cookie_t +xcb_input_open_device (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_open_device_cookie_t xcb_input_open_device_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_open_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_open_device_cookie_t +xcb_input_open_device_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + + +/***************************************************************************** + ** + ** xcb_input_input_class_info_t * xcb_input_open_device_class_info + ** + ** @param const xcb_input_open_device_reply_t *R + ** @returns xcb_input_input_class_info_t * + ** + *****************************************************************************/ + +xcb_input_input_class_info_t * +xcb_input_open_device_class_info (const xcb_input_open_device_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_open_device_class_info_length + ** + ** @param const xcb_input_open_device_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_open_device_class_info_length (const xcb_input_open_device_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_input_input_class_info_iterator_t xcb_input_open_device_class_info_iterator + ** + ** @param const xcb_input_open_device_reply_t *R + ** @returns xcb_input_input_class_info_iterator_t + ** + *****************************************************************************/ + +xcb_input_input_class_info_iterator_t +xcb_input_open_device_class_info_iterator (const xcb_input_open_device_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_open_device_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_open_device_reply_t * xcb_input_open_device_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_open_device_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_open_device_reply_t * + ** + *****************************************************************************/ + +xcb_input_open_device_reply_t * +xcb_input_open_device_reply (xcb_connection_t *c /**< */, + xcb_input_open_device_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_close_device_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_close_device_checked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_close_device + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_close_device (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_mode_cookie_t xcb_input_set_device_mode + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t mode + ** @returns xcb_input_set_device_mode_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_mode_cookie_t +xcb_input_set_device_mode (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_mode_cookie_t xcb_input_set_device_mode_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t mode + ** @returns xcb_input_set_device_mode_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_mode_cookie_t +xcb_input_set_device_mode_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t mode /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_set_device_mode_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_mode_reply_t * xcb_input_set_device_mode_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_set_device_mode_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_set_device_mode_reply_t * + ** + *****************************************************************************/ + +xcb_input_set_device_mode_reply_t * +xcb_input_set_device_mode_reply (xcb_connection_t *c /**< */, + xcb_input_set_device_mode_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_input_select_extension_event_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_select_extension_event_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t num_classes + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_select_extension_event_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t num_classes /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_select_extension_event + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t num_classes + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_select_extension_event (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t num_classes /**< */, + const xcb_input_event_class_t *classes /**< */); + +int +xcb_input_get_selected_extension_events_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_selected_extension_events_cookie_t xcb_input_get_selected_extension_events + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_input_get_selected_extension_events_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_selected_extension_events_cookie_t +xcb_input_get_selected_extension_events (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_selected_extension_events_cookie_t xcb_input_get_selected_extension_events_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_input_get_selected_extension_events_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_selected_extension_events_cookie_t +xcb_input_get_selected_extension_events_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** xcb_input_event_class_t * xcb_input_get_selected_extension_events_this_classes + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns xcb_input_event_class_t * + ** + *****************************************************************************/ + +xcb_input_event_class_t * +xcb_input_get_selected_extension_events_this_classes (const xcb_input_get_selected_extension_events_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_get_selected_extension_events_this_classes_length + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_selected_extension_events_this_classes_length (const xcb_input_get_selected_extension_events_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_selected_extension_events_this_classes_end + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_selected_extension_events_this_classes_end (const xcb_input_get_selected_extension_events_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_input_event_class_t * xcb_input_get_selected_extension_events_all_classes + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns xcb_input_event_class_t * + ** + *****************************************************************************/ + +xcb_input_event_class_t * +xcb_input_get_selected_extension_events_all_classes (const xcb_input_get_selected_extension_events_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_get_selected_extension_events_all_classes_length + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_selected_extension_events_all_classes_length (const xcb_input_get_selected_extension_events_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_selected_extension_events_all_classes_end + ** + ** @param const xcb_input_get_selected_extension_events_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_selected_extension_events_all_classes_end (const xcb_input_get_selected_extension_events_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_selected_extension_events_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_selected_extension_events_reply_t * xcb_input_get_selected_extension_events_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_selected_extension_events_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_selected_extension_events_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_selected_extension_events_reply_t * +xcb_input_get_selected_extension_events_reply (xcb_connection_t *c /**< */, + xcb_input_get_selected_extension_events_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_input_change_device_dont_propagate_list_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_change_device_dont_propagate_list_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t num_classes + ** @param uint8_t mode + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_change_device_dont_propagate_list_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t num_classes /**< */, + uint8_t mode /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_change_device_dont_propagate_list + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t num_classes + ** @param uint8_t mode + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_change_device_dont_propagate_list (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t num_classes /**< */, + uint8_t mode /**< */, + const xcb_input_event_class_t *classes /**< */); + +int +xcb_input_get_device_dont_propagate_list_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_dont_propagate_list_cookie_t xcb_input_get_device_dont_propagate_list + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_input_get_device_dont_propagate_list_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_dont_propagate_list_cookie_t +xcb_input_get_device_dont_propagate_list (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_dont_propagate_list_cookie_t xcb_input_get_device_dont_propagate_list_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_input_get_device_dont_propagate_list_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_dont_propagate_list_cookie_t +xcb_input_get_device_dont_propagate_list_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** xcb_input_event_class_t * xcb_input_get_device_dont_propagate_list_classes + ** + ** @param const xcb_input_get_device_dont_propagate_list_reply_t *R + ** @returns xcb_input_event_class_t * + ** + *****************************************************************************/ + +xcb_input_event_class_t * +xcb_input_get_device_dont_propagate_list_classes (const xcb_input_get_device_dont_propagate_list_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_get_device_dont_propagate_list_classes_length + ** + ** @param const xcb_input_get_device_dont_propagate_list_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_device_dont_propagate_list_classes_length (const xcb_input_get_device_dont_propagate_list_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_device_dont_propagate_list_classes_end + ** + ** @param const xcb_input_get_device_dont_propagate_list_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_device_dont_propagate_list_classes_end (const xcb_input_get_device_dont_propagate_list_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_device_dont_propagate_list_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_dont_propagate_list_reply_t * xcb_input_get_device_dont_propagate_list_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_dont_propagate_list_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_dont_propagate_list_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_dont_propagate_list_reply_t * +xcb_input_get_device_dont_propagate_list_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_dont_propagate_list_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_motion_events_cookie_t xcb_input_get_device_motion_events + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t start + ** @param xcb_timestamp_t stop + ** @param uint8_t device_id + ** @returns xcb_input_get_device_motion_events_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_motion_events_cookie_t +xcb_input_get_device_motion_events (xcb_connection_t *c /**< */, + xcb_timestamp_t start /**< */, + xcb_timestamp_t stop /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_motion_events_cookie_t xcb_input_get_device_motion_events_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t start + ** @param xcb_timestamp_t stop + ** @param uint8_t device_id + ** @returns xcb_input_get_device_motion_events_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_motion_events_cookie_t +xcb_input_get_device_motion_events_unchecked (xcb_connection_t *c /**< */, + xcb_timestamp_t start /**< */, + xcb_timestamp_t stop /**< */, + uint8_t device_id /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_device_motion_events_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_motion_events_reply_t * xcb_input_get_device_motion_events_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_motion_events_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_motion_events_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_motion_events_reply_t * +xcb_input_get_device_motion_events_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_motion_events_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_time_coord_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_time_coord_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_time_coord_next + ** + ** @param xcb_input_device_time_coord_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_time_coord_next (xcb_input_device_time_coord_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_time_coord_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_time_coord_end + ** + ** @param xcb_input_device_time_coord_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_time_coord_end (xcb_input_device_time_coord_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_change_keyboard_device_cookie_t xcb_input_change_keyboard_device + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_change_keyboard_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_change_keyboard_device_cookie_t +xcb_input_change_keyboard_device (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_change_keyboard_device_cookie_t xcb_input_change_keyboard_device_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_change_keyboard_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_change_keyboard_device_cookie_t +xcb_input_change_keyboard_device_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_change_keyboard_device_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_change_keyboard_device_reply_t * xcb_input_change_keyboard_device_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_change_keyboard_device_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_change_keyboard_device_reply_t * + ** + *****************************************************************************/ + +xcb_input_change_keyboard_device_reply_t * +xcb_input_change_keyboard_device_reply (xcb_connection_t *c /**< */, + xcb_input_change_keyboard_device_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_change_pointer_device_cookie_t xcb_input_change_pointer_device + ** + ** @param xcb_connection_t *c + ** @param uint8_t x_axis + ** @param uint8_t y_axis + ** @param uint8_t device_id + ** @returns xcb_input_change_pointer_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_change_pointer_device_cookie_t +xcb_input_change_pointer_device (xcb_connection_t *c /**< */, + uint8_t x_axis /**< */, + uint8_t y_axis /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_change_pointer_device_cookie_t xcb_input_change_pointer_device_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t x_axis + ** @param uint8_t y_axis + ** @param uint8_t device_id + ** @returns xcb_input_change_pointer_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_change_pointer_device_cookie_t +xcb_input_change_pointer_device_unchecked (xcb_connection_t *c /**< */, + uint8_t x_axis /**< */, + uint8_t y_axis /**< */, + uint8_t device_id /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_change_pointer_device_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_change_pointer_device_reply_t * xcb_input_change_pointer_device_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_change_pointer_device_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_change_pointer_device_reply_t * + ** + *****************************************************************************/ + +xcb_input_change_pointer_device_reply_t * +xcb_input_change_pointer_device_reply (xcb_connection_t *c /**< */, + xcb_input_change_pointer_device_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_input_grab_device_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_grab_device_cookie_t xcb_input_grab_device + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param xcb_timestamp_t time + ** @param uint16_t num_classes + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t owner_events + ** @param uint8_t device_id + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_input_grab_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_grab_device_cookie_t +xcb_input_grab_device (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + xcb_timestamp_t time /**< */, + uint16_t num_classes /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t owner_events /**< */, + uint8_t device_id /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_grab_device_cookie_t xcb_input_grab_device_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param xcb_timestamp_t time + ** @param uint16_t num_classes + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t owner_events + ** @param uint8_t device_id + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_input_grab_device_cookie_t + ** + *****************************************************************************/ + +xcb_input_grab_device_cookie_t +xcb_input_grab_device_unchecked (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + xcb_timestamp_t time /**< */, + uint16_t num_classes /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t owner_events /**< */, + uint8_t device_id /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_grab_device_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_grab_device_reply_t * xcb_input_grab_device_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_grab_device_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_grab_device_reply_t * + ** + *****************************************************************************/ + +xcb_input_grab_device_reply_t * +xcb_input_grab_device_reply (xcb_connection_t *c /**< */, + xcb_input_grab_device_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_checked (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */, + uint8_t device_id /**< */); + +int +xcb_input_grab_device_key_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_grab_device_key_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint16_t num_classes + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t grabbed_device + ** @param uint8_t key + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t owner_events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_grab_device_key_checked (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint16_t num_classes /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t grabbed_device /**< */, + uint8_t key /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t owner_events /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_grab_device_key + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint16_t num_classes + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t grabbed_device + ** @param uint8_t key + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t owner_events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_grab_device_key (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint16_t num_classes /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t grabbed_device /**< */, + uint8_t key /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t owner_events /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_key_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grabWindow + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t key + ** @param uint8_t grabbed_device + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_key_checked (xcb_connection_t *c /**< */, + xcb_window_t grabWindow /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t key /**< */, + uint8_t grabbed_device /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_key + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grabWindow + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t key + ** @param uint8_t grabbed_device + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_key (xcb_connection_t *c /**< */, + xcb_window_t grabWindow /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t key /**< */, + uint8_t grabbed_device /**< */); + +int +xcb_input_grab_device_button_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_grab_device_button_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint8_t grabbed_device + ** @param uint8_t modifier_device + ** @param uint16_t num_classes + ** @param uint16_t modifiers + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t button + ** @param uint8_t owner_events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_grab_device_button_checked (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint8_t grabbed_device /**< */, + uint8_t modifier_device /**< */, + uint16_t num_classes /**< */, + uint16_t modifiers /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t button /**< */, + uint8_t owner_events /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_grab_device_button + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint8_t grabbed_device + ** @param uint8_t modifier_device + ** @param uint16_t num_classes + ** @param uint16_t modifiers + ** @param uint8_t this_device_mode + ** @param uint8_t other_device_mode + ** @param uint8_t button + ** @param uint8_t owner_events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_grab_device_button (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint8_t grabbed_device /**< */, + uint8_t modifier_device /**< */, + uint16_t num_classes /**< */, + uint16_t modifiers /**< */, + uint8_t this_device_mode /**< */, + uint8_t other_device_mode /**< */, + uint8_t button /**< */, + uint8_t owner_events /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_button_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t button + ** @param uint8_t grabbed_device + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_button_checked (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t button /**< */, + uint8_t grabbed_device /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_ungrab_device_button + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @param uint8_t modifier_device + ** @param uint8_t button + ** @param uint8_t grabbed_device + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_ungrab_device_button (xcb_connection_t *c /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */, + uint8_t modifier_device /**< */, + uint8_t button /**< */, + uint8_t grabbed_device /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_allow_device_events_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @param uint8_t mode + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_allow_device_events_checked (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */, + uint8_t mode /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_allow_device_events + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @param uint8_t mode + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_allow_device_events (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */, + uint8_t mode /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_focus_cookie_t xcb_input_get_device_focus + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_focus_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_focus_cookie_t +xcb_input_get_device_focus (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_focus_cookie_t xcb_input_get_device_focus_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_focus_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_focus_cookie_t +xcb_input_get_device_focus_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_device_focus_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_focus_reply_t * xcb_input_get_device_focus_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_focus_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_focus_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_focus_reply_t * +xcb_input_get_device_focus_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_focus_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_set_device_focus_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t focus + ** @param xcb_timestamp_t time + ** @param uint8_t revert_to + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_set_device_focus_checked (xcb_connection_t *c /**< */, + xcb_window_t focus /**< */, + xcb_timestamp_t time /**< */, + uint8_t revert_to /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_set_device_focus + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t focus + ** @param xcb_timestamp_t time + ** @param uint8_t revert_to + ** @param uint8_t device_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_set_device_focus (xcb_connection_t *c /**< */, + xcb_window_t focus /**< */, + xcb_timestamp_t time /**< */, + uint8_t revert_to /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_feedback_control_cookie_t xcb_input_get_feedback_control + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_feedback_control_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_feedback_control_cookie_t +xcb_input_get_feedback_control (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_feedback_control_cookie_t xcb_input_get_feedback_control_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_feedback_control_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_feedback_control_cookie_t +xcb_input_get_feedback_control_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_feedback_control_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_feedback_control_reply_t * xcb_input_get_feedback_control_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_feedback_control_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_feedback_control_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_feedback_control_reply_t * +xcb_input_get_feedback_control_reply (xcb_connection_t *c /**< */, + xcb_input_get_feedback_control_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_feedback_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_feedback_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_feedback_state_next + ** + ** @param xcb_input_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_feedback_state_next (xcb_input_feedback_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_feedback_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_feedback_state_end + ** + ** @param xcb_input_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_feedback_state_end (xcb_input_feedback_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_kbd_feedback_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_kbd_feedback_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_kbd_feedback_state_next + ** + ** @param xcb_input_kbd_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_kbd_feedback_state_next (xcb_input_kbd_feedback_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_kbd_feedback_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_kbd_feedback_state_end + ** + ** @param xcb_input_kbd_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_kbd_feedback_state_end (xcb_input_kbd_feedback_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_ptr_feedback_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_ptr_feedback_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_ptr_feedback_state_next + ** + ** @param xcb_input_ptr_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_ptr_feedback_state_next (xcb_input_ptr_feedback_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_ptr_feedback_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_ptr_feedback_state_end + ** + ** @param xcb_input_ptr_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_ptr_feedback_state_end (xcb_input_ptr_feedback_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_integer_feedback_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_integer_feedback_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_integer_feedback_state_next + ** + ** @param xcb_input_integer_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_integer_feedback_state_next (xcb_input_integer_feedback_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_integer_feedback_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_integer_feedback_state_end + ** + ** @param xcb_input_integer_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_integer_feedback_state_end (xcb_input_integer_feedback_state_iterator_t i /**< */); + +int +xcb_input_string_feedback_state_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_input_string_feedback_state_keysyms + ** + ** @param const xcb_input_string_feedback_state_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_input_string_feedback_state_keysyms (const xcb_input_string_feedback_state_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_string_feedback_state_keysyms_length + ** + ** @param const xcb_input_string_feedback_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_string_feedback_state_keysyms_length (const xcb_input_string_feedback_state_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_string_feedback_state_keysyms_end + ** + ** @param const xcb_input_string_feedback_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_string_feedback_state_keysyms_end (const xcb_input_string_feedback_state_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_string_feedback_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_string_feedback_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_string_feedback_state_next + ** + ** @param xcb_input_string_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_string_feedback_state_next (xcb_input_string_feedback_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_string_feedback_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_string_feedback_state_end + ** + ** @param xcb_input_string_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_string_feedback_state_end (xcb_input_string_feedback_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_bell_feedback_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_bell_feedback_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_bell_feedback_state_next + ** + ** @param xcb_input_bell_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_bell_feedback_state_next (xcb_input_bell_feedback_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_bell_feedback_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_bell_feedback_state_end + ** + ** @param xcb_input_bell_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_bell_feedback_state_end (xcb_input_bell_feedback_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_led_feedback_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_led_feedback_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_led_feedback_state_next + ** + ** @param xcb_input_led_feedback_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_led_feedback_state_next (xcb_input_led_feedback_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_led_feedback_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_led_feedback_state_end + ** + ** @param xcb_input_led_feedback_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_led_feedback_state_end (xcb_input_led_feedback_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_feedback_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_feedback_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_feedback_ctl_next + ** + ** @param xcb_input_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_feedback_ctl_next (xcb_input_feedback_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_feedback_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_feedback_ctl_end + ** + ** @param xcb_input_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_feedback_ctl_end (xcb_input_feedback_ctl_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_kbd_feedback_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_kbd_feedback_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_kbd_feedback_ctl_next + ** + ** @param xcb_input_kbd_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_kbd_feedback_ctl_next (xcb_input_kbd_feedback_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_kbd_feedback_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_kbd_feedback_ctl_end + ** + ** @param xcb_input_kbd_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_kbd_feedback_ctl_end (xcb_input_kbd_feedback_ctl_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_ptr_feedback_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_ptr_feedback_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_ptr_feedback_ctl_next + ** + ** @param xcb_input_ptr_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_ptr_feedback_ctl_next (xcb_input_ptr_feedback_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_ptr_feedback_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_ptr_feedback_ctl_end + ** + ** @param xcb_input_ptr_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_ptr_feedback_ctl_end (xcb_input_ptr_feedback_ctl_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_integer_feedback_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_integer_feedback_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_integer_feedback_ctl_next + ** + ** @param xcb_input_integer_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_integer_feedback_ctl_next (xcb_input_integer_feedback_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_integer_feedback_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_integer_feedback_ctl_end + ** + ** @param xcb_input_integer_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_integer_feedback_ctl_end (xcb_input_integer_feedback_ctl_iterator_t i /**< */); + +int +xcb_input_string_feedback_ctl_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_input_string_feedback_ctl_keysyms + ** + ** @param const xcb_input_string_feedback_ctl_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_input_string_feedback_ctl_keysyms (const xcb_input_string_feedback_ctl_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_string_feedback_ctl_keysyms_length + ** + ** @param const xcb_input_string_feedback_ctl_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_string_feedback_ctl_keysyms_length (const xcb_input_string_feedback_ctl_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_string_feedback_ctl_keysyms_end + ** + ** @param const xcb_input_string_feedback_ctl_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_string_feedback_ctl_keysyms_end (const xcb_input_string_feedback_ctl_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_string_feedback_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_string_feedback_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_string_feedback_ctl_next + ** + ** @param xcb_input_string_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_string_feedback_ctl_next (xcb_input_string_feedback_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_string_feedback_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_string_feedback_ctl_end + ** + ** @param xcb_input_string_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_string_feedback_ctl_end (xcb_input_string_feedback_ctl_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_bell_feedback_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_bell_feedback_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_bell_feedback_ctl_next + ** + ** @param xcb_input_bell_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_bell_feedback_ctl_next (xcb_input_bell_feedback_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_bell_feedback_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_bell_feedback_ctl_end + ** + ** @param xcb_input_bell_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_bell_feedback_ctl_end (xcb_input_bell_feedback_ctl_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_led_feedback_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_led_feedback_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_led_feedback_ctl_next + ** + ** @param xcb_input_led_feedback_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_led_feedback_ctl_next (xcb_input_led_feedback_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_led_feedback_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_led_feedback_ctl_end + ** + ** @param xcb_input_led_feedback_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_led_feedback_ctl_end (xcb_input_led_feedback_ctl_iterator_t i /**< */); + +int +xcb_input_get_device_key_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_key_mapping_cookie_t xcb_input_get_device_key_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param xcb_input_key_code_t first_keycode + ** @param uint8_t count + ** @returns xcb_input_get_device_key_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_key_mapping_cookie_t +xcb_input_get_device_key_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + xcb_input_key_code_t first_keycode /**< */, + uint8_t count /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_key_mapping_cookie_t xcb_input_get_device_key_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param xcb_input_key_code_t first_keycode + ** @param uint8_t count + ** @returns xcb_input_get_device_key_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_key_mapping_cookie_t +xcb_input_get_device_key_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + xcb_input_key_code_t first_keycode /**< */, + uint8_t count /**< */); + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_input_get_device_key_mapping_keysyms + ** + ** @param const xcb_input_get_device_key_mapping_reply_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_input_get_device_key_mapping_keysyms (const xcb_input_get_device_key_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_get_device_key_mapping_keysyms_length + ** + ** @param const xcb_input_get_device_key_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_device_key_mapping_keysyms_length (const xcb_input_get_device_key_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_device_key_mapping_keysyms_end + ** + ** @param const xcb_input_get_device_key_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_device_key_mapping_keysyms_end (const xcb_input_get_device_key_mapping_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_device_key_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_key_mapping_reply_t * xcb_input_get_device_key_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_key_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_key_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_key_mapping_reply_t * +xcb_input_get_device_key_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_key_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_input_change_device_key_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_change_device_key_mapping_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param xcb_input_key_code_t first_keycode + ** @param uint8_t keysyms_per_keycode + ** @param uint8_t keycode_count + ** @param const xcb_keysym_t *keysyms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_change_device_key_mapping_checked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + xcb_input_key_code_t first_keycode /**< */, + uint8_t keysyms_per_keycode /**< */, + uint8_t keycode_count /**< */, + const xcb_keysym_t *keysyms /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_change_device_key_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param xcb_input_key_code_t first_keycode + ** @param uint8_t keysyms_per_keycode + ** @param uint8_t keycode_count + ** @param const xcb_keysym_t *keysyms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_change_device_key_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + xcb_input_key_code_t first_keycode /**< */, + uint8_t keysyms_per_keycode /**< */, + uint8_t keycode_count /**< */, + const xcb_keysym_t *keysyms /**< */); + +int +xcb_input_get_device_modifier_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_modifier_mapping_cookie_t xcb_input_get_device_modifier_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_modifier_mapping_cookie_t +xcb_input_get_device_modifier_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_modifier_mapping_cookie_t xcb_input_get_device_modifier_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_modifier_mapping_cookie_t +xcb_input_get_device_modifier_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_input_get_device_modifier_mapping_keymaps + ** + ** @param const xcb_input_get_device_modifier_mapping_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_input_get_device_modifier_mapping_keymaps (const xcb_input_get_device_modifier_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_get_device_modifier_mapping_keymaps_length + ** + ** @param const xcb_input_get_device_modifier_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_device_modifier_mapping_keymaps_length (const xcb_input_get_device_modifier_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_device_modifier_mapping_keymaps_end + ** + ** @param const xcb_input_get_device_modifier_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_device_modifier_mapping_keymaps_end (const xcb_input_get_device_modifier_mapping_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_device_modifier_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_modifier_mapping_reply_t * xcb_input_get_device_modifier_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_modifier_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_modifier_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_modifier_mapping_reply_t * +xcb_input_get_device_modifier_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_modifier_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_input_set_device_modifier_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_modifier_mapping_cookie_t xcb_input_set_device_modifier_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t keycodes_per_modifier + ** @param const uint8_t *keymaps + ** @returns xcb_input_set_device_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_modifier_mapping_cookie_t +xcb_input_set_device_modifier_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t keycodes_per_modifier /**< */, + const uint8_t *keymaps /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_modifier_mapping_cookie_t xcb_input_set_device_modifier_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t keycodes_per_modifier + ** @param const uint8_t *keymaps + ** @returns xcb_input_set_device_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_modifier_mapping_cookie_t +xcb_input_set_device_modifier_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t keycodes_per_modifier /**< */, + const uint8_t *keymaps /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_set_device_modifier_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_modifier_mapping_reply_t * xcb_input_set_device_modifier_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_set_device_modifier_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_set_device_modifier_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_set_device_modifier_mapping_reply_t * +xcb_input_set_device_modifier_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_set_device_modifier_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_input_get_device_button_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_button_mapping_cookie_t xcb_input_get_device_button_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_button_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_button_mapping_cookie_t +xcb_input_get_device_button_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_button_mapping_cookie_t xcb_input_get_device_button_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_get_device_button_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_button_mapping_cookie_t +xcb_input_get_device_button_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_input_get_device_button_mapping_map + ** + ** @param const xcb_input_get_device_button_mapping_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_input_get_device_button_mapping_map (const xcb_input_get_device_button_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_get_device_button_mapping_map_length + ** + ** @param const xcb_input_get_device_button_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_get_device_button_mapping_map_length (const xcb_input_get_device_button_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_get_device_button_mapping_map_end + ** + ** @param const xcb_input_get_device_button_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_get_device_button_mapping_map_end (const xcb_input_get_device_button_mapping_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_device_button_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_button_mapping_reply_t * xcb_input_get_device_button_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_button_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_button_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_button_mapping_reply_t * +xcb_input_get_device_button_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_button_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_input_set_device_button_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_button_mapping_cookie_t xcb_input_set_device_button_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t map_size + ** @param const uint8_t *map + ** @returns xcb_input_set_device_button_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_button_mapping_cookie_t +xcb_input_set_device_button_mapping (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t map_size /**< */, + const uint8_t *map /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_button_mapping_cookie_t xcb_input_set_device_button_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t map_size + ** @param const uint8_t *map + ** @returns xcb_input_set_device_button_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_button_mapping_cookie_t +xcb_input_set_device_button_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t map_size /**< */, + const uint8_t *map /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_set_device_button_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_button_mapping_reply_t * xcb_input_set_device_button_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_set_device_button_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_set_device_button_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_input_set_device_button_mapping_reply_t * +xcb_input_set_device_button_mapping_reply (xcb_connection_t *c /**< */, + xcb_input_set_device_button_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_query_device_state_cookie_t xcb_input_query_device_state + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_query_device_state_cookie_t + ** + *****************************************************************************/ + +xcb_input_query_device_state_cookie_t +xcb_input_query_device_state (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_query_device_state_cookie_t xcb_input_query_device_state_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @returns xcb_input_query_device_state_cookie_t + ** + *****************************************************************************/ + +xcb_input_query_device_state_cookie_t +xcb_input_query_device_state_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_query_device_state_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_query_device_state_reply_t * xcb_input_query_device_state_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_query_device_state_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_query_device_state_reply_t * + ** + *****************************************************************************/ + +xcb_input_query_device_state_reply_t * +xcb_input_query_device_state_reply (xcb_connection_t *c /**< */, + xcb_input_query_device_state_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_input_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_input_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_input_state_next + ** + ** @param xcb_input_input_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_input_state_next (xcb_input_input_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_input_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_input_state_end + ** + ** @param xcb_input_input_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_input_state_end (xcb_input_input_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_key_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_key_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_key_state_next + ** + ** @param xcb_input_key_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_key_state_next (xcb_input_key_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_key_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_key_state_end + ** + ** @param xcb_input_key_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_key_state_end (xcb_input_key_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_button_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_button_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_button_state_next + ** + ** @param xcb_input_button_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_button_state_next (xcb_input_button_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_button_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_button_state_end + ** + ** @param xcb_input_button_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_button_state_end (xcb_input_button_state_iterator_t i /**< */); + +int +xcb_input_valuator_state_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_valuator_state_valuators + ** + ** @param const xcb_input_valuator_state_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_valuator_state_valuators (const xcb_input_valuator_state_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_valuator_state_valuators_length + ** + ** @param const xcb_input_valuator_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_valuator_state_valuators_length (const xcb_input_valuator_state_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_valuator_state_valuators_end + ** + ** @param const xcb_input_valuator_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_valuator_state_valuators_end (const xcb_input_valuator_state_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_valuator_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_valuator_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_valuator_state_next + ** + ** @param xcb_input_valuator_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_valuator_state_next (xcb_input_valuator_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_valuator_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_valuator_state_end + ** + ** @param xcb_input_valuator_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_valuator_state_end (xcb_input_valuator_state_iterator_t i /**< */); + +int +xcb_input_send_extension_event_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_send_extension_event_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination + ** @param uint8_t device_id + ** @param uint8_t propagate + ** @param uint16_t num_classes + ** @param uint8_t num_events + ** @param const char *events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_send_extension_event_checked (xcb_connection_t *c /**< */, + xcb_window_t destination /**< */, + uint8_t device_id /**< */, + uint8_t propagate /**< */, + uint16_t num_classes /**< */, + uint8_t num_events /**< */, + const char *events /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_send_extension_event + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t destination + ** @param uint8_t device_id + ** @param uint8_t propagate + ** @param uint16_t num_classes + ** @param uint8_t num_events + ** @param const char *events + ** @param const xcb_input_event_class_t *classes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_send_extension_event (xcb_connection_t *c /**< */, + xcb_window_t destination /**< */, + uint8_t device_id /**< */, + uint8_t propagate /**< */, + uint16_t num_classes /**< */, + uint8_t num_events /**< */, + const char *events /**< */, + const xcb_input_event_class_t *classes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_device_bell_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t feedback_id + ** @param uint8_t feedback_class + ** @param int8_t percent + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_device_bell_checked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t feedback_id /**< */, + uint8_t feedback_class /**< */, + int8_t percent /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_input_device_bell + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t feedback_id + ** @param uint8_t feedback_class + ** @param int8_t percent + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_input_device_bell (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t feedback_id /**< */, + uint8_t feedback_class /**< */, + int8_t percent /**< */); + +int +xcb_input_set_device_valuators_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_valuators_cookie_t xcb_input_set_device_valuators + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t first_valuator + ** @param uint8_t num_valuators + ** @param const int32_t *valuators + ** @returns xcb_input_set_device_valuators_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_valuators_cookie_t +xcb_input_set_device_valuators (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t first_valuator /**< */, + uint8_t num_valuators /**< */, + const int32_t *valuators /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_valuators_cookie_t xcb_input_set_device_valuators_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t device_id + ** @param uint8_t first_valuator + ** @param uint8_t num_valuators + ** @param const int32_t *valuators + ** @returns xcb_input_set_device_valuators_cookie_t + ** + *****************************************************************************/ + +xcb_input_set_device_valuators_cookie_t +xcb_input_set_device_valuators_unchecked (xcb_connection_t *c /**< */, + uint8_t device_id /**< */, + uint8_t first_valuator /**< */, + uint8_t num_valuators /**< */, + const int32_t *valuators /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_set_device_valuators_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_set_device_valuators_reply_t * xcb_input_set_device_valuators_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_set_device_valuators_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_set_device_valuators_reply_t * + ** + *****************************************************************************/ + +xcb_input_set_device_valuators_reply_t * +xcb_input_set_device_valuators_reply (xcb_connection_t *c /**< */, + xcb_input_set_device_valuators_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_control_cookie_t xcb_input_get_device_control + ** + ** @param xcb_connection_t *c + ** @param uint16_t control_id + ** @param uint8_t device_id + ** @returns xcb_input_get_device_control_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_control_cookie_t +xcb_input_get_device_control (xcb_connection_t *c /**< */, + uint16_t control_id /**< */, + uint8_t device_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_control_cookie_t xcb_input_get_device_control_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t control_id + ** @param uint8_t device_id + ** @returns xcb_input_get_device_control_cookie_t + ** + *****************************************************************************/ + +xcb_input_get_device_control_cookie_t +xcb_input_get_device_control_unchecked (xcb_connection_t *c /**< */, + uint16_t control_id /**< */, + uint8_t device_id /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_input_get_device_control_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_input_get_device_control_reply_t * xcb_input_get_device_control_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_input_get_device_control_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_input_get_device_control_reply_t * + ** + *****************************************************************************/ + +xcb_input_get_device_control_reply_t * +xcb_input_get_device_control_reply (xcb_connection_t *c /**< */, + xcb_input_get_device_control_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_state_next + ** + ** @param xcb_input_device_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_state_next (xcb_input_device_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_state_end + ** + ** @param xcb_input_device_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_state_end (xcb_input_device_state_iterator_t i /**< */); + +int +xcb_input_device_resolution_state_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_device_resolution_state_resolution_values + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_device_resolution_state_resolution_values (const xcb_input_device_resolution_state_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_device_resolution_state_resolution_values_length + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_device_resolution_state_resolution_values_length (const xcb_input_device_resolution_state_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_state_resolution_values_end + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_state_resolution_values_end (const xcb_input_device_resolution_state_t *R /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_device_resolution_state_resolution_min + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_device_resolution_state_resolution_min (const xcb_input_device_resolution_state_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_device_resolution_state_resolution_min_length + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_device_resolution_state_resolution_min_length (const xcb_input_device_resolution_state_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_state_resolution_min_end + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_state_resolution_min_end (const xcb_input_device_resolution_state_t *R /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_device_resolution_state_resolution_max + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_device_resolution_state_resolution_max (const xcb_input_device_resolution_state_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_device_resolution_state_resolution_max_length + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_device_resolution_state_resolution_max_length (const xcb_input_device_resolution_state_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_state_resolution_max_end + ** + ** @param const xcb_input_device_resolution_state_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_state_resolution_max_end (const xcb_input_device_resolution_state_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_resolution_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_resolution_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_resolution_state_next + ** + ** @param xcb_input_device_resolution_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_resolution_state_next (xcb_input_device_resolution_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_resolution_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_state_end + ** + ** @param xcb_input_device_resolution_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_state_end (xcb_input_device_resolution_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_abs_calib_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_abs_calib_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_abs_calib_state_next + ** + ** @param xcb_input_device_abs_calib_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_abs_calib_state_next (xcb_input_device_abs_calib_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_abs_calib_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_abs_calib_state_end + ** + ** @param xcb_input_device_abs_calib_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_abs_calib_state_end (xcb_input_device_abs_calib_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_abs_area_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_abs_area_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_abs_area_state_next + ** + ** @param xcb_input_device_abs_area_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_abs_area_state_next (xcb_input_device_abs_area_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_abs_area_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_abs_area_state_end + ** + ** @param xcb_input_device_abs_area_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_abs_area_state_end (xcb_input_device_abs_area_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_core_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_core_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_core_state_next + ** + ** @param xcb_input_device_core_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_core_state_next (xcb_input_device_core_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_core_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_core_state_end + ** + ** @param xcb_input_device_core_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_core_state_end (xcb_input_device_core_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_enable_state_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_enable_state_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_enable_state_next + ** + ** @param xcb_input_device_enable_state_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_enable_state_next (xcb_input_device_enable_state_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_enable_state_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_enable_state_end + ** + ** @param xcb_input_device_enable_state_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_enable_state_end (xcb_input_device_enable_state_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_ctl_next + ** + ** @param xcb_input_device_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_ctl_next (xcb_input_device_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_ctl_end + ** + ** @param xcb_input_device_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_ctl_end (xcb_input_device_ctl_iterator_t i /**< */); + +int +xcb_input_device_resolution_ctl_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_input_device_resolution_ctl_resolution_values + ** + ** @param const xcb_input_device_resolution_ctl_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_input_device_resolution_ctl_resolution_values (const xcb_input_device_resolution_ctl_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_input_device_resolution_ctl_resolution_values_length + ** + ** @param const xcb_input_device_resolution_ctl_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_input_device_resolution_ctl_resolution_values_length (const xcb_input_device_resolution_ctl_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_ctl_resolution_values_end + ** + ** @param const xcb_input_device_resolution_ctl_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_ctl_resolution_values_end (const xcb_input_device_resolution_ctl_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_resolution_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_resolution_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_resolution_ctl_next + ** + ** @param xcb_input_device_resolution_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_resolution_ctl_next (xcb_input_device_resolution_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_resolution_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_resolution_ctl_end + ** + ** @param xcb_input_device_resolution_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_resolution_ctl_end (xcb_input_device_resolution_ctl_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_abs_calib_ctl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_abs_calib_ctl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_abs_calib_ctl_next + ** + ** @param xcb_input_device_abs_calib_ctl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_abs_calib_ctl_next (xcb_input_device_abs_calib_ctl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_abs_calib_ctl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_abs_calib_ctl_end + ** + ** @param xcb_input_device_abs_calib_ctl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_abs_calib_ctl_end (xcb_input_device_abs_calib_ctl_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_abs_area_ctrl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_abs_area_ctrl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_abs_area_ctrl_next + ** + ** @param xcb_input_device_abs_area_ctrl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_abs_area_ctrl_next (xcb_input_device_abs_area_ctrl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_abs_area_ctrl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_abs_area_ctrl_end + ** + ** @param xcb_input_device_abs_area_ctrl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_abs_area_ctrl_end (xcb_input_device_abs_area_ctrl_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_core_ctrl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_core_ctrl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_core_ctrl_next + ** + ** @param xcb_input_device_core_ctrl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_core_ctrl_next (xcb_input_device_core_ctrl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_core_ctrl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_core_ctrl_end + ** + ** @param xcb_input_device_core_ctrl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_core_ctrl_end (xcb_input_device_core_ctrl_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_input_device_enable_ctrl_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_input_device_enable_ctrl_t) + */ + +/***************************************************************************** + ** + ** void xcb_input_device_enable_ctrl_next + ** + ** @param xcb_input_device_enable_ctrl_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_input_device_enable_ctrl_next (xcb_input_device_enable_ctrl_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_input_device_enable_ctrl_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_input_device_enable_ctrl_end + ** + ** @param xcb_input_device_enable_ctrl_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_input_device_enable_ctrl_end (xcb_input_device_enable_ctrl_iterator_t i /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xkb.c b/external/mit/xorg/lib/libxcb/files/xkb.c new file mode 100644 index 000000000..1eb142a19 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xkb.c @@ -0,0 +1,22015 @@ +/* + * This file generated automatically from xkb.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xkb.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_xkb_id = { "XKEYBOARD", 0 }; + + +/***************************************************************************** + ** + ** void xcb_xkb_ax_option_next + ** + ** @param xcb_xkb_ax_option_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_ax_option_next (xcb_xkb_ax_option_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_ax_option_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_ax_option_end + ** + ** @param xcb_xkb_ax_option_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_ax_option_end (xcb_xkb_ax_option_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_device_spec_next + ** + ** @param xcb_xkb_device_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_device_spec_next (xcb_xkb_device_spec_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_device_spec_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_device_spec_end + ** + ** @param xcb_xkb_device_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_device_spec_end (xcb_xkb_device_spec_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_led_class_spec_next + ** + ** @param xcb_xkb_led_class_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_led_class_spec_next (xcb_xkb_led_class_spec_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_led_class_spec_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_led_class_spec_end + ** + ** @param xcb_xkb_led_class_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_led_class_spec_end (xcb_xkb_led_class_spec_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_bell_class_spec_next + ** + ** @param xcb_xkb_bell_class_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_bell_class_spec_next (xcb_xkb_bell_class_spec_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_bell_class_spec_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_bell_class_spec_end + ** + ** @param xcb_xkb_bell_class_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_bell_class_spec_end (xcb_xkb_bell_class_spec_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_id_spec_next + ** + ** @param xcb_xkb_id_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_id_spec_next (xcb_xkb_id_spec_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_id_spec_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_id_spec_end + ** + ** @param xcb_xkb_id_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_id_spec_end (xcb_xkb_id_spec_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_indicator_map_next + ** + ** @param xcb_xkb_indicator_map_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_indicator_map_next (xcb_xkb_indicator_map_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_indicator_map_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_indicator_map_end + ** + ** @param xcb_xkb_indicator_map_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_indicator_map_end (xcb_xkb_indicator_map_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_mod_def_next + ** + ** @param xcb_xkb_mod_def_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_mod_def_next (xcb_xkb_mod_def_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_mod_def_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_mod_def_end + ** + ** @param xcb_xkb_mod_def_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_mod_def_end (xcb_xkb_mod_def_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_key_name_next + ** + ** @param xcb_xkb_key_name_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_name_next (xcb_xkb_key_name_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_key_name_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_name_end + ** + ** @param xcb_xkb_key_name_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_name_end (xcb_xkb_key_name_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_key_alias_next + ** + ** @param xcb_xkb_key_alias_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_alias_next (xcb_xkb_key_alias_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_key_alias_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_alias_end + ** + ** @param xcb_xkb_key_alias_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_alias_end (xcb_xkb_key_alias_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_xkb_counted_string_8_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_counted_string_8_t *_aux = (xcb_xkb_counted_string_8_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_counted_string_8_t); + xcb_tmp += xcb_block_len; + /* string */ + xcb_block_len += _aux->length * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_counted_string_8_string + ** + ** @param const xcb_xkb_counted_string_8_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_counted_string_8_string (const xcb_xkb_counted_string_8_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_counted_string_8_string_length + ** + ** @param const xcb_xkb_counted_string_8_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_counted_string_8_string_length (const xcb_xkb_counted_string_8_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_counted_string_8_string_end + ** + ** @param const xcb_xkb_counted_string_8_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_counted_string_8_string_end (const xcb_xkb_counted_string_8_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_counted_string_8_next + ** + ** @param xcb_xkb_counted_string_8_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_counted_string_8_next (xcb_xkb_counted_string_8_iterator_t *i /**< */) +{ + xcb_xkb_counted_string_8_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_counted_string_8_t *)(((char *)R) + xcb_xkb_counted_string_8_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_counted_string_8_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_counted_string_8_end + ** + ** @param xcb_xkb_counted_string_8_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_counted_string_8_end (xcb_xkb_counted_string_8_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_counted_string_8_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_counted_string_16_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_counted_string_16_t *_aux = (xcb_xkb_counted_string_16_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_counted_string_16_t); + xcb_tmp += xcb_block_len; + /* string */ + xcb_block_len += _aux->length * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_counted_string_16_string + ** + ** @param const xcb_xkb_counted_string_16_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_counted_string_16_string (const xcb_xkb_counted_string_16_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_counted_string_16_string_length + ** + ** @param const xcb_xkb_counted_string_16_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_counted_string_16_string_length (const xcb_xkb_counted_string_16_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_counted_string_16_string_end + ** + ** @param const xcb_xkb_counted_string_16_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_counted_string_16_string_end (const xcb_xkb_counted_string_16_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_counted_string_16_pad_0 + ** + ** @param const xcb_xkb_counted_string_16_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_counted_string_16_pad_0 (const xcb_xkb_counted_string_16_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xkb_counted_string_16_string_end(R); + return (uint8_t *) ((char *) prev.data + XCB_TYPE_PAD(uint8_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** void xcb_xkb_counted_string_16_next + ** + ** @param xcb_xkb_counted_string_16_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_counted_string_16_next (xcb_xkb_counted_string_16_iterator_t *i /**< */) +{ + xcb_xkb_counted_string_16_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_counted_string_16_t *)(((char *)R) + xcb_xkb_counted_string_16_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_counted_string_16_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_counted_string_16_end + ** + ** @param xcb_xkb_counted_string_16_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_counted_string_16_end (xcb_xkb_counted_string_16_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_counted_string_16_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_kt_map_entry_next + ** + ** @param xcb_xkb_kt_map_entry_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_kt_map_entry_next (xcb_xkb_kt_map_entry_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_kt_map_entry_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_kt_map_entry_end + ** + ** @param xcb_xkb_kt_map_entry_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_kt_map_entry_end (xcb_xkb_kt_map_entry_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_xkb_key_type_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_key_type_t *_aux = (xcb_xkb_key_type_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_key_type_t); + xcb_tmp += xcb_block_len; + /* map */ + xcb_block_len += _aux->nMapEntries * sizeof(xcb_xkb_kt_map_entry_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_kt_map_entry_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* preserve */ + xcb_block_len += (_aux->hasPreserve * _aux->nMapEntries) * sizeof(xcb_xkb_mod_def_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_kt_map_entry_t * xcb_xkb_key_type_map + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns xcb_xkb_kt_map_entry_t * + ** + *****************************************************************************/ + +xcb_xkb_kt_map_entry_t * +xcb_xkb_key_type_map (const xcb_xkb_key_type_t *R /**< */) +{ + return (xcb_xkb_kt_map_entry_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_key_type_map_length + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_key_type_map_length (const xcb_xkb_key_type_t *R /**< */) +{ + return R->nMapEntries; +} + + +/***************************************************************************** + ** + ** xcb_xkb_kt_map_entry_iterator_t xcb_xkb_key_type_map_iterator + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns xcb_xkb_kt_map_entry_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_kt_map_entry_iterator_t +xcb_xkb_key_type_map_iterator (const xcb_xkb_key_type_t *R /**< */) +{ + xcb_xkb_kt_map_entry_iterator_t i; + i.data = (xcb_xkb_kt_map_entry_t *) (R + 1); + i.rem = R->nMapEntries; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_t * xcb_xkb_key_type_preserve + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns xcb_xkb_mod_def_t * + ** + *****************************************************************************/ + +xcb_xkb_mod_def_t * +xcb_xkb_key_type_preserve (const xcb_xkb_key_type_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xkb_kt_map_entry_end(xcb_xkb_key_type_map_iterator(R)); + return (xcb_xkb_mod_def_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_mod_def_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_key_type_preserve_length + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_key_type_preserve_length (const xcb_xkb_key_type_t *R /**< */) +{ + return (R->hasPreserve * R->nMapEntries); +} + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_iterator_t xcb_xkb_key_type_preserve_iterator + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns xcb_xkb_mod_def_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_mod_def_iterator_t +xcb_xkb_key_type_preserve_iterator (const xcb_xkb_key_type_t *R /**< */) +{ + xcb_xkb_mod_def_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_kt_map_entry_end(xcb_xkb_key_type_map_iterator(R)); + i.data = (xcb_xkb_mod_def_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_mod_def_t, prev.index)); + i.rem = (R->hasPreserve * R->nMapEntries); + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_key_type_next + ** + ** @param xcb_xkb_key_type_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_type_next (xcb_xkb_key_type_iterator_t *i /**< */) +{ + xcb_xkb_key_type_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_key_type_t *)(((char *)R) + xcb_xkb_key_type_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_key_type_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_type_end + ** + ** @param xcb_xkb_key_type_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_type_end (xcb_xkb_key_type_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_key_type_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_key_sym_map_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_key_sym_map_t *_aux = (xcb_xkb_key_sym_map_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_key_sym_map_t); + xcb_tmp += xcb_block_len; + /* syms */ + xcb_block_len += _aux->nSyms * sizeof(xcb_keysym_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_keysym_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_xkb_key_sym_map_syms + ** + ** @param const xcb_xkb_key_sym_map_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_xkb_key_sym_map_syms (const xcb_xkb_key_sym_map_t *R /**< */) +{ + return (xcb_keysym_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_key_sym_map_syms_length + ** + ** @param const xcb_xkb_key_sym_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_key_sym_map_syms_length (const xcb_xkb_key_sym_map_t *R /**< */) +{ + return R->nSyms; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_sym_map_syms_end + ** + ** @param const xcb_xkb_key_sym_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_sym_map_syms_end (const xcb_xkb_key_sym_map_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_keysym_t *) (R + 1)) + (R->nSyms); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_key_sym_map_next + ** + ** @param xcb_xkb_key_sym_map_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_sym_map_next (xcb_xkb_key_sym_map_iterator_t *i /**< */) +{ + xcb_xkb_key_sym_map_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_key_sym_map_t *)(((char *)R) + xcb_xkb_key_sym_map_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_key_sym_map_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_sym_map_end + ** + ** @param xcb_xkb_key_sym_map_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_sym_map_end (xcb_xkb_key_sym_map_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_key_sym_map_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_common_behavior_next + ** + ** @param xcb_xkb_common_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_common_behavior_next (xcb_xkb_common_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_common_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_common_behavior_end + ** + ** @param xcb_xkb_common_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_common_behavior_end (xcb_xkb_common_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_default_behavior_next + ** + ** @param xcb_xkb_default_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_default_behavior_next (xcb_xkb_default_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_default_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_default_behavior_end + ** + ** @param xcb_xkb_default_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_default_behavior_end (xcb_xkb_default_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_lock_behavior_next + ** + ** @param xcb_xkb_lock_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_lock_behavior_next (xcb_xkb_lock_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_lock_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_lock_behavior_end + ** + ** @param xcb_xkb_lock_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_lock_behavior_end (xcb_xkb_lock_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_radio_group_behavior_next + ** + ** @param xcb_xkb_radio_group_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_radio_group_behavior_next (xcb_xkb_radio_group_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_radio_group_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_radio_group_behavior_end + ** + ** @param xcb_xkb_radio_group_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_radio_group_behavior_end (xcb_xkb_radio_group_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_1_behavior_next + ** + ** @param xcb_xkb_overlay_1_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_1_behavior_next (xcb_xkb_overlay_1_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_overlay_1_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_1_behavior_end + ** + ** @param xcb_xkb_overlay_1_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_1_behavior_end (xcb_xkb_overlay_1_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_2_behavior_next + ** + ** @param xcb_xkb_overlay_2_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_2_behavior_next (xcb_xkb_overlay_2_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_overlay_2_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_2_behavior_end + ** + ** @param xcb_xkb_overlay_2_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_2_behavior_end (xcb_xkb_overlay_2_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_permament_lock_behavior_next + ** + ** @param xcb_xkb_permament_lock_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_permament_lock_behavior_next (xcb_xkb_permament_lock_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_permament_lock_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_permament_lock_behavior_end + ** + ** @param xcb_xkb_permament_lock_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_permament_lock_behavior_end (xcb_xkb_permament_lock_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_permament_radio_group_behavior_next + ** + ** @param xcb_xkb_permament_radio_group_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_permament_radio_group_behavior_next (xcb_xkb_permament_radio_group_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_permament_radio_group_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_permament_radio_group_behavior_end + ** + ** @param xcb_xkb_permament_radio_group_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_permament_radio_group_behavior_end (xcb_xkb_permament_radio_group_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_permament_overlay_1_behavior_next + ** + ** @param xcb_xkb_permament_overlay_1_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_permament_overlay_1_behavior_next (xcb_xkb_permament_overlay_1_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_permament_overlay_1_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_permament_overlay_1_behavior_end + ** + ** @param xcb_xkb_permament_overlay_1_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_permament_overlay_1_behavior_end (xcb_xkb_permament_overlay_1_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_permament_overlay_2_behavior_next + ** + ** @param xcb_xkb_permament_overlay_2_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_permament_overlay_2_behavior_next (xcb_xkb_permament_overlay_2_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_permament_overlay_2_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_permament_overlay_2_behavior_end + ** + ** @param xcb_xkb_permament_overlay_2_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_permament_overlay_2_behavior_end (xcb_xkb_permament_overlay_2_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_behavior_next + ** + ** @param xcb_xkb_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_behavior_next (xcb_xkb_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_behavior_end + ** + ** @param xcb_xkb_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_behavior_end (xcb_xkb_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_set_behavior_next + ** + ** @param xcb_xkb_set_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_set_behavior_next (xcb_xkb_set_behavior_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_set_behavior_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_behavior_end + ** + ** @param xcb_xkb_set_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_behavior_end (xcb_xkb_set_behavior_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_set_explicit_next + ** + ** @param xcb_xkb_set_explicit_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_set_explicit_next (xcb_xkb_set_explicit_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_set_explicit_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_explicit_end + ** + ** @param xcb_xkb_set_explicit_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_explicit_end (xcb_xkb_set_explicit_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_key_mod_map_next + ** + ** @param xcb_xkb_key_mod_map_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_mod_map_next (xcb_xkb_key_mod_map_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_key_mod_map_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_mod_map_end + ** + ** @param xcb_xkb_key_mod_map_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_mod_map_end (xcb_xkb_key_mod_map_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_key_v_mod_map_next + ** + ** @param xcb_xkb_key_v_mod_map_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_v_mod_map_next (xcb_xkb_key_v_mod_map_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_key_v_mod_map_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_v_mod_map_end + ** + ** @param xcb_xkb_key_v_mod_map_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_v_mod_map_end (xcb_xkb_key_v_mod_map_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_kt_set_map_entry_next + ** + ** @param xcb_xkb_kt_set_map_entry_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_kt_set_map_entry_next (xcb_xkb_kt_set_map_entry_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_kt_set_map_entry_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_kt_set_map_entry_end + ** + ** @param xcb_xkb_kt_set_map_entry_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_kt_set_map_entry_end (xcb_xkb_kt_set_map_entry_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_xkb_set_key_type_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_set_key_type_t *_aux = (xcb_xkb_set_key_type_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_set_key_type_t); + xcb_tmp += xcb_block_len; + /* entries */ + xcb_block_len += _aux->nMapEntries * sizeof(xcb_xkb_kt_set_map_entry_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_kt_set_map_entry_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* preserve_entries */ + xcb_block_len += (_aux->preserve * _aux->nMapEntries) * sizeof(xcb_xkb_kt_set_map_entry_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_kt_set_map_entry_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_kt_set_map_entry_t * xcb_xkb_set_key_type_entries + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns xcb_xkb_kt_set_map_entry_t * + ** + *****************************************************************************/ + +xcb_xkb_kt_set_map_entry_t * +xcb_xkb_set_key_type_entries (const xcb_xkb_set_key_type_t *R /**< */) +{ + return (xcb_xkb_kt_set_map_entry_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_key_type_entries_length + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_key_type_entries_length (const xcb_xkb_set_key_type_t *R /**< */) +{ + return R->nMapEntries; +} + + +/***************************************************************************** + ** + ** xcb_xkb_kt_set_map_entry_iterator_t xcb_xkb_set_key_type_entries_iterator + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns xcb_xkb_kt_set_map_entry_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_kt_set_map_entry_iterator_t +xcb_xkb_set_key_type_entries_iterator (const xcb_xkb_set_key_type_t *R /**< */) +{ + xcb_xkb_kt_set_map_entry_iterator_t i; + i.data = (xcb_xkb_kt_set_map_entry_t *) (R + 1); + i.rem = R->nMapEntries; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_kt_set_map_entry_t * xcb_xkb_set_key_type_preserve_entries + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns xcb_xkb_kt_set_map_entry_t * + ** + *****************************************************************************/ + +xcb_xkb_kt_set_map_entry_t * +xcb_xkb_set_key_type_preserve_entries (const xcb_xkb_set_key_type_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xkb_kt_set_map_entry_end(xcb_xkb_set_key_type_entries_iterator(R)); + return (xcb_xkb_kt_set_map_entry_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_kt_set_map_entry_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_key_type_preserve_entries_length + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_key_type_preserve_entries_length (const xcb_xkb_set_key_type_t *R /**< */) +{ + return (R->preserve * R->nMapEntries); +} + + +/***************************************************************************** + ** + ** xcb_xkb_kt_set_map_entry_iterator_t xcb_xkb_set_key_type_preserve_entries_iterator + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns xcb_xkb_kt_set_map_entry_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_kt_set_map_entry_iterator_t +xcb_xkb_set_key_type_preserve_entries_iterator (const xcb_xkb_set_key_type_t *R /**< */) +{ + xcb_xkb_kt_set_map_entry_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_kt_set_map_entry_end(xcb_xkb_set_key_type_entries_iterator(R)); + i.data = (xcb_xkb_kt_set_map_entry_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_kt_set_map_entry_t, prev.index)); + i.rem = (R->preserve * R->nMapEntries); + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_set_key_type_next + ** + ** @param xcb_xkb_set_key_type_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_set_key_type_next (xcb_xkb_set_key_type_iterator_t *i /**< */) +{ + xcb_xkb_set_key_type_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_set_key_type_t *)(((char *)R) + xcb_xkb_set_key_type_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_set_key_type_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_key_type_end + ** + ** @param xcb_xkb_set_key_type_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_key_type_end (xcb_xkb_set_key_type_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_set_key_type_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_string8_next + ** + ** @param xcb_xkb_string8_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_string8_next (xcb_xkb_string8_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_string8_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_string8_end + ** + ** @param xcb_xkb_string8_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_string8_end (xcb_xkb_string8_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_xkb_property_serialize (void **_buffer /**< */, + const xcb_xkb_property_t *_aux /**< */, + const xcb_xkb_string8_t *name /**< */, + const xcb_xkb_string8_t *value /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[5]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + /* xcb_xkb_property_t.nameLength */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->nameLength; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* name */ + xcb_parts[xcb_parts_idx].iov_base = (char *) name; + xcb_block_len += _aux->nameLength * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->nameLength * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_property_t.valueLength */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->valueLength; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* value */ + xcb_parts[xcb_parts_idx].iov_base = (char *) value; + xcb_block_len += _aux->valueLength * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->valueLength * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; inameLength; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_property_name_end + ** + ** @param const xcb_xkb_property_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_property_name_end (const xcb_xkb_property_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_xkb_string8_t *) (R + 1)) + (R->nameLength); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_string8_t * xcb_xkb_property_value + ** + ** @param const xcb_xkb_property_t *R + ** @returns xcb_xkb_string8_t * + ** + *****************************************************************************/ + +xcb_xkb_string8_t * +xcb_xkb_property_value (const xcb_xkb_property_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xkb_property_name_end(R); + return (xcb_xkb_string8_t *) ((char *) prev.data + XCB_TYPE_PAD(uint16_t, prev.index) + 2); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_property_value_length + ** + ** @param const xcb_xkb_property_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_property_value_length (const xcb_xkb_property_t *R /**< */) +{ + return R->valueLength; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_property_value_end + ** + ** @param const xcb_xkb_property_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_property_value_end (const xcb_xkb_property_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_xkb_property_name_end(R); + i.data = ((xcb_xkb_string8_t *) child.data) + (R->valueLength); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_property_next + ** + ** @param xcb_xkb_property_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_property_next (xcb_xkb_property_iterator_t *i /**< */) +{ + xcb_xkb_property_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_property_t *)(((char *)R) + xcb_xkb_property_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_property_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_property_end + ** + ** @param xcb_xkb_property_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_property_end (xcb_xkb_property_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_property_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_outline_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_outline_t *_aux = (xcb_xkb_outline_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_outline_t); + xcb_tmp += xcb_block_len; + /* points */ + xcb_block_len += _aux->nPoints * sizeof(xcb_point_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_point_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_point_t * xcb_xkb_outline_points + ** + ** @param const xcb_xkb_outline_t *R + ** @returns xcb_point_t * + ** + *****************************************************************************/ + +xcb_point_t * +xcb_xkb_outline_points (const xcb_xkb_outline_t *R /**< */) +{ + return (xcb_point_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_outline_points_length + ** + ** @param const xcb_xkb_outline_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_outline_points_length (const xcb_xkb_outline_t *R /**< */) +{ + return R->nPoints; +} + + +/***************************************************************************** + ** + ** xcb_point_iterator_t xcb_xkb_outline_points_iterator + ** + ** @param const xcb_xkb_outline_t *R + ** @returns xcb_point_iterator_t + ** + *****************************************************************************/ + +xcb_point_iterator_t +xcb_xkb_outline_points_iterator (const xcb_xkb_outline_t *R /**< */) +{ + xcb_point_iterator_t i; + i.data = (xcb_point_t *) (R + 1); + i.rem = R->nPoints; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_outline_next + ** + ** @param xcb_xkb_outline_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_outline_next (xcb_xkb_outline_iterator_t *i /**< */) +{ + xcb_xkb_outline_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_outline_t *)(((char *)R) + xcb_xkb_outline_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_outline_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_outline_end + ** + ** @param xcb_xkb_outline_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_outline_end (xcb_xkb_outline_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_outline_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_shape_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_shape_t *_aux = (xcb_xkb_shape_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_xkb_shape_t); + xcb_tmp += xcb_block_len; + /* outlines */ + for(i=0; i<_aux->nOutlines; i++) { + xcb_tmp_len = xcb_xkb_outline_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_outline_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_shape_outlines_length + ** + ** @param const xcb_xkb_shape_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_shape_outlines_length (const xcb_xkb_shape_t *R /**< */) +{ + return R->nOutlines; +} + + +/***************************************************************************** + ** + ** xcb_xkb_outline_iterator_t xcb_xkb_shape_outlines_iterator + ** + ** @param const xcb_xkb_shape_t *R + ** @returns xcb_xkb_outline_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_outline_iterator_t +xcb_xkb_shape_outlines_iterator (const xcb_xkb_shape_t *R /**< */) +{ + xcb_xkb_outline_iterator_t i; + i.data = (xcb_xkb_outline_t *) (R + 1); + i.rem = R->nOutlines; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_shape_next + ** + ** @param xcb_xkb_shape_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_shape_next (xcb_xkb_shape_iterator_t *i /**< */) +{ + xcb_xkb_shape_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_shape_t *)(((char *)R) + xcb_xkb_shape_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_shape_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_shape_end + ** + ** @param xcb_xkb_shape_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_shape_end (xcb_xkb_shape_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_shape_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_key_next + ** + ** @param xcb_xkb_key_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_next (xcb_xkb_key_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_key_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_end + ** + ** @param xcb_xkb_key_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_end (xcb_xkb_key_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_key_next + ** + ** @param xcb_xkb_overlay_key_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_key_next (xcb_xkb_overlay_key_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_overlay_key_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_key_end + ** + ** @param xcb_xkb_overlay_key_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_key_end (xcb_xkb_overlay_key_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_xkb_overlay_row_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_overlay_row_t *_aux = (xcb_xkb_overlay_row_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_overlay_row_t); + xcb_tmp += xcb_block_len; + /* keys */ + xcb_block_len += _aux->nKeys * sizeof(xcb_xkb_overlay_key_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_overlay_key_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_overlay_key_t * xcb_xkb_overlay_row_keys + ** + ** @param const xcb_xkb_overlay_row_t *R + ** @returns xcb_xkb_overlay_key_t * + ** + *****************************************************************************/ + +xcb_xkb_overlay_key_t * +xcb_xkb_overlay_row_keys (const xcb_xkb_overlay_row_t *R /**< */) +{ + return (xcb_xkb_overlay_key_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_overlay_row_keys_length + ** + ** @param const xcb_xkb_overlay_row_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_overlay_row_keys_length (const xcb_xkb_overlay_row_t *R /**< */) +{ + return R->nKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_overlay_key_iterator_t xcb_xkb_overlay_row_keys_iterator + ** + ** @param const xcb_xkb_overlay_row_t *R + ** @returns xcb_xkb_overlay_key_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_overlay_key_iterator_t +xcb_xkb_overlay_row_keys_iterator (const xcb_xkb_overlay_row_t *R /**< */) +{ + xcb_xkb_overlay_key_iterator_t i; + i.data = (xcb_xkb_overlay_key_t *) (R + 1); + i.rem = R->nKeys; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_row_next + ** + ** @param xcb_xkb_overlay_row_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_row_next (xcb_xkb_overlay_row_iterator_t *i /**< */) +{ + xcb_xkb_overlay_row_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_overlay_row_t *)(((char *)R) + xcb_xkb_overlay_row_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_overlay_row_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_row_end + ** + ** @param xcb_xkb_overlay_row_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_row_end (xcb_xkb_overlay_row_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_overlay_row_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_overlay_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_overlay_t *_aux = (xcb_xkb_overlay_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_xkb_overlay_t); + xcb_tmp += xcb_block_len; + /* rows */ + for(i=0; i<_aux->nRows; i++) { + xcb_tmp_len = xcb_xkb_overlay_row_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_overlay_row_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_overlay_rows_length + ** + ** @param const xcb_xkb_overlay_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_overlay_rows_length (const xcb_xkb_overlay_t *R /**< */) +{ + return R->nRows; +} + + +/***************************************************************************** + ** + ** xcb_xkb_overlay_row_iterator_t xcb_xkb_overlay_rows_iterator + ** + ** @param const xcb_xkb_overlay_t *R + ** @returns xcb_xkb_overlay_row_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_overlay_row_iterator_t +xcb_xkb_overlay_rows_iterator (const xcb_xkb_overlay_t *R /**< */) +{ + xcb_xkb_overlay_row_iterator_t i; + i.data = (xcb_xkb_overlay_row_t *) (R + 1); + i.rem = R->nRows; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_next + ** + ** @param xcb_xkb_overlay_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_next (xcb_xkb_overlay_iterator_t *i /**< */) +{ + xcb_xkb_overlay_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_overlay_t *)(((char *)R) + xcb_xkb_overlay_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_overlay_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_end + ** + ** @param xcb_xkb_overlay_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_end (xcb_xkb_overlay_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_overlay_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_row_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_row_t *_aux = (xcb_xkb_row_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_row_t); + xcb_tmp += xcb_block_len; + /* keys */ + xcb_block_len += _aux->nKeys * sizeof(xcb_xkb_key_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_t * xcb_xkb_row_keys + ** + ** @param const xcb_xkb_row_t *R + ** @returns xcb_xkb_key_t * + ** + *****************************************************************************/ + +xcb_xkb_key_t * +xcb_xkb_row_keys (const xcb_xkb_row_t *R /**< */) +{ + return (xcb_xkb_key_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_row_keys_length + ** + ** @param const xcb_xkb_row_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_row_keys_length (const xcb_xkb_row_t *R /**< */) +{ + return R->nKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_iterator_t xcb_xkb_row_keys_iterator + ** + ** @param const xcb_xkb_row_t *R + ** @returns xcb_xkb_key_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_iterator_t +xcb_xkb_row_keys_iterator (const xcb_xkb_row_t *R /**< */) +{ + xcb_xkb_key_iterator_t i; + i.data = (xcb_xkb_key_t *) (R + 1); + i.rem = R->nKeys; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_row_next + ** + ** @param xcb_xkb_row_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_row_next (xcb_xkb_row_iterator_t *i /**< */) +{ + xcb_xkb_row_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_row_t *)(((char *)R) + xcb_xkb_row_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_row_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_row_end + ** + ** @param xcb_xkb_row_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_row_end (xcb_xkb_row_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_row_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_common_doodad_next + ** + ** @param xcb_xkb_common_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_common_doodad_next (xcb_xkb_common_doodad_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_common_doodad_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_common_doodad_end + ** + ** @param xcb_xkb_common_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_common_doodad_end (xcb_xkb_common_doodad_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_shape_doodad_next + ** + ** @param xcb_xkb_shape_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_shape_doodad_next (xcb_xkb_shape_doodad_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_shape_doodad_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_shape_doodad_end + ** + ** @param xcb_xkb_shape_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_shape_doodad_end (xcb_xkb_shape_doodad_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_xkb_text_doodad_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_text_doodad_t); + xcb_tmp += xcb_block_len; + /* text */ + xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* font */ + xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_text_doodad_text + ** + ** @param const xcb_xkb_text_doodad_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_text_doodad_text (const xcb_xkb_text_doodad_t *R /**< */) +{ + return (xcb_xkb_counted_string_16_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_text_doodad_font + ** + ** @param const xcb_xkb_text_doodad_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_text_doodad_font (const xcb_xkb_text_doodad_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xkb_counted_string_16_string_end(xcb_xkb_text_doodad_text(R)); + return (xcb_xkb_counted_string_16_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_counted_string_16_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** void xcb_xkb_text_doodad_next + ** + ** @param xcb_xkb_text_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_text_doodad_next (xcb_xkb_text_doodad_iterator_t *i /**< */) +{ + xcb_xkb_text_doodad_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_text_doodad_t *)(((char *)R) + xcb_xkb_text_doodad_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_text_doodad_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_text_doodad_end + ** + ** @param xcb_xkb_text_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_text_doodad_end (xcb_xkb_text_doodad_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_text_doodad_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_indicator_doodad_next + ** + ** @param xcb_xkb_indicator_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_indicator_doodad_next (xcb_xkb_indicator_doodad_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_indicator_doodad_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_indicator_doodad_end + ** + ** @param xcb_xkb_indicator_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_indicator_doodad_end (xcb_xkb_indicator_doodad_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_xkb_logo_doodad_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_logo_doodad_t); + xcb_tmp += xcb_block_len; + /* logoName */ + xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_logo_doodad_logo_name + ** + ** @param const xcb_xkb_logo_doodad_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_logo_doodad_logo_name (const xcb_xkb_logo_doodad_t *R /**< */) +{ + return (xcb_xkb_counted_string_16_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** void xcb_xkb_logo_doodad_next + ** + ** @param xcb_xkb_logo_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_logo_doodad_next (xcb_xkb_logo_doodad_iterator_t *i /**< */) +{ + xcb_xkb_logo_doodad_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_logo_doodad_t *)(((char *)R) + xcb_xkb_logo_doodad_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_logo_doodad_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_logo_doodad_end + ** + ** @param xcb_xkb_logo_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_logo_doodad_end (xcb_xkb_logo_doodad_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_logo_doodad_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_doodad_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_doodad_t); + xcb_tmp += xcb_block_len; + /* text */ + xcb_block_len += xcb_xkb_text_doodad_sizeof(xcb_tmp); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_text_doodad_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* logo */ + xcb_block_len += xcb_xkb_logo_doodad_sizeof(xcb_tmp); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_logo_doodad_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_doodad_next + ** + ** @param xcb_xkb_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_doodad_next (xcb_xkb_doodad_iterator_t *i /**< */) +{ + xcb_xkb_doodad_t *R = i->data; + /* FIXME - determine the size of the union xcb_xkb_doodad_t */ +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_doodad_end + ** + ** @param xcb_xkb_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_doodad_end (xcb_xkb_doodad_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_doodad_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_section_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_section_t *_aux = (xcb_xkb_section_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_xkb_section_t); + xcb_tmp += xcb_block_len; + /* rows */ + for(i=0; i<_aux->nRows; i++) { + xcb_tmp_len = xcb_xkb_row_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_row_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* doodads */ + for(i=0; i<_aux->nDoodads; i++) { + xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_doodad_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* overlays */ + for(i=0; i<_aux->nOverlays; i++) { + xcb_tmp_len = xcb_xkb_overlay_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_overlay_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_section_rows_length + ** + ** @param const xcb_xkb_section_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_section_rows_length (const xcb_xkb_section_t *R /**< */) +{ + return R->nRows; +} + + +/***************************************************************************** + ** + ** xcb_xkb_row_iterator_t xcb_xkb_section_rows_iterator + ** + ** @param const xcb_xkb_section_t *R + ** @returns xcb_xkb_row_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_row_iterator_t +xcb_xkb_section_rows_iterator (const xcb_xkb_section_t *R /**< */) +{ + xcb_xkb_row_iterator_t i; + i.data = (xcb_xkb_row_t *) (R + 1); + i.rem = R->nRows; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_section_doodads_length + ** + ** @param const xcb_xkb_section_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_section_doodads_length (const xcb_xkb_section_t *R /**< */) +{ + return R->nDoodads; +} + + +/***************************************************************************** + ** + ** xcb_xkb_doodad_iterator_t xcb_xkb_section_doodads_iterator + ** + ** @param const xcb_xkb_section_t *R + ** @returns xcb_xkb_doodad_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_doodad_iterator_t +xcb_xkb_section_doodads_iterator (const xcb_xkb_section_t *R /**< */) +{ + xcb_xkb_doodad_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_row_end(xcb_xkb_section_rows_iterator(R)); + i.data = (xcb_xkb_doodad_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_doodad_t, prev.index)); + i.rem = R->nDoodads; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_section_overlays_length + ** + ** @param const xcb_xkb_section_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_section_overlays_length (const xcb_xkb_section_t *R /**< */) +{ + return R->nOverlays; +} + + +/***************************************************************************** + ** + ** xcb_xkb_overlay_iterator_t xcb_xkb_section_overlays_iterator + ** + ** @param const xcb_xkb_section_t *R + ** @returns xcb_xkb_overlay_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_overlay_iterator_t +xcb_xkb_section_overlays_iterator (const xcb_xkb_section_t *R /**< */) +{ + xcb_xkb_overlay_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_doodad_end(xcb_xkb_section_doodads_iterator(R)); + i.data = (xcb_xkb_overlay_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_overlay_t, prev.index)); + i.rem = R->nOverlays; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_section_next + ** + ** @param xcb_xkb_section_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_section_next (xcb_xkb_section_iterator_t *i /**< */) +{ + xcb_xkb_section_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_section_t *)(((char *)R) + xcb_xkb_section_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_section_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_section_end + ** + ** @param xcb_xkb_section_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_section_end (xcb_xkb_section_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_section_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_listing_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_listing_t *_aux = (xcb_xkb_listing_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_listing_t); + xcb_tmp += xcb_block_len; + /* string */ + xcb_block_len += _aux->length * sizeof(xcb_xkb_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_string8_t * xcb_xkb_listing_string + ** + ** @param const xcb_xkb_listing_t *R + ** @returns xcb_xkb_string8_t * + ** + *****************************************************************************/ + +xcb_xkb_string8_t * +xcb_xkb_listing_string (const xcb_xkb_listing_t *R /**< */) +{ + return (xcb_xkb_string8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_listing_string_length + ** + ** @param const xcb_xkb_listing_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_listing_string_length (const xcb_xkb_listing_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_listing_string_end + ** + ** @param const xcb_xkb_listing_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_listing_string_end (const xcb_xkb_listing_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_xkb_string8_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_listing_next + ** + ** @param xcb_xkb_listing_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_listing_next (xcb_xkb_listing_iterator_t *i /**< */) +{ + xcb_xkb_listing_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_listing_t *)(((char *)R) + xcb_xkb_listing_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_listing_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_listing_end + ** + ** @param xcb_xkb_listing_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_listing_end (xcb_xkb_listing_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_listing_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xkb_device_led_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_device_led_info_t *_aux = (xcb_xkb_device_led_info_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_device_led_info_t); + xcb_tmp += xcb_block_len; + /* names */ + xcb_block_len += xcb_popcount(_aux->namesPresent) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* maps */ + xcb_block_len += xcb_popcount(_aux->mapsPresent) * sizeof(xcb_xkb_indicator_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_device_led_info_names + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_device_led_info_names (const xcb_xkb_device_led_info_t *R /**< */) +{ + return (xcb_atom_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_device_led_info_names_length + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_device_led_info_names_length (const xcb_xkb_device_led_info_t *R /**< */) +{ + return xcb_popcount(R->namesPresent); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_device_led_info_names_end + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_device_led_info_names_end (const xcb_xkb_device_led_info_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_atom_t *) (R + 1)) + (xcb_popcount(R->namesPresent)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_t * xcb_xkb_device_led_info_maps + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns xcb_xkb_indicator_map_t * + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_t * +xcb_xkb_device_led_info_maps (const xcb_xkb_device_led_info_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xkb_device_led_info_names_end(R); + return (xcb_xkb_indicator_map_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_indicator_map_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_device_led_info_maps_length + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_device_led_info_maps_length (const xcb_xkb_device_led_info_t *R /**< */) +{ + return xcb_popcount(R->mapsPresent); +} + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_iterator_t xcb_xkb_device_led_info_maps_iterator + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns xcb_xkb_indicator_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_iterator_t +xcb_xkb_device_led_info_maps_iterator (const xcb_xkb_device_led_info_t *R /**< */) +{ + xcb_xkb_indicator_map_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_device_led_info_names_end(R); + i.data = (xcb_xkb_indicator_map_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_indicator_map_t, prev.index)); + i.rem = xcb_popcount(R->mapsPresent); + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_device_led_info_next + ** + ** @param xcb_xkb_device_led_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_device_led_info_next (xcb_xkb_device_led_info_iterator_t *i /**< */) +{ + xcb_xkb_device_led_info_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xkb_device_led_info_t *)(((char *)R) + xcb_xkb_device_led_info_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xkb_device_led_info_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_device_led_info_end + ** + ** @param xcb_xkb_device_led_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_device_led_info_end (xcb_xkb_device_led_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xkb_device_led_info_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_no_action_next + ** + ** @param xcb_xkb_sa_no_action_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_no_action_next (xcb_xkb_sa_no_action_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_no_action_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_no_action_end + ** + ** @param xcb_xkb_sa_no_action_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_no_action_end (xcb_xkb_sa_no_action_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_set_mods_next + ** + ** @param xcb_xkb_sa_set_mods_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_set_mods_next (xcb_xkb_sa_set_mods_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_set_mods_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_set_mods_end + ** + ** @param xcb_xkb_sa_set_mods_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_set_mods_end (xcb_xkb_sa_set_mods_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_latch_mods_next + ** + ** @param xcb_xkb_sa_latch_mods_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_latch_mods_next (xcb_xkb_sa_latch_mods_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_latch_mods_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_latch_mods_end + ** + ** @param xcb_xkb_sa_latch_mods_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_latch_mods_end (xcb_xkb_sa_latch_mods_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_mods_next + ** + ** @param xcb_xkb_sa_lock_mods_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_mods_next (xcb_xkb_sa_lock_mods_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_lock_mods_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_mods_end + ** + ** @param xcb_xkb_sa_lock_mods_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_mods_end (xcb_xkb_sa_lock_mods_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_set_group_next + ** + ** @param xcb_xkb_sa_set_group_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_set_group_next (xcb_xkb_sa_set_group_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_set_group_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_set_group_end + ** + ** @param xcb_xkb_sa_set_group_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_set_group_end (xcb_xkb_sa_set_group_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_latch_group_next + ** + ** @param xcb_xkb_sa_latch_group_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_latch_group_next (xcb_xkb_sa_latch_group_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_latch_group_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_latch_group_end + ** + ** @param xcb_xkb_sa_latch_group_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_latch_group_end (xcb_xkb_sa_latch_group_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_group_next + ** + ** @param xcb_xkb_sa_lock_group_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_group_next (xcb_xkb_sa_lock_group_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_lock_group_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_group_end + ** + ** @param xcb_xkb_sa_lock_group_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_group_end (xcb_xkb_sa_lock_group_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_move_ptr_next + ** + ** @param xcb_xkb_sa_move_ptr_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_move_ptr_next (xcb_xkb_sa_move_ptr_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_move_ptr_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_move_ptr_end + ** + ** @param xcb_xkb_sa_move_ptr_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_move_ptr_end (xcb_xkb_sa_move_ptr_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_ptr_btn_next + ** + ** @param xcb_xkb_sa_ptr_btn_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_ptr_btn_next (xcb_xkb_sa_ptr_btn_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_ptr_btn_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_ptr_btn_end + ** + ** @param xcb_xkb_sa_ptr_btn_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_ptr_btn_end (xcb_xkb_sa_ptr_btn_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_ptr_btn_next + ** + ** @param xcb_xkb_sa_lock_ptr_btn_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_ptr_btn_next (xcb_xkb_sa_lock_ptr_btn_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_lock_ptr_btn_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_ptr_btn_end + ** + ** @param xcb_xkb_sa_lock_ptr_btn_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_ptr_btn_end (xcb_xkb_sa_lock_ptr_btn_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_set_ptr_dflt_next + ** + ** @param xcb_xkb_sa_set_ptr_dflt_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_set_ptr_dflt_next (xcb_xkb_sa_set_ptr_dflt_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_set_ptr_dflt_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_set_ptr_dflt_end + ** + ** @param xcb_xkb_sa_set_ptr_dflt_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_set_ptr_dflt_end (xcb_xkb_sa_set_ptr_dflt_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_iso_lock_next + ** + ** @param xcb_xkb_sa_iso_lock_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_iso_lock_next (xcb_xkb_sa_iso_lock_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_iso_lock_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_iso_lock_end + ** + ** @param xcb_xkb_sa_iso_lock_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_iso_lock_end (xcb_xkb_sa_iso_lock_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_terminate_next + ** + ** @param xcb_xkb_sa_terminate_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_terminate_next (xcb_xkb_sa_terminate_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_terminate_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_terminate_end + ** + ** @param xcb_xkb_sa_terminate_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_terminate_end (xcb_xkb_sa_terminate_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_switch_screen_next + ** + ** @param xcb_xkb_sa_switch_screen_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_switch_screen_next (xcb_xkb_sa_switch_screen_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_switch_screen_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_switch_screen_end + ** + ** @param xcb_xkb_sa_switch_screen_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_switch_screen_end (xcb_xkb_sa_switch_screen_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_set_controls_next + ** + ** @param xcb_xkb_sa_set_controls_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_set_controls_next (xcb_xkb_sa_set_controls_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_set_controls_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_set_controls_end + ** + ** @param xcb_xkb_sa_set_controls_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_set_controls_end (xcb_xkb_sa_set_controls_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_controls_next + ** + ** @param xcb_xkb_sa_lock_controls_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_controls_next (xcb_xkb_sa_lock_controls_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_lock_controls_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_controls_end + ** + ** @param xcb_xkb_sa_lock_controls_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_controls_end (xcb_xkb_sa_lock_controls_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_action_message_next + ** + ** @param xcb_xkb_sa_action_message_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_action_message_next (xcb_xkb_sa_action_message_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_action_message_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_action_message_end + ** + ** @param xcb_xkb_sa_action_message_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_action_message_end (xcb_xkb_sa_action_message_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_redirect_key_next + ** + ** @param xcb_xkb_sa_redirect_key_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_redirect_key_next (xcb_xkb_sa_redirect_key_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_redirect_key_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_redirect_key_end + ** + ** @param xcb_xkb_sa_redirect_key_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_redirect_key_end (xcb_xkb_sa_redirect_key_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_device_btn_next + ** + ** @param xcb_xkb_sa_device_btn_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_device_btn_next (xcb_xkb_sa_device_btn_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_device_btn_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_device_btn_end + ** + ** @param xcb_xkb_sa_device_btn_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_device_btn_end (xcb_xkb_sa_device_btn_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_device_btn_next + ** + ** @param xcb_xkb_sa_lock_device_btn_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_device_btn_next (xcb_xkb_sa_lock_device_btn_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_lock_device_btn_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_device_btn_end + ** + ** @param xcb_xkb_sa_lock_device_btn_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_device_btn_end (xcb_xkb_sa_lock_device_btn_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_sa_device_valuator_next + ** + ** @param xcb_xkb_sa_device_valuator_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_device_valuator_next (xcb_xkb_sa_device_valuator_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_sa_device_valuator_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_device_valuator_end + ** + ** @param xcb_xkb_sa_device_valuator_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_device_valuator_end (xcb_xkb_sa_device_valuator_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xkb_action_next + ** + ** @param xcb_xkb_action_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_action_next (xcb_xkb_action_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xkb_action_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_action_end + ** + ** @param xcb_xkb_action_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_action_end (xcb_xkb_action_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_use_extension_cookie_t xcb_xkb_use_extension + ** + ** @param xcb_connection_t *c + ** @param uint16_t wantedMajor + ** @param uint16_t wantedMinor + ** @returns xcb_xkb_use_extension_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_use_extension_cookie_t +xcb_xkb_use_extension (xcb_connection_t *c /**< */, + uint16_t wantedMajor /**< */, + uint16_t wantedMinor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_USE_EXTENSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_use_extension_cookie_t xcb_ret; + xcb_xkb_use_extension_request_t xcb_out; + + xcb_out.wantedMajor = wantedMajor; + xcb_out.wantedMinor = wantedMinor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_use_extension_cookie_t xcb_xkb_use_extension_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t wantedMajor + ** @param uint16_t wantedMinor + ** @returns xcb_xkb_use_extension_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_use_extension_cookie_t +xcb_xkb_use_extension_unchecked (xcb_connection_t *c /**< */, + uint16_t wantedMajor /**< */, + uint16_t wantedMinor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_USE_EXTENSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_use_extension_cookie_t xcb_ret; + xcb_xkb_use_extension_request_t xcb_out; + + xcb_out.wantedMajor = wantedMajor; + xcb_out.wantedMinor = wantedMinor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_use_extension_reply_t * xcb_xkb_use_extension_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_use_extension_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_use_extension_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_use_extension_reply_t * +xcb_xkb_use_extension_reply (xcb_connection_t *c /**< */, + xcb_xkb_use_extension_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_use_extension_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xkb_select_events_details_serialize (void **_buffer /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + const xcb_xkb_select_events_details_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[23]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_NEW_KEYBOARD_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectNewKeyboard */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectNewKeyboard; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.newKeyboardDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->newKeyboardDetails; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_STATE_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectState */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectState; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.stateDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->stateDetails; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_CONTROLS_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectCtrls */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectCtrls; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_select_events_details_t.ctrlDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->ctrlDetails; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_INDICATOR_STATE_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectIndicatorState */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectIndicatorState; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_select_events_details_t.indicatorStateDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicatorStateDetails; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_INDICATOR_MAP_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectIndicatorMap */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectIndicatorMap; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_select_events_details_t.indicatorMapDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicatorMapDetails; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_NAMES_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectNames; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.namesDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->namesDetails; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_COMPAT_MAP_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectCompat */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectCompat; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_select_events_details_t.compatDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatDetails; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_BELL_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectBell */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectBell; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_select_events_details_t.bellDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->bellDetails; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_ACTION_MESSAGE) { + /* xcb_xkb_select_events_details_t.affectMsgDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectMsgDetails; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_select_events_details_t.msgDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->msgDetails; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_ACCESS_X_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectAccessX */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectAccessX; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.accessXDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->accessXDetails; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_EXTENSION_DEVICE_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectExtDev */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectExtDev; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.extdevDetails */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->extdevDetails; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; iaffectNewKeyboard = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.newKeyboardDetails */ + _aux->newKeyboardDetails = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_STATE_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectState */ + _aux->affectState = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.stateDetails */ + _aux->stateDetails = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_CONTROLS_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectCtrls */ + _aux->affectCtrls = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_select_events_details_t.ctrlDetails */ + _aux->ctrlDetails = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_INDICATOR_STATE_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectIndicatorState */ + _aux->affectIndicatorState = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_select_events_details_t.indicatorStateDetails */ + _aux->indicatorStateDetails = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_INDICATOR_MAP_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectIndicatorMap */ + _aux->affectIndicatorMap = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_select_events_details_t.indicatorMapDetails */ + _aux->indicatorMapDetails = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_NAMES_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectNames */ + _aux->affectNames = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.namesDetails */ + _aux->namesDetails = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_COMPAT_MAP_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectCompat */ + _aux->affectCompat = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_select_events_details_t.compatDetails */ + _aux->compatDetails = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_BELL_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectBell */ + _aux->affectBell = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_select_events_details_t.bellDetails */ + _aux->bellDetails = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_ACTION_MESSAGE) { + /* xcb_xkb_select_events_details_t.affectMsgDetails */ + _aux->affectMsgDetails = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_select_events_details_t.msgDetails */ + _aux->msgDetails = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_ACCESS_X_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectAccessX */ + _aux->affectAccessX = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.accessXDetails */ + _aux->accessXDetails = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + } + if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_EXTENSION_DEVICE_NOTIFY) { + /* xcb_xkb_select_events_details_t.affectExtDev */ + _aux->affectExtDev = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_select_events_details_t.extdevDetails */ + _aux->extdevDetails = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_select_events_details_sizeof (const void *_buffer /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */) +{ + xcb_xkb_select_events_details_t _aux; + return xcb_xkb_select_events_details_unpack(_buffer, affectWhich, clear, selectAll, &_aux); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_select_events_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t affectWhich + ** @param uint16_t clear + ** @param uint16_t selectAll + ** @param uint16_t affectMap + ** @param uint16_t map + ** @param const void *details + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_select_events_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + uint16_t affectMap /**< */, + uint16_t map /**< */, + const void *details /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SELECT_EVENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_select_events_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.affectWhich = affectWhich; + xcb_out.clear = clear; + xcb_out.selectAll = selectAll; + xcb_out.affectMap = affectMap; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_select_events_details_t details */ + xcb_parts[4].iov_base = (char *) details; + xcb_parts[4].iov_len = + xcb_xkb_select_events_details_sizeof (details, affectWhich, clear, selectAll); + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_select_events + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t affectWhich + ** @param uint16_t clear + ** @param uint16_t selectAll + ** @param uint16_t affectMap + ** @param uint16_t map + ** @param const void *details + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_select_events (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + uint16_t affectMap /**< */, + uint16_t map /**< */, + const void *details /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SELECT_EVENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_select_events_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.affectWhich = affectWhich; + xcb_out.clear = clear; + xcb_out.selectAll = selectAll; + xcb_out.affectMap = affectMap; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_select_events_details_t details */ + xcb_parts[4].iov_base = (char *) details; + xcb_parts[4].iov_len = + xcb_xkb_select_events_details_sizeof (details, affectWhich, clear, selectAll); + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_select_events_aux_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t affectWhich + ** @param uint16_t clear + ** @param uint16_t selectAll + ** @param uint16_t affectMap + ** @param uint16_t map + ** @param const xcb_xkb_select_events_details_t *details + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_select_events_aux_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + uint16_t affectMap /**< */, + uint16_t map /**< */, + const xcb_xkb_select_events_details_t *details /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SELECT_EVENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_select_events_request_t xcb_out; + void *xcb_aux0 = 0; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.affectWhich = affectWhich; + xcb_out.clear = clear; + xcb_out.selectAll = selectAll; + xcb_out.affectMap = affectMap; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_select_events_details_t details */ + xcb_parts[4].iov_len = + xcb_xkb_select_events_details_serialize (&xcb_aux0, affectWhich, clear, selectAll, details); + xcb_parts[4].iov_base = xcb_aux0; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + free(xcb_aux0); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_select_events_aux + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t affectWhich + ** @param uint16_t clear + ** @param uint16_t selectAll + ** @param uint16_t affectMap + ** @param uint16_t map + ** @param const xcb_xkb_select_events_details_t *details + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_select_events_aux (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + uint16_t affectMap /**< */, + uint16_t map /**< */, + const xcb_xkb_select_events_details_t *details /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SELECT_EVENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_select_events_request_t xcb_out; + void *xcb_aux0 = 0; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.affectWhich = affectWhich; + xcb_out.clear = clear; + xcb_out.selectAll = selectAll; + xcb_out.affectMap = affectMap; + xcb_out.map = map; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_select_events_details_t details */ + xcb_parts[4].iov_len = + xcb_xkb_select_events_details_serialize (&xcb_aux0, affectWhich, clear, selectAll, details); + xcb_parts[4].iov_base = xcb_aux0; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + free(xcb_aux0); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_bell_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_bell_class_spec_t bellClass + ** @param xcb_xkb_id_spec_t bellID + ** @param int8_t percent + ** @param uint8_t forceSound + ** @param uint8_t eventOnly + ** @param int16_t pitch + ** @param int16_t duration + ** @param xcb_atom_t name + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_bell_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_bell_class_spec_t bellClass /**< */, + xcb_xkb_id_spec_t bellID /**< */, + int8_t percent /**< */, + uint8_t forceSound /**< */, + uint8_t eventOnly /**< */, + int16_t pitch /**< */, + int16_t duration /**< */, + xcb_atom_t name /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_BELL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_bell_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.bellClass = bellClass; + xcb_out.bellID = bellID; + xcb_out.percent = percent; + xcb_out.forceSound = forceSound; + xcb_out.eventOnly = eventOnly; + xcb_out.pad0 = 0; + xcb_out.pitch = pitch; + xcb_out.duration = duration; + memset(xcb_out.pad1, 0, 2); + xcb_out.name = name; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_bell + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_bell_class_spec_t bellClass + ** @param xcb_xkb_id_spec_t bellID + ** @param int8_t percent + ** @param uint8_t forceSound + ** @param uint8_t eventOnly + ** @param int16_t pitch + ** @param int16_t duration + ** @param xcb_atom_t name + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_bell (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_bell_class_spec_t bellClass /**< */, + xcb_xkb_id_spec_t bellID /**< */, + int8_t percent /**< */, + uint8_t forceSound /**< */, + uint8_t eventOnly /**< */, + int16_t pitch /**< */, + int16_t duration /**< */, + xcb_atom_t name /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_BELL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_bell_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.bellClass = bellClass; + xcb_out.bellID = bellID; + xcb_out.percent = percent; + xcb_out.forceSound = forceSound; + xcb_out.eventOnly = eventOnly; + xcb_out.pad0 = 0; + xcb_out.pitch = pitch; + xcb_out.duration = duration; + memset(xcb_out.pad1, 0, 2); + xcb_out.name = name; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_state_cookie_t xcb_xkb_get_state + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_state_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_state_cookie_t +xcb_xkb_get_state (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_STATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_state_cookie_t xcb_ret; + xcb_xkb_get_state_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_state_cookie_t xcb_xkb_get_state_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_state_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_state_cookie_t +xcb_xkb_get_state_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_STATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_state_cookie_t xcb_ret; + xcb_xkb_get_state_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_state_reply_t * xcb_xkb_get_state_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_state_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_state_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_state_reply_t * +xcb_xkb_get_state_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_state_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_state_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_latch_lock_state_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t affectModLocks + ** @param uint8_t modLocks + ** @param uint8_t lockGroup + ** @param uint8_t groupLock + ** @param uint8_t affectModLatches + ** @param uint8_t latchGroup + ** @param uint16_t groupLatch + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_latch_lock_state_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t affectModLocks /**< */, + uint8_t modLocks /**< */, + uint8_t lockGroup /**< */, + uint8_t groupLock /**< */, + uint8_t affectModLatches /**< */, + uint8_t latchGroup /**< */, + uint16_t groupLatch /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_LATCH_LOCK_STATE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_latch_lock_state_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.affectModLocks = affectModLocks; + xcb_out.modLocks = modLocks; + xcb_out.lockGroup = lockGroup; + xcb_out.groupLock = groupLock; + xcb_out.affectModLatches = affectModLatches; + xcb_out.pad0 = 0; + xcb_out.latchGroup = latchGroup; + xcb_out.groupLatch = groupLatch; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_latch_lock_state + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t affectModLocks + ** @param uint8_t modLocks + ** @param uint8_t lockGroup + ** @param uint8_t groupLock + ** @param uint8_t affectModLatches + ** @param uint8_t latchGroup + ** @param uint16_t groupLatch + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_latch_lock_state (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t affectModLocks /**< */, + uint8_t modLocks /**< */, + uint8_t lockGroup /**< */, + uint8_t groupLock /**< */, + uint8_t affectModLatches /**< */, + uint8_t latchGroup /**< */, + uint16_t groupLatch /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_LATCH_LOCK_STATE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_latch_lock_state_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.affectModLocks = affectModLocks; + xcb_out.modLocks = modLocks; + xcb_out.lockGroup = lockGroup; + xcb_out.groupLock = groupLock; + xcb_out.affectModLatches = affectModLatches; + xcb_out.pad0 = 0; + xcb_out.latchGroup = latchGroup; + xcb_out.groupLatch = groupLatch; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_controls_cookie_t xcb_xkb_get_controls + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_controls_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_controls_cookie_t +xcb_xkb_get_controls (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_CONTROLS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_controls_cookie_t xcb_ret; + xcb_xkb_get_controls_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_controls_cookie_t xcb_xkb_get_controls_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_controls_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_controls_cookie_t +xcb_xkb_get_controls_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_CONTROLS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_controls_cookie_t xcb_ret; + xcb_xkb_get_controls_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_controls_reply_t * xcb_xkb_get_controls_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_controls_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_controls_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_controls_reply_t * +xcb_xkb_get_controls_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_controls_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_controls_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_controls_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t affectInternalRealMods + ** @param uint8_t internalRealMods + ** @param uint8_t affectIgnoreLockRealMods + ** @param uint8_t ignoreLockRealMods + ** @param uint16_t affectInternalVirtualMods + ** @param uint16_t internalVirtualMods + ** @param uint16_t affectIgnoreLockVirtualMods + ** @param uint16_t ignoreLockVirtualMods + ** @param uint8_t mouseKeysDfltBtn + ** @param uint8_t groupsWrap + ** @param xcb_xkb_ax_option_t accessXOptions + ** @param uint32_t affectEnabledControls + ** @param uint32_t enabledControls + ** @param uint32_t changeControls + ** @param uint16_t repeatDelay + ** @param uint16_t repeatInterval + ** @param uint16_t slowKeysDelay + ** @param uint16_t debounceDelay + ** @param uint16_t mouseKeysDelay + ** @param uint16_t mouseKeysInterval + ** @param uint16_t mouseKeysTimeToMax + ** @param uint16_t mouseKeysMaxSpeed + ** @param int16_t mouseKeysCurve + ** @param uint16_t accessXTimeout + ** @param uint32_t accessXTimeoutMask + ** @param uint32_t accessXTimeoutValues + ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsMask + ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsValues + ** @param const uint8_t *perKeyRepeat + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_controls_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t affectInternalRealMods /**< */, + uint8_t internalRealMods /**< */, + uint8_t affectIgnoreLockRealMods /**< */, + uint8_t ignoreLockRealMods /**< */, + uint16_t affectInternalVirtualMods /**< */, + uint16_t internalVirtualMods /**< */, + uint16_t affectIgnoreLockVirtualMods /**< */, + uint16_t ignoreLockVirtualMods /**< */, + uint8_t mouseKeysDfltBtn /**< */, + uint8_t groupsWrap /**< */, + xcb_xkb_ax_option_t accessXOptions /**< */, + uint32_t affectEnabledControls /**< */, + uint32_t enabledControls /**< */, + uint32_t changeControls /**< */, + uint16_t repeatDelay /**< */, + uint16_t repeatInterval /**< */, + uint16_t slowKeysDelay /**< */, + uint16_t debounceDelay /**< */, + uint16_t mouseKeysDelay /**< */, + uint16_t mouseKeysInterval /**< */, + uint16_t mouseKeysTimeToMax /**< */, + uint16_t mouseKeysMaxSpeed /**< */, + int16_t mouseKeysCurve /**< */, + uint16_t accessXTimeout /**< */, + uint32_t accessXTimeoutMask /**< */, + uint32_t accessXTimeoutValues /**< */, + xcb_xkb_ax_option_t accessXTimeoutOptionsMask /**< */, + xcb_xkb_ax_option_t accessXTimeoutOptionsValues /**< */, + const uint8_t *perKeyRepeat /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_CONTROLS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_controls_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.affectInternalRealMods = affectInternalRealMods; + xcb_out.internalRealMods = internalRealMods; + xcb_out.affectIgnoreLockRealMods = affectIgnoreLockRealMods; + xcb_out.ignoreLockRealMods = ignoreLockRealMods; + xcb_out.affectInternalVirtualMods = affectInternalVirtualMods; + xcb_out.internalVirtualMods = internalVirtualMods; + xcb_out.affectIgnoreLockVirtualMods = affectIgnoreLockVirtualMods; + xcb_out.ignoreLockVirtualMods = ignoreLockVirtualMods; + xcb_out.mouseKeysDfltBtn = mouseKeysDfltBtn; + xcb_out.groupsWrap = groupsWrap; + xcb_out.accessXOptions = accessXOptions; + memset(xcb_out.pad0, 0, 2); + xcb_out.affectEnabledControls = affectEnabledControls; + xcb_out.enabledControls = enabledControls; + xcb_out.changeControls = changeControls; + xcb_out.repeatDelay = repeatDelay; + xcb_out.repeatInterval = repeatInterval; + xcb_out.slowKeysDelay = slowKeysDelay; + xcb_out.debounceDelay = debounceDelay; + xcb_out.mouseKeysDelay = mouseKeysDelay; + xcb_out.mouseKeysInterval = mouseKeysInterval; + xcb_out.mouseKeysTimeToMax = mouseKeysTimeToMax; + xcb_out.mouseKeysMaxSpeed = mouseKeysMaxSpeed; + xcb_out.mouseKeysCurve = mouseKeysCurve; + xcb_out.accessXTimeout = accessXTimeout; + xcb_out.accessXTimeoutMask = accessXTimeoutMask; + xcb_out.accessXTimeoutValues = accessXTimeoutValues; + xcb_out.accessXTimeoutOptionsMask = accessXTimeoutOptionsMask; + xcb_out.accessXTimeoutOptionsValues = accessXTimeoutOptionsValues; + memcpy(xcb_out.perKeyRepeat, perKeyRepeat, 32); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_controls + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t affectInternalRealMods + ** @param uint8_t internalRealMods + ** @param uint8_t affectIgnoreLockRealMods + ** @param uint8_t ignoreLockRealMods + ** @param uint16_t affectInternalVirtualMods + ** @param uint16_t internalVirtualMods + ** @param uint16_t affectIgnoreLockVirtualMods + ** @param uint16_t ignoreLockVirtualMods + ** @param uint8_t mouseKeysDfltBtn + ** @param uint8_t groupsWrap + ** @param xcb_xkb_ax_option_t accessXOptions + ** @param uint32_t affectEnabledControls + ** @param uint32_t enabledControls + ** @param uint32_t changeControls + ** @param uint16_t repeatDelay + ** @param uint16_t repeatInterval + ** @param uint16_t slowKeysDelay + ** @param uint16_t debounceDelay + ** @param uint16_t mouseKeysDelay + ** @param uint16_t mouseKeysInterval + ** @param uint16_t mouseKeysTimeToMax + ** @param uint16_t mouseKeysMaxSpeed + ** @param int16_t mouseKeysCurve + ** @param uint16_t accessXTimeout + ** @param uint32_t accessXTimeoutMask + ** @param uint32_t accessXTimeoutValues + ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsMask + ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsValues + ** @param const uint8_t *perKeyRepeat + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_controls (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t affectInternalRealMods /**< */, + uint8_t internalRealMods /**< */, + uint8_t affectIgnoreLockRealMods /**< */, + uint8_t ignoreLockRealMods /**< */, + uint16_t affectInternalVirtualMods /**< */, + uint16_t internalVirtualMods /**< */, + uint16_t affectIgnoreLockVirtualMods /**< */, + uint16_t ignoreLockVirtualMods /**< */, + uint8_t mouseKeysDfltBtn /**< */, + uint8_t groupsWrap /**< */, + xcb_xkb_ax_option_t accessXOptions /**< */, + uint32_t affectEnabledControls /**< */, + uint32_t enabledControls /**< */, + uint32_t changeControls /**< */, + uint16_t repeatDelay /**< */, + uint16_t repeatInterval /**< */, + uint16_t slowKeysDelay /**< */, + uint16_t debounceDelay /**< */, + uint16_t mouseKeysDelay /**< */, + uint16_t mouseKeysInterval /**< */, + uint16_t mouseKeysTimeToMax /**< */, + uint16_t mouseKeysMaxSpeed /**< */, + int16_t mouseKeysCurve /**< */, + uint16_t accessXTimeout /**< */, + uint32_t accessXTimeoutMask /**< */, + uint32_t accessXTimeoutValues /**< */, + xcb_xkb_ax_option_t accessXTimeoutOptionsMask /**< */, + xcb_xkb_ax_option_t accessXTimeoutOptionsValues /**< */, + const uint8_t *perKeyRepeat /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_CONTROLS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_controls_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.affectInternalRealMods = affectInternalRealMods; + xcb_out.internalRealMods = internalRealMods; + xcb_out.affectIgnoreLockRealMods = affectIgnoreLockRealMods; + xcb_out.ignoreLockRealMods = ignoreLockRealMods; + xcb_out.affectInternalVirtualMods = affectInternalVirtualMods; + xcb_out.internalVirtualMods = internalVirtualMods; + xcb_out.affectIgnoreLockVirtualMods = affectIgnoreLockVirtualMods; + xcb_out.ignoreLockVirtualMods = ignoreLockVirtualMods; + xcb_out.mouseKeysDfltBtn = mouseKeysDfltBtn; + xcb_out.groupsWrap = groupsWrap; + xcb_out.accessXOptions = accessXOptions; + memset(xcb_out.pad0, 0, 2); + xcb_out.affectEnabledControls = affectEnabledControls; + xcb_out.enabledControls = enabledControls; + xcb_out.changeControls = changeControls; + xcb_out.repeatDelay = repeatDelay; + xcb_out.repeatInterval = repeatInterval; + xcb_out.slowKeysDelay = slowKeysDelay; + xcb_out.debounceDelay = debounceDelay; + xcb_out.mouseKeysDelay = mouseKeysDelay; + xcb_out.mouseKeysInterval = mouseKeysInterval; + xcb_out.mouseKeysTimeToMax = mouseKeysTimeToMax; + xcb_out.mouseKeysMaxSpeed = mouseKeysMaxSpeed; + xcb_out.mouseKeysCurve = mouseKeysCurve; + xcb_out.accessXTimeout = accessXTimeout; + xcb_out.accessXTimeoutMask = accessXTimeoutMask; + xcb_out.accessXTimeoutValues = accessXTimeoutValues; + xcb_out.accessXTimeoutOptionsMask = accessXTimeoutOptionsMask; + xcb_out.accessXTimeoutOptionsValues = accessXTimeoutOptionsValues; + memcpy(xcb_out.perKeyRepeat, perKeyRepeat, 32); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_types_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_types_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + return R->nTypes; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_type_iterator_t xcb_xkb_get_map_map_types_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_type_iterator_t +xcb_xkb_get_map_map_types_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + xcb_xkb_key_type_iterator_t i; + i.data = /* map */ S->types_rtrn; + i.rem = R->nTypes; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_syms_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_syms_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + return R->nKeySyms; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_map_map_syms_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_get_map_map_syms_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + xcb_xkb_key_sym_map_iterator_t i; + i.data = /* map */ S->syms_rtrn; + i.rem = R->nKeySyms; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_map_map_acts_rtrn_count + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_map_map_acts_rtrn_count (const xcb_xkb_get_map_map_t *S /**< */) +{ + return /* map */ S->acts_rtrn_count; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_acts_rtrn_count_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_acts_rtrn_count_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + return R->nKeyActions; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_map_map_acts_rtrn_count_end + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_map_map_acts_rtrn_count_end (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* map */ S->acts_rtrn_count + R->nKeyActions; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_map_map_acts_rtrn_acts + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_map_map_acts_rtrn_acts (const xcb_xkb_get_map_map_t *S /**< */) +{ + return /* map */ S->acts_rtrn_acts; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_acts_rtrn_acts_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_acts_rtrn_acts_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + return R->totalActions; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_map_map_acts_rtrn_acts_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_map_map_acts_rtrn_acts_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + xcb_xkb_action_iterator_t i; + i.data = /* map */ S->acts_rtrn_acts; + i.rem = R->totalActions; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_get_map_map_behaviors_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_get_map_map_behaviors_rtrn (const xcb_xkb_get_map_map_t *S /**< */) +{ + return /* map */ S->behaviors_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_behaviors_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_behaviors_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + return R->totalKeyBehaviors; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_map_map_behaviors_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_get_map_map_behaviors_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + xcb_xkb_set_behavior_iterator_t i; + i.data = /* map */ S->behaviors_rtrn; + i.rem = R->totalKeyBehaviors; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_map_map_vmods_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_map_map_vmods_rtrn (const xcb_xkb_get_map_map_t *S /**< */) +{ + return /* map */ S->vmods_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_vmods_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_vmods_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + return R->nVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_map_map_vmods_rtrn_end + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_map_map_vmods_rtrn_end (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* map */ S->vmods_rtrn + R->nVModMapKeys; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_get_map_map_explicit_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_get_map_map_explicit_rtrn (const xcb_xkb_get_map_map_t *S /**< */) +{ + return /* map */ S->explicit_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_explicit_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_explicit_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + return R->totalKeyExplicit; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_map_map_explicit_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_get_map_map_explicit_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + xcb_xkb_set_explicit_iterator_t i; + i.data = /* map */ S->explicit_rtrn; + i.rem = R->totalKeyExplicit; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_get_map_map_modmap_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_get_map_map_modmap_rtrn (const xcb_xkb_get_map_map_t *S /**< */) +{ + return /* map */ S->modmap_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_modmap_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_modmap_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + return R->totalModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_map_map_modmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_get_map_map_modmap_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + xcb_xkb_key_mod_map_iterator_t i; + i.data = /* map */ S->modmap_rtrn; + i.rem = R->totalModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_map_map_vmodmap_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_get_map_map_vmodmap_rtrn (const xcb_xkb_get_map_map_t *S /**< */) +{ + return /* map */ S->vmodmap_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_vmodmap_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_vmodmap_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + return R->totalVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_map_map_vmodmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_get_map_map_vmodmap_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */) +{ + xcb_xkb_key_v_mod_map_iterator_t i; + i.data = /* map */ S->vmodmap_rtrn; + i.rem = R->totalVModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_get_map_map_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_get_map_map_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[19]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(present & XCB_XKB_MAP_PART_KEY_TYPES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* types_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types_rtrn; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->types_rtrn; + for(i=0; isyms_rtrn; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->syms_rtrn; + for(i=0; iacts_rtrn_count; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* acts_rtrn_acts */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_acts; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors_rtrn; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods_rtrn; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit_rtrn; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap_rtrn; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap_rtrn; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; itypes_rtrn = (xcb_xkb_key_type_t *)xcb_tmp; + for(i=0; isyms_rtrn = (xcb_xkb_key_sym_map_t *)xcb_tmp; + for(i=0; iacts_rtrn_count = (uint8_t *)xcb_tmp; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* acts_rtrn_acts */ + _aux->acts_rtrn_acts = (xcb_xkb_action_t *)xcb_tmp; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors_rtrn */ + _aux->behaviors_rtrn = (xcb_xkb_set_behavior_t *)xcb_tmp; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods_rtrn */ + _aux->vmods_rtrn = (uint8_t *)xcb_tmp; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit_rtrn */ + _aux->explicit_rtrn = (xcb_xkb_set_explicit_t *)xcb_tmp; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap_rtrn */ + _aux->modmap_rtrn = (xcb_xkb_key_mod_map_t *)xcb_tmp; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap_rtrn */ + _aux->vmodmap_rtrn = (xcb_xkb_key_v_mod_map_t *)xcb_tmp; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_get_map_map_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */) +{ + xcb_xkb_get_map_map_t _aux; + return xcb_xkb_get_map_map_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux); +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_map_cookie_t xcb_xkb_get_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t full + ** @param uint16_t partial + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint16_t virtualMods + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @returns xcb_xkb_get_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_map_cookie_t +xcb_xkb_get_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t full /**< */, + uint16_t partial /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint16_t virtualMods /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_MAP, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_map_cookie_t xcb_ret; + xcb_xkb_get_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.full = full; + xcb_out.partial = partial; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKeySym = firstKeySym; + xcb_out.nKeySyms = nKeySyms; + xcb_out.firstKeyAction = firstKeyAction; + xcb_out.nKeyActions = nKeyActions; + xcb_out.firstKeyBehavior = firstKeyBehavior; + xcb_out.nKeyBehaviors = nKeyBehaviors; + xcb_out.virtualMods = virtualMods; + xcb_out.firstKeyExplicit = firstKeyExplicit; + xcb_out.nKeyExplicit = nKeyExplicit; + xcb_out.firstModMapKey = firstModMapKey; + xcb_out.nModMapKeys = nModMapKeys; + xcb_out.firstVModMapKey = firstVModMapKey; + xcb_out.nVModMapKeys = nVModMapKeys; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_map_cookie_t xcb_xkb_get_map_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t full + ** @param uint16_t partial + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint16_t virtualMods + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @returns xcb_xkb_get_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_map_cookie_t +xcb_xkb_get_map_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t full /**< */, + uint16_t partial /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint16_t virtualMods /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_MAP, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_map_cookie_t xcb_ret; + xcb_xkb_get_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.full = full; + xcb_out.partial = partial; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKeySym = firstKeySym; + xcb_out.nKeySyms = nKeySyms; + xcb_out.firstKeyAction = firstKeyAction; + xcb_out.nKeyActions = nKeyActions; + xcb_out.firstKeyBehavior = firstKeyBehavior; + xcb_out.nKeyBehaviors = nKeyBehaviors; + xcb_out.virtualMods = virtualMods; + xcb_out.firstKeyExplicit = firstKeyExplicit; + xcb_out.nKeyExplicit = nKeyExplicit; + xcb_out.firstModMapKey = firstModMapKey; + xcb_out.nModMapKeys = nModMapKeys; + xcb_out.firstVModMapKey = firstVModMapKey; + xcb_out.nVModMapKeys = nVModMapKeys; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_map_map_t * xcb_xkb_get_map_map + ** + ** @param const xcb_xkb_get_map_reply_t *R + ** @returns xcb_xkb_get_map_map_t * + ** + *****************************************************************************/ + +void * +xcb_xkb_get_map_map (const xcb_xkb_get_map_reply_t *R /**< */) +{ + return (void *) (R + 1); +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_map_reply_t * xcb_xkb_get_map_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_map_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_map_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_map_reply_t * +xcb_xkb_get_map_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_map_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_map_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_types_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_types_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + return R->nTypes; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_key_type_iterator_t xcb_xkb_set_map_values_types_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_set_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_key_type_iterator_t +xcb_xkb_set_map_values_types_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + xcb_xkb_set_key_type_iterator_t i; + i.data = /* values */ S->types; + i.rem = R->nTypes; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_syms_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_syms_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + return R->nKeySyms; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_set_map_values_syms_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_set_map_values_syms_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + xcb_xkb_key_sym_map_iterator_t i; + i.data = /* values */ S->syms; + i.rem = R->nKeySyms; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_set_map_values_actions_count + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_set_map_values_actions_count (const xcb_xkb_set_map_values_t *S /**< */) +{ + return /* values */ S->actionsCount; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_actions_count_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_actions_count_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + return R->nKeyActions; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_map_values_actions_count_end + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_map_values_actions_count_end (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* values */ S->actionsCount + R->nKeyActions; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_set_map_values_actions + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_set_map_values_actions (const xcb_xkb_set_map_values_t *S /**< */) +{ + return /* values */ S->actions; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_actions_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_actions_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + return R->totalActions; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_set_map_values_actions_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_set_map_values_actions_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + xcb_xkb_action_iterator_t i; + i.data = /* values */ S->actions; + i.rem = R->totalActions; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_set_map_values_behaviors + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_set_map_values_behaviors (const xcb_xkb_set_map_values_t *S /**< */) +{ + return /* values */ S->behaviors; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_behaviors_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_behaviors_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + return R->totalKeyBehaviors; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_set_map_values_behaviors_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_set_map_values_behaviors_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + xcb_xkb_set_behavior_iterator_t i; + i.data = /* values */ S->behaviors; + i.rem = R->totalKeyBehaviors; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_set_map_values_vmods + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_set_map_values_vmods (const xcb_xkb_set_map_values_t *S /**< */) +{ + return /* values */ S->vmods; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_vmods_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_vmods_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + return R->nVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_map_values_vmods_end + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_map_values_vmods_end (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* values */ S->vmods + R->nVModMapKeys; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_set_map_values_explicit + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_set_map_values_explicit (const xcb_xkb_set_map_values_t *S /**< */) +{ + return /* values */ S->explicit; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_explicit_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_explicit_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + return R->totalKeyExplicit; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_set_map_values_explicit_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_set_map_values_explicit_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + xcb_xkb_set_explicit_iterator_t i; + i.data = /* values */ S->explicit; + i.rem = R->totalKeyExplicit; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_set_map_values_modmap + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_set_map_values_modmap (const xcb_xkb_set_map_values_t *S /**< */) +{ + return /* values */ S->modmap; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_modmap_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_modmap_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + return R->totalModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_set_map_values_modmap_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_set_map_values_modmap_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + xcb_xkb_key_mod_map_iterator_t i; + i.data = /* values */ S->modmap; + i.rem = R->totalModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_set_map_values_vmodmap + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_set_map_values_vmodmap (const xcb_xkb_set_map_values_t *S /**< */) +{ + return /* values */ S->vmodmap; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_vmodmap_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_vmodmap_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + return R->totalVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_set_map_values_vmodmap_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_set_map_values_vmodmap_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */) +{ + xcb_xkb_key_v_mod_map_iterator_t i; + i.data = /* values */ S->vmodmap; + i.rem = R->totalVModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_set_map_values_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_set_map_values_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[19]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(present & XCB_XKB_MAP_PART_KEY_TYPES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* types */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->types; + for(i=0; isyms; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->syms; + for(i=0; iactionsCount; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* actions */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->actions; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; itypes = (xcb_xkb_set_key_type_t *)xcb_tmp; + for(i=0; isyms = (xcb_xkb_key_sym_map_t *)xcb_tmp; + for(i=0; iactionsCount = (uint8_t *)xcb_tmp; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* actions */ + _aux->actions = (xcb_xkb_action_t *)xcb_tmp; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors */ + _aux->behaviors = (xcb_xkb_set_behavior_t *)xcb_tmp; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods */ + _aux->vmods = (uint8_t *)xcb_tmp; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit */ + _aux->explicit = (xcb_xkb_set_explicit_t *)xcb_tmp; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap */ + _aux->modmap = (xcb_xkb_key_mod_map_t *)xcb_tmp; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap */ + _aux->vmodmap = (xcb_xkb_key_v_mod_map_t *)xcb_tmp; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_set_map_values_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */) +{ + xcb_xkb_set_map_values_t _aux; + return xcb_xkb_set_map_values_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_map_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t present + ** @param uint16_t flags + ** @param xcb_keycode_t minKeyCode + ** @param xcb_keycode_t maxKeyCode + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param uint16_t totalSyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param uint16_t totalActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint8_t totalKeyBehaviors + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param uint8_t totalKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param uint8_t totalModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @param uint8_t totalVModMapKeys + ** @param uint16_t virtualMods + ** @param const void *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_map_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t present /**< */, + uint16_t flags /**< */, + xcb_keycode_t minKeyCode /**< */, + xcb_keycode_t maxKeyCode /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + uint16_t totalSyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint8_t totalKeyBehaviors /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + uint8_t totalKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + uint8_t totalModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t virtualMods /**< */, + const void *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_MAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.present = present; + xcb_out.flags = flags; + xcb_out.minKeyCode = minKeyCode; + xcb_out.maxKeyCode = maxKeyCode; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKeySym = firstKeySym; + xcb_out.nKeySyms = nKeySyms; + xcb_out.totalSyms = totalSyms; + xcb_out.firstKeyAction = firstKeyAction; + xcb_out.nKeyActions = nKeyActions; + xcb_out.totalActions = totalActions; + xcb_out.firstKeyBehavior = firstKeyBehavior; + xcb_out.nKeyBehaviors = nKeyBehaviors; + xcb_out.totalKeyBehaviors = totalKeyBehaviors; + xcb_out.firstKeyExplicit = firstKeyExplicit; + xcb_out.nKeyExplicit = nKeyExplicit; + xcb_out.totalKeyExplicit = totalKeyExplicit; + xcb_out.firstModMapKey = firstModMapKey; + xcb_out.nModMapKeys = nModMapKeys; + xcb_out.totalModMapKeys = totalModMapKeys; + xcb_out.firstVModMapKey = firstVModMapKey; + xcb_out.nVModMapKeys = nVModMapKeys; + xcb_out.totalVModMapKeys = totalVModMapKeys; + xcb_out.virtualMods = virtualMods; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_set_map_values_t values */ + xcb_parts[4].iov_base = (char *) values; + xcb_parts[4].iov_len = + xcb_xkb_set_map_values_sizeof (values, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present); + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t present + ** @param uint16_t flags + ** @param xcb_keycode_t minKeyCode + ** @param xcb_keycode_t maxKeyCode + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param uint16_t totalSyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param uint16_t totalActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint8_t totalKeyBehaviors + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param uint8_t totalKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param uint8_t totalModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @param uint8_t totalVModMapKeys + ** @param uint16_t virtualMods + ** @param const void *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t present /**< */, + uint16_t flags /**< */, + xcb_keycode_t minKeyCode /**< */, + xcb_keycode_t maxKeyCode /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + uint16_t totalSyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint8_t totalKeyBehaviors /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + uint8_t totalKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + uint8_t totalModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t virtualMods /**< */, + const void *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_MAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.present = present; + xcb_out.flags = flags; + xcb_out.minKeyCode = minKeyCode; + xcb_out.maxKeyCode = maxKeyCode; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKeySym = firstKeySym; + xcb_out.nKeySyms = nKeySyms; + xcb_out.totalSyms = totalSyms; + xcb_out.firstKeyAction = firstKeyAction; + xcb_out.nKeyActions = nKeyActions; + xcb_out.totalActions = totalActions; + xcb_out.firstKeyBehavior = firstKeyBehavior; + xcb_out.nKeyBehaviors = nKeyBehaviors; + xcb_out.totalKeyBehaviors = totalKeyBehaviors; + xcb_out.firstKeyExplicit = firstKeyExplicit; + xcb_out.nKeyExplicit = nKeyExplicit; + xcb_out.totalKeyExplicit = totalKeyExplicit; + xcb_out.firstModMapKey = firstModMapKey; + xcb_out.nModMapKeys = nModMapKeys; + xcb_out.totalModMapKeys = totalModMapKeys; + xcb_out.firstVModMapKey = firstVModMapKey; + xcb_out.nVModMapKeys = nVModMapKeys; + xcb_out.totalVModMapKeys = totalVModMapKeys; + xcb_out.virtualMods = virtualMods; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_set_map_values_t values */ + xcb_parts[4].iov_base = (char *) values; + xcb_parts[4].iov_len = + xcb_xkb_set_map_values_sizeof (values, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present); + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_map_aux_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t present + ** @param uint16_t flags + ** @param xcb_keycode_t minKeyCode + ** @param xcb_keycode_t maxKeyCode + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param uint16_t totalSyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param uint16_t totalActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint8_t totalKeyBehaviors + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param uint8_t totalKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param uint8_t totalModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @param uint8_t totalVModMapKeys + ** @param uint16_t virtualMods + ** @param const xcb_xkb_set_map_values_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_map_aux_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t present /**< */, + uint16_t flags /**< */, + xcb_keycode_t minKeyCode /**< */, + xcb_keycode_t maxKeyCode /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + uint16_t totalSyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint8_t totalKeyBehaviors /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + uint8_t totalKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + uint8_t totalModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t virtualMods /**< */, + const xcb_xkb_set_map_values_t *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_MAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_map_request_t xcb_out; + void *xcb_aux0 = 0; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.present = present; + xcb_out.flags = flags; + xcb_out.minKeyCode = minKeyCode; + xcb_out.maxKeyCode = maxKeyCode; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKeySym = firstKeySym; + xcb_out.nKeySyms = nKeySyms; + xcb_out.totalSyms = totalSyms; + xcb_out.firstKeyAction = firstKeyAction; + xcb_out.nKeyActions = nKeyActions; + xcb_out.totalActions = totalActions; + xcb_out.firstKeyBehavior = firstKeyBehavior; + xcb_out.nKeyBehaviors = nKeyBehaviors; + xcb_out.totalKeyBehaviors = totalKeyBehaviors; + xcb_out.firstKeyExplicit = firstKeyExplicit; + xcb_out.nKeyExplicit = nKeyExplicit; + xcb_out.totalKeyExplicit = totalKeyExplicit; + xcb_out.firstModMapKey = firstModMapKey; + xcb_out.nModMapKeys = nModMapKeys; + xcb_out.totalModMapKeys = totalModMapKeys; + xcb_out.firstVModMapKey = firstVModMapKey; + xcb_out.nVModMapKeys = nVModMapKeys; + xcb_out.totalVModMapKeys = totalVModMapKeys; + xcb_out.virtualMods = virtualMods; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_set_map_values_t values */ + xcb_parts[4].iov_len = + xcb_xkb_set_map_values_serialize (&xcb_aux0, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, values); + xcb_parts[4].iov_base = xcb_aux0; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + free(xcb_aux0); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_map_aux + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t present + ** @param uint16_t flags + ** @param xcb_keycode_t minKeyCode + ** @param xcb_keycode_t maxKeyCode + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param uint16_t totalSyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param uint16_t totalActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint8_t totalKeyBehaviors + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param uint8_t totalKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param uint8_t totalModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @param uint8_t totalVModMapKeys + ** @param uint16_t virtualMods + ** @param const xcb_xkb_set_map_values_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_map_aux (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t present /**< */, + uint16_t flags /**< */, + xcb_keycode_t minKeyCode /**< */, + xcb_keycode_t maxKeyCode /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + uint16_t totalSyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint8_t totalKeyBehaviors /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + uint8_t totalKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + uint8_t totalModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t virtualMods /**< */, + const xcb_xkb_set_map_values_t *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_MAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_map_request_t xcb_out; + void *xcb_aux0 = 0; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.present = present; + xcb_out.flags = flags; + xcb_out.minKeyCode = minKeyCode; + xcb_out.maxKeyCode = maxKeyCode; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKeySym = firstKeySym; + xcb_out.nKeySyms = nKeySyms; + xcb_out.totalSyms = totalSyms; + xcb_out.firstKeyAction = firstKeyAction; + xcb_out.nKeyActions = nKeyActions; + xcb_out.totalActions = totalActions; + xcb_out.firstKeyBehavior = firstKeyBehavior; + xcb_out.nKeyBehaviors = nKeyBehaviors; + xcb_out.totalKeyBehaviors = totalKeyBehaviors; + xcb_out.firstKeyExplicit = firstKeyExplicit; + xcb_out.nKeyExplicit = nKeyExplicit; + xcb_out.totalKeyExplicit = totalKeyExplicit; + xcb_out.firstModMapKey = firstModMapKey; + xcb_out.nModMapKeys = nModMapKeys; + xcb_out.totalModMapKeys = totalModMapKeys; + xcb_out.firstVModMapKey = firstVModMapKey; + xcb_out.nVModMapKeys = nVModMapKeys; + xcb_out.totalVModMapKeys = totalVModMapKeys; + xcb_out.virtualMods = virtualMods; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_set_map_values_t values */ + xcb_parts[4].iov_len = + xcb_xkb_set_map_values_serialize (&xcb_aux0, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, values); + xcb_parts[4].iov_base = xcb_aux0; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + free(xcb_aux0); + return xcb_ret; +} + +int +xcb_xkb_get_compat_map_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_get_compat_map_reply_t *_aux = (xcb_xkb_get_compat_map_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_get_compat_map_reply_t); + xcb_tmp += xcb_block_len; + /* si_rtrn */ + xcb_block_len += (16 * _aux->nSIRtrn) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* group_rtrn */ + xcb_block_len += xcb_popcount(_aux->groupsRtrn) * sizeof(xcb_xkb_mod_def_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_compat_map_cookie_t xcb_xkb_get_compat_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t groups + ** @param uint8_t getAllSI + ** @param uint16_t firstSI + ** @param uint16_t nSI + ** @returns xcb_xkb_get_compat_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_compat_map_cookie_t +xcb_xkb_get_compat_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t groups /**< */, + uint8_t getAllSI /**< */, + uint16_t firstSI /**< */, + uint16_t nSI /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_COMPAT_MAP, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_compat_map_cookie_t xcb_ret; + xcb_xkb_get_compat_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.groups = groups; + xcb_out.getAllSI = getAllSI; + xcb_out.firstSI = firstSI; + xcb_out.nSI = nSI; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_compat_map_cookie_t xcb_xkb_get_compat_map_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t groups + ** @param uint8_t getAllSI + ** @param uint16_t firstSI + ** @param uint16_t nSI + ** @returns xcb_xkb_get_compat_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_compat_map_cookie_t +xcb_xkb_get_compat_map_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t groups /**< */, + uint8_t getAllSI /**< */, + uint16_t firstSI /**< */, + uint16_t nSI /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_COMPAT_MAP, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_compat_map_cookie_t xcb_ret; + xcb_xkb_get_compat_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.groups = groups; + xcb_out.getAllSI = getAllSI; + xcb_out.firstSI = firstSI; + xcb_out.nSI = nSI; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_compat_map_si_rtrn + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_compat_map_si_rtrn (const xcb_xkb_get_compat_map_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_compat_map_si_rtrn_length + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_compat_map_si_rtrn_length (const xcb_xkb_get_compat_map_reply_t *R /**< */) +{ + return (16 * R->nSIRtrn); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_compat_map_si_rtrn_end + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_compat_map_si_rtrn_end (const xcb_xkb_get_compat_map_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((16 * R->nSIRtrn)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_t * xcb_xkb_get_compat_map_group_rtrn + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns xcb_xkb_mod_def_t * + ** + *****************************************************************************/ + +xcb_xkb_mod_def_t * +xcb_xkb_get_compat_map_group_rtrn (const xcb_xkb_get_compat_map_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xkb_get_compat_map_si_rtrn_end(R); + return (xcb_xkb_mod_def_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_mod_def_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_compat_map_group_rtrn_length + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_compat_map_group_rtrn_length (const xcb_xkb_get_compat_map_reply_t *R /**< */) +{ + return xcb_popcount(R->groupsRtrn); +} + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_iterator_t xcb_xkb_get_compat_map_group_rtrn_iterator + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns xcb_xkb_mod_def_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_mod_def_iterator_t +xcb_xkb_get_compat_map_group_rtrn_iterator (const xcb_xkb_get_compat_map_reply_t *R /**< */) +{ + xcb_xkb_mod_def_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_get_compat_map_si_rtrn_end(R); + i.data = (xcb_xkb_mod_def_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_mod_def_t, prev.index)); + i.rem = xcb_popcount(R->groupsRtrn); + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_compat_map_reply_t * xcb_xkb_get_compat_map_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_compat_map_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_compat_map_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_compat_map_reply_t * +xcb_xkb_get_compat_map_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_compat_map_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_compat_map_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xkb_set_compat_map_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_set_compat_map_request_t *_aux = (xcb_xkb_set_compat_map_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_set_compat_map_request_t); + xcb_tmp += xcb_block_len; + /* si */ + xcb_block_len += (16 * _aux->nSI) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* groupMaps */ + xcb_block_len += xcb_popcount(_aux->groups) * sizeof(xcb_xkb_mod_def_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_compat_map_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t recomputeActions + ** @param uint8_t truncateSI + ** @param uint8_t groups + ** @param uint16_t firstSI + ** @param uint16_t nSI + ** @param const uint8_t *si + ** @param const xcb_xkb_mod_def_t *groupMaps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_compat_map_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t recomputeActions /**< */, + uint8_t truncateSI /**< */, + uint8_t groups /**< */, + uint16_t firstSI /**< */, + uint16_t nSI /**< */, + const uint8_t *si /**< */, + const xcb_xkb_mod_def_t *groupMaps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_COMPAT_MAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_compat_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.pad0 = 0; + xcb_out.recomputeActions = recomputeActions; + xcb_out.truncateSI = truncateSI; + xcb_out.groups = groups; + xcb_out.firstSI = firstSI; + xcb_out.nSI = nSI; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t si */ + xcb_parts[4].iov_base = (char *) si; + xcb_parts[4].iov_len = (16 * nSI) * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_xkb_mod_def_t groupMaps */ + xcb_parts[6].iov_base = (char *) groupMaps; + xcb_parts[6].iov_len = xcb_popcount(groups) * sizeof(xcb_xkb_mod_def_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_compat_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t recomputeActions + ** @param uint8_t truncateSI + ** @param uint8_t groups + ** @param uint16_t firstSI + ** @param uint16_t nSI + ** @param const uint8_t *si + ** @param const xcb_xkb_mod_def_t *groupMaps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_compat_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t recomputeActions /**< */, + uint8_t truncateSI /**< */, + uint8_t groups /**< */, + uint16_t firstSI /**< */, + uint16_t nSI /**< */, + const uint8_t *si /**< */, + const xcb_xkb_mod_def_t *groupMaps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_COMPAT_MAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_compat_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.pad0 = 0; + xcb_out.recomputeActions = recomputeActions; + xcb_out.truncateSI = truncateSI; + xcb_out.groups = groups; + xcb_out.firstSI = firstSI; + xcb_out.nSI = nSI; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t si */ + xcb_parts[4].iov_base = (char *) si; + xcb_parts[4].iov_len = (16 * nSI) * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_xkb_mod_def_t groupMaps */ + xcb_parts[6].iov_base = (char *) groupMaps; + xcb_parts[6].iov_len = xcb_popcount(groups) * sizeof(xcb_xkb_mod_def_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_state_cookie_t xcb_xkb_get_indicator_state + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_indicator_state_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_state_cookie_t +xcb_xkb_get_indicator_state (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_INDICATOR_STATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_indicator_state_cookie_t xcb_ret; + xcb_xkb_get_indicator_state_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_state_cookie_t xcb_xkb_get_indicator_state_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_indicator_state_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_state_cookie_t +xcb_xkb_get_indicator_state_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_INDICATOR_STATE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_indicator_state_cookie_t xcb_ret; + xcb_xkb_get_indicator_state_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_state_reply_t * xcb_xkb_get_indicator_state_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_indicator_state_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_indicator_state_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_state_reply_t * +xcb_xkb_get_indicator_state_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_indicator_state_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_indicator_state_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xkb_get_indicator_map_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_get_indicator_map_reply_t *_aux = (xcb_xkb_get_indicator_map_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_get_indicator_map_reply_t); + xcb_tmp += xcb_block_len; + /* maps */ + xcb_block_len += _aux->nIndicators * sizeof(xcb_xkb_indicator_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_map_cookie_t xcb_xkb_get_indicator_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @returns xcb_xkb_get_indicator_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_map_cookie_t +xcb_xkb_get_indicator_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_INDICATOR_MAP, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_indicator_map_cookie_t xcb_ret; + xcb_xkb_get_indicator_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + xcb_out.which = which; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_map_cookie_t xcb_xkb_get_indicator_map_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @returns xcb_xkb_get_indicator_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_map_cookie_t +xcb_xkb_get_indicator_map_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_INDICATOR_MAP, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_indicator_map_cookie_t xcb_ret; + xcb_xkb_get_indicator_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + xcb_out.which = which; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_t * xcb_xkb_get_indicator_map_maps + ** + ** @param const xcb_xkb_get_indicator_map_reply_t *R + ** @returns xcb_xkb_indicator_map_t * + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_t * +xcb_xkb_get_indicator_map_maps (const xcb_xkb_get_indicator_map_reply_t *R /**< */) +{ + return (xcb_xkb_indicator_map_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_indicator_map_maps_length + ** + ** @param const xcb_xkb_get_indicator_map_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_indicator_map_maps_length (const xcb_xkb_get_indicator_map_reply_t *R /**< */) +{ + return R->nIndicators; +} + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_iterator_t xcb_xkb_get_indicator_map_maps_iterator + ** + ** @param const xcb_xkb_get_indicator_map_reply_t *R + ** @returns xcb_xkb_indicator_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_iterator_t +xcb_xkb_get_indicator_map_maps_iterator (const xcb_xkb_get_indicator_map_reply_t *R /**< */) +{ + xcb_xkb_indicator_map_iterator_t i; + i.data = (xcb_xkb_indicator_map_t *) (R + 1); + i.rem = R->nIndicators; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_map_reply_t * xcb_xkb_get_indicator_map_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_indicator_map_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_indicator_map_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_map_reply_t * +xcb_xkb_get_indicator_map_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_indicator_map_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_indicator_map_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xkb_set_indicator_map_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_set_indicator_map_request_t *_aux = (xcb_xkb_set_indicator_map_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xkb_set_indicator_map_request_t); + xcb_tmp += xcb_block_len; + /* maps */ + xcb_block_len += xcb_popcount(_aux->which) * sizeof(xcb_xkb_indicator_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_indicator_map_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @param const xcb_xkb_indicator_map_t *maps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_indicator_map_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */, + const xcb_xkb_indicator_map_t *maps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_INDICATOR_MAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_indicator_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + xcb_out.which = which; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_indicator_map_t maps */ + xcb_parts[4].iov_base = (char *) maps; + xcb_parts[4].iov_len = xcb_popcount(which) * sizeof(xcb_xkb_indicator_map_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_indicator_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @param const xcb_xkb_indicator_map_t *maps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_indicator_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */, + const xcb_xkb_indicator_map_t *maps /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_INDICATOR_MAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_indicator_map_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + xcb_out.which = which; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_indicator_map_t maps */ + xcb_parts[4].iov_base = (char *) maps; + xcb_parts[4].iov_len = xcb_popcount(which) * sizeof(xcb_xkb_indicator_map_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_named_indicator_cookie_t xcb_xkb_get_named_indicator + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @param xcb_atom_t indicator + ** @returns xcb_xkb_get_named_indicator_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_named_indicator_cookie_t +xcb_xkb_get_named_indicator (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */, + xcb_atom_t indicator /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_NAMED_INDICATOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_named_indicator_cookie_t xcb_ret; + xcb_xkb_get_named_indicator_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.ledClass = ledClass; + xcb_out.ledID = ledID; + memset(xcb_out.pad0, 0, 2); + xcb_out.indicator = indicator; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_named_indicator_cookie_t xcb_xkb_get_named_indicator_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @param xcb_atom_t indicator + ** @returns xcb_xkb_get_named_indicator_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_named_indicator_cookie_t +xcb_xkb_get_named_indicator_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */, + xcb_atom_t indicator /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_NAMED_INDICATOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_named_indicator_cookie_t xcb_ret; + xcb_xkb_get_named_indicator_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.ledClass = ledClass; + xcb_out.ledID = ledID; + memset(xcb_out.pad0, 0, 2); + xcb_out.indicator = indicator; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_named_indicator_reply_t * xcb_xkb_get_named_indicator_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_named_indicator_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_named_indicator_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_named_indicator_reply_t * +xcb_xkb_get_named_indicator_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_named_indicator_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_named_indicator_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_named_indicator_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @param xcb_atom_t indicator + ** @param uint8_t setState + ** @param uint8_t on + ** @param uint8_t setMap + ** @param uint8_t createMap + ** @param uint8_t map_flags + ** @param uint8_t map_whichGroups + ** @param uint8_t map_groups + ** @param uint8_t map_whichMods + ** @param uint8_t map_realMods + ** @param uint16_t map_vmods + ** @param uint32_t map_ctrls + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_named_indicator_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */, + xcb_atom_t indicator /**< */, + uint8_t setState /**< */, + uint8_t on /**< */, + uint8_t setMap /**< */, + uint8_t createMap /**< */, + uint8_t map_flags /**< */, + uint8_t map_whichGroups /**< */, + uint8_t map_groups /**< */, + uint8_t map_whichMods /**< */, + uint8_t map_realMods /**< */, + uint16_t map_vmods /**< */, + uint32_t map_ctrls /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_NAMED_INDICATOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_named_indicator_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.ledClass = ledClass; + xcb_out.ledID = ledID; + memset(xcb_out.pad0, 0, 2); + xcb_out.indicator = indicator; + xcb_out.setState = setState; + xcb_out.on = on; + xcb_out.setMap = setMap; + xcb_out.createMap = createMap; + xcb_out.pad1 = 0; + xcb_out.map_flags = map_flags; + xcb_out.map_whichGroups = map_whichGroups; + xcb_out.map_groups = map_groups; + xcb_out.map_whichMods = map_whichMods; + xcb_out.map_realMods = map_realMods; + xcb_out.map_vmods = map_vmods; + xcb_out.map_ctrls = map_ctrls; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_named_indicator + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @param xcb_atom_t indicator + ** @param uint8_t setState + ** @param uint8_t on + ** @param uint8_t setMap + ** @param uint8_t createMap + ** @param uint8_t map_flags + ** @param uint8_t map_whichGroups + ** @param uint8_t map_groups + ** @param uint8_t map_whichMods + ** @param uint8_t map_realMods + ** @param uint16_t map_vmods + ** @param uint32_t map_ctrls + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_named_indicator (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */, + xcb_atom_t indicator /**< */, + uint8_t setState /**< */, + uint8_t on /**< */, + uint8_t setMap /**< */, + uint8_t createMap /**< */, + uint8_t map_flags /**< */, + uint8_t map_whichGroups /**< */, + uint8_t map_groups /**< */, + uint8_t map_whichMods /**< */, + uint8_t map_realMods /**< */, + uint16_t map_vmods /**< */, + uint32_t map_ctrls /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_NAMED_INDICATOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_named_indicator_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.ledClass = ledClass; + xcb_out.ledID = ledID; + memset(xcb_out.pad0, 0, 2); + xcb_out.indicator = indicator; + xcb_out.setState = setState; + xcb_out.on = on; + xcb_out.setMap = setMap; + xcb_out.createMap = createMap; + xcb_out.pad1 = 0; + xcb_out.map_flags = map_flags; + xcb_out.map_whichGroups = map_whichGroups; + xcb_out.map_groups = map_groups; + xcb_out.map_whichMods = map_whichMods; + xcb_out.map_realMods = map_realMods; + xcb_out.map_vmods = map_vmods; + xcb_out.map_ctrls = map_ctrls; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_type_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_type_names (const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return /* valueList */ S->typeNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_type_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_type_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return R->nTypes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_type_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_type_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* valueList */ S->typeNames + R->nTypes; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_names_value_list_n_levels_per_type + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_names_value_list_n_levels_per_type (const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return /* valueList */ S->nLevelsPerType; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_n_levels_per_type_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_n_levels_per_type_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return R->nTypes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_n_levels_per_type_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_n_levels_per_type_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* valueList */ S->nLevelsPerType + R->nTypes; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_kt_level_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_kt_level_names (const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return /* valueList */ S->ktLevelNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_kt_level_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_kt_level_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return xcb_sumof(/* valueList */ S->nLevelsPerType, R->nTypes); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_kt_level_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_kt_level_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* valueList */ S->ktLevelNames + xcb_sumof(/* valueList */ S->nLevelsPerType, R->nTypes); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_indicator_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_indicator_names (const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return /* valueList */ S->indicatorNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_indicator_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_indicator_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return xcb_popcount(R->indicators); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_indicator_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_indicator_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* valueList */ S->indicatorNames + xcb_popcount(R->indicators); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_virtual_mod_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_virtual_mod_names (const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return /* valueList */ S->virtualModNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_virtual_mod_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_virtual_mod_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return xcb_popcount(R->virtualMods); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_virtual_mod_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_virtual_mod_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* valueList */ S->virtualModNames + xcb_popcount(R->virtualMods); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_groups + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_groups (const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return /* valueList */ S->groups; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_groups_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_groups_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return xcb_popcount(R->groupNames); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_groups_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_groups_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* valueList */ S->groups + xcb_popcount(R->groupNames); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_t * xcb_xkb_get_names_value_list_key_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_xkb_key_name_t * + ** + *****************************************************************************/ + +xcb_xkb_key_name_t * +xcb_xkb_get_names_value_list_key_names (const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return /* valueList */ S->keyNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_key_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_key_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return R->nKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_iterator_t xcb_xkb_get_names_value_list_key_names_iterator + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_xkb_key_name_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_name_iterator_t +xcb_xkb_get_names_value_list_key_names_iterator (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + xcb_xkb_key_name_iterator_t i; + i.data = /* valueList */ S->keyNames; + i.rem = R->nKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_names_value_list_key_aliases + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_names_value_list_key_aliases (const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return /* valueList */ S->keyAliases; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_key_aliases_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_key_aliases_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return R->nKeyAliases; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_names_value_list_key_aliases_iterator + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_names_value_list_key_aliases_iterator (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + xcb_xkb_key_alias_iterator_t i; + i.data = /* valueList */ S->keyAliases; + i.rem = R->nKeyAliases; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_radio_group_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_radio_group_names (const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return /* valueList */ S->radioGroupNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_radio_group_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_radio_group_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + return R->nRadioGroups; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_radio_group_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_radio_group_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* valueList */ S->radioGroupNames + R->nRadioGroups; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_get_names_value_list_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + const xcb_xkb_get_names_value_list_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[25]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(which & XCB_XKB_NAME_DETAIL_KEYCODES) { + /* xcb_xkb_get_names_value_list_t.keycodesName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) { + /* xcb_xkb_get_names_value_list_t.geometryName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometryName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) { + /* xcb_xkb_get_names_value_list_t.symbolsName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) { + /* xcb_xkb_get_names_value_list_t.physSymbolsName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->physSymbolsName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_TYPES) { + /* xcb_xkb_get_names_value_list_t.typesName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_COMPAT) { + /* xcb_xkb_get_names_value_list_t.compatName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* typeNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->typeNames; + xcb_block_len += nTypes * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* nLevelsPerType */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->nLevelsPerType; + xcb_block_len += nTypes * sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ktLevelNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames; + xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* indicatorNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicatorNames; + xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* virtualModNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->virtualModNames; + xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* groups */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->groups; + xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyNames; + xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t); + xcb_parts[xcb_parts_idx].iov_len = nKeys * sizeof(xcb_xkb_key_name_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_name_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyAliases; + xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts[xcb_parts_idx].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* radioGroupNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->radioGroupNames; + xcb_block_len += nRadioGroups * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = nRadioGroups * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; ikeycodesName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) { + /* xcb_xkb_get_names_value_list_t.geometryName */ + _aux->geometryName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) { + /* xcb_xkb_get_names_value_list_t.symbolsName */ + _aux->symbolsName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) { + /* xcb_xkb_get_names_value_list_t.physSymbolsName */ + _aux->physSymbolsName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_TYPES) { + /* xcb_xkb_get_names_value_list_t.typesName */ + _aux->typesName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_COMPAT) { + /* xcb_xkb_get_names_value_list_t.compatName */ + _aux->compatName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* typeNames */ + _aux->typeNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += nTypes * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* nLevelsPerType */ + _aux->nLevelsPerType = (uint8_t *)xcb_tmp; + xcb_block_len += nTypes * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ktLevelNames */ + _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* indicatorNames */ + _aux->indicatorNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* virtualModNames */ + _aux->virtualModNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* groups */ + _aux->groups = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyNames */ + _aux->keyNames = (xcb_xkb_key_name_t *)xcb_tmp; + xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_name_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + _aux->keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp; + xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* radioGroupNames */ + _aux->radioGroupNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += nRadioGroups * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_get_names_value_list_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */) +{ + xcb_xkb_get_names_value_list_t _aux; + return xcb_xkb_get_names_value_list_unpack(_buffer, nTypes, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, &_aux); +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_names_cookie_t xcb_xkb_get_names + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @returns xcb_xkb_get_names_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_names_cookie_t +xcb_xkb_get_names (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_NAMES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_names_cookie_t xcb_ret; + xcb_xkb_get_names_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + xcb_out.which = which; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_names_cookie_t xcb_xkb_get_names_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @returns xcb_xkb_get_names_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_names_cookie_t +xcb_xkb_get_names_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_NAMES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_names_cookie_t xcb_ret; + xcb_xkb_get_names_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + xcb_out.which = which; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_names_value_list_t * xcb_xkb_get_names_value_list + ** + ** @param const xcb_xkb_get_names_reply_t *R + ** @returns xcb_xkb_get_names_value_list_t * + ** + *****************************************************************************/ + +void * +xcb_xkb_get_names_value_list (const xcb_xkb_get_names_reply_t *R /**< */) +{ + return (void *) (R + 1); +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_names_reply_t * xcb_xkb_get_names_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_names_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_names_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_names_reply_t * +xcb_xkb_get_names_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_names_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_names_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_type_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_type_names (const xcb_xkb_set_names_values_t *S /**< */) +{ + return /* values */ S->typeNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_type_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_type_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + return R->nTypes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_type_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_type_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* values */ S->typeNames + R->nTypes; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_set_names_values_n_levels_per_type + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_set_names_values_n_levels_per_type (const xcb_xkb_set_names_values_t *S /**< */) +{ + return /* values */ S->nLevelsPerType; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_n_levels_per_type_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_n_levels_per_type_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + return R->nKTLevels; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_n_levels_per_type_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_n_levels_per_type_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* values */ S->nLevelsPerType + R->nKTLevels; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_kt_level_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_kt_level_names (const xcb_xkb_set_names_values_t *S /**< */) +{ + return /* values */ S->ktLevelNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_kt_level_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_kt_level_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + return xcb_sumof(/* values */ S->nLevelsPerType, R->nKTLevels); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_kt_level_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_kt_level_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* values */ S->ktLevelNames + xcb_sumof(/* values */ S->nLevelsPerType, R->nKTLevels); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_indicator_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_indicator_names (const xcb_xkb_set_names_values_t *S /**< */) +{ + return /* values */ S->indicatorNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_indicator_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_indicator_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + return xcb_popcount(R->indicators); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_indicator_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_indicator_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* values */ S->indicatorNames + xcb_popcount(R->indicators); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_virtual_mod_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_virtual_mod_names (const xcb_xkb_set_names_values_t *S /**< */) +{ + return /* values */ S->virtualModNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_virtual_mod_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_virtual_mod_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + return xcb_popcount(R->virtualMods); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_virtual_mod_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_virtual_mod_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* values */ S->virtualModNames + xcb_popcount(R->virtualMods); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_groups + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_groups (const xcb_xkb_set_names_values_t *S /**< */) +{ + return /* values */ S->groups; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_groups_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_groups_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + return xcb_popcount(R->groupNames); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_groups_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_groups_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* values */ S->groups + xcb_popcount(R->groupNames); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_t * xcb_xkb_set_names_values_key_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_xkb_key_name_t * + ** + *****************************************************************************/ + +xcb_xkb_key_name_t * +xcb_xkb_set_names_values_key_names (const xcb_xkb_set_names_values_t *S /**< */) +{ + return /* values */ S->keyNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_key_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_key_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + return R->nKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_iterator_t xcb_xkb_set_names_values_key_names_iterator + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_xkb_key_name_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_name_iterator_t +xcb_xkb_set_names_values_key_names_iterator (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + xcb_xkb_key_name_iterator_t i; + i.data = /* values */ S->keyNames; + i.rem = R->nKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_set_names_values_key_aliases + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_set_names_values_key_aliases (const xcb_xkb_set_names_values_t *S /**< */) +{ + return /* values */ S->keyAliases; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_key_aliases_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_key_aliases_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + return R->nKeyAliases; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_set_names_values_key_aliases_iterator + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_set_names_values_key_aliases_iterator (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + xcb_xkb_key_alias_iterator_t i; + i.data = /* values */ S->keyAliases; + i.rem = R->nKeyAliases; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_radio_group_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_radio_group_names (const xcb_xkb_set_names_values_t *S /**< */) +{ + return /* values */ S->radioGroupNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_radio_group_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_radio_group_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + return R->nRadioGroups; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_radio_group_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_radio_group_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* values */ S->radioGroupNames + R->nRadioGroups; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_set_names_values_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + const xcb_xkb_set_names_values_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[25]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(which & XCB_XKB_NAME_DETAIL_KEYCODES) { + /* xcb_xkb_set_names_values_t.keycodesName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) { + /* xcb_xkb_set_names_values_t.geometryName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometryName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) { + /* xcb_xkb_set_names_values_t.symbolsName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) { + /* xcb_xkb_set_names_values_t.physSymbolsName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->physSymbolsName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_TYPES) { + /* xcb_xkb_set_names_values_t.typesName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_COMPAT) { + /* xcb_xkb_set_names_values_t.compatName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* typeNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->typeNames; + xcb_block_len += nTypes * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* nLevelsPerType */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->nLevelsPerType; + xcb_block_len += nKTLevels * sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = nKTLevels * sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ktLevelNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames; + xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* indicatorNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicatorNames; + xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* virtualModNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->virtualModNames; + xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* groups */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->groups; + xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyNames; + xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t); + xcb_parts[xcb_parts_idx].iov_len = nKeys * sizeof(xcb_xkb_key_name_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_name_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyAliases; + xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts[xcb_parts_idx].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* radioGroupNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->radioGroupNames; + xcb_block_len += nRadioGroups * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = nRadioGroups * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; ikeycodesName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) { + /* xcb_xkb_set_names_values_t.geometryName */ + _aux->geometryName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) { + /* xcb_xkb_set_names_values_t.symbolsName */ + _aux->symbolsName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) { + /* xcb_xkb_set_names_values_t.physSymbolsName */ + _aux->physSymbolsName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_TYPES) { + /* xcb_xkb_set_names_values_t.typesName */ + _aux->typesName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_COMPAT) { + /* xcb_xkb_set_names_values_t.compatName */ + _aux->compatName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* typeNames */ + _aux->typeNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += nTypes * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* nLevelsPerType */ + _aux->nLevelsPerType = (uint8_t *)xcb_tmp; + xcb_block_len += nKTLevels * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ktLevelNames */ + _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* indicatorNames */ + _aux->indicatorNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* virtualModNames */ + _aux->virtualModNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* groups */ + _aux->groups = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyNames */ + _aux->keyNames = (xcb_xkb_key_name_t *)xcb_tmp; + xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_name_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + _aux->keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp; + xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* radioGroupNames */ + _aux->radioGroupNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += nRadioGroups * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_set_names_values_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */) +{ + xcb_xkb_set_names_values_t _aux; + return xcb_xkb_set_names_values_unpack(_buffer, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, &_aux); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_names_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t virtualMods + ** @param uint32_t which + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param uint8_t firstKTLevelt + ** @param uint8_t nKTLevels + ** @param uint32_t indicators + ** @param uint8_t groupNames + ** @param uint8_t nRadioGroups + ** @param xcb_keycode_t firstKey + ** @param uint8_t nKeys + ** @param uint8_t nKeyAliases + ** @param uint16_t totalKTLevelNames + ** @param const void *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_names_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t virtualMods /**< */, + uint32_t which /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + uint8_t firstKTLevelt /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint8_t groupNames /**< */, + uint8_t nRadioGroups /**< */, + xcb_keycode_t firstKey /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint16_t totalKTLevelNames /**< */, + const void *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_NAMES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_names_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.virtualMods = virtualMods; + xcb_out.which = which; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKTLevelt = firstKTLevelt; + xcb_out.nKTLevels = nKTLevels; + xcb_out.indicators = indicators; + xcb_out.groupNames = groupNames; + xcb_out.nRadioGroups = nRadioGroups; + xcb_out.firstKey = firstKey; + xcb_out.nKeys = nKeys; + xcb_out.nKeyAliases = nKeyAliases; + xcb_out.pad0 = 0; + xcb_out.totalKTLevelNames = totalKTLevelNames; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_set_names_values_t values */ + xcb_parts[4].iov_base = (char *) values; + xcb_parts[4].iov_len = + xcb_xkb_set_names_values_sizeof (values, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which); + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_names + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t virtualMods + ** @param uint32_t which + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param uint8_t firstKTLevelt + ** @param uint8_t nKTLevels + ** @param uint32_t indicators + ** @param uint8_t groupNames + ** @param uint8_t nRadioGroups + ** @param xcb_keycode_t firstKey + ** @param uint8_t nKeys + ** @param uint8_t nKeyAliases + ** @param uint16_t totalKTLevelNames + ** @param const void *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_names (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t virtualMods /**< */, + uint32_t which /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + uint8_t firstKTLevelt /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint8_t groupNames /**< */, + uint8_t nRadioGroups /**< */, + xcb_keycode_t firstKey /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint16_t totalKTLevelNames /**< */, + const void *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_NAMES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_names_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.virtualMods = virtualMods; + xcb_out.which = which; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKTLevelt = firstKTLevelt; + xcb_out.nKTLevels = nKTLevels; + xcb_out.indicators = indicators; + xcb_out.groupNames = groupNames; + xcb_out.nRadioGroups = nRadioGroups; + xcb_out.firstKey = firstKey; + xcb_out.nKeys = nKeys; + xcb_out.nKeyAliases = nKeyAliases; + xcb_out.pad0 = 0; + xcb_out.totalKTLevelNames = totalKTLevelNames; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_set_names_values_t values */ + xcb_parts[4].iov_base = (char *) values; + xcb_parts[4].iov_len = + xcb_xkb_set_names_values_sizeof (values, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which); + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_names_aux_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t virtualMods + ** @param uint32_t which + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param uint8_t firstKTLevelt + ** @param uint8_t nKTLevels + ** @param uint32_t indicators + ** @param uint8_t groupNames + ** @param uint8_t nRadioGroups + ** @param xcb_keycode_t firstKey + ** @param uint8_t nKeys + ** @param uint8_t nKeyAliases + ** @param uint16_t totalKTLevelNames + ** @param const xcb_xkb_set_names_values_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_names_aux_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t virtualMods /**< */, + uint32_t which /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + uint8_t firstKTLevelt /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint8_t groupNames /**< */, + uint8_t nRadioGroups /**< */, + xcb_keycode_t firstKey /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint16_t totalKTLevelNames /**< */, + const xcb_xkb_set_names_values_t *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_NAMES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_names_request_t xcb_out; + void *xcb_aux0 = 0; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.virtualMods = virtualMods; + xcb_out.which = which; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKTLevelt = firstKTLevelt; + xcb_out.nKTLevels = nKTLevels; + xcb_out.indicators = indicators; + xcb_out.groupNames = groupNames; + xcb_out.nRadioGroups = nRadioGroups; + xcb_out.firstKey = firstKey; + xcb_out.nKeys = nKeys; + xcb_out.nKeyAliases = nKeyAliases; + xcb_out.pad0 = 0; + xcb_out.totalKTLevelNames = totalKTLevelNames; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_set_names_values_t values */ + xcb_parts[4].iov_len = + xcb_xkb_set_names_values_serialize (&xcb_aux0, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, values); + xcb_parts[4].iov_base = xcb_aux0; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + free(xcb_aux0); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_names_aux + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t virtualMods + ** @param uint32_t which + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param uint8_t firstKTLevelt + ** @param uint8_t nKTLevels + ** @param uint32_t indicators + ** @param uint8_t groupNames + ** @param uint8_t nRadioGroups + ** @param xcb_keycode_t firstKey + ** @param uint8_t nKeys + ** @param uint8_t nKeyAliases + ** @param uint16_t totalKTLevelNames + ** @param const xcb_xkb_set_names_values_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_names_aux (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t virtualMods /**< */, + uint32_t which /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + uint8_t firstKTLevelt /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint8_t groupNames /**< */, + uint8_t nRadioGroups /**< */, + xcb_keycode_t firstKey /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint16_t totalKTLevelNames /**< */, + const xcb_xkb_set_names_values_t *values /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 3, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_NAMES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[5]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_names_request_t xcb_out; + void *xcb_aux0 = 0; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.virtualMods = virtualMods; + xcb_out.which = which; + xcb_out.firstType = firstType; + xcb_out.nTypes = nTypes; + xcb_out.firstKTLevelt = firstKTLevelt; + xcb_out.nKTLevels = nKTLevels; + xcb_out.indicators = indicators; + xcb_out.groupNames = groupNames; + xcb_out.nRadioGroups = nRadioGroups; + xcb_out.firstKey = firstKey; + xcb_out.nKeys = nKeys; + xcb_out.nKeyAliases = nKeyAliases; + xcb_out.pad0 = 0; + xcb_out.totalKTLevelNames = totalKTLevelNames; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_set_names_values_t values */ + xcb_parts[4].iov_len = + xcb_xkb_set_names_values_serialize (&xcb_aux0, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, values); + xcb_parts[4].iov_base = xcb_aux0; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + free(xcb_aux0); + return xcb_ret; +} + +int +xcb_xkb_get_geometry_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_get_geometry_reply_t *_aux = (xcb_xkb_get_geometry_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_xkb_get_geometry_reply_t); + xcb_tmp += xcb_block_len; + /* labelFont */ + xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* properties */ + for(i=0; i<_aux->nProperties; i++) { + xcb_tmp_len = xcb_xkb_property_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_property_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* colors */ + for(i=0; i<_aux->nColors; i++) { + xcb_tmp_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* shapes */ + for(i=0; i<_aux->nShapes; i++) { + xcb_tmp_len = xcb_xkb_shape_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_shape_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* sections */ + for(i=0; i<_aux->nSections; i++) { + xcb_tmp_len = xcb_xkb_section_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_section_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* doodads */ + for(i=0; i<_aux->nDoodads; i++) { + xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_doodad_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + xcb_block_len += _aux->nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_geometry_cookie_t xcb_xkb_get_geometry + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_atom_t name + ** @returns xcb_xkb_get_geometry_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_geometry_cookie_t +xcb_xkb_get_geometry (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_atom_t name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_GEOMETRY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_geometry_cookie_t xcb_ret; + xcb_xkb_get_geometry_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + xcb_out.name = name; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_geometry_cookie_t xcb_xkb_get_geometry_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_atom_t name + ** @returns xcb_xkb_get_geometry_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_geometry_cookie_t +xcb_xkb_get_geometry_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_atom_t name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_GEOMETRY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_geometry_cookie_t xcb_ret; + xcb_xkb_get_geometry_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + memset(xcb_out.pad0, 0, 2); + xcb_out.name = name; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_get_geometry_label_font + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_get_geometry_label_font (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + return (xcb_xkb_counted_string_16_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_properties_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_properties_length (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + return R->nProperties; +} + + +/***************************************************************************** + ** + ** xcb_xkb_property_iterator_t xcb_xkb_get_geometry_properties_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_property_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_property_iterator_t +xcb_xkb_get_geometry_properties_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + xcb_xkb_property_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_counted_string_16_string_end(xcb_xkb_get_geometry_label_font(R)); + i.data = (xcb_xkb_property_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_property_t, prev.index)); + i.rem = R->nProperties; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_colors_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_colors_length (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + return R->nColors; +} + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_iterator_t xcb_xkb_get_geometry_colors_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_counted_string_16_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_iterator_t +xcb_xkb_get_geometry_colors_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + xcb_xkb_counted_string_16_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_property_end(xcb_xkb_get_geometry_properties_iterator(R)); + i.data = (xcb_xkb_counted_string_16_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_counted_string_16_t, prev.index)); + i.rem = R->nColors; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_shapes_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_shapes_length (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + return R->nShapes; +} + + +/***************************************************************************** + ** + ** xcb_xkb_shape_iterator_t xcb_xkb_get_geometry_shapes_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_shape_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_shape_iterator_t +xcb_xkb_get_geometry_shapes_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + xcb_xkb_shape_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_counted_string_16_end(xcb_xkb_get_geometry_colors_iterator(R)); + i.data = (xcb_xkb_shape_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_shape_t, prev.index)); + i.rem = R->nShapes; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_sections_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_sections_length (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + return R->nSections; +} + + +/***************************************************************************** + ** + ** xcb_xkb_section_iterator_t xcb_xkb_get_geometry_sections_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_section_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_section_iterator_t +xcb_xkb_get_geometry_sections_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + xcb_xkb_section_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_shape_end(xcb_xkb_get_geometry_shapes_iterator(R)); + i.data = (xcb_xkb_section_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_section_t, prev.index)); + i.rem = R->nSections; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_doodads_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_doodads_length (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + return R->nDoodads; +} + + +/***************************************************************************** + ** + ** xcb_xkb_doodad_iterator_t xcb_xkb_get_geometry_doodads_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_doodad_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_doodad_iterator_t +xcb_xkb_get_geometry_doodads_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + xcb_xkb_doodad_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_section_end(xcb_xkb_get_geometry_sections_iterator(R)); + i.data = (xcb_xkb_doodad_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_doodad_t, prev.index)); + i.rem = R->nDoodads; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_geometry_key_aliases + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_geometry_key_aliases (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xkb_doodad_end(xcb_xkb_get_geometry_doodads_iterator(R)); + return (xcb_xkb_key_alias_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_key_alias_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_key_aliases_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_key_aliases_length (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + return R->nKeyAliases; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_geometry_key_aliases_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_geometry_key_aliases_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */) +{ + xcb_xkb_key_alias_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_doodad_end(xcb_xkb_get_geometry_doodads_iterator(R)); + i.data = (xcb_xkb_key_alias_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_key_alias_t, prev.index)); + i.rem = R->nKeyAliases; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_geometry_reply_t * xcb_xkb_get_geometry_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_geometry_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_geometry_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_geometry_reply_t * +xcb_xkb_get_geometry_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_geometry_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + xcb_xkb_get_geometry_reply_t *reply = (xcb_xkb_get_geometry_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); + int i; + xcb_xkb_property_iterator_t properties_iter = xcb_xkb_get_geometry_properties_iterator(reply); + int properties_len = xcb_xkb_get_geometry_properties_length(reply); + xcb_xkb_property_t *properties_data; + /* special cases: transform parts of the reply to match XCB data structures */ + for(i=0; inProperties; i++) { + xcb_tmp_len = xcb_xkb_property_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_property_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* colors */ + for(i=0; i<_aux->nColors; i++) { + xcb_tmp_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* shapes */ + for(i=0; i<_aux->nShapes; i++) { + xcb_tmp_len = xcb_xkb_shape_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_shape_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* sections */ + for(i=0; i<_aux->nSections; i++) { + xcb_tmp_len = xcb_xkb_section_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_section_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* doodads */ + for(i=0; i<_aux->nDoodads; i++) { + xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_doodad_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + xcb_block_len += _aux->nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_geometry_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t nShapes + ** @param uint8_t nSections + ** @param xcb_atom_t name + ** @param uint16_t widthMM + ** @param uint16_t heightMM + ** @param uint16_t nProperties + ** @param uint16_t nColors + ** @param uint16_t nDoodads + ** @param uint16_t nKeyAliases + ** @param uint8_t baseColorNdx + ** @param uint8_t labelColorNdx + ** @param xcb_xkb_counted_string_16_t *labelFont + ** @param const xcb_xkb_property_t *properties + ** @param const xcb_xkb_counted_string_16_t *colors + ** @param const xcb_xkb_shape_t *shapes + ** @param const xcb_xkb_section_t *sections + ** @param const xcb_xkb_doodad_t *doodads + ** @param const xcb_xkb_key_alias_t *keyAliases + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_geometry_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t nShapes /**< */, + uint8_t nSections /**< */, + xcb_atom_t name /**< */, + uint16_t widthMM /**< */, + uint16_t heightMM /**< */, + uint16_t nProperties /**< */, + uint16_t nColors /**< */, + uint16_t nDoodads /**< */, + uint16_t nKeyAliases /**< */, + uint8_t baseColorNdx /**< */, + uint8_t labelColorNdx /**< */, + xcb_xkb_counted_string_16_t *labelFont /**< */, + const xcb_xkb_property_t *properties /**< */, + const xcb_xkb_counted_string_16_t *colors /**< */, + const xcb_xkb_shape_t *shapes /**< */, + const xcb_xkb_section_t *sections /**< */, + const xcb_xkb_doodad_t *doodads /**< */, + const xcb_xkb_key_alias_t *keyAliases /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 16, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_GEOMETRY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[18]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_geometry_request_t xcb_out; + unsigned int i; + unsigned int xcb_tmp_len; + char *xcb_tmp; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.nShapes = nShapes; + xcb_out.nSections = nSections; + xcb_out.name = name; + xcb_out.widthMM = widthMM; + xcb_out.heightMM = heightMM; + xcb_out.nProperties = nProperties; + xcb_out.nColors = nColors; + xcb_out.nDoodads = nDoodads; + xcb_out.nKeyAliases = nKeyAliases; + xcb_out.baseColorNdx = baseColorNdx; + xcb_out.labelColorNdx = labelColorNdx; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_counted_string_16_t labelFont */ + xcb_parts[4].iov_base = (char *) labelFont; + xcb_parts[4].iov_len = + xcb_xkb_counted_string_16_sizeof (labelFont); + /* xcb_xkb_property_t properties */ + xcb_parts[5].iov_base = (char *) properties; + xcb_parts[5].iov_len = 0; + xcb_tmp = (char *)properties; + for(i=0; ideviceSpec; + xcb_block_len += sizeof(xcb_xkb_device_spec_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_xkb_device_spec_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_device_spec_t); + /* xcb_xkb_list_components_request_t.maxNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->maxNames; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_list_components_request_t.keymapsSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keymapsSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* keymapsSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) keymapsSpec; + xcb_block_len += _aux->keymapsSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->keymapsSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_list_components_request_t.keycodesSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* keycodesSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) keycodesSpec; + xcb_block_len += _aux->keycodesSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->keycodesSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_list_components_request_t.typesSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* typesSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) typesSpec; + xcb_block_len += _aux->typesSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->typesSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_list_components_request_t.compatMapSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatMapSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* compatMapSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) compatMapSpec; + xcb_block_len += _aux->compatMapSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->compatMapSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_list_components_request_t.symbolsSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* symbolsSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) symbolsSpec; + xcb_block_len += _aux->symbolsSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->symbolsSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_list_components_request_t.geometrySpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometrySpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* geometrySpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) geometrySpec; + xcb_block_len += _aux->geometrySpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->geometrySpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; inKeymaps; +} + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_keymaps_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_keymaps_iterator (const xcb_xkb_list_components_reply_t *R /**< */) +{ + xcb_xkb_listing_iterator_t i; + i.data = (xcb_xkb_listing_t *) (R + 1); + i.rem = R->nKeymaps; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_keycodes_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_keycodes_length (const xcb_xkb_list_components_reply_t *R /**< */) +{ + return R->nKeycodes; +} + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_keycodes_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_keycodes_iterator (const xcb_xkb_list_components_reply_t *R /**< */) +{ + xcb_xkb_listing_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_keymaps_iterator(R)); + i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index)); + i.rem = R->nKeycodes; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_types_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_types_length (const xcb_xkb_list_components_reply_t *R /**< */) +{ + return R->nTypes; +} + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_types_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_types_iterator (const xcb_xkb_list_components_reply_t *R /**< */) +{ + xcb_xkb_listing_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_keycodes_iterator(R)); + i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index)); + i.rem = R->nTypes; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_compat_maps_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_compat_maps_length (const xcb_xkb_list_components_reply_t *R /**< */) +{ + return R->nCompatMaps; +} + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_compat_maps_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_compat_maps_iterator (const xcb_xkb_list_components_reply_t *R /**< */) +{ + xcb_xkb_listing_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_types_iterator(R)); + i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index)); + i.rem = R->nCompatMaps; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_symbols_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_symbols_length (const xcb_xkb_list_components_reply_t *R /**< */) +{ + return R->nSymbols; +} + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_symbols_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_symbols_iterator (const xcb_xkb_list_components_reply_t *R /**< */) +{ + xcb_xkb_listing_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_compat_maps_iterator(R)); + i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index)); + i.rem = R->nSymbols; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_geometries_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_geometries_length (const xcb_xkb_list_components_reply_t *R /**< */) +{ + return R->nGeometries; +} + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_geometries_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_geometries_iterator (const xcb_xkb_list_components_reply_t *R /**< */) +{ + xcb_xkb_listing_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_symbols_iterator(R)); + i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index)); + i.rem = R->nGeometries; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_list_components_reply_t * xcb_xkb_list_components_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_list_components_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_list_components_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_list_components_reply_t * +xcb_xkb_list_components_reply (xcb_connection_t *c /**< */, + xcb_xkb_list_components_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_list_components_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xkb_get_kbd_by_name_serialize (void **_buffer /**< */, + const xcb_xkb_get_kbd_by_name_request_t *_aux /**< */, + const xcb_xkb_string8_t *keymapsSpec /**< */, + const xcb_xkb_string8_t *keycodesSpec /**< */, + const xcb_xkb_string8_t *typesSpec /**< */, + const xcb_xkb_string8_t *compatMapSpec /**< */, + const xcb_xkb_string8_t *symbolsSpec /**< */, + const xcb_xkb_string8_t *geometrySpec /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[18]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + /* xcb_xkb_get_kbd_by_name_request_t.deviceSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->deviceSpec; + xcb_block_len += sizeof(xcb_xkb_device_spec_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_xkb_device_spec_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_device_spec_t); + /* xcb_xkb_get_kbd_by_name_request_t.need */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->need; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_request_t.want */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->want; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_request_t.load */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->load; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_request_t.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_request_t.keymapsSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keymapsSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* keymapsSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) keymapsSpec; + xcb_block_len += _aux->keymapsSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->keymapsSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_get_kbd_by_name_request_t.keycodesSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* keycodesSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) keycodesSpec; + xcb_block_len += _aux->keycodesSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->keycodesSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_get_kbd_by_name_request_t.typesSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* typesSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) typesSpec; + xcb_block_len += _aux->typesSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->typesSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_get_kbd_by_name_request_t.compatMapSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatMapSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* compatMapSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) compatMapSpec; + xcb_block_len += _aux->compatMapSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->compatMapSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_get_kbd_by_name_request_t.symbolsSpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsSpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* symbolsSpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) symbolsSpec; + xcb_block_len += _aux->symbolsSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->symbolsSpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* xcb_xkb_get_kbd_by_name_request_t.geometrySpecLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometrySpecLen; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* geometrySpec */ + xcb_parts[xcb_parts_idx].iov_base = (char *) geometrySpec; + xcb_block_len += _aux->geometrySpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->geometrySpecLen * sizeof(xcb_xkb_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; itypes.nTypes; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_type_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_type_iterator_t i; + i.data = /* replies */ S->types.map.types_rtrn; + i.rem = /* replies */ S->types.nTypes; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.nKeySyms; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_sym_map_iterator_t i; + i.data = /* replies */ S->types.map.syms_rtrn; + i.rem = /* replies */ S->types.nKeySyms; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.map.acts_rtrn_count; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.nKeyActions; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->types.map.acts_rtrn_count + /* replies */ S->types.nKeyActions; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.map.acts_rtrn_acts; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.totalActions; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_action_iterator_t i; + i.data = /* replies */ S->types.map.acts_rtrn_acts; + i.rem = /* replies */ S->types.totalActions; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.map.behaviors_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.totalKeyBehaviors; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_set_behavior_iterator_t i; + i.data = /* replies */ S->types.map.behaviors_rtrn; + i.rem = /* replies */ S->types.totalKeyBehaviors; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.map.vmods_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.nVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->types.map.vmods_rtrn + /* replies */ S->types.nVModMapKeys; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.map.explicit_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.totalKeyExplicit; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_set_explicit_iterator_t i; + i.data = /* replies */ S->types.map.explicit_rtrn; + i.rem = /* replies */ S->types.totalKeyExplicit; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.map.modmap_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.totalModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_mod_map_iterator_t i; + i.data = /* replies */ S->types.map.modmap_rtrn; + i.rem = /* replies */ S->types.totalModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.map.vmodmap_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->types.totalVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_v_mod_map_iterator_t i; + i.data = /* replies */ S->types.map.vmodmap_rtrn; + i.rem = /* replies */ S->types.totalVModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_get_kbd_by_name_replies_types_map_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_get_kbd_by_name_replies_types_map_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[19]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(present & XCB_XKB_MAP_PART_KEY_TYPES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* types_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types_rtrn; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->types_rtrn; + for(i=0; isyms_rtrn; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->syms_rtrn; + for(i=0; iacts_rtrn_count; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* acts_rtrn_acts */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_acts; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors_rtrn; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods_rtrn; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit_rtrn; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap_rtrn; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap_rtrn; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; itypes_rtrn = (xcb_xkb_key_type_t *)xcb_tmp; + for(i=0; isyms_rtrn = (xcb_xkb_key_sym_map_t *)xcb_tmp; + for(i=0; iacts_rtrn_count = (uint8_t *)xcb_tmp; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* acts_rtrn_acts */ + _aux->acts_rtrn_acts = (xcb_xkb_action_t *)xcb_tmp; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors_rtrn */ + _aux->behaviors_rtrn = (xcb_xkb_set_behavior_t *)xcb_tmp; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods_rtrn */ + _aux->vmods_rtrn = (uint8_t *)xcb_tmp; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit_rtrn */ + _aux->explicit_rtrn = (xcb_xkb_set_explicit_t *)xcb_tmp; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap_rtrn */ + _aux->modmap_rtrn = (xcb_xkb_key_mod_map_t *)xcb_tmp; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap_rtrn */ + _aux->vmodmap_rtrn = (xcb_xkb_key_v_mod_map_t *)xcb_tmp; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_get_kbd_by_name_replies_types_map_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */) +{ + xcb_xkb_get_kbd_by_name_replies_types_map_t _aux; + return xcb_xkb_get_kbd_by_name_replies_types_map_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.nTypes; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_type_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_type_iterator_t i; + i.data = /* replies */ S->client_symbols.map.types_rtrn; + i.rem = /* replies */ S->client_symbols.nTypes; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.nKeySyms; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_sym_map_iterator_t i; + i.data = /* replies */ S->client_symbols.map.syms_rtrn; + i.rem = /* replies */ S->client_symbols.nKeySyms; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.map.acts_rtrn_count; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.nKeyActions; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->client_symbols.map.acts_rtrn_count + /* replies */ S->client_symbols.nKeyActions; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.map.acts_rtrn_acts; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.totalActions; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_action_iterator_t i; + i.data = /* replies */ S->client_symbols.map.acts_rtrn_acts; + i.rem = /* replies */ S->client_symbols.totalActions; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.map.behaviors_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.totalKeyBehaviors; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_set_behavior_iterator_t i; + i.data = /* replies */ S->client_symbols.map.behaviors_rtrn; + i.rem = /* replies */ S->client_symbols.totalKeyBehaviors; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.map.vmods_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.nVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->client_symbols.map.vmods_rtrn + /* replies */ S->client_symbols.nVModMapKeys; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.map.explicit_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.totalKeyExplicit; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_set_explicit_iterator_t i; + i.data = /* replies */ S->client_symbols.map.explicit_rtrn; + i.rem = /* replies */ S->client_symbols.totalKeyExplicit; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.map.modmap_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.totalModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_mod_map_iterator_t i; + i.data = /* replies */ S->client_symbols.map.modmap_rtrn; + i.rem = /* replies */ S->client_symbols.totalModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.map.vmodmap_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->client_symbols.totalVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_v_mod_map_iterator_t i; + i.data = /* replies */ S->client_symbols.map.vmodmap_rtrn; + i.rem = /* replies */ S->client_symbols.totalVModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[19]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(present & XCB_XKB_MAP_PART_KEY_TYPES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* types_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types_rtrn; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->types_rtrn; + for(i=0; isyms_rtrn; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->syms_rtrn; + for(i=0; iacts_rtrn_count; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* acts_rtrn_acts */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_acts; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors_rtrn; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods_rtrn; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit_rtrn; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap_rtrn; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap_rtrn; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; itypes_rtrn = (xcb_xkb_key_type_t *)xcb_tmp; + for(i=0; isyms_rtrn = (xcb_xkb_key_sym_map_t *)xcb_tmp; + for(i=0; iacts_rtrn_count = (uint8_t *)xcb_tmp; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* acts_rtrn_acts */ + _aux->acts_rtrn_acts = (xcb_xkb_action_t *)xcb_tmp; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors_rtrn */ + _aux->behaviors_rtrn = (xcb_xkb_set_behavior_t *)xcb_tmp; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods_rtrn */ + _aux->vmods_rtrn = (uint8_t *)xcb_tmp; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit_rtrn */ + _aux->explicit_rtrn = (xcb_xkb_set_explicit_t *)xcb_tmp; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap_rtrn */ + _aux->modmap_rtrn = (xcb_xkb_key_mod_map_t *)xcb_tmp; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap_rtrn */ + _aux->vmodmap_rtrn = (xcb_xkb_key_v_mod_map_t *)xcb_tmp; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */) +{ + xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t _aux; + return xcb_xkb_get_kbd_by_name_replies_client_symbols_map_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.nTypes; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_type_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_type_iterator_t i; + i.data = /* replies */ S->server_symbols.map.types_rtrn; + i.rem = /* replies */ S->server_symbols.nTypes; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.nKeySyms; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_sym_map_iterator_t i; + i.data = /* replies */ S->server_symbols.map.syms_rtrn; + i.rem = /* replies */ S->server_symbols.nKeySyms; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.map.acts_rtrn_count; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.nKeyActions; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->server_symbols.map.acts_rtrn_count + /* replies */ S->server_symbols.nKeyActions; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.map.acts_rtrn_acts; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.totalActions; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_action_iterator_t i; + i.data = /* replies */ S->server_symbols.map.acts_rtrn_acts; + i.rem = /* replies */ S->server_symbols.totalActions; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.map.behaviors_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.totalKeyBehaviors; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_set_behavior_iterator_t i; + i.data = /* replies */ S->server_symbols.map.behaviors_rtrn; + i.rem = /* replies */ S->server_symbols.totalKeyBehaviors; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.map.vmods_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.nVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->server_symbols.map.vmods_rtrn + /* replies */ S->server_symbols.nVModMapKeys; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.map.explicit_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.totalKeyExplicit; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_set_explicit_iterator_t i; + i.data = /* replies */ S->server_symbols.map.explicit_rtrn; + i.rem = /* replies */ S->server_symbols.totalKeyExplicit; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.map.modmap_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.totalModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_mod_map_iterator_t i; + i.data = /* replies */ S->server_symbols.map.modmap_rtrn; + i.rem = /* replies */ S->server_symbols.totalModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.map.vmodmap_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->server_symbols.totalVModMapKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_v_mod_map_iterator_t i; + i.data = /* replies */ S->server_symbols.map.vmodmap_rtrn; + i.rem = /* replies */ S->server_symbols.totalVModMapKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[19]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(present & XCB_XKB_MAP_PART_KEY_TYPES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* types_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types_rtrn; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->types_rtrn; + for(i=0; isyms_rtrn; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->syms_rtrn; + for(i=0; iacts_rtrn_count; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* acts_rtrn_acts */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_acts; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors_rtrn; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods_rtrn; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit_rtrn; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap_rtrn; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap_rtrn; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; itypes_rtrn = (xcb_xkb_key_type_t *)xcb_tmp; + for(i=0; isyms_rtrn = (xcb_xkb_key_sym_map_t *)xcb_tmp; + for(i=0; iacts_rtrn_count = (uint8_t *)xcb_tmp; + xcb_block_len += nKeyActions * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* acts_rtrn_acts */ + _aux->acts_rtrn_acts = (xcb_xkb_action_t *)xcb_tmp; + xcb_block_len += totalActions * sizeof(xcb_xkb_action_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + } + if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* behaviors_rtrn */ + _aux->behaviors_rtrn = (xcb_xkb_set_behavior_t *)xcb_tmp; + xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmods_rtrn */ + _aux->vmods_rtrn = (uint8_t *)xcb_tmp; + xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + } + if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* explicit_rtrn */ + _aux->explicit_rtrn = (xcb_xkb_set_explicit_t *)xcb_tmp; + xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t); + } + if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* modmap_rtrn */ + _aux->modmap_rtrn = (xcb_xkb_key_mod_map_t *)xcb_tmp; + xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t); + } + if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* vmodmap_rtrn */ + _aux->vmodmap_rtrn = (xcb_xkb_key_v_mod_map_t *)xcb_tmp; + xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */) +{ + xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t _aux; + return xcb_xkb_get_kbd_by_name_replies_server_symbols_map_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux); +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.valueList.typeNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.nTypes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->key_names.valueList.typeNames + /* replies */ S->key_names.nTypes; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.valueList.nLevelsPerType; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.nKTLevels; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->key_names.valueList.nLevelsPerType + /* replies */ S->key_names.nKTLevels; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.valueList.ktLevelNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return xcb_sumof(/* replies */ S->key_names.valueList.nLevelsPerType, /* replies */ S->key_names.nKTLevels); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->key_names.valueList.ktLevelNames + xcb_sumof(/* replies */ S->key_names.valueList.nLevelsPerType, /* replies */ S->key_names.nKTLevels); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.valueList.indicatorNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return xcb_popcount(/* replies */ S->key_names.indicators); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->key_names.valueList.indicatorNames + xcb_popcount(/* replies */ S->key_names.indicators); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.valueList.virtualModNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return xcb_popcount(/* replies */ S->key_names.virtualMods); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->key_names.valueList.virtualModNames + xcb_popcount(/* replies */ S->key_names.virtualMods); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.valueList.groups; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return xcb_popcount(/* replies */ S->key_names.groupNames); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->key_names.valueList.groups + xcb_popcount(/* replies */ S->key_names.groupNames); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_name_t * + ** + *****************************************************************************/ + +xcb_xkb_key_name_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.valueList.keyNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.nKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_xkb_key_name_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_name_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_name_iterator_t i; + i.data = /* replies */ S->key_names.valueList.keyNames; + i.rem = /* replies */ S->key_names.nKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.valueList.keyAliases; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.nKeyAliases; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_alias_iterator_t i; + i.data = /* replies */ S->key_names.valueList.keyAliases; + i.rem = /* replies */ S->key_names.nKeyAliases; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.valueList.radioGroupNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->key_names.nRadioGroups; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->key_names.valueList.radioGroupNames + /* replies */ S->key_names.nRadioGroups; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[25]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(which & XCB_XKB_NAME_DETAIL_KEYCODES) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.keycodesName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.geometryName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometryName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.symbolsName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.physSymbolsName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->physSymbolsName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_TYPES) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.typesName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_COMPAT) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.compatName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* typeNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->typeNames; + xcb_block_len += nTypes * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* nLevelsPerType */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->nLevelsPerType; + xcb_block_len += nKTLevels * sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = nKTLevels * sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ktLevelNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames; + xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* indicatorNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicatorNames; + xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* virtualModNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->virtualModNames; + xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* groups */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->groups; + xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyNames; + xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t); + xcb_parts[xcb_parts_idx].iov_len = nKeys * sizeof(xcb_xkb_key_name_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_name_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyAliases; + xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts[xcb_parts_idx].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* radioGroupNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->radioGroupNames; + xcb_block_len += nRadioGroups * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = nRadioGroups * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; ikeycodesName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.geometryName */ + _aux->geometryName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.symbolsName */ + _aux->symbolsName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.physSymbolsName */ + _aux->physSymbolsName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_TYPES) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.typesName */ + _aux->typesName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_COMPAT) { + /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.compatName */ + _aux->compatName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* typeNames */ + _aux->typeNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += nTypes * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* nLevelsPerType */ + _aux->nLevelsPerType = (uint8_t *)xcb_tmp; + xcb_block_len += nKTLevels * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ktLevelNames */ + _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* indicatorNames */ + _aux->indicatorNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* virtualModNames */ + _aux->virtualModNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* groups */ + _aux->groups = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyNames */ + _aux->keyNames = (xcb_xkb_key_name_t *)xcb_tmp; + xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_name_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + _aux->keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp; + xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* radioGroupNames */ + _aux->radioGroupNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += nRadioGroups * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */) +{ + xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t _aux; + return xcb_xkb_get_kbd_by_name_replies_key_names_value_list_unpack(_buffer, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, &_aux); +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.valueList.typeNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.nTypes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->other_names.valueList.typeNames + /* replies */ S->other_names.nTypes; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.valueList.nLevelsPerType; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.nKTLevels; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->other_names.valueList.nLevelsPerType + /* replies */ S->other_names.nKTLevels; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.valueList.ktLevelNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return xcb_sumof(/* replies */ S->other_names.valueList.nLevelsPerType, /* replies */ S->other_names.nKTLevels); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->other_names.valueList.ktLevelNames + xcb_sumof(/* replies */ S->other_names.valueList.nLevelsPerType, /* replies */ S->other_names.nKTLevels); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.valueList.indicatorNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return xcb_popcount(/* replies */ S->other_names.indicators); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->other_names.valueList.indicatorNames + xcb_popcount(/* replies */ S->other_names.indicators); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.valueList.virtualModNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return xcb_popcount(/* replies */ S->other_names.virtualMods); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->other_names.valueList.virtualModNames + xcb_popcount(/* replies */ S->other_names.virtualMods); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.valueList.groups; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return xcb_popcount(/* replies */ S->other_names.groupNames); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->other_names.valueList.groups + xcb_popcount(/* replies */ S->other_names.groupNames); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_name_t * + ** + *****************************************************************************/ + +xcb_xkb_key_name_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.valueList.keyNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.nKeys; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_xkb_key_name_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_name_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_name_iterator_t i; + i.data = /* replies */ S->other_names.valueList.keyNames; + i.rem = /* replies */ S->other_names.nKeys; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.valueList.keyAliases; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.nKeyAliases; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_alias_iterator_t i; + i.data = /* replies */ S->other_names.valueList.keyAliases; + i.rem = /* replies */ S->other_names.nKeyAliases; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.valueList.radioGroupNames; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->other_names.nRadioGroups; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->other_names.valueList.radioGroupNames + /* replies */ S->other_names.nRadioGroups; + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[25]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(which & XCB_XKB_NAME_DETAIL_KEYCODES) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.keycodesName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.geometryName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometryName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.symbolsName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.physSymbolsName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->physSymbolsName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_TYPES) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.typesName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_COMPAT) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.compatName */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatName; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* typeNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->typeNames; + xcb_block_len += nTypes * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* nLevelsPerType */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->nLevelsPerType; + xcb_block_len += nKTLevels * sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = nKTLevels * sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ktLevelNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames; + xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* indicatorNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicatorNames; + xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* virtualModNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->virtualModNames; + xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* groups */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->groups; + xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyNames; + xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t); + xcb_parts[xcb_parts_idx].iov_len = nKeys * sizeof(xcb_xkb_key_name_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_name_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyAliases; + xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts[xcb_parts_idx].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* radioGroupNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->radioGroupNames; + xcb_block_len += nRadioGroups * sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = nRadioGroups * sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; ikeycodesName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.geometryName */ + _aux->geometryName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.symbolsName */ + _aux->symbolsName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.physSymbolsName */ + _aux->physSymbolsName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_TYPES) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.typesName */ + _aux->typesName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_COMPAT) { + /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.compatName */ + _aux->compatName = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* typeNames */ + _aux->typeNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += nTypes * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* nLevelsPerType */ + _aux->nLevelsPerType = (uint8_t *)xcb_tmp; + xcb_block_len += nKTLevels * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* ktLevelNames */ + _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* indicatorNames */ + _aux->indicatorNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* virtualModNames */ + _aux->virtualModNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* groups */ + _aux->groups = (xcb_atom_t *)xcb_tmp; + xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyNames */ + _aux->keyNames = (xcb_xkb_key_name_t *)xcb_tmp; + xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_name_t); + } + if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + _aux->keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp; + xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) { + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* radioGroupNames */ + _aux->radioGroupNames = (xcb_atom_t *)xcb_tmp; + xcb_block_len += nRadioGroups * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */) +{ + xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t _aux; + return xcb_xkb_get_kbd_by_name_replies_other_names_value_list_unpack(_buffer, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, &_aux); +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_types_map_t * xcb_xkb_get_kbd_by_name_replies_types_map + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_types_map_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_types_map_t * +xcb_xkb_get_kbd_by_name_replies_types_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */) +{ + return (xcb_xkb_get_kbd_by_name_replies_types_map_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->compat_map.si_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return (16 * /* replies */ S->compat_map.nSIRtrn); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_generic_iterator_t i; + i.data = /* replies */ S->compat_map.si_rtrn + (16 * /* replies */ S->compat_map.nSIRtrn); + i.rem = 0; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_t * xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_mod_def_t * + ** + *****************************************************************************/ + +xcb_xkb_mod_def_t * +xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->compat_map.group_rtrn; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return xcb_popcount(/* replies */ S->compat_map.groupsRtrn); +} + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_iterator_t xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_mod_def_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_mod_def_iterator_t +xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_mod_def_iterator_t i; + i.data = /* replies */ S->compat_map.group_rtrn; + i.rem = xcb_popcount(/* replies */ S->compat_map.groupsRtrn); + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */) +{ + return (xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */) +{ + return (xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_t * xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_indicator_map_t * + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_t * +xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->indicator_maps.maps; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->indicator_maps.nIndicators; +} + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_iterator_t xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_indicator_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_indicator_map_iterator_t i; + i.data = /* replies */ S->indicator_maps.maps; + i.rem = /* replies */ S->indicator_maps.nIndicators; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */) +{ + return (xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */) +{ + return (xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_get_kbd_by_name_replies_geometry_label_font + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_get_kbd_by_name_replies_geometry_label_font (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */) +{ + return (xcb_xkb_counted_string_16_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_properties_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_properties_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->geometry.nProperties; +} + + +/***************************************************************************** + ** + ** xcb_xkb_property_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_properties_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_property_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_property_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_properties_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_property_iterator_t i; + i.data = /* replies */ S->geometry.properties; + i.rem = /* replies */ S->geometry.nProperties; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_colors_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_colors_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->geometry.nColors; +} + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_colors_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_counted_string_16_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_colors_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_counted_string_16_iterator_t i; + i.data = /* replies */ S->geometry.colors; + i.rem = /* replies */ S->geometry.nColors; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_shapes_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_shapes_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->geometry.nShapes; +} + + +/***************************************************************************** + ** + ** xcb_xkb_shape_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_shapes_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_shape_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_shape_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_shapes_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_shape_iterator_t i; + i.data = /* replies */ S->geometry.shapes; + i.rem = /* replies */ S->geometry.nShapes; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_sections_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_sections_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->geometry.nSections; +} + + +/***************************************************************************** + ** + ** xcb_xkb_section_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_sections_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_section_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_section_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_sections_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_section_iterator_t i; + i.data = /* replies */ S->geometry.sections; + i.rem = /* replies */ S->geometry.nSections; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_doodads_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_doodads_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->geometry.nDoodads; +} + + +/***************************************************************************** + ** + ** xcb_xkb_doodad_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_doodads_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_doodad_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_doodad_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_doodads_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_doodad_iterator_t i; + i.data = /* replies */ S->geometry.doodads; + i.rem = /* replies */ S->geometry.nDoodads; + i.index = (char *) i.data - (char *) S; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->geometry.keyAliases; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + return /* replies */ S->geometry.nKeyAliases; +} + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */) +{ + xcb_xkb_key_alias_iterator_t i; + i.data = /* replies */ S->geometry.keyAliases; + i.rem = /* replies */ S->geometry.nKeyAliases; + i.index = (char *) i.data - (char *) S; + return i; +} + +int +xcb_xkb_get_kbd_by_name_replies_serialize (void **_buffer /**< */, + uint16_t reported /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *_aux /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[172]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + if(reported & XCB_XKB_GBN_DETAIL_TYPES) { + /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_type */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.getmap_type; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.typeDeviceID */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.typeDeviceID; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_sequence */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.getmap_sequence; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_length */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.getmap_length; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_block_len += sizeof(uint8_t)*2; + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*2; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.typeMinKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.typeMinKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.typeMaxKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.typeMaxKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.present */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.present; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstType */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstType; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nTypes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nTypes; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalTypes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalTypes; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeySym */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstKeySym; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalSyms */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalSyms; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeySyms */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nKeySyms; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyAction */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstKeyAction; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalActions */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalActions; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyActions */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nKeyActions; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyBehavior */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstKeyBehavior; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyBehaviors */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nKeyBehaviors; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalKeyBehaviors */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalKeyBehaviors; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyExplicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstKeyExplicit; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyExplicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nKeyExplicit; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalKeyExplicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalKeyExplicit; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstModMapKey */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstModMapKey; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstVModMapKey */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstVModMapKey; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nVModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nVModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalVModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalVModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.pad1 */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.virtualMods */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.virtualMods; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* map */ + xcb_parts[xcb_parts_idx].iov_base = (char *)0; + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_types_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->types.nTypes, _aux->types.nKeySyms, _aux->types.nKeyActions, _aux->types.totalActions, _aux->types.totalKeyBehaviors, _aux->types.nVModMapKeys, _aux->types.totalKeyExplicit, _aux->types.totalModMapKeys, _aux->types.totalVModMapKeys, _aux->types.present, &_aux->types.map); + xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_types_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->types.nTypes, _aux->types.nKeySyms, _aux->types.nKeyActions, _aux->types.totalActions, _aux->types.totalKeyBehaviors, _aux->types.nVModMapKeys, _aux->types.totalKeyExplicit, _aux->types.totalModMapKeys, _aux->types.totalVModMapKeys, _aux->types.present, &_aux->types.map); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_types_map_t); + } + if(reported & XCB_XKB_GBN_DETAIL_COMPAT_MAP) { + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.compatDeviceID */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.compatDeviceID; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.groupsRtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.groupsRtrn; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.firstSIRtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.firstSIRtrn; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.nSIRtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.nSIRtrn; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.nTotalSI */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.nTotalSI; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.pad1 */ + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_block_len += sizeof(uint8_t)*16; + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*16; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* si_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->compat_map.si_rtrn; + xcb_block_len += (16 * _aux->compat_map.nSIRtrn) * sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = (16 * _aux->compat_map.nSIRtrn) * sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* group_rtrn */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->compat_map.group_rtrn; + xcb_block_len += xcb_popcount(_aux->compat_map.groupsRtrn) * sizeof(xcb_xkb_mod_def_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(_aux->compat_map.groupsRtrn) * sizeof(xcb_xkb_mod_def_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t); + } + if(reported & XCB_XKB_GBN_DETAIL_CLIENT_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientDeviceID */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.clientDeviceID; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_block_len += sizeof(uint8_t)*2; + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*2; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientMinKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.clientMinKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientMaxKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.clientMaxKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.present */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.present; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstType */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstType; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nTypes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nTypes; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalTypes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalTypes; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeySym */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstKeySym; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalSyms */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalSyms; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeySyms */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nKeySyms; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyAction */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstKeyAction; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalActions */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalActions; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyActions */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nKeyActions; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyBehavior */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstKeyBehavior; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyBehaviors */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nKeyBehaviors; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalKeyBehaviors */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalKeyBehaviors; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyExplicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstKeyExplicit; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyExplicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nKeyExplicit; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalKeyExplicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalKeyExplicit; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstModMapKey */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstModMapKey; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstVModMapKey */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstVModMapKey; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nVModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nVModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalVModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalVModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.pad1 */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.virtualMods */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.virtualMods; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* map */ + xcb_parts[xcb_parts_idx].iov_base = (char *)0; + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_client_symbols_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->client_symbols.nTypes, _aux->client_symbols.nKeySyms, _aux->client_symbols.nKeyActions, _aux->client_symbols.totalActions, _aux->client_symbols.totalKeyBehaviors, _aux->client_symbols.nVModMapKeys, _aux->client_symbols.totalKeyExplicit, _aux->client_symbols.totalModMapKeys, _aux->client_symbols.totalVModMapKeys, _aux->client_symbols.present, &_aux->client_symbols.map); + xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_client_symbols_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->client_symbols.nTypes, _aux->client_symbols.nKeySyms, _aux->client_symbols.nKeyActions, _aux->client_symbols.totalActions, _aux->client_symbols.totalKeyBehaviors, _aux->client_symbols.nVModMapKeys, _aux->client_symbols.totalKeyExplicit, _aux->client_symbols.totalModMapKeys, _aux->client_symbols.totalVModMapKeys, _aux->client_symbols.present, &_aux->client_symbols.map); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t); + } + if(reported & XCB_XKB_GBN_DETAIL_SERVER_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverDeviceID */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.serverDeviceID; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_block_len += sizeof(uint8_t)*2; + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*2; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverMinKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.serverMinKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverMaxKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.serverMaxKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.present */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.present; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstType */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstType; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nTypes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nTypes; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalTypes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalTypes; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeySym */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstKeySym; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalSyms */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalSyms; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeySyms */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nKeySyms; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyAction */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstKeyAction; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalActions */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalActions; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyActions */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nKeyActions; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyBehavior */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstKeyBehavior; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyBehaviors */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nKeyBehaviors; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalKeyBehaviors */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalKeyBehaviors; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyExplicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstKeyExplicit; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyExplicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nKeyExplicit; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalKeyExplicit */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalKeyExplicit; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstModMapKey */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstModMapKey; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstVModMapKey */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstVModMapKey; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nVModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nVModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalVModMapKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalVModMapKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.pad1 */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.virtualMods */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.virtualMods; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* map */ + xcb_parts[xcb_parts_idx].iov_base = (char *)0; + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_server_symbols_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->server_symbols.nTypes, _aux->server_symbols.nKeySyms, _aux->server_symbols.nKeyActions, _aux->server_symbols.totalActions, _aux->server_symbols.totalKeyBehaviors, _aux->server_symbols.nVModMapKeys, _aux->server_symbols.totalKeyExplicit, _aux->server_symbols.totalModMapKeys, _aux->server_symbols.totalVModMapKeys, _aux->server_symbols.present, &_aux->server_symbols.map); + xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_server_symbols_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->server_symbols.nTypes, _aux->server_symbols.nKeySyms, _aux->server_symbols.nKeyActions, _aux->server_symbols.totalActions, _aux->server_symbols.totalKeyBehaviors, _aux->server_symbols.nVModMapKeys, _aux->server_symbols.totalKeyExplicit, _aux->server_symbols.totalModMapKeys, _aux->server_symbols.totalVModMapKeys, _aux->server_symbols.present, &_aux->server_symbols.map); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t); + } + if(reported & XCB_XKB_GBN_DETAIL_INDICATOR_MAPS) { + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.indicatorDeviceID */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicator_maps.indicatorDeviceID; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.which */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicator_maps.which; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.realIndicators */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicator_maps.realIndicators; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.nIndicators */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicator_maps.nIndicators; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_block_len += sizeof(uint8_t)*15; + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*15; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* maps */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicator_maps.maps; + xcb_block_len += _aux->indicator_maps.nIndicators * sizeof(xcb_xkb_indicator_map_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->indicator_maps.nIndicators * sizeof(xcb_xkb_indicator_map_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t); + } + if(reported & XCB_XKB_GBN_DETAIL_KEY_NAMES) { + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyDeviceID */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.keyDeviceID; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.which */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.which; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyMinKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.keyMinKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyMaxKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.keyMaxKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nTypes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nTypes; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.groupNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.groupNames; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.virtualMods */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.virtualMods; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.firstKey */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.firstKey; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.indicators */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.indicators; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nRadioGroups */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nRadioGroups; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKeyAliases */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nKeyAliases; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKTLevels */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nKTLevels; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_block_len += sizeof(uint8_t)*4; + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*4; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* valueList */ + xcb_parts[xcb_parts_idx].iov_base = (char *)0; + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_key_names_value_list_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->key_names.nTypes, _aux->key_names.nKTLevels, _aux->key_names.indicators, _aux->key_names.virtualMods, _aux->key_names.groupNames, _aux->key_names.nKeys, _aux->key_names.nKeyAliases, _aux->key_names.nRadioGroups, _aux->key_names.which, &_aux->key_names.valueList); + xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_key_names_value_list_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->key_names.nTypes, _aux->key_names.nKTLevels, _aux->key_names.indicators, _aux->key_names.virtualMods, _aux->key_names.groupNames, _aux->key_names.nKeys, _aux->key_names.nKeyAliases, _aux->key_names.nRadioGroups, _aux->key_names.which, &_aux->key_names.valueList); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t); + } + if(reported & XCB_XKB_GBN_DETAIL_OTHER_NAMES) { + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherDeviceID */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.otherDeviceID; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.which */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.which; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherMinKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.otherMinKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherMaxKeyCode */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.otherMaxKeyCode; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nTypes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nTypes; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.groupNames */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.groupNames; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.virtualMods */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.virtualMods; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.firstKey */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.firstKey; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKeys */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nKeys; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.indicators */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.indicators; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nRadioGroups */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nRadioGroups; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKeyAliases */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nKeyAliases; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKTLevels */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nKTLevels; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_block_len += sizeof(uint8_t)*4; + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*4; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* valueList */ + xcb_parts[xcb_parts_idx].iov_base = (char *)0; + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_other_names_value_list_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->other_names.nTypes, _aux->other_names.nKTLevels, _aux->other_names.indicators, _aux->other_names.virtualMods, _aux->other_names.groupNames, _aux->other_names.nKeys, _aux->other_names.nKeyAliases, _aux->other_names.nRadioGroups, _aux->other_names.which, &_aux->other_names.valueList); + xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_other_names_value_list_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->other_names.nTypes, _aux->other_names.nKTLevels, _aux->other_names.indicators, _aux->other_names.virtualMods, _aux->other_names.groupNames, _aux->other_names.nKeys, _aux->other_names.nKeyAliases, _aux->other_names.nRadioGroups, _aux->other_names.which, &_aux->other_names.valueList); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t); + } + if(reported & XCB_XKB_GBN_DETAIL_GEOMETRY) { + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.geometryDeviceID */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.geometryDeviceID; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.name */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.name; + xcb_block_len += sizeof(xcb_atom_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_atom_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.geometryFound */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.geometryFound; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.widthMM */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.widthMM; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.heightMM */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.heightMM; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nProperties */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nProperties; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nColors */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nColors; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nShapes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nShapes; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nSections */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nSections; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nDoodads */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nDoodads; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nKeyAliases */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nKeyAliases; + xcb_block_len += sizeof(uint16_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.baseColorNdx */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.baseColorNdx; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.labelColorNdx */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.labelColorNdx; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* labelFont */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.labelFont; + xcb_block_len += xcb_xkb_counted_string_16_sizeof(_aux->geometry.labelFont); + xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_counted_string_16_sizeof(_aux->geometry.labelFont); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* properties */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.properties; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->geometry.properties; + for(i=0; i<_aux->geometry.nProperties; i++) { + xcb_block_len = xcb_xkb_property_sizeof(xcb_tmp); + xcb_parts[xcb_parts_idx].iov_len += xcb_block_len; + } + xcb_block_len = xcb_parts[xcb_parts_idx].iov_len; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_property_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* colors */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.colors; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->geometry.colors; + for(i=0; i<_aux->geometry.nColors; i++) { + xcb_block_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp); + xcb_parts[xcb_parts_idx].iov_len += xcb_block_len; + } + xcb_block_len = xcb_parts[xcb_parts_idx].iov_len; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* shapes */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.shapes; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->geometry.shapes; + for(i=0; i<_aux->geometry.nShapes; i++) { + xcb_block_len = xcb_xkb_shape_sizeof(xcb_tmp); + xcb_parts[xcb_parts_idx].iov_len += xcb_block_len; + } + xcb_block_len = xcb_parts[xcb_parts_idx].iov_len; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_shape_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* sections */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.sections; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->geometry.sections; + for(i=0; i<_aux->geometry.nSections; i++) { + xcb_block_len = xcb_xkb_section_sizeof(xcb_tmp); + xcb_parts[xcb_parts_idx].iov_len += xcb_block_len; + } + xcb_block_len = xcb_parts[xcb_parts_idx].iov_len; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_section_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* doodads */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.doodads; + xcb_parts[xcb_parts_idx].iov_len = 0; + xcb_tmp = (char *) _aux->geometry.doodads; + for(i=0; i<_aux->geometry.nDoodads; i++) { + xcb_block_len = xcb_xkb_doodad_sizeof(xcb_tmp); + xcb_parts[xcb_parts_idx].iov_len += xcb_block_len; + } + xcb_block_len = xcb_parts[xcb_parts_idx].iov_len; + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_doodad_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.keyAliases; + xcb_block_len += _aux->geometry.nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->geometry.nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; itypes.getmap_type = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.typeDeviceID */ + _aux->types.typeDeviceID = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_sequence */ + _aux->types.getmap_sequence = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_length */ + _aux->types.getmap_length = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.pad0 */ + _aux->types.pad0[0] = *(uint8_t *)xcb_tmp; + _aux->types.pad0[1] = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t) * 2; + xcb_tmp += sizeof(uint8_t) * 2; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.typeMinKeyCode */ + _aux->types.typeMinKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.typeMaxKeyCode */ + _aux->types.typeMaxKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.present */ + _aux->types.present = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstType */ + _aux->types.firstType = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nTypes */ + _aux->types.nTypes = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalTypes */ + _aux->types.totalTypes = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeySym */ + _aux->types.firstKeySym = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalSyms */ + _aux->types.totalSyms = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeySyms */ + _aux->types.nKeySyms = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyAction */ + _aux->types.firstKeyAction = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalActions */ + _aux->types.totalActions = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyActions */ + _aux->types.nKeyActions = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyBehavior */ + _aux->types.firstKeyBehavior = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyBehaviors */ + _aux->types.nKeyBehaviors = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalKeyBehaviors */ + _aux->types.totalKeyBehaviors = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyExplicit */ + _aux->types.firstKeyExplicit = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyExplicit */ + _aux->types.nKeyExplicit = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalKeyExplicit */ + _aux->types.totalKeyExplicit = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstModMapKey */ + _aux->types.firstModMapKey = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nModMapKeys */ + _aux->types.nModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalModMapKeys */ + _aux->types.totalModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.firstVModMapKey */ + _aux->types.firstVModMapKey = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.nVModMapKeys */ + _aux->types.nVModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.totalVModMapKeys */ + _aux->types.totalVModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.pad1 */ + _aux->types.pad1 = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.types.virtualMods */ + _aux->types.virtualMods = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* map */ + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_types_map_unpack(xcb_tmp, _aux->types.nTypes, _aux->types.nKeySyms, _aux->types.nKeyActions, _aux->types.totalActions, _aux->types.totalKeyBehaviors, _aux->types.nVModMapKeys, _aux->types.totalKeyExplicit, _aux->types.totalModMapKeys, _aux->types.totalVModMapKeys, _aux->types.present, &_aux->types.map); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_types_map_t); + } + if(reported & XCB_XKB_GBN_DETAIL_COMPAT_MAP) { + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.compatDeviceID */ + _aux->compat_map.compatDeviceID = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.groupsRtrn */ + _aux->compat_map.groupsRtrn = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.pad0 */ + _aux->compat_map.pad0 = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.firstSIRtrn */ + _aux->compat_map.firstSIRtrn = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.nSIRtrn */ + _aux->compat_map.nSIRtrn = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.nTotalSI */ + _aux->compat_map.nTotalSI = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.pad1 */ + _aux->compat_map.pad1[0] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[1] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[2] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[3] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[4] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[5] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[6] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[7] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[8] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[9] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[10] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[11] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[12] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[13] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[14] = *(uint8_t *)xcb_tmp; + _aux->compat_map.pad1[15] = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t) * 16; + xcb_tmp += sizeof(uint8_t) * 16; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* si_rtrn */ + _aux->compat_map.si_rtrn = (uint8_t *)xcb_tmp; + xcb_block_len += (16 * _aux->compat_map.nSIRtrn) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* group_rtrn */ + _aux->compat_map.group_rtrn = (xcb_xkb_mod_def_t *)xcb_tmp; + xcb_block_len += xcb_popcount(_aux->compat_map.groupsRtrn) * sizeof(xcb_xkb_mod_def_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t); + } + if(reported & XCB_XKB_GBN_DETAIL_CLIENT_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientDeviceID */ + _aux->client_symbols.clientDeviceID = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.pad0 */ + _aux->client_symbols.pad0[0] = *(uint8_t *)xcb_tmp; + _aux->client_symbols.pad0[1] = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t) * 2; + xcb_tmp += sizeof(uint8_t) * 2; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientMinKeyCode */ + _aux->client_symbols.clientMinKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientMaxKeyCode */ + _aux->client_symbols.clientMaxKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.present */ + _aux->client_symbols.present = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstType */ + _aux->client_symbols.firstType = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nTypes */ + _aux->client_symbols.nTypes = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalTypes */ + _aux->client_symbols.totalTypes = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeySym */ + _aux->client_symbols.firstKeySym = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalSyms */ + _aux->client_symbols.totalSyms = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeySyms */ + _aux->client_symbols.nKeySyms = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyAction */ + _aux->client_symbols.firstKeyAction = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalActions */ + _aux->client_symbols.totalActions = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyActions */ + _aux->client_symbols.nKeyActions = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyBehavior */ + _aux->client_symbols.firstKeyBehavior = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyBehaviors */ + _aux->client_symbols.nKeyBehaviors = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalKeyBehaviors */ + _aux->client_symbols.totalKeyBehaviors = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyExplicit */ + _aux->client_symbols.firstKeyExplicit = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyExplicit */ + _aux->client_symbols.nKeyExplicit = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalKeyExplicit */ + _aux->client_symbols.totalKeyExplicit = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstModMapKey */ + _aux->client_symbols.firstModMapKey = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nModMapKeys */ + _aux->client_symbols.nModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalModMapKeys */ + _aux->client_symbols.totalModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstVModMapKey */ + _aux->client_symbols.firstVModMapKey = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nVModMapKeys */ + _aux->client_symbols.nVModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalVModMapKeys */ + _aux->client_symbols.totalVModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.pad1 */ + _aux->client_symbols.pad1 = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.virtualMods */ + _aux->client_symbols.virtualMods = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* map */ + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_client_symbols_map_unpack(xcb_tmp, _aux->client_symbols.nTypes, _aux->client_symbols.nKeySyms, _aux->client_symbols.nKeyActions, _aux->client_symbols.totalActions, _aux->client_symbols.totalKeyBehaviors, _aux->client_symbols.nVModMapKeys, _aux->client_symbols.totalKeyExplicit, _aux->client_symbols.totalModMapKeys, _aux->client_symbols.totalVModMapKeys, _aux->client_symbols.present, &_aux->client_symbols.map); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t); + } + if(reported & XCB_XKB_GBN_DETAIL_SERVER_SYMBOLS) { + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverDeviceID */ + _aux->server_symbols.serverDeviceID = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.pad0 */ + _aux->server_symbols.pad0[0] = *(uint8_t *)xcb_tmp; + _aux->server_symbols.pad0[1] = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t) * 2; + xcb_tmp += sizeof(uint8_t) * 2; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverMinKeyCode */ + _aux->server_symbols.serverMinKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverMaxKeyCode */ + _aux->server_symbols.serverMaxKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.present */ + _aux->server_symbols.present = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstType */ + _aux->server_symbols.firstType = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nTypes */ + _aux->server_symbols.nTypes = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalTypes */ + _aux->server_symbols.totalTypes = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeySym */ + _aux->server_symbols.firstKeySym = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalSyms */ + _aux->server_symbols.totalSyms = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeySyms */ + _aux->server_symbols.nKeySyms = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyAction */ + _aux->server_symbols.firstKeyAction = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalActions */ + _aux->server_symbols.totalActions = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyActions */ + _aux->server_symbols.nKeyActions = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyBehavior */ + _aux->server_symbols.firstKeyBehavior = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyBehaviors */ + _aux->server_symbols.nKeyBehaviors = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalKeyBehaviors */ + _aux->server_symbols.totalKeyBehaviors = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyExplicit */ + _aux->server_symbols.firstKeyExplicit = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyExplicit */ + _aux->server_symbols.nKeyExplicit = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalKeyExplicit */ + _aux->server_symbols.totalKeyExplicit = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstModMapKey */ + _aux->server_symbols.firstModMapKey = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nModMapKeys */ + _aux->server_symbols.nModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalModMapKeys */ + _aux->server_symbols.totalModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstVModMapKey */ + _aux->server_symbols.firstVModMapKey = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nVModMapKeys */ + _aux->server_symbols.nVModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalVModMapKeys */ + _aux->server_symbols.totalVModMapKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.pad1 */ + _aux->server_symbols.pad1 = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.virtualMods */ + _aux->server_symbols.virtualMods = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* map */ + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_server_symbols_map_unpack(xcb_tmp, _aux->server_symbols.nTypes, _aux->server_symbols.nKeySyms, _aux->server_symbols.nKeyActions, _aux->server_symbols.totalActions, _aux->server_symbols.totalKeyBehaviors, _aux->server_symbols.nVModMapKeys, _aux->server_symbols.totalKeyExplicit, _aux->server_symbols.totalModMapKeys, _aux->server_symbols.totalVModMapKeys, _aux->server_symbols.present, &_aux->server_symbols.map); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t); + } + if(reported & XCB_XKB_GBN_DETAIL_INDICATOR_MAPS) { + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.indicatorDeviceID */ + _aux->indicator_maps.indicatorDeviceID = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.which */ + _aux->indicator_maps.which = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.realIndicators */ + _aux->indicator_maps.realIndicators = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.nIndicators */ + _aux->indicator_maps.nIndicators = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.pad0 */ + _aux->indicator_maps.pad0[0] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[1] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[2] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[3] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[4] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[5] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[6] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[7] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[8] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[9] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[10] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[11] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[12] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[13] = *(uint8_t *)xcb_tmp; + _aux->indicator_maps.pad0[14] = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t) * 15; + xcb_tmp += sizeof(uint8_t) * 15; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* maps */ + _aux->indicator_maps.maps = (xcb_xkb_indicator_map_t *)xcb_tmp; + xcb_block_len += _aux->indicator_maps.nIndicators * sizeof(xcb_xkb_indicator_map_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t); + } + if(reported & XCB_XKB_GBN_DETAIL_KEY_NAMES) { + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyDeviceID */ + _aux->key_names.keyDeviceID = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.which */ + _aux->key_names.which = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyMinKeyCode */ + _aux->key_names.keyMinKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyMaxKeyCode */ + _aux->key_names.keyMaxKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nTypes */ + _aux->key_names.nTypes = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.groupNames */ + _aux->key_names.groupNames = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.virtualMods */ + _aux->key_names.virtualMods = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.firstKey */ + _aux->key_names.firstKey = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKeys */ + _aux->key_names.nKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.indicators */ + _aux->key_names.indicators = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nRadioGroups */ + _aux->key_names.nRadioGroups = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKeyAliases */ + _aux->key_names.nKeyAliases = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKTLevels */ + _aux->key_names.nKTLevels = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.key_names.pad0 */ + _aux->key_names.pad0[0] = *(uint8_t *)xcb_tmp; + _aux->key_names.pad0[1] = *(uint8_t *)xcb_tmp; + _aux->key_names.pad0[2] = *(uint8_t *)xcb_tmp; + _aux->key_names.pad0[3] = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t) * 4; + xcb_tmp += sizeof(uint8_t) * 4; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* valueList */ + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_key_names_value_list_unpack(xcb_tmp, _aux->key_names.nTypes, _aux->key_names.nKTLevels, _aux->key_names.indicators, _aux->key_names.virtualMods, _aux->key_names.groupNames, _aux->key_names.nKeys, _aux->key_names.nKeyAliases, _aux->key_names.nRadioGroups, _aux->key_names.which, &_aux->key_names.valueList); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t); + } + if(reported & XCB_XKB_GBN_DETAIL_OTHER_NAMES) { + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherDeviceID */ + _aux->other_names.otherDeviceID = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.which */ + _aux->other_names.which = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherMinKeyCode */ + _aux->other_names.otherMinKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherMaxKeyCode */ + _aux->other_names.otherMaxKeyCode = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nTypes */ + _aux->other_names.nTypes = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.groupNames */ + _aux->other_names.groupNames = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.virtualMods */ + _aux->other_names.virtualMods = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.firstKey */ + _aux->other_names.firstKey = *(xcb_keycode_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_keycode_t); + xcb_tmp += sizeof(xcb_keycode_t); + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKeys */ + _aux->other_names.nKeys = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.indicators */ + _aux->other_names.indicators = *(uint32_t *)xcb_tmp; + xcb_block_len += sizeof(uint32_t); + xcb_tmp += sizeof(uint32_t); + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nRadioGroups */ + _aux->other_names.nRadioGroups = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKeyAliases */ + _aux->other_names.nKeyAliases = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKTLevels */ + _aux->other_names.nKTLevels = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.other_names.pad0 */ + _aux->other_names.pad0[0] = *(uint8_t *)xcb_tmp; + _aux->other_names.pad0[1] = *(uint8_t *)xcb_tmp; + _aux->other_names.pad0[2] = *(uint8_t *)xcb_tmp; + _aux->other_names.pad0[3] = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t) * 4; + xcb_tmp += sizeof(uint8_t) * 4; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* valueList */ + xcb_block_len += xcb_xkb_get_kbd_by_name_replies_other_names_value_list_unpack(xcb_tmp, _aux->other_names.nTypes, _aux->other_names.nKTLevels, _aux->other_names.indicators, _aux->other_names.virtualMods, _aux->other_names.groupNames, _aux->other_names.nKeys, _aux->other_names.nKeyAliases, _aux->other_names.nRadioGroups, _aux->other_names.which, &_aux->other_names.valueList); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t); + } + if(reported & XCB_XKB_GBN_DETAIL_GEOMETRY) { + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.geometryDeviceID */ + _aux->geometry.geometryDeviceID = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.name */ + _aux->geometry.name = *(xcb_atom_t *)xcb_tmp; + xcb_block_len += sizeof(xcb_atom_t); + xcb_tmp += sizeof(xcb_atom_t); + xcb_align_to = ALIGNOF(xcb_atom_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.geometryFound */ + _aux->geometry.geometryFound = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.pad0 */ + _aux->geometry.pad0 = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.widthMM */ + _aux->geometry.widthMM = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.heightMM */ + _aux->geometry.heightMM = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nProperties */ + _aux->geometry.nProperties = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nColors */ + _aux->geometry.nColors = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nShapes */ + _aux->geometry.nShapes = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nSections */ + _aux->geometry.nSections = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nDoodads */ + _aux->geometry.nDoodads = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nKeyAliases */ + _aux->geometry.nKeyAliases = *(uint16_t *)xcb_tmp; + xcb_block_len += sizeof(uint16_t); + xcb_tmp += sizeof(uint16_t); + xcb_align_to = ALIGNOF(uint16_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.baseColorNdx */ + _aux->geometry.baseColorNdx = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_xkb_get_kbd_by_name_replies_t.geometry.labelColorNdx */ + _aux->geometry.labelColorNdx = *(uint8_t *)xcb_tmp; + xcb_block_len += sizeof(uint8_t); + xcb_tmp += sizeof(uint8_t); + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* labelFont */ + _aux->geometry.labelFont = (xcb_xkb_counted_string_16_t *)xcb_tmp; + xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* properties */ + _aux->geometry.properties = (xcb_xkb_property_t *)xcb_tmp; + for(i=0; i<_aux->geometry.nProperties; i++) { + xcb_tmp_len = xcb_xkb_property_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_property_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* colors */ + _aux->geometry.colors = (xcb_xkb_counted_string_16_t *)xcb_tmp; + for(i=0; i<_aux->geometry.nColors; i++) { + xcb_tmp_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* shapes */ + _aux->geometry.shapes = (xcb_xkb_shape_t *)xcb_tmp; + for(i=0; i<_aux->geometry.nShapes; i++) { + xcb_tmp_len = xcb_xkb_shape_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_shape_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* sections */ + _aux->geometry.sections = (xcb_xkb_section_t *)xcb_tmp; + for(i=0; i<_aux->geometry.nSections; i++) { + xcb_tmp_len = xcb_xkb_section_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_section_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* doodads */ + _aux->geometry.doodads = (xcb_xkb_doodad_t *)xcb_tmp; + for(i=0; i<_aux->geometry.nDoodads; i++) { + xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_doodad_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* keyAliases */ + _aux->geometry.keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp; + xcb_block_len += _aux->geometry.nKeyAliases * sizeof(xcb_xkb_key_alias_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t); + } + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + +int +xcb_xkb_get_kbd_by_name_replies_sizeof (const void *_buffer /**< */, + uint16_t reported /**< */) +{ + xcb_xkb_get_kbd_by_name_replies_t _aux; + return xcb_xkb_get_kbd_by_name_replies_unpack(_buffer, reported, &_aux); +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_cookie_t xcb_xkb_get_kbd_by_name + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t need + ** @param uint16_t want + ** @param uint8_t load + ** @param uint8_t keymapsSpecLen + ** @param const xcb_xkb_string8_t *keymapsSpec + ** @param uint8_t keycodesSpecLen + ** @param const xcb_xkb_string8_t *keycodesSpec + ** @param uint8_t typesSpecLen + ** @param const xcb_xkb_string8_t *typesSpec + ** @param uint8_t compatMapSpecLen + ** @param const xcb_xkb_string8_t *compatMapSpec + ** @param uint8_t symbolsSpecLen + ** @param const xcb_xkb_string8_t *symbolsSpec + ** @param uint8_t geometrySpecLen + ** @param const xcb_xkb_string8_t *geometrySpec + ** @returns xcb_xkb_get_kbd_by_name_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_cookie_t +xcb_xkb_get_kbd_by_name (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t need /**< */, + uint16_t want /**< */, + uint8_t load /**< */, + uint8_t keymapsSpecLen /**< */, + const xcb_xkb_string8_t *keymapsSpec /**< */, + uint8_t keycodesSpecLen /**< */, + const xcb_xkb_string8_t *keycodesSpec /**< */, + uint8_t typesSpecLen /**< */, + const xcb_xkb_string8_t *typesSpec /**< */, + uint8_t compatMapSpecLen /**< */, + const xcb_xkb_string8_t *compatMapSpec /**< */, + uint8_t symbolsSpecLen /**< */, + const xcb_xkb_string8_t *symbolsSpec /**< */, + uint8_t geometrySpecLen /**< */, + const xcb_xkb_string8_t *geometrySpec /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_KBD_BY_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_kbd_by_name_cookie_t xcb_ret; + xcb_xkb_get_kbd_by_name_request_t xcb_out; + /* in the protocol description, variable size fields are followed by fixed size fields */ + void *xcb_aux = 0; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.need = need; + xcb_out.want = want; + xcb_out.load = load; + xcb_out.pad0 = 0; + xcb_out.keymapsSpecLen = keymapsSpecLen; + xcb_out.keycodesSpecLen = keycodesSpecLen; + xcb_out.typesSpecLen = typesSpecLen; + xcb_out.compatMapSpecLen = compatMapSpecLen; + xcb_out.symbolsSpecLen = symbolsSpecLen; + xcb_out.geometrySpecLen = geometrySpecLen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = 2*sizeof(uint8_t) + sizeof(uint16_t); + xcb_parts[3].iov_len = xcb_xkb_get_kbd_by_name_serialize (&xcb_aux, &xcb_out, keymapsSpec, keycodesSpec, typesSpec, compatMapSpec, symbolsSpec, geometrySpec); + xcb_parts[3].iov_base = (char *) xcb_aux; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + free(xcb_aux); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_cookie_t xcb_xkb_get_kbd_by_name_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t need + ** @param uint16_t want + ** @param uint8_t load + ** @param uint8_t keymapsSpecLen + ** @param const xcb_xkb_string8_t *keymapsSpec + ** @param uint8_t keycodesSpecLen + ** @param const xcb_xkb_string8_t *keycodesSpec + ** @param uint8_t typesSpecLen + ** @param const xcb_xkb_string8_t *typesSpec + ** @param uint8_t compatMapSpecLen + ** @param const xcb_xkb_string8_t *compatMapSpec + ** @param uint8_t symbolsSpecLen + ** @param const xcb_xkb_string8_t *symbolsSpec + ** @param uint8_t geometrySpecLen + ** @param const xcb_xkb_string8_t *geometrySpec + ** @returns xcb_xkb_get_kbd_by_name_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_cookie_t +xcb_xkb_get_kbd_by_name_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t need /**< */, + uint16_t want /**< */, + uint8_t load /**< */, + uint8_t keymapsSpecLen /**< */, + const xcb_xkb_string8_t *keymapsSpec /**< */, + uint8_t keycodesSpecLen /**< */, + const xcb_xkb_string8_t *keycodesSpec /**< */, + uint8_t typesSpecLen /**< */, + const xcb_xkb_string8_t *typesSpec /**< */, + uint8_t compatMapSpecLen /**< */, + const xcb_xkb_string8_t *compatMapSpec /**< */, + uint8_t symbolsSpecLen /**< */, + const xcb_xkb_string8_t *symbolsSpec /**< */, + uint8_t geometrySpecLen /**< */, + const xcb_xkb_string8_t *geometrySpec /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_KBD_BY_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_kbd_by_name_cookie_t xcb_ret; + xcb_xkb_get_kbd_by_name_request_t xcb_out; + /* in the protocol description, variable size fields are followed by fixed size fields */ + void *xcb_aux = 0; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.need = need; + xcb_out.want = want; + xcb_out.load = load; + xcb_out.pad0 = 0; + xcb_out.keymapsSpecLen = keymapsSpecLen; + xcb_out.keycodesSpecLen = keycodesSpecLen; + xcb_out.typesSpecLen = typesSpecLen; + xcb_out.compatMapSpecLen = compatMapSpecLen; + xcb_out.symbolsSpecLen = symbolsSpecLen; + xcb_out.geometrySpecLen = geometrySpecLen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = 2*sizeof(uint8_t) + sizeof(uint16_t); + xcb_parts[3].iov_len = xcb_xkb_get_kbd_by_name_serialize (&xcb_aux, &xcb_out, keymapsSpec, keycodesSpec, typesSpec, compatMapSpec, symbolsSpec, geometrySpec); + xcb_parts[3].iov_base = (char *) xcb_aux; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + free(xcb_aux); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_t * xcb_xkb_get_kbd_by_name_replies + ** + ** @param const xcb_xkb_get_kbd_by_name_reply_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_t * + ** + *****************************************************************************/ + +void * +xcb_xkb_get_kbd_by_name_replies (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */) +{ + return (void *) (R + 1); +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_reply_t * xcb_xkb_get_kbd_by_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_kbd_by_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_kbd_by_name_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_reply_t * +xcb_xkb_get_kbd_by_name_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_kbd_by_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_kbd_by_name_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xkb_get_device_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_get_device_info_reply_t *_aux = (xcb_xkb_get_device_info_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_xkb_get_device_info_reply_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->nameLen * sizeof(xcb_xkb_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* btnActions */ + xcb_block_len += _aux->nBtnsRtrn * sizeof(xcb_xkb_action_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* leds */ + for(i=0; i<_aux->nDeviceLedFBs; i++) { + xcb_tmp_len = xcb_xkb_device_led_info_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_device_led_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_device_info_cookie_t xcb_xkb_get_device_info + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t wanted + ** @param uint8_t allButtons + ** @param uint8_t firstButton + ** @param uint8_t nButtons + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @returns xcb_xkb_get_device_info_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_device_info_cookie_t +xcb_xkb_get_device_info (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t wanted /**< */, + uint8_t allButtons /**< */, + uint8_t firstButton /**< */, + uint8_t nButtons /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_DEVICE_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_device_info_cookie_t xcb_ret; + xcb_xkb_get_device_info_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.wanted = wanted; + xcb_out.allButtons = allButtons; + xcb_out.firstButton = firstButton; + xcb_out.nButtons = nButtons; + xcb_out.pad0 = 0; + xcb_out.ledClass = ledClass; + xcb_out.ledID = ledID; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_device_info_cookie_t xcb_xkb_get_device_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t wanted + ** @param uint8_t allButtons + ** @param uint8_t firstButton + ** @param uint8_t nButtons + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @returns xcb_xkb_get_device_info_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_device_info_cookie_t +xcb_xkb_get_device_info_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t wanted /**< */, + uint8_t allButtons /**< */, + uint8_t firstButton /**< */, + uint8_t nButtons /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_GET_DEVICE_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xkb_get_device_info_cookie_t xcb_ret; + xcb_xkb_get_device_info_request_t xcb_out; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.wanted = wanted; + xcb_out.allButtons = allButtons; + xcb_out.firstButton = firstButton; + xcb_out.nButtons = nButtons; + xcb_out.pad0 = 0; + xcb_out.ledClass = ledClass; + xcb_out.ledID = ledID; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_string8_t * xcb_xkb_get_device_info_name + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_xkb_string8_t * + ** + *****************************************************************************/ + +xcb_xkb_string8_t * +xcb_xkb_get_device_info_name (const xcb_xkb_get_device_info_reply_t *R /**< */) +{ + return (xcb_xkb_string8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_device_info_name_length + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_device_info_name_length (const xcb_xkb_get_device_info_reply_t *R /**< */) +{ + return R->nameLen; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_device_info_name_end + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_device_info_name_end (const xcb_xkb_get_device_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_xkb_string8_t *) (R + 1)) + (R->nameLen); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_device_info_btn_actions + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_device_info_btn_actions (const xcb_xkb_get_device_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xkb_get_device_info_name_end(R); + return (xcb_xkb_action_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_action_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_device_info_btn_actions_length + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_device_info_btn_actions_length (const xcb_xkb_get_device_info_reply_t *R /**< */) +{ + return R->nBtnsRtrn; +} + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_device_info_btn_actions_iterator + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_device_info_btn_actions_iterator (const xcb_xkb_get_device_info_reply_t *R /**< */) +{ + xcb_xkb_action_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_get_device_info_name_end(R); + i.data = (xcb_xkb_action_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_action_t, prev.index)); + i.rem = R->nBtnsRtrn; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_xkb_get_device_info_leds_length + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_device_info_leds_length (const xcb_xkb_get_device_info_reply_t *R /**< */) +{ + return R->nDeviceLedFBs; +} + + +/***************************************************************************** + ** + ** xcb_xkb_device_led_info_iterator_t xcb_xkb_get_device_info_leds_iterator + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_xkb_device_led_info_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_device_led_info_iterator_t +xcb_xkb_get_device_info_leds_iterator (const xcb_xkb_get_device_info_reply_t *R /**< */) +{ + xcb_xkb_device_led_info_iterator_t i; + xcb_generic_iterator_t prev = xcb_xkb_action_end(xcb_xkb_get_device_info_btn_actions_iterator(R)); + i.data = (xcb_xkb_device_led_info_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_device_led_info_t, prev.index)); + i.rem = R->nDeviceLedFBs; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xkb_get_device_info_reply_t * xcb_xkb_get_device_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_device_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_device_info_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_device_info_reply_t * +xcb_xkb_get_device_info_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_device_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_get_device_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xkb_set_device_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xkb_set_device_info_request_t *_aux = (xcb_xkb_set_device_info_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_xkb_set_device_info_request_t); + xcb_tmp += xcb_block_len; + /* btnActions */ + xcb_block_len += _aux->nBtns * sizeof(xcb_xkb_action_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_action_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* leds */ + for(i=0; i<_aux->nDeviceLedFBs; i++) { + xcb_tmp_len = xcb_xkb_device_led_info_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xkb_device_led_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_device_info_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t firstBtn + ** @param uint8_t nBtns + ** @param uint16_t change + ** @param uint16_t nDeviceLedFBs + ** @param const xcb_xkb_action_t *btnActions + ** @param const xcb_xkb_device_led_info_t *leds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_device_info_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t firstBtn /**< */, + uint8_t nBtns /**< */, + uint16_t change /**< */, + uint16_t nDeviceLedFBs /**< */, + const xcb_xkb_action_t *btnActions /**< */, + const xcb_xkb_device_led_info_t *leds /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_DEVICE_INFO, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_xkb_set_device_info_request_t xcb_out; + unsigned int i; + unsigned int xcb_tmp_len; + char *xcb_tmp; + + xcb_out.deviceSpec = deviceSpec; + xcb_out.firstBtn = firstBtn; + xcb_out.nBtns = nBtns; + xcb_out.change = change; + xcb_out.nDeviceLedFBs = nDeviceLedFBs; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_action_t btnActions */ + xcb_parts[4].iov_base = (char *) btnActions; + xcb_parts[4].iov_len = nBtns * sizeof(xcb_xkb_action_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_xkb_device_led_info_t leds */ + xcb_parts[6].iov_base = (char *) leds; + xcb_parts[6].iov_len = 0; + xcb_tmp = (char *)leds; + for(i=0; imsgLength * sizeof(xcb_xkb_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xkb_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_debugging_flags_cookie_t xcb_xkb_set_debugging_flags + ** + ** @param xcb_connection_t *c + ** @param uint16_t msgLength + ** @param uint32_t affectFlags + ** @param uint32_t flags + ** @param uint32_t affectCtrls + ** @param uint32_t ctrls + ** @param const xcb_xkb_string8_t *message + ** @returns xcb_xkb_set_debugging_flags_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_set_debugging_flags_cookie_t +xcb_xkb_set_debugging_flags (xcb_connection_t *c /**< */, + uint16_t msgLength /**< */, + uint32_t affectFlags /**< */, + uint32_t flags /**< */, + uint32_t affectCtrls /**< */, + uint32_t ctrls /**< */, + const xcb_xkb_string8_t *message /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_DEBUGGING_FLAGS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_xkb_set_debugging_flags_cookie_t xcb_ret; + xcb_xkb_set_debugging_flags_request_t xcb_out; + + xcb_out.msgLength = msgLength; + memset(xcb_out.pad0, 0, 2); + xcb_out.affectFlags = affectFlags; + xcb_out.flags = flags; + xcb_out.affectCtrls = affectCtrls; + xcb_out.ctrls = ctrls; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_string8_t message */ + xcb_parts[4].iov_base = (char *) message; + xcb_parts[4].iov_len = msgLength * sizeof(xcb_xkb_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_debugging_flags_cookie_t xcb_xkb_set_debugging_flags_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t msgLength + ** @param uint32_t affectFlags + ** @param uint32_t flags + ** @param uint32_t affectCtrls + ** @param uint32_t ctrls + ** @param const xcb_xkb_string8_t *message + ** @returns xcb_xkb_set_debugging_flags_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_set_debugging_flags_cookie_t +xcb_xkb_set_debugging_flags_unchecked (xcb_connection_t *c /**< */, + uint16_t msgLength /**< */, + uint32_t affectFlags /**< */, + uint32_t flags /**< */, + uint32_t affectCtrls /**< */, + uint32_t ctrls /**< */, + const xcb_xkb_string8_t *message /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xkb_id, + /* opcode */ XCB_XKB_SET_DEBUGGING_FLAGS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_xkb_set_debugging_flags_cookie_t xcb_ret; + xcb_xkb_set_debugging_flags_request_t xcb_out; + + xcb_out.msgLength = msgLength; + memset(xcb_out.pad0, 0, 2); + xcb_out.affectFlags = affectFlags; + xcb_out.flags = flags; + xcb_out.affectCtrls = affectCtrls; + xcb_out.ctrls = ctrls; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_xkb_string8_t message */ + xcb_parts[4].iov_base = (char *) message; + xcb_parts[4].iov_len = msgLength * sizeof(xcb_xkb_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xkb_set_debugging_flags_reply_t * xcb_xkb_set_debugging_flags_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_set_debugging_flags_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_set_debugging_flags_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_set_debugging_flags_reply_t * +xcb_xkb_set_debugging_flags_reply (xcb_connection_t *c /**< */, + xcb_xkb_set_debugging_flags_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xkb_set_debugging_flags_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/xkb.h b/external/mit/xorg/lib/libxcb/files/xkb.h new file mode 100644 index 000000000..648ec0268 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xkb.h @@ -0,0 +1,14871 @@ +/* + * This file generated automatically from xkb.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_xkb_API XCB xkb API + * @brief xkb XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XKB_H +#define __XKB_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_XKB_MAJOR_VERSION 1 +#define XCB_XKB_MINOR_VERSION 0 + +extern xcb_extension_t xcb_xkb_id; + +typedef enum xcb_xkb_const_t { + XCB_XKB_CONST_MAX_LEGAL_KEY_CODE = 255, + XCB_XKB_CONST_PER_KEY_BIT_ARRAY_SIZE = 32, + XCB_XKB_CONST_KEY_NAME_LENGTH = 4 +} xcb_xkb_const_t; + +typedef enum xcb_xkb_event_type_t { + XCB_XKB_EVENT_TYPE_NEW_KEYBOARD_NOTIFY = 1, + XCB_XKB_EVENT_TYPE_MAP_NOTIFY = 2, + XCB_XKB_EVENT_TYPE_STATE_NOTIFY = 4, + XCB_XKB_EVENT_TYPE_CONTROLS_NOTIFY = 8, + XCB_XKB_EVENT_TYPE_INDICATOR_STATE_NOTIFY = 16, + XCB_XKB_EVENT_TYPE_INDICATOR_MAP_NOTIFY = 32, + XCB_XKB_EVENT_TYPE_NAMES_NOTIFY = 64, + XCB_XKB_EVENT_TYPE_COMPAT_MAP_NOTIFY = 128, + XCB_XKB_EVENT_TYPE_BELL_NOTIFY = 256, + XCB_XKB_EVENT_TYPE_ACTION_MESSAGE = 512, + XCB_XKB_EVENT_TYPE_ACCESS_X_NOTIFY = 1024, + XCB_XKB_EVENT_TYPE_EXTENSION_DEVICE_NOTIFY = 2048 +} xcb_xkb_event_type_t; + +typedef enum xcb_xkb_nkn_detail_t { + XCB_XKB_NKN_DETAIL_KEYCODES = 1, + XCB_XKB_NKN_DETAIL_GEOMETRY = 2, + XCB_XKB_NKN_DETAIL_DEVICE_ID = 4 +} xcb_xkb_nkn_detail_t; + +typedef enum xcb_xkb_axn_detail_t { + XCB_XKB_AXN_DETAIL_SK_PRESS = 1, + XCB_XKB_AXN_DETAIL_SK_ACCEPT = 2, + XCB_XKB_AXN_DETAIL_SK_REJECT = 4, + XCB_XKB_AXN_DETAIL_SK_RELEASE = 8, + XCB_XKB_AXN_DETAIL_BK_ACCEPT = 16, + XCB_XKB_AXN_DETAIL_BK_REJECT = 32, + XCB_XKB_AXN_DETAIL_AXK_WARNING = 64 +} xcb_xkb_axn_detail_t; + +typedef enum xcb_xkb_map_part_t { + XCB_XKB_MAP_PART_KEY_TYPES = 1, + XCB_XKB_MAP_PART_KEY_SYMS = 2, + XCB_XKB_MAP_PART_MODIFIER_MAP = 4, + XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS = 8, + XCB_XKB_MAP_PART_KEY_ACTIONS = 16, + XCB_XKB_MAP_PART_KEY_BEHAVIORS = 32, + XCB_XKB_MAP_PART_VIRTUAL_MODS = 64, + XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP = 128 +} xcb_xkb_map_part_t; + +typedef enum xcb_xkb_set_map_flags_t { + XCB_XKB_SET_MAP_FLAGS_RESIZE_TYPES = 1, + XCB_XKB_SET_MAP_FLAGS_RECOMPUTE_ACTIONS = 2 +} xcb_xkb_set_map_flags_t; + +typedef enum xcb_xkb_state_part_t { + XCB_XKB_STATE_PART_MODIFIER_STATE = 1, + XCB_XKB_STATE_PART_MODIFIER_BASE = 2, + XCB_XKB_STATE_PART_MODIFIER_LATCH = 4, + XCB_XKB_STATE_PART_MODIFIER_LOCK = 8, + XCB_XKB_STATE_PART_GROUP_STATE = 16, + XCB_XKB_STATE_PART_GROUP_BASE = 32, + XCB_XKB_STATE_PART_GROUP_LATCH = 64, + XCB_XKB_STATE_PART_GROUP_LOCK = 128, + XCB_XKB_STATE_PART_COMPAT_STATE = 256, + XCB_XKB_STATE_PART_GRAB_MODS = 512, + XCB_XKB_STATE_PART_COMPAT_GRAB_MODS = 1024, + XCB_XKB_STATE_PART_LOOKUP_MODS = 2048, + XCB_XKB_STATE_PART_COMPAT_LOOKUP_MODS = 4096, + XCB_XKB_STATE_PART_POINTER_BUTTONS = 8192 +} xcb_xkb_state_part_t; + +typedef enum xcb_xkb_bool_ctrl_t { + XCB_XKB_BOOL_CTRL_REPEAT_KEYS = 1, + XCB_XKB_BOOL_CTRL_SLOW_KEYS = 2, + XCB_XKB_BOOL_CTRL_BOUNCE_KEYS = 4, + XCB_XKB_BOOL_CTRL_STICKY_KEYS = 8, + XCB_XKB_BOOL_CTRL_MOUSE_KEYS = 16, + XCB_XKB_BOOL_CTRL_MOUSE_KEYS_ACCEL = 32, + XCB_XKB_BOOL_CTRL_ACCESS_X_KEYS = 64, + XCB_XKB_BOOL_CTRL_ACCESS_X_TIMEOUT_MASK = 128, + XCB_XKB_BOOL_CTRL_ACCESS_X_FEEDBACK_MASK = 256, + XCB_XKB_BOOL_CTRL_AUDIBLE_BELL_MASK = 512, + XCB_XKB_BOOL_CTRL_OVERLAY_1_MASK = 1024, + XCB_XKB_BOOL_CTRL_OVERLAY_2_MASK = 2048, + XCB_XKB_BOOL_CTRL_IGNORE_GROUP_LOCK_MASK = 4096 +} xcb_xkb_bool_ctrl_t; + +typedef enum xcb_xkb_control_t { + XCB_XKB_CONTROL_GROUPS_WRAP = 134217728, + XCB_XKB_CONTROL_INTERNAL_MODS = 268435456, + XCB_XKB_CONTROL_IGNORE_LOCK_MODS = 536870912, + XCB_XKB_CONTROL_PER_KEY_REPEAT = 1073741824, + XCB_XKB_CONTROL_CONTROLS_ENABLED = 2147483648 +} xcb_xkb_control_t; + +typedef enum xcb_xkb_axfb_opt_t { + XCB_XKB_AXFB_OPT_SK_PRESS_FB = 1, + XCB_XKB_AXFB_OPT_SK_ACCEPT_FB = 2, + XCB_XKB_AXFB_OPT_FEATURE_FB = 4, + XCB_XKB_AXFB_OPT_SLOW_WARN_FB = 8, + XCB_XKB_AXFB_OPT_INDICATOR_FB = 16, + XCB_XKB_AXFB_OPT_STICKY_KEYS_FB = 32, + XCB_XKB_AXFB_OPT_SK_RELEASE_FB = 64, + XCB_XKB_AXFB_OPT_SK_REJECT_FB = 128, + XCB_XKB_AXFB_OPT_BK_REJECT_FB = 256, + XCB_XKB_AXFB_OPT_DUMB_BELL = 512 +} xcb_xkb_axfb_opt_t; + +typedef enum xcb_xkb_axsk_opt_t { + XCB_XKB_AXSK_OPT_TWO_KEYS = 64, + XCB_XKB_AXSK_OPT_LATCH_TO_LOCK = 128 +} xcb_xkb_axsk_opt_t; + +/** + * @brief xcb_xkb_ax_option_t + **/ +typedef union xcb_xkb_ax_option_t { + uint16_t fbopt; /**< */ + uint16_t skopt; /**< */ +} xcb_xkb_ax_option_t; + +/** + * @brief xcb_xkb_ax_option_iterator_t + **/ +typedef struct xcb_xkb_ax_option_iterator_t { + xcb_xkb_ax_option_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_ax_option_iterator_t; + +typedef uint16_t xcb_xkb_device_spec_t; + +/** + * @brief xcb_xkb_device_spec_iterator_t + **/ +typedef struct xcb_xkb_device_spec_iterator_t { + xcb_xkb_device_spec_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_device_spec_iterator_t; + +typedef enum xcb_xkb_led_class_result_t { + XCB_XKB_LED_CLASS_RESULT_KBD_FEEDBACK_CLASS = 0, + XCB_XKB_LED_CLASS_RESULT_LED_FEEDBACK_CLASS = 4 +} xcb_xkb_led_class_result_t; + +typedef enum xcb_xkb_led_class_t { + XCB_XKB_LED_CLASS_DFLT_XI_CLASS = 768, + XCB_XKB_LED_CLASS_ALL_XI_CLASSES = 1280 +} xcb_xkb_led_class_t; + +typedef uint16_t xcb_xkb_led_class_spec_t; + +/** + * @brief xcb_xkb_led_class_spec_iterator_t + **/ +typedef struct xcb_xkb_led_class_spec_iterator_t { + xcb_xkb_led_class_spec_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_led_class_spec_iterator_t; + +typedef enum xcb_xkb_bell_class_result_t { + XCB_XKB_BELL_CLASS_RESULT_KBD_FEEDBACK_CLASS = 0, + XCB_XKB_BELL_CLASS_RESULT_BELL_FEEDBACK_CLASS = 5 +} xcb_xkb_bell_class_result_t; + +typedef enum xcb_xkb_bell_class_t { + XCB_XKB_BELL_CLASS_DFLT_XI_CLASS = 768 +} xcb_xkb_bell_class_t; + +typedef uint16_t xcb_xkb_bell_class_spec_t; + +/** + * @brief xcb_xkb_bell_class_spec_iterator_t + **/ +typedef struct xcb_xkb_bell_class_spec_iterator_t { + xcb_xkb_bell_class_spec_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_bell_class_spec_iterator_t; + +typedef enum xcb_xkb_id_t { + XCB_XKB_ID_USE_CORE_KBD = 256, + XCB_XKB_ID_USE_CORE_PTR = 512, + XCB_XKB_ID_DFLT_XI_CLASS = 768, + XCB_XKB_ID_DFLT_XI_ID = 1024, + XCB_XKB_ID_ALL_XI_CLASS = 1280, + XCB_XKB_ID_ALL_XI_ID = 1536, + XCB_XKB_ID_XI_NONE = 65280 +} xcb_xkb_id_t; + +typedef uint16_t xcb_xkb_id_spec_t; + +/** + * @brief xcb_xkb_id_spec_iterator_t + **/ +typedef struct xcb_xkb_id_spec_iterator_t { + xcb_xkb_id_spec_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_id_spec_iterator_t; + +typedef enum xcb_xkb_group_t { + XCB_XKB_GROUP_1 = 0, + XCB_XKB_GROUP_2 = 1, + XCB_XKB_GROUP_3 = 2, + XCB_XKB_GROUP_4 = 3 +} xcb_xkb_group_t; + +typedef enum xcb_xkb_groups_t { + XCB_XKB_GROUPS_ANY = 254, + XCB_XKB_GROUPS_ALL = 255 +} xcb_xkb_groups_t; + +typedef enum xcb_xkb_set_of_group_t { + XCB_XKB_SET_OF_GROUP_GROUP_1 = 1, + XCB_XKB_SET_OF_GROUP_GROUP_2 = 2, + XCB_XKB_SET_OF_GROUP_GROUP_3 = 4, + XCB_XKB_SET_OF_GROUP_GROUP_4 = 8 +} xcb_xkb_set_of_group_t; + +typedef enum xcb_xkb_set_of_groups_t { + XCB_XKB_SET_OF_GROUPS_ANY = 128 +} xcb_xkb_set_of_groups_t; + +typedef enum xcb_xkb_groups_wrap_t { + XCB_XKB_GROUPS_WRAP_WRAP_INTO_RANGE = 0, + XCB_XKB_GROUPS_WRAP_CLAMP_INTO_RANGE = 64, + XCB_XKB_GROUPS_WRAP_REDIRECT_INTO_RANGE = 128 +} xcb_xkb_groups_wrap_t; + +typedef enum xcb_xkb_v_mods_high_t { + XCB_XKB_V_MODS_HIGH_15 = 128, + XCB_XKB_V_MODS_HIGH_14 = 64, + XCB_XKB_V_MODS_HIGH_13 = 32, + XCB_XKB_V_MODS_HIGH_12 = 16, + XCB_XKB_V_MODS_HIGH_11 = 8, + XCB_XKB_V_MODS_HIGH_10 = 4, + XCB_XKB_V_MODS_HIGH_9 = 2, + XCB_XKB_V_MODS_HIGH_8 = 1 +} xcb_xkb_v_mods_high_t; + +typedef enum xcb_xkb_v_mods_low_t { + XCB_XKB_V_MODS_LOW_7 = 128, + XCB_XKB_V_MODS_LOW_6 = 64, + XCB_XKB_V_MODS_LOW_5 = 32, + XCB_XKB_V_MODS_LOW_4 = 16, + XCB_XKB_V_MODS_LOW_3 = 8, + XCB_XKB_V_MODS_LOW_2 = 4, + XCB_XKB_V_MODS_LOW_1 = 2, + XCB_XKB_V_MODS_LOW_0 = 1 +} xcb_xkb_v_mods_low_t; + +typedef enum xcb_xkb_v_mod_t { + XCB_XKB_V_MOD_15 = 32768, + XCB_XKB_V_MOD_14 = 16384, + XCB_XKB_V_MOD_13 = 8192, + XCB_XKB_V_MOD_12 = 4096, + XCB_XKB_V_MOD_11 = 2048, + XCB_XKB_V_MOD_10 = 1024, + XCB_XKB_V_MOD_9 = 512, + XCB_XKB_V_MOD_8 = 256, + XCB_XKB_V_MOD_7 = 128, + XCB_XKB_V_MOD_6 = 64, + XCB_XKB_V_MOD_5 = 32, + XCB_XKB_V_MOD_4 = 16, + XCB_XKB_V_MOD_3 = 8, + XCB_XKB_V_MOD_2 = 4, + XCB_XKB_V_MOD_1 = 2, + XCB_XKB_V_MOD_0 = 1 +} xcb_xkb_v_mod_t; + +typedef enum xcb_xkb_explicit_t { + XCB_XKB_EXPLICIT_V_MOD_MAP = 128, + XCB_XKB_EXPLICIT_BEHAVIOR = 64, + XCB_XKB_EXPLICIT_AUTO_REPEAT = 32, + XCB_XKB_EXPLICIT_INTERPRET = 16, + XCB_XKB_EXPLICIT_KEY_TYPE_4 = 8, + XCB_XKB_EXPLICIT_KEY_TYPE_3 = 4, + XCB_XKB_EXPLICIT_KEY_TYPE_2 = 2, + XCB_XKB_EXPLICIT_KEY_TYPE_1 = 1 +} xcb_xkb_explicit_t; + +typedef enum xcb_xkb_sym_interpret_t { + XCB_XKB_SYM_INTERPRET_NONE_OF = 0, + XCB_XKB_SYM_INTERPRET_ANY_OF_OR_NONE = 1, + XCB_XKB_SYM_INTERPRET_ANY_OF = 2, + XCB_XKB_SYM_INTERPRET_ALL_OF = 3, + XCB_XKB_SYM_INTERPRET_EXACTLY = 4 +} xcb_xkb_sym_interpret_t; + +typedef enum xcb_xkb_sym_interp_match_t { + XCB_XKB_SYM_INTERP_MATCH_LEVEL_ONE_ONLY = 128, + XCB_XKB_SYM_INTERP_MATCH_OP_MASK = 127 +} xcb_xkb_sym_interp_match_t; + +typedef enum xcb_xkb_im_flag_t { + XCB_XKB_IM_FLAG_NO_EXPLICIT = 128, + XCB_XKB_IM_FLAG_NO_AUTOMATIC = 64, + XCB_XKB_IM_FLAG_LED_DRIVES_KB = 32 +} xcb_xkb_im_flag_t; + +typedef enum xcb_xkb_im_mods_which_t { + XCB_XKB_IM_MODS_WHICH_USE_COMPAT = 16, + XCB_XKB_IM_MODS_WHICH_USE_EFFECTIVE = 8, + XCB_XKB_IM_MODS_WHICH_USE_LOCKED = 4, + XCB_XKB_IM_MODS_WHICH_USE_LATCHED = 2, + XCB_XKB_IM_MODS_WHICH_USE_BASE = 1 +} xcb_xkb_im_mods_which_t; + +typedef enum xcb_xkb_im_groups_which_t { + XCB_XKB_IM_GROUPS_WHICH_USE_COMPAT = 16, + XCB_XKB_IM_GROUPS_WHICH_USE_EFFECTIVE = 8, + XCB_XKB_IM_GROUPS_WHICH_USE_LOCKED = 4, + XCB_XKB_IM_GROUPS_WHICH_USE_LATCHED = 2, + XCB_XKB_IM_GROUPS_WHICH_USE_BASE = 1 +} xcb_xkb_im_groups_which_t; + +/** + * @brief xcb_xkb_indicator_map_t + **/ +typedef struct xcb_xkb_indicator_map_t { + uint8_t flags; /**< */ + uint8_t whichGroups; /**< */ + uint8_t groups; /**< */ + uint8_t whichMods; /**< */ + uint8_t mods; /**< */ + uint8_t realMods; /**< */ + uint16_t vmods; /**< */ + uint32_t ctrls; /**< */ +} xcb_xkb_indicator_map_t; + +/** + * @brief xcb_xkb_indicator_map_iterator_t + **/ +typedef struct xcb_xkb_indicator_map_iterator_t { + xcb_xkb_indicator_map_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_indicator_map_iterator_t; + +typedef enum xcb_xkb_cm_detail_t { + XCB_XKB_CM_DETAIL_SYM_INTERP = 1, + XCB_XKB_CM_DETAIL_GROUP_COMPAT = 2 +} xcb_xkb_cm_detail_t; + +typedef enum xcb_xkb_name_detail_t { + XCB_XKB_NAME_DETAIL_KEYCODES = 1, + XCB_XKB_NAME_DETAIL_GEOMETRY = 2, + XCB_XKB_NAME_DETAIL_SYMBOLS = 4, + XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS = 8, + XCB_XKB_NAME_DETAIL_TYPES = 16, + XCB_XKB_NAME_DETAIL_COMPAT = 32, + XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES = 64, + XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES = 128, + XCB_XKB_NAME_DETAIL_INDICATOR_NAMES = 256, + XCB_XKB_NAME_DETAIL_KEY_NAMES = 512, + XCB_XKB_NAME_DETAIL_KEY_ALIASES = 1024, + XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES = 2048, + XCB_XKB_NAME_DETAIL_GROUP_NAMES = 4096, + XCB_XKB_NAME_DETAIL_RG_NAMES = 8192 +} xcb_xkb_name_detail_t; + +typedef enum xcb_xkb_gbn_detail_t { + XCB_XKB_GBN_DETAIL_TYPES = 1, + XCB_XKB_GBN_DETAIL_COMPAT_MAP = 2, + XCB_XKB_GBN_DETAIL_CLIENT_SYMBOLS = 4, + XCB_XKB_GBN_DETAIL_SERVER_SYMBOLS = 8, + XCB_XKB_GBN_DETAIL_INDICATOR_MAPS = 16, + XCB_XKB_GBN_DETAIL_KEY_NAMES = 32, + XCB_XKB_GBN_DETAIL_GEOMETRY = 64, + XCB_XKB_GBN_DETAIL_OTHER_NAMES = 128 +} xcb_xkb_gbn_detail_t; + +typedef enum xcb_xkb_xi_feature_t { + XCB_XKB_XI_FEATURE_KEYBOARDS = 1, + XCB_XKB_XI_FEATURE_BUTTON_ACTIONS = 2, + XCB_XKB_XI_FEATURE_INDICATOR_NAMES = 4, + XCB_XKB_XI_FEATURE_INDICATOR_MAPS = 8, + XCB_XKB_XI_FEATURE_INDICATOR_STATE = 16 +} xcb_xkb_xi_feature_t; + +typedef enum xcb_xkb_per_client_flag_t { + XCB_XKB_PER_CLIENT_FLAG_DETECTABLE_AUTO_REPEAT = 1, + XCB_XKB_PER_CLIENT_FLAG_GRABS_USE_XKB_STATE = 2, + XCB_XKB_PER_CLIENT_FLAG_AUTO_RESET_CONTROLS = 4, + XCB_XKB_PER_CLIENT_FLAG_LOOKUP_STATE_WHEN_GRABBED = 8, + XCB_XKB_PER_CLIENT_FLAG_SEND_EVENT_USES_XKB_STATE = 16 +} xcb_xkb_per_client_flag_t; + +/** + * @brief xcb_xkb_mod_def_t + **/ +typedef struct xcb_xkb_mod_def_t { + uint8_t mask; /**< */ + uint8_t realMods; /**< */ + uint16_t vmods; /**< */ +} xcb_xkb_mod_def_t; + +/** + * @brief xcb_xkb_mod_def_iterator_t + **/ +typedef struct xcb_xkb_mod_def_iterator_t { + xcb_xkb_mod_def_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_mod_def_iterator_t; + +/** + * @brief xcb_xkb_key_name_t + **/ +typedef struct xcb_xkb_key_name_t { + uint8_t name[4]; /**< */ +} xcb_xkb_key_name_t; + +/** + * @brief xcb_xkb_key_name_iterator_t + **/ +typedef struct xcb_xkb_key_name_iterator_t { + xcb_xkb_key_name_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_key_name_iterator_t; + +/** + * @brief xcb_xkb_key_alias_t + **/ +typedef struct xcb_xkb_key_alias_t { + uint8_t real[4]; /**< */ + uint8_t alias[4]; /**< */ +} xcb_xkb_key_alias_t; + +/** + * @brief xcb_xkb_key_alias_iterator_t + **/ +typedef struct xcb_xkb_key_alias_iterator_t { + xcb_xkb_key_alias_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_key_alias_iterator_t; + +/** + * @brief xcb_xkb_counted_string_8_t + **/ +typedef struct xcb_xkb_counted_string_8_t { + uint8_t length; /**< */ +} xcb_xkb_counted_string_8_t; + +/** + * @brief xcb_xkb_counted_string_8_iterator_t + **/ +typedef struct xcb_xkb_counted_string_8_iterator_t { + xcb_xkb_counted_string_8_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_counted_string_8_iterator_t; + +/** + * @brief xcb_xkb_counted_string_16_t + **/ +typedef struct xcb_xkb_counted_string_16_t { + uint16_t length; /**< */ + uint8_t pad0; /**< */ +} xcb_xkb_counted_string_16_t; + +/** + * @brief xcb_xkb_counted_string_16_iterator_t + **/ +typedef struct xcb_xkb_counted_string_16_iterator_t { + xcb_xkb_counted_string_16_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_counted_string_16_iterator_t; + +/** + * @brief xcb_xkb_kt_map_entry_t + **/ +typedef struct xcb_xkb_kt_map_entry_t { + uint8_t active; /**< */ + uint8_t level; /**< */ + uint8_t mods_mask; /**< */ + uint8_t mods_mods; /**< */ + uint16_t mods_vmods; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_kt_map_entry_t; + +/** + * @brief xcb_xkb_kt_map_entry_iterator_t + **/ +typedef struct xcb_xkb_kt_map_entry_iterator_t { + xcb_xkb_kt_map_entry_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_kt_map_entry_iterator_t; + +/** + * @brief xcb_xkb_key_type_t + **/ +typedef struct xcb_xkb_key_type_t { + uint8_t mods_mask; /**< */ + uint8_t mods_mods; /**< */ + uint16_t mods_vmods; /**< */ + uint8_t numLevels; /**< */ + uint8_t nMapEntries; /**< */ + uint8_t hasPreserve; /**< */ + uint8_t pad0; /**< */ +} xcb_xkb_key_type_t; + +/** + * @brief xcb_xkb_key_type_iterator_t + **/ +typedef struct xcb_xkb_key_type_iterator_t { + xcb_xkb_key_type_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_key_type_iterator_t; + +/** + * @brief xcb_xkb_key_sym_map_t + **/ +typedef struct xcb_xkb_key_sym_map_t { + uint8_t kt_index[4]; /**< */ + uint8_t groupInfo; /**< */ + uint8_t width; /**< */ + uint16_t nSyms; /**< */ +} xcb_xkb_key_sym_map_t; + +/** + * @brief xcb_xkb_key_sym_map_iterator_t + **/ +typedef struct xcb_xkb_key_sym_map_iterator_t { + xcb_xkb_key_sym_map_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_key_sym_map_iterator_t; + +/** + * @brief xcb_xkb_common_behavior_t + **/ +typedef struct xcb_xkb_common_behavior_t { + uint8_t type; /**< */ + uint8_t data; /**< */ +} xcb_xkb_common_behavior_t; + +/** + * @brief xcb_xkb_common_behavior_iterator_t + **/ +typedef struct xcb_xkb_common_behavior_iterator_t { + xcb_xkb_common_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_common_behavior_iterator_t; + +/** + * @brief xcb_xkb_default_behavior_t + **/ +typedef struct xcb_xkb_default_behavior_t { + uint8_t type; /**< */ + uint8_t pad0; /**< */ +} xcb_xkb_default_behavior_t; + +/** + * @brief xcb_xkb_default_behavior_iterator_t + **/ +typedef struct xcb_xkb_default_behavior_iterator_t { + xcb_xkb_default_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_default_behavior_iterator_t; + +/** + * @brief xcb_xkb_lock_behavior_t + **/ +typedef struct xcb_xkb_lock_behavior_t { + uint8_t type; /**< */ + uint8_t pad0; /**< */ +} xcb_xkb_lock_behavior_t; + +/** + * @brief xcb_xkb_lock_behavior_iterator_t + **/ +typedef struct xcb_xkb_lock_behavior_iterator_t { + xcb_xkb_lock_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_lock_behavior_iterator_t; + +/** + * @brief xcb_xkb_radio_group_behavior_t + **/ +typedef struct xcb_xkb_radio_group_behavior_t { + uint8_t type; /**< */ + uint8_t group; /**< */ +} xcb_xkb_radio_group_behavior_t; + +/** + * @brief xcb_xkb_radio_group_behavior_iterator_t + **/ +typedef struct xcb_xkb_radio_group_behavior_iterator_t { + xcb_xkb_radio_group_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_radio_group_behavior_iterator_t; + +/** + * @brief xcb_xkb_overlay_1_behavior_t + **/ +typedef struct xcb_xkb_overlay_1_behavior_t { + uint8_t type; /**< */ + xcb_keycode_t key; /**< */ +} xcb_xkb_overlay_1_behavior_t; + +/** + * @brief xcb_xkb_overlay_1_behavior_iterator_t + **/ +typedef struct xcb_xkb_overlay_1_behavior_iterator_t { + xcb_xkb_overlay_1_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_overlay_1_behavior_iterator_t; + +/** + * @brief xcb_xkb_overlay_2_behavior_t + **/ +typedef struct xcb_xkb_overlay_2_behavior_t { + uint8_t type; /**< */ + uint8_t key; /**< */ +} xcb_xkb_overlay_2_behavior_t; + +/** + * @brief xcb_xkb_overlay_2_behavior_iterator_t + **/ +typedef struct xcb_xkb_overlay_2_behavior_iterator_t { + xcb_xkb_overlay_2_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_overlay_2_behavior_iterator_t; + +/** + * @brief xcb_xkb_permament_lock_behavior_t + **/ +typedef struct xcb_xkb_permament_lock_behavior_t { + uint8_t type; /**< */ + uint8_t pad0; /**< */ +} xcb_xkb_permament_lock_behavior_t; + +/** + * @brief xcb_xkb_permament_lock_behavior_iterator_t + **/ +typedef struct xcb_xkb_permament_lock_behavior_iterator_t { + xcb_xkb_permament_lock_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_permament_lock_behavior_iterator_t; + +/** + * @brief xcb_xkb_permament_radio_group_behavior_t + **/ +typedef struct xcb_xkb_permament_radio_group_behavior_t { + uint8_t type; /**< */ + uint8_t group; /**< */ +} xcb_xkb_permament_radio_group_behavior_t; + +/** + * @brief xcb_xkb_permament_radio_group_behavior_iterator_t + **/ +typedef struct xcb_xkb_permament_radio_group_behavior_iterator_t { + xcb_xkb_permament_radio_group_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_permament_radio_group_behavior_iterator_t; + +/** + * @brief xcb_xkb_permament_overlay_1_behavior_t + **/ +typedef struct xcb_xkb_permament_overlay_1_behavior_t { + uint8_t type; /**< */ + xcb_keycode_t key; /**< */ +} xcb_xkb_permament_overlay_1_behavior_t; + +/** + * @brief xcb_xkb_permament_overlay_1_behavior_iterator_t + **/ +typedef struct xcb_xkb_permament_overlay_1_behavior_iterator_t { + xcb_xkb_permament_overlay_1_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_permament_overlay_1_behavior_iterator_t; + +/** + * @brief xcb_xkb_permament_overlay_2_behavior_t + **/ +typedef struct xcb_xkb_permament_overlay_2_behavior_t { + uint8_t type; /**< */ + uint8_t key; /**< */ +} xcb_xkb_permament_overlay_2_behavior_t; + +/** + * @brief xcb_xkb_permament_overlay_2_behavior_iterator_t + **/ +typedef struct xcb_xkb_permament_overlay_2_behavior_iterator_t { + xcb_xkb_permament_overlay_2_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_permament_overlay_2_behavior_iterator_t; + +/** + * @brief xcb_xkb_behavior_t + **/ +typedef union xcb_xkb_behavior_t { + xcb_xkb_common_behavior_t common; /**< */ + xcb_xkb_default_behavior_t _default; /**< */ + xcb_xkb_lock_behavior_t lock; /**< */ + xcb_xkb_radio_group_behavior_t radioGroup; /**< */ + xcb_xkb_overlay_1_behavior_t overlay1; /**< */ + xcb_xkb_overlay_2_behavior_t overlay2; /**< */ + xcb_xkb_permament_lock_behavior_t permamentLock; /**< */ + xcb_xkb_permament_radio_group_behavior_t permamentRadioGroup; /**< */ + xcb_xkb_permament_overlay_1_behavior_t permamentOverlay1; /**< */ + xcb_xkb_permament_overlay_2_behavior_t permamentOverlay2; /**< */ + uint8_t type; /**< */ +} xcb_xkb_behavior_t; + +/** + * @brief xcb_xkb_behavior_iterator_t + **/ +typedef struct xcb_xkb_behavior_iterator_t { + xcb_xkb_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_behavior_iterator_t; + +typedef enum xcb_xkb_behavior_type_t { + XCB_XKB_BEHAVIOR_TYPE_DEFAULT = 0, + XCB_XKB_BEHAVIOR_TYPE_LOCK = 1, + XCB_XKB_BEHAVIOR_TYPE_RADIO_GROUP = 2, + XCB_XKB_BEHAVIOR_TYPE_OVERLAY_1 = 3, + XCB_XKB_BEHAVIOR_TYPE_OVERLAY_2 = 4, + XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_LOCK = 129, + XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_RADIO_GROUP = 130, + XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_OVERLAY_1 = 131, + XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_OVERLAY_2 = 132 +} xcb_xkb_behavior_type_t; + +/** + * @brief xcb_xkb_set_behavior_t + **/ +typedef struct xcb_xkb_set_behavior_t { + xcb_keycode_t keycode; /**< */ + xcb_xkb_behavior_t behavior; /**< */ + uint8_t pad0; /**< */ +} xcb_xkb_set_behavior_t; + +/** + * @brief xcb_xkb_set_behavior_iterator_t + **/ +typedef struct xcb_xkb_set_behavior_iterator_t { + xcb_xkb_set_behavior_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_set_behavior_iterator_t; + +/** + * @brief xcb_xkb_set_explicit_t + **/ +typedef struct xcb_xkb_set_explicit_t { + xcb_keycode_t keycode; /**< */ + uint8_t explicit; /**< */ +} xcb_xkb_set_explicit_t; + +/** + * @brief xcb_xkb_set_explicit_iterator_t + **/ +typedef struct xcb_xkb_set_explicit_iterator_t { + xcb_xkb_set_explicit_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_set_explicit_iterator_t; + +/** + * @brief xcb_xkb_key_mod_map_t + **/ +typedef struct xcb_xkb_key_mod_map_t { + xcb_keycode_t keycode; /**< */ + uint8_t mods; /**< */ +} xcb_xkb_key_mod_map_t; + +/** + * @brief xcb_xkb_key_mod_map_iterator_t + **/ +typedef struct xcb_xkb_key_mod_map_iterator_t { + xcb_xkb_key_mod_map_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_key_mod_map_iterator_t; + +/** + * @brief xcb_xkb_key_v_mod_map_t + **/ +typedef struct xcb_xkb_key_v_mod_map_t { + xcb_keycode_t keycode; /**< */ + uint8_t pad0; /**< */ + uint16_t vmods; /**< */ +} xcb_xkb_key_v_mod_map_t; + +/** + * @brief xcb_xkb_key_v_mod_map_iterator_t + **/ +typedef struct xcb_xkb_key_v_mod_map_iterator_t { + xcb_xkb_key_v_mod_map_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_key_v_mod_map_iterator_t; + +/** + * @brief xcb_xkb_kt_set_map_entry_t + **/ +typedef struct xcb_xkb_kt_set_map_entry_t { + uint8_t level; /**< */ + uint8_t realMods; /**< */ + uint16_t virtualMods; /**< */ +} xcb_xkb_kt_set_map_entry_t; + +/** + * @brief xcb_xkb_kt_set_map_entry_iterator_t + **/ +typedef struct xcb_xkb_kt_set_map_entry_iterator_t { + xcb_xkb_kt_set_map_entry_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_kt_set_map_entry_iterator_t; + +/** + * @brief xcb_xkb_set_key_type_t + **/ +typedef struct xcb_xkb_set_key_type_t { + uint8_t mask; /**< */ + uint8_t realMods; /**< */ + uint16_t virtualMods; /**< */ + uint8_t numLevels; /**< */ + uint8_t nMapEntries; /**< */ + uint8_t preserve; /**< */ + uint8_t pad0; /**< */ +} xcb_xkb_set_key_type_t; + +/** + * @brief xcb_xkb_set_key_type_iterator_t + **/ +typedef struct xcb_xkb_set_key_type_iterator_t { + xcb_xkb_set_key_type_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_set_key_type_iterator_t; + +typedef char xcb_xkb_string8_t; + +/** + * @brief xcb_xkb_string8_iterator_t + **/ +typedef struct xcb_xkb_string8_iterator_t { + xcb_xkb_string8_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_string8_iterator_t; + +/** + * @brief xcb_xkb_property_t + **/ +typedef struct xcb_xkb_property_t { + uint16_t nameLength; /**< */ + uint16_t valueLength; /**< */ +} xcb_xkb_property_t; + +/** + * @brief xcb_xkb_property_iterator_t + **/ +typedef struct xcb_xkb_property_iterator_t { + xcb_xkb_property_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_property_iterator_t; + +/** + * @brief xcb_xkb_outline_t + **/ +typedef struct xcb_xkb_outline_t { + uint8_t nPoints; /**< */ + uint8_t cornerRadius; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_outline_t; + +/** + * @brief xcb_xkb_outline_iterator_t + **/ +typedef struct xcb_xkb_outline_iterator_t { + xcb_xkb_outline_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_outline_iterator_t; + +/** + * @brief xcb_xkb_shape_t + **/ +typedef struct xcb_xkb_shape_t { + xcb_atom_t name; /**< */ + uint8_t nOutlines; /**< */ + uint8_t primaryNdx; /**< */ + uint8_t approxNdx; /**< */ + uint8_t pad0; /**< */ +} xcb_xkb_shape_t; + +/** + * @brief xcb_xkb_shape_iterator_t + **/ +typedef struct xcb_xkb_shape_iterator_t { + xcb_xkb_shape_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_shape_iterator_t; + +/** + * @brief xcb_xkb_key_t + **/ +typedef struct xcb_xkb_key_t { + xcb_xkb_string8_t name[4]; /**< */ + int16_t gap; /**< */ + uint8_t shapeNdx; /**< */ + uint8_t colorNdx; /**< */ +} xcb_xkb_key_t; + +/** + * @brief xcb_xkb_key_iterator_t + **/ +typedef struct xcb_xkb_key_iterator_t { + xcb_xkb_key_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_key_iterator_t; + +/** + * @brief xcb_xkb_overlay_key_t + **/ +typedef struct xcb_xkb_overlay_key_t { + xcb_xkb_string8_t over[4]; /**< */ + xcb_xkb_string8_t under[4]; /**< */ +} xcb_xkb_overlay_key_t; + +/** + * @brief xcb_xkb_overlay_key_iterator_t + **/ +typedef struct xcb_xkb_overlay_key_iterator_t { + xcb_xkb_overlay_key_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_overlay_key_iterator_t; + +/** + * @brief xcb_xkb_overlay_row_t + **/ +typedef struct xcb_xkb_overlay_row_t { + uint8_t rowUnder; /**< */ + uint8_t nKeys; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_overlay_row_t; + +/** + * @brief xcb_xkb_overlay_row_iterator_t + **/ +typedef struct xcb_xkb_overlay_row_iterator_t { + xcb_xkb_overlay_row_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_overlay_row_iterator_t; + +/** + * @brief xcb_xkb_overlay_t + **/ +typedef struct xcb_xkb_overlay_t { + xcb_atom_t name; /**< */ + uint8_t nRows; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xkb_overlay_t; + +/** + * @brief xcb_xkb_overlay_iterator_t + **/ +typedef struct xcb_xkb_overlay_iterator_t { + xcb_xkb_overlay_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_overlay_iterator_t; + +/** + * @brief xcb_xkb_row_t + **/ +typedef struct xcb_xkb_row_t { + int16_t top; /**< */ + int16_t left; /**< */ + uint8_t nKeys; /**< */ + uint8_t vertical; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_row_t; + +/** + * @brief xcb_xkb_row_iterator_t + **/ +typedef struct xcb_xkb_row_iterator_t { + xcb_xkb_row_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_row_iterator_t; + +typedef enum xcb_xkb_doodad_type_t { + XCB_XKB_DOODAD_TYPE_OUTLINE = 1, + XCB_XKB_DOODAD_TYPE_SOLID = 2, + XCB_XKB_DOODAD_TYPE_TEXT = 3, + XCB_XKB_DOODAD_TYPE_INDICATOR = 4, + XCB_XKB_DOODAD_TYPE_LOGO = 5 +} xcb_xkb_doodad_type_t; + +/** + * @brief xcb_xkb_common_doodad_t + **/ +typedef struct xcb_xkb_common_doodad_t { + xcb_atom_t name; /**< */ + uint8_t type; /**< */ + uint8_t priority; /**< */ + int16_t top; /**< */ + int16_t left; /**< */ + int16_t angle; /**< */ +} xcb_xkb_common_doodad_t; + +/** + * @brief xcb_xkb_common_doodad_iterator_t + **/ +typedef struct xcb_xkb_common_doodad_iterator_t { + xcb_xkb_common_doodad_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_common_doodad_iterator_t; + +/** + * @brief xcb_xkb_shape_doodad_t + **/ +typedef struct xcb_xkb_shape_doodad_t { + xcb_atom_t name; /**< */ + uint8_t type; /**< */ + uint8_t priority; /**< */ + int16_t top; /**< */ + int16_t left; /**< */ + int16_t angle; /**< */ + uint8_t colorNdx; /**< */ + uint8_t shapeNdx; /**< */ + uint8_t pad0[6]; /**< */ +} xcb_xkb_shape_doodad_t; + +/** + * @brief xcb_xkb_shape_doodad_iterator_t + **/ +typedef struct xcb_xkb_shape_doodad_iterator_t { + xcb_xkb_shape_doodad_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_shape_doodad_iterator_t; + +/** + * @brief xcb_xkb_text_doodad_t + **/ +typedef struct xcb_xkb_text_doodad_t { + xcb_atom_t name; /**< */ + uint8_t type; /**< */ + uint8_t priority; /**< */ + int16_t top; /**< */ + int16_t left; /**< */ + int16_t angle; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint8_t colorNdx; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xkb_text_doodad_t; + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_text_doodad_text + ** + ** @param const xcb_xkb_text_doodad_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_text_doodad_text (const xcb_xkb_text_doodad_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_text_doodad_font + ** + ** @param const xcb_xkb_text_doodad_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_text_doodad_font (const xcb_xkb_text_doodad_t *R /**< */); + +/** + * @brief xcb_xkb_text_doodad_iterator_t + **/ +typedef struct xcb_xkb_text_doodad_iterator_t { + xcb_xkb_text_doodad_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_text_doodad_iterator_t; + +/** + * @brief xcb_xkb_indicator_doodad_t + **/ +typedef struct xcb_xkb_indicator_doodad_t { + xcb_atom_t name; /**< */ + uint8_t type; /**< */ + uint8_t priority; /**< */ + int16_t top; /**< */ + int16_t left; /**< */ + int16_t angle; /**< */ + uint8_t shapeNdx; /**< */ + uint8_t onColorNdx; /**< */ + uint8_t offColorNdx; /**< */ + uint8_t pad0[5]; /**< */ +} xcb_xkb_indicator_doodad_t; + +/** + * @brief xcb_xkb_indicator_doodad_iterator_t + **/ +typedef struct xcb_xkb_indicator_doodad_iterator_t { + xcb_xkb_indicator_doodad_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_indicator_doodad_iterator_t; + +/** + * @brief xcb_xkb_logo_doodad_t + **/ +typedef struct xcb_xkb_logo_doodad_t { + xcb_atom_t name; /**< */ + uint8_t type; /**< */ + uint8_t priority; /**< */ + int16_t top; /**< */ + int16_t left; /**< */ + int16_t angle; /**< */ + uint8_t colorNdx; /**< */ + uint8_t shapeNdx; /**< */ + uint8_t pad0[6]; /**< */ +} xcb_xkb_logo_doodad_t; + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_logo_doodad_logo_name + ** + ** @param const xcb_xkb_logo_doodad_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_logo_doodad_logo_name (const xcb_xkb_logo_doodad_t *R /**< */); + +/** + * @brief xcb_xkb_logo_doodad_iterator_t + **/ +typedef struct xcb_xkb_logo_doodad_iterator_t { + xcb_xkb_logo_doodad_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_logo_doodad_iterator_t; + +/** + * @brief xcb_xkb_doodad_t + **/ +typedef union xcb_xkb_doodad_t { + xcb_xkb_common_doodad_t common; /**< */ + xcb_xkb_shape_doodad_t shape; /**< */ + xcb_xkb_text_doodad_t *text; /**< */ + xcb_xkb_indicator_doodad_t indicator; /**< */ + xcb_xkb_logo_doodad_t *logo; /**< */ +} xcb_xkb_doodad_t; + +/** + * @brief xcb_xkb_doodad_iterator_t + **/ +typedef struct xcb_xkb_doodad_iterator_t { + xcb_xkb_doodad_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_doodad_iterator_t; + +/** + * @brief xcb_xkb_section_t + **/ +typedef struct xcb_xkb_section_t { + xcb_atom_t name; /**< */ + int16_t top; /**< */ + int16_t left; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + int16_t angle; /**< */ + uint8_t priority; /**< */ + uint8_t nRows; /**< */ + uint8_t nDoodads; /**< */ + uint8_t nOverlays; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_section_t; + +/** + * @brief xcb_xkb_section_iterator_t + **/ +typedef struct xcb_xkb_section_iterator_t { + xcb_xkb_section_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_section_iterator_t; + +/** + * @brief xcb_xkb_listing_t + **/ +typedef struct xcb_xkb_listing_t { + uint16_t flags; /**< */ + uint16_t length; /**< */ +} xcb_xkb_listing_t; + +/** + * @brief xcb_xkb_listing_iterator_t + **/ +typedef struct xcb_xkb_listing_iterator_t { + xcb_xkb_listing_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_listing_iterator_t; + +/** + * @brief xcb_xkb_device_led_info_t + **/ +typedef struct xcb_xkb_device_led_info_t { + xcb_xkb_led_class_spec_t ledClass; /**< */ + xcb_xkb_id_spec_t ledID; /**< */ + uint32_t namesPresent; /**< */ + uint32_t mapsPresent; /**< */ + uint32_t physIndicators; /**< */ + uint32_t state; /**< */ +} xcb_xkb_device_led_info_t; + +/** + * @brief xcb_xkb_device_led_info_iterator_t + **/ +typedef struct xcb_xkb_device_led_info_iterator_t { + xcb_xkb_device_led_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_device_led_info_iterator_t; + +typedef enum xcb_xkb_error_t { + XCB_XKB_ERROR_BAD_DEVICE = 255, + XCB_XKB_ERROR_BAD_CLASS = 254, + XCB_XKB_ERROR_BAD_ID = 253 +} xcb_xkb_error_t; + +/** Opcode for xcb_xkb_keyboard. */ +#define XCB_XKB_KEYBOARD 0 + +/** + * @brief xcb_xkb_keyboard_error_t + **/ +typedef struct xcb_xkb_keyboard_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ + uint32_t value; /**< */ + uint16_t minorOpcode; /**< */ + uint8_t majorOpcode; /**< */ + uint8_t pad0[21]; /**< */ +} xcb_xkb_keyboard_error_t; + +typedef enum xcb_xkb_sa_t { + XCB_XKB_SA_CLEAR_LOCKS = 1, + XCB_XKB_SA_LATCH_TO_LOCK = 2, + XCB_XKB_SA_USE_MOD_MAP_MODS = 4, + XCB_XKB_SA_GROUP_ABSOLUTE = 4 +} xcb_xkb_sa_t; + +typedef enum xcb_xkb_sa_type_t { + XCB_XKB_SA_TYPE_NO_ACTION = 0, + XCB_XKB_SA_TYPE_SET_MODS = 1, + XCB_XKB_SA_TYPE_LATCH_MODS = 2, + XCB_XKB_SA_TYPE_LOCK_MODS = 3, + XCB_XKB_SA_TYPE_SET_GROUP = 4, + XCB_XKB_SA_TYPE_LATCH_GROUP = 5, + XCB_XKB_SA_TYPE_LOCK_GROUP = 6, + XCB_XKB_SA_TYPE_MOVE_PTR = 7, + XCB_XKB_SA_TYPE_PTR_BTN = 8, + XCB_XKB_SA_TYPE_LOCK_PTR_BTN = 9, + XCB_XKB_SA_TYPE_SET_PTR_DFLT = 10, + XCB_XKB_SA_TYPE_ISO_LOCK = 11, + XCB_XKB_SA_TYPE_TERMINATE = 12, + XCB_XKB_SA_TYPE_SWITCH_SCREEN = 13, + XCB_XKB_SA_TYPE_SET_CONTROLS = 14, + XCB_XKB_SA_TYPE_LOCK_CONTROLS = 15, + XCB_XKB_SA_TYPE_ACTION_MESSAGE = 16, + XCB_XKB_SA_TYPE_REDIRECT_KEY = 17, + XCB_XKB_SA_TYPE_DEVICE_BTN = 18, + XCB_XKB_SA_TYPE_LOCK_DEVICE_BTN = 19, + XCB_XKB_SA_TYPE_DEVICE_VALUATOR = 20 +} xcb_xkb_sa_type_t; + +/** + * @brief xcb_xkb_sa_no_action_t + **/ +typedef struct xcb_xkb_sa_no_action_t { + uint8_t type; /**< */ + uint8_t pad0[7]; /**< */ +} xcb_xkb_sa_no_action_t; + +/** + * @brief xcb_xkb_sa_no_action_iterator_t + **/ +typedef struct xcb_xkb_sa_no_action_iterator_t { + xcb_xkb_sa_no_action_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_no_action_iterator_t; + +/** + * @brief xcb_xkb_sa_set_mods_t + **/ +typedef struct xcb_xkb_sa_set_mods_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t mask; /**< */ + uint8_t realMods; /**< */ + uint8_t vmodsHigh; /**< */ + uint8_t vmodsLow; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_sa_set_mods_t; + +/** + * @brief xcb_xkb_sa_set_mods_iterator_t + **/ +typedef struct xcb_xkb_sa_set_mods_iterator_t { + xcb_xkb_sa_set_mods_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_set_mods_iterator_t; + +/** + * @brief xcb_xkb_sa_latch_mods_t + **/ +typedef struct xcb_xkb_sa_latch_mods_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t mask; /**< */ + uint8_t realMods; /**< */ + uint8_t vmodsHigh; /**< */ + uint8_t vmodsLow; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_sa_latch_mods_t; + +/** + * @brief xcb_xkb_sa_latch_mods_iterator_t + **/ +typedef struct xcb_xkb_sa_latch_mods_iterator_t { + xcb_xkb_sa_latch_mods_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_latch_mods_iterator_t; + +/** + * @brief xcb_xkb_sa_lock_mods_t + **/ +typedef struct xcb_xkb_sa_lock_mods_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t mask; /**< */ + uint8_t realMods; /**< */ + uint8_t vmodsHigh; /**< */ + uint8_t vmodsLow; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_sa_lock_mods_t; + +/** + * @brief xcb_xkb_sa_lock_mods_iterator_t + **/ +typedef struct xcb_xkb_sa_lock_mods_iterator_t { + xcb_xkb_sa_lock_mods_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_lock_mods_iterator_t; + +/** + * @brief xcb_xkb_sa_set_group_t + **/ +typedef struct xcb_xkb_sa_set_group_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + int8_t group; /**< */ + uint8_t pad0[5]; /**< */ +} xcb_xkb_sa_set_group_t; + +/** + * @brief xcb_xkb_sa_set_group_iterator_t + **/ +typedef struct xcb_xkb_sa_set_group_iterator_t { + xcb_xkb_sa_set_group_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_set_group_iterator_t; + +/** + * @brief xcb_xkb_sa_latch_group_t + **/ +typedef struct xcb_xkb_sa_latch_group_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + int8_t group; /**< */ + uint8_t pad0[5]; /**< */ +} xcb_xkb_sa_latch_group_t; + +/** + * @brief xcb_xkb_sa_latch_group_iterator_t + **/ +typedef struct xcb_xkb_sa_latch_group_iterator_t { + xcb_xkb_sa_latch_group_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_latch_group_iterator_t; + +/** + * @brief xcb_xkb_sa_lock_group_t + **/ +typedef struct xcb_xkb_sa_lock_group_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + int8_t group; /**< */ + uint8_t pad0[5]; /**< */ +} xcb_xkb_sa_lock_group_t; + +/** + * @brief xcb_xkb_sa_lock_group_iterator_t + **/ +typedef struct xcb_xkb_sa_lock_group_iterator_t { + xcb_xkb_sa_lock_group_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_lock_group_iterator_t; + +typedef enum xcb_xkb_sa_move_ptr_flag_t { + XCB_XKB_SA_MOVE_PTR_FLAG_NO_ACCELERATION = 1, + XCB_XKB_SA_MOVE_PTR_FLAG_MOVE_ABSOLUTE_X = 2, + XCB_XKB_SA_MOVE_PTR_FLAG_MOVE_ABSOLUTE_Y = 4 +} xcb_xkb_sa_move_ptr_flag_t; + +/** + * @brief xcb_xkb_sa_move_ptr_t + **/ +typedef struct xcb_xkb_sa_move_ptr_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + int8_t xHigh; /**< */ + uint8_t xLow; /**< */ + int8_t yHigh; /**< */ + uint8_t yLow; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_sa_move_ptr_t; + +/** + * @brief xcb_xkb_sa_move_ptr_iterator_t + **/ +typedef struct xcb_xkb_sa_move_ptr_iterator_t { + xcb_xkb_sa_move_ptr_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_move_ptr_iterator_t; + +/** + * @brief xcb_xkb_sa_ptr_btn_t + **/ +typedef struct xcb_xkb_sa_ptr_btn_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t count; /**< */ + uint8_t button; /**< */ + uint8_t pad0[4]; /**< */ +} xcb_xkb_sa_ptr_btn_t; + +/** + * @brief xcb_xkb_sa_ptr_btn_iterator_t + **/ +typedef struct xcb_xkb_sa_ptr_btn_iterator_t { + xcb_xkb_sa_ptr_btn_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_ptr_btn_iterator_t; + +/** + * @brief xcb_xkb_sa_lock_ptr_btn_t + **/ +typedef struct xcb_xkb_sa_lock_ptr_btn_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t pad0; /**< */ + uint8_t button; /**< */ + uint8_t pad1[4]; /**< */ +} xcb_xkb_sa_lock_ptr_btn_t; + +/** + * @brief xcb_xkb_sa_lock_ptr_btn_iterator_t + **/ +typedef struct xcb_xkb_sa_lock_ptr_btn_iterator_t { + xcb_xkb_sa_lock_ptr_btn_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_lock_ptr_btn_iterator_t; + +typedef enum xcb_xkb_sa_set_ptr_dflt_flag_t { + XCB_XKB_SA_SET_PTR_DFLT_FLAG_DFLT_BTN_ABSOLUTE = 2, + XCB_XKB_SA_SET_PTR_DFLT_FLAG_AFFECT_DFLT_BUTTON = 1 +} xcb_xkb_sa_set_ptr_dflt_flag_t; + +/** + * @brief xcb_xkb_sa_set_ptr_dflt_t + **/ +typedef struct xcb_xkb_sa_set_ptr_dflt_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t affect; /**< */ + int8_t value; /**< */ + uint8_t pad0[4]; /**< */ +} xcb_xkb_sa_set_ptr_dflt_t; + +/** + * @brief xcb_xkb_sa_set_ptr_dflt_iterator_t + **/ +typedef struct xcb_xkb_sa_set_ptr_dflt_iterator_t { + xcb_xkb_sa_set_ptr_dflt_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_set_ptr_dflt_iterator_t; + +typedef enum xcb_xkb_sa_iso_lock_flag_t { + XCB_XKB_SA_ISO_LOCK_FLAG_NO_LOCK = 1, + XCB_XKB_SA_ISO_LOCK_FLAG_NO_UNLOCK = 2, + XCB_XKB_SA_ISO_LOCK_FLAG_USE_MOD_MAP_MODS = 4, + XCB_XKB_SA_ISO_LOCK_FLAG_GROUP_ABSOLUTE = 4, + XCB_XKB_SA_ISO_LOCK_FLAG_ISO_DFLT_IS_GROUP = 8 +} xcb_xkb_sa_iso_lock_flag_t; + +typedef enum xcb_xkb_sa_iso_lock_no_affect_t { + XCB_XKB_SA_ISO_LOCK_NO_AFFECT_CTRLS = 8, + XCB_XKB_SA_ISO_LOCK_NO_AFFECT_PTR = 16, + XCB_XKB_SA_ISO_LOCK_NO_AFFECT_GROUP = 32, + XCB_XKB_SA_ISO_LOCK_NO_AFFECT_MODS = 64 +} xcb_xkb_sa_iso_lock_no_affect_t; + +/** + * @brief xcb_xkb_sa_iso_lock_t + **/ +typedef struct xcb_xkb_sa_iso_lock_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t mask; /**< */ + uint8_t realMods; /**< */ + int8_t group; /**< */ + uint8_t affect; /**< */ + uint8_t vmodsHigh; /**< */ + uint8_t vmodsLow; /**< */ +} xcb_xkb_sa_iso_lock_t; + +/** + * @brief xcb_xkb_sa_iso_lock_iterator_t + **/ +typedef struct xcb_xkb_sa_iso_lock_iterator_t { + xcb_xkb_sa_iso_lock_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_iso_lock_iterator_t; + +/** + * @brief xcb_xkb_sa_terminate_t + **/ +typedef struct xcb_xkb_sa_terminate_t { + uint8_t type; /**< */ + uint8_t pad0[7]; /**< */ +} xcb_xkb_sa_terminate_t; + +/** + * @brief xcb_xkb_sa_terminate_iterator_t + **/ +typedef struct xcb_xkb_sa_terminate_iterator_t { + xcb_xkb_sa_terminate_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_terminate_iterator_t; + +typedef enum xcb_xkb_switch_screen_flag_t { + XCB_XKB_SWITCH_SCREEN_FLAG_APPLICATION = 1, + XCB_XKB_SWITCH_SCREEN_FLAG_ABSOLUTE = 4 +} xcb_xkb_switch_screen_flag_t; + +/** + * @brief xcb_xkb_sa_switch_screen_t + **/ +typedef struct xcb_xkb_sa_switch_screen_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + int8_t newScreen; /**< */ + uint8_t pad0[5]; /**< */ +} xcb_xkb_sa_switch_screen_t; + +/** + * @brief xcb_xkb_sa_switch_screen_iterator_t + **/ +typedef struct xcb_xkb_sa_switch_screen_iterator_t { + xcb_xkb_sa_switch_screen_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_switch_screen_iterator_t; + +typedef enum xcb_xkb_bool_ctrls_high_t { + XCB_XKB_BOOL_CTRLS_HIGH_ACCESS_X_FEEDBACK = 1, + XCB_XKB_BOOL_CTRLS_HIGH_AUDIBLE_BELL = 2, + XCB_XKB_BOOL_CTRLS_HIGH_OVERLAY_1 = 4, + XCB_XKB_BOOL_CTRLS_HIGH_OVERLAY_2 = 8, + XCB_XKB_BOOL_CTRLS_HIGH_IGNORE_GROUP_LOCK = 16 +} xcb_xkb_bool_ctrls_high_t; + +typedef enum xcb_xkb_bool_ctrls_low_t { + XCB_XKB_BOOL_CTRLS_LOW_REPEAT_KEYS = 1, + XCB_XKB_BOOL_CTRLS_LOW_SLOW_KEYS = 2, + XCB_XKB_BOOL_CTRLS_LOW_BOUNCE_KEYS = 4, + XCB_XKB_BOOL_CTRLS_LOW_STICKY_KEYS = 8, + XCB_XKB_BOOL_CTRLS_LOW_MOUSE_KEYS = 16, + XCB_XKB_BOOL_CTRLS_LOW_MOUSE_KEYS_ACCEL = 32, + XCB_XKB_BOOL_CTRLS_LOW_ACCESS_X_KEYS = 64, + XCB_XKB_BOOL_CTRLS_LOW_ACCESS_X_TIMEOUT = 128 +} xcb_xkb_bool_ctrls_low_t; + +/** + * @brief xcb_xkb_sa_set_controls_t + **/ +typedef struct xcb_xkb_sa_set_controls_t { + uint8_t type; /**< */ + uint8_t pad0[3]; /**< */ + uint8_t boolCtrlsHigh; /**< */ + uint8_t boolCtrlsLow; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_xkb_sa_set_controls_t; + +/** + * @brief xcb_xkb_sa_set_controls_iterator_t + **/ +typedef struct xcb_xkb_sa_set_controls_iterator_t { + xcb_xkb_sa_set_controls_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_set_controls_iterator_t; + +/** + * @brief xcb_xkb_sa_lock_controls_t + **/ +typedef struct xcb_xkb_sa_lock_controls_t { + uint8_t type; /**< */ + uint8_t pad0[3]; /**< */ + uint8_t boolCtrlsHigh; /**< */ + uint8_t boolCtrlsLow; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_xkb_sa_lock_controls_t; + +/** + * @brief xcb_xkb_sa_lock_controls_iterator_t + **/ +typedef struct xcb_xkb_sa_lock_controls_iterator_t { + xcb_xkb_sa_lock_controls_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_lock_controls_iterator_t; + +typedef enum xcb_xkb_action_message_flag_t { + XCB_XKB_ACTION_MESSAGE_FLAG_ON_PRESS = 1, + XCB_XKB_ACTION_MESSAGE_FLAG_ON_RELEASE = 2, + XCB_XKB_ACTION_MESSAGE_FLAG_GEN_KEY_EVENT = 4 +} xcb_xkb_action_message_flag_t; + +/** + * @brief xcb_xkb_sa_action_message_t + **/ +typedef struct xcb_xkb_sa_action_message_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t message[6]; /**< */ +} xcb_xkb_sa_action_message_t; + +/** + * @brief xcb_xkb_sa_action_message_iterator_t + **/ +typedef struct xcb_xkb_sa_action_message_iterator_t { + xcb_xkb_sa_action_message_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_action_message_iterator_t; + +/** + * @brief xcb_xkb_sa_redirect_key_t + **/ +typedef struct xcb_xkb_sa_redirect_key_t { + uint8_t type; /**< */ + xcb_keycode_t newkey; /**< */ + uint8_t mask; /**< */ + uint8_t realModifiers; /**< */ + uint8_t vmodsMaskHigh; /**< */ + uint8_t vmodsMaskLow; /**< */ + uint8_t vmodsHigh; /**< */ + uint8_t vmodsLow; /**< */ +} xcb_xkb_sa_redirect_key_t; + +/** + * @brief xcb_xkb_sa_redirect_key_iterator_t + **/ +typedef struct xcb_xkb_sa_redirect_key_iterator_t { + xcb_xkb_sa_redirect_key_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_redirect_key_iterator_t; + +/** + * @brief xcb_xkb_sa_device_btn_t + **/ +typedef struct xcb_xkb_sa_device_btn_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t count; /**< */ + uint8_t button; /**< */ + uint8_t device; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xkb_sa_device_btn_t; + +/** + * @brief xcb_xkb_sa_device_btn_iterator_t + **/ +typedef struct xcb_xkb_sa_device_btn_iterator_t { + xcb_xkb_sa_device_btn_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_device_btn_iterator_t; + +typedef enum xcb_xkb_lock_device_flags_t { + XCB_XKB_LOCK_DEVICE_FLAGS_NO_LOCK = 1, + XCB_XKB_LOCK_DEVICE_FLAGS_NO_UNLOCK = 2 +} xcb_xkb_lock_device_flags_t; + +/** + * @brief xcb_xkb_sa_lock_device_btn_t + **/ +typedef struct xcb_xkb_sa_lock_device_btn_t { + uint8_t type; /**< */ + uint8_t flags; /**< */ + uint8_t pad0; /**< */ + uint8_t button; /**< */ + uint8_t device; /**< */ +} xcb_xkb_sa_lock_device_btn_t; + +/** + * @brief xcb_xkb_sa_lock_device_btn_iterator_t + **/ +typedef struct xcb_xkb_sa_lock_device_btn_iterator_t { + xcb_xkb_sa_lock_device_btn_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_lock_device_btn_iterator_t; + +typedef enum xcb_xkb_sa_val_what_t { + XCB_XKB_SA_VAL_WHAT_IGNORE_VAL = 0, + XCB_XKB_SA_VAL_WHAT_SET_VAL_MIN = 1, + XCB_XKB_SA_VAL_WHAT_SET_VAL_CENTER = 2, + XCB_XKB_SA_VAL_WHAT_SET_VAL_MAX = 3, + XCB_XKB_SA_VAL_WHAT_SET_VAL_RELATIVE = 4, + XCB_XKB_SA_VAL_WHAT_SET_VAL_ABSOLUTE = 5 +} xcb_xkb_sa_val_what_t; + +/** + * @brief xcb_xkb_sa_device_valuator_t + **/ +typedef struct xcb_xkb_sa_device_valuator_t { + uint8_t type; /**< */ + uint8_t device; /**< */ + uint8_t val1what; /**< */ + uint8_t val1index; /**< */ + uint8_t val1value; /**< */ + uint8_t val2what; /**< */ + uint8_t val2index; /**< */ + uint8_t val2value; /**< */ +} xcb_xkb_sa_device_valuator_t; + +/** + * @brief xcb_xkb_sa_device_valuator_iterator_t + **/ +typedef struct xcb_xkb_sa_device_valuator_iterator_t { + xcb_xkb_sa_device_valuator_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_sa_device_valuator_iterator_t; + +/** + * @brief xcb_xkb_action_t + **/ +typedef union xcb_xkb_action_t { + xcb_xkb_sa_no_action_t noaction; /**< */ + xcb_xkb_sa_set_mods_t setmods; /**< */ + xcb_xkb_sa_latch_mods_t latchmods; /**< */ + xcb_xkb_sa_lock_mods_t lockmods; /**< */ + xcb_xkb_sa_set_group_t setgroup; /**< */ + xcb_xkb_sa_latch_group_t latchgroup; /**< */ + xcb_xkb_sa_lock_group_t lockgroup; /**< */ + xcb_xkb_sa_move_ptr_t moveptr; /**< */ + xcb_xkb_sa_ptr_btn_t ptrbtn; /**< */ + xcb_xkb_sa_lock_ptr_btn_t lockptrbtn; /**< */ + xcb_xkb_sa_set_ptr_dflt_t setptrdflt; /**< */ + xcb_xkb_sa_iso_lock_t isolock; /**< */ + xcb_xkb_sa_terminate_t terminate; /**< */ + xcb_xkb_sa_switch_screen_t switchscreen; /**< */ + xcb_xkb_sa_set_controls_t setcontrols; /**< */ + xcb_xkb_sa_lock_controls_t lockcontrols; /**< */ + xcb_xkb_sa_action_message_t message; /**< */ + xcb_xkb_sa_redirect_key_t redirect; /**< */ + xcb_xkb_sa_device_btn_t devbtn; /**< */ + xcb_xkb_sa_lock_device_btn_t lockdevbtn; /**< */ + xcb_xkb_sa_device_valuator_t devval; /**< */ + uint8_t type; /**< */ +} xcb_xkb_action_t; + +/** + * @brief xcb_xkb_action_iterator_t + **/ +typedef struct xcb_xkb_action_iterator_t { + xcb_xkb_action_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xkb_action_iterator_t; + +/** + * @brief xcb_xkb_use_extension_cookie_t + **/ +typedef struct xcb_xkb_use_extension_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_use_extension_cookie_t; + +/** Opcode for xcb_xkb_use_extension. */ +#define XCB_XKB_USE_EXTENSION 0 + +/** + * @brief xcb_xkb_use_extension_request_t + **/ +typedef struct xcb_xkb_use_extension_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t wantedMajor; /**< */ + uint16_t wantedMinor; /**< */ +} xcb_xkb_use_extension_request_t; + +/** + * @brief xcb_xkb_use_extension_reply_t + **/ +typedef struct xcb_xkb_use_extension_reply_t { + uint8_t response_type; /**< */ + uint8_t supported; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t serverMajor; /**< */ + uint16_t serverMinor; /**< */ + uint8_t pad0[20]; /**< */ +} xcb_xkb_use_extension_reply_t; + +/** + * @brief xcb_xkb_select_events_details_t + **/ +typedef struct xcb_xkb_select_events_details_t { + uint16_t affectNewKeyboard; /**< */ + uint16_t newKeyboardDetails; /**< */ + uint16_t affectState; /**< */ + uint16_t stateDetails; /**< */ + uint32_t affectCtrls; /**< */ + uint32_t ctrlDetails; /**< */ + uint32_t affectIndicatorState; /**< */ + uint32_t indicatorStateDetails; /**< */ + uint32_t affectIndicatorMap; /**< */ + uint32_t indicatorMapDetails; /**< */ + uint16_t affectNames; /**< */ + uint16_t namesDetails; /**< */ + uint8_t affectCompat; /**< */ + uint8_t compatDetails; /**< */ + uint8_t affectBell; /**< */ + uint8_t bellDetails; /**< */ + uint8_t affectMsgDetails; /**< */ + uint8_t msgDetails; /**< */ + uint16_t affectAccessX; /**< */ + uint16_t accessXDetails; /**< */ + uint16_t affectExtDev; /**< */ + uint16_t extdevDetails; /**< */ +} xcb_xkb_select_events_details_t; + +/** Opcode for xcb_xkb_select_events. */ +#define XCB_XKB_SELECT_EVENTS 1 + +/** + * @brief xcb_xkb_select_events_request_t + **/ +typedef struct xcb_xkb_select_events_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint16_t affectWhich; /**< */ + uint16_t clear; /**< */ + uint16_t selectAll; /**< */ + uint16_t affectMap; /**< */ + uint16_t map; /**< */ +} xcb_xkb_select_events_request_t; + +/** Opcode for xcb_xkb_bell. */ +#define XCB_XKB_BELL 3 + +/** + * @brief xcb_xkb_bell_request_t + **/ +typedef struct xcb_xkb_bell_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + xcb_xkb_bell_class_spec_t bellClass; /**< */ + xcb_xkb_id_spec_t bellID; /**< */ + int8_t percent; /**< */ + uint8_t forceSound; /**< */ + uint8_t eventOnly; /**< */ + uint8_t pad0; /**< */ + int16_t pitch; /**< */ + int16_t duration; /**< */ + uint8_t pad1[2]; /**< */ + xcb_atom_t name; /**< */ + xcb_window_t window; /**< */ +} xcb_xkb_bell_request_t; + +/** + * @brief xcb_xkb_get_state_cookie_t + **/ +typedef struct xcb_xkb_get_state_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_state_cookie_t; + +/** Opcode for xcb_xkb_get_state. */ +#define XCB_XKB_GET_STATE 4 + +/** + * @brief xcb_xkb_get_state_request_t + **/ +typedef struct xcb_xkb_get_state_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_get_state_request_t; + +/** + * @brief xcb_xkb_get_state_reply_t + **/ +typedef struct xcb_xkb_get_state_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t mods; /**< */ + uint8_t baseMods; /**< */ + uint8_t latchedMods; /**< */ + uint8_t lockedMods; /**< */ + uint8_t group; /**< */ + uint8_t lockedGroup; /**< */ + int16_t baseGroup; /**< */ + int16_t latchedGroup; /**< */ + uint8_t compatState; /**< */ + uint8_t grabMods; /**< */ + uint8_t compatGrabMods; /**< */ + uint8_t lookupMods; /**< */ + uint8_t compatLookupMods; /**< */ + uint8_t pad0; /**< */ + uint16_t ptrBtnState; /**< */ + uint8_t pad1[6]; /**< */ +} xcb_xkb_get_state_reply_t; + +/** Opcode for xcb_xkb_latch_lock_state. */ +#define XCB_XKB_LATCH_LOCK_STATE 5 + +/** + * @brief xcb_xkb_latch_lock_state_request_t + **/ +typedef struct xcb_xkb_latch_lock_state_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t affectModLocks; /**< */ + uint8_t modLocks; /**< */ + uint8_t lockGroup; /**< */ + uint8_t groupLock; /**< */ + uint8_t affectModLatches; /**< */ + uint8_t pad0; /**< */ + uint8_t latchGroup; /**< */ + uint16_t groupLatch; /**< */ +} xcb_xkb_latch_lock_state_request_t; + +/** + * @brief xcb_xkb_get_controls_cookie_t + **/ +typedef struct xcb_xkb_get_controls_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_controls_cookie_t; + +/** Opcode for xcb_xkb_get_controls. */ +#define XCB_XKB_GET_CONTROLS 6 + +/** + * @brief xcb_xkb_get_controls_request_t + **/ +typedef struct xcb_xkb_get_controls_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_get_controls_request_t; + +/** + * @brief xcb_xkb_get_controls_reply_t + **/ +typedef struct xcb_xkb_get_controls_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t mouseKeysDfltBtn; /**< */ + uint8_t numGroups; /**< */ + uint8_t groupsWrap; /**< */ + uint8_t internalModsMask; /**< */ + uint8_t ignoreLockModsMask; /**< */ + uint8_t internalModsRealMods; /**< */ + uint8_t ignoreLockModsRealMods; /**< */ + uint8_t pad0; /**< */ + uint16_t internalModsVmods; /**< */ + uint16_t ignoreLockModsVmods; /**< */ + uint16_t repeatDelay; /**< */ + uint16_t repeatInterval; /**< */ + uint16_t slowKeysDelay; /**< */ + uint16_t debounceDelay; /**< */ + uint16_t mouseKeysDelay; /**< */ + uint16_t mouseKeysInterval; /**< */ + uint16_t mouseKeysTimeToMax; /**< */ + uint16_t mouseKeysMaxSpeed; /**< */ + int16_t mouseKeysCurve; /**< */ + xcb_xkb_ax_option_t accessXOption; /**< */ + uint16_t accessXTimeout; /**< */ + xcb_xkb_ax_option_t accessXTimeoutOptionsMask; /**< */ + xcb_xkb_ax_option_t accessXTimeoutOptionsValues; /**< */ + uint8_t pad1[2]; /**< */ + uint32_t accessXTimeoutMask; /**< */ + uint32_t accessXTimeoutValues; /**< */ + uint32_t enabledControls; /**< */ + uint8_t perKeyRepeat[32]; /**< */ +} xcb_xkb_get_controls_reply_t; + +/** Opcode for xcb_xkb_set_controls. */ +#define XCB_XKB_SET_CONTROLS 7 + +/** + * @brief xcb_xkb_set_controls_request_t + **/ +typedef struct xcb_xkb_set_controls_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t affectInternalRealMods; /**< */ + uint8_t internalRealMods; /**< */ + uint8_t affectIgnoreLockRealMods; /**< */ + uint8_t ignoreLockRealMods; /**< */ + uint16_t affectInternalVirtualMods; /**< */ + uint16_t internalVirtualMods; /**< */ + uint16_t affectIgnoreLockVirtualMods; /**< */ + uint16_t ignoreLockVirtualMods; /**< */ + uint8_t mouseKeysDfltBtn; /**< */ + uint8_t groupsWrap; /**< */ + xcb_xkb_ax_option_t accessXOptions; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t affectEnabledControls; /**< */ + uint32_t enabledControls; /**< */ + uint32_t changeControls; /**< */ + uint16_t repeatDelay; /**< */ + uint16_t repeatInterval; /**< */ + uint16_t slowKeysDelay; /**< */ + uint16_t debounceDelay; /**< */ + uint16_t mouseKeysDelay; /**< */ + uint16_t mouseKeysInterval; /**< */ + uint16_t mouseKeysTimeToMax; /**< */ + uint16_t mouseKeysMaxSpeed; /**< */ + int16_t mouseKeysCurve; /**< */ + uint16_t accessXTimeout; /**< */ + uint32_t accessXTimeoutMask; /**< */ + uint32_t accessXTimeoutValues; /**< */ + xcb_xkb_ax_option_t accessXTimeoutOptionsMask; /**< */ + xcb_xkb_ax_option_t accessXTimeoutOptionsValues; /**< */ + uint8_t perKeyRepeat[32]; /**< */ +} xcb_xkb_set_controls_request_t; + +/** + * @brief xcb_xkb_get_map_cookie_t + **/ +typedef struct xcb_xkb_get_map_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_map_cookie_t; + +/** Opcode for xcb_xkb_get_map. */ +#define XCB_XKB_GET_MAP 8 + +/** + * @brief xcb_xkb_get_map_request_t + **/ +typedef struct xcb_xkb_get_map_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint16_t full; /**< */ + uint16_t partial; /**< */ + uint8_t firstType; /**< */ + uint8_t nTypes; /**< */ + xcb_keycode_t firstKeySym; /**< */ + uint8_t nKeySyms; /**< */ + xcb_keycode_t firstKeyAction; /**< */ + uint8_t nKeyActions; /**< */ + xcb_keycode_t firstKeyBehavior; /**< */ + uint8_t nKeyBehaviors; /**< */ + uint16_t virtualMods; /**< */ + xcb_keycode_t firstKeyExplicit; /**< */ + uint8_t nKeyExplicit; /**< */ + xcb_keycode_t firstModMapKey; /**< */ + uint8_t nModMapKeys; /**< */ + xcb_keycode_t firstVModMapKey; /**< */ + uint8_t nVModMapKeys; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_get_map_request_t; + +/** + * @brief xcb_xkb_get_map_map_t + **/ +typedef struct xcb_xkb_get_map_map_t { + xcb_xkb_key_type_t *types_rtrn; /**< */ + xcb_xkb_key_sym_map_t *syms_rtrn; /**< */ + uint8_t *acts_rtrn_count; /**< */ + xcb_xkb_action_t *acts_rtrn_acts; /**< */ + xcb_xkb_set_behavior_t *behaviors_rtrn; /**< */ + uint8_t *vmods_rtrn; /**< */ + xcb_xkb_set_explicit_t *explicit_rtrn; /**< */ + xcb_xkb_key_mod_map_t *modmap_rtrn; /**< */ + xcb_xkb_key_v_mod_map_t *vmodmap_rtrn; /**< */ +} xcb_xkb_get_map_map_t; + +/** + * @brief xcb_xkb_get_map_reply_t + **/ +typedef struct xcb_xkb_get_map_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad0[2]; /**< */ + xcb_keycode_t minKeyCode; /**< */ + xcb_keycode_t maxKeyCode; /**< */ + uint16_t present; /**< */ + uint8_t firstType; /**< */ + uint8_t nTypes; /**< */ + uint8_t totalTypes; /**< */ + xcb_keycode_t firstKeySym; /**< */ + uint16_t totalSyms; /**< */ + uint8_t nKeySyms; /**< */ + xcb_keycode_t firstKeyAction; /**< */ + uint16_t totalActions; /**< */ + uint8_t nKeyActions; /**< */ + xcb_keycode_t firstKeyBehavior; /**< */ + uint8_t nKeyBehaviors; /**< */ + uint8_t totalKeyBehaviors; /**< */ + xcb_keycode_t firstKeyExplicit; /**< */ + uint8_t nKeyExplicit; /**< */ + uint8_t totalKeyExplicit; /**< */ + xcb_keycode_t firstModMapKey; /**< */ + uint8_t nModMapKeys; /**< */ + uint8_t totalModMapKeys; /**< */ + xcb_keycode_t firstVModMapKey; /**< */ + uint8_t nVModMapKeys; /**< */ + uint8_t totalVModMapKeys; /**< */ + uint8_t pad1; /**< */ + uint16_t virtualMods; /**< */ +} xcb_xkb_get_map_reply_t; + +/** + * @brief xcb_xkb_set_map_values_t + **/ +typedef struct xcb_xkb_set_map_values_t { + xcb_xkb_set_key_type_t *types; /**< */ + xcb_xkb_key_sym_map_t *syms; /**< */ + uint8_t *actionsCount; /**< */ + xcb_xkb_action_t *actions; /**< */ + xcb_xkb_set_behavior_t *behaviors; /**< */ + uint8_t *vmods; /**< */ + xcb_xkb_set_explicit_t *explicit; /**< */ + xcb_xkb_key_mod_map_t *modmap; /**< */ + xcb_xkb_key_v_mod_map_t *vmodmap; /**< */ +} xcb_xkb_set_map_values_t; + +/** Opcode for xcb_xkb_set_map. */ +#define XCB_XKB_SET_MAP 9 + +/** + * @brief xcb_xkb_set_map_request_t + **/ +typedef struct xcb_xkb_set_map_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint16_t present; /**< */ + uint16_t flags; /**< */ + xcb_keycode_t minKeyCode; /**< */ + xcb_keycode_t maxKeyCode; /**< */ + uint8_t firstType; /**< */ + uint8_t nTypes; /**< */ + xcb_keycode_t firstKeySym; /**< */ + uint8_t nKeySyms; /**< */ + uint16_t totalSyms; /**< */ + xcb_keycode_t firstKeyAction; /**< */ + uint8_t nKeyActions; /**< */ + uint16_t totalActions; /**< */ + xcb_keycode_t firstKeyBehavior; /**< */ + uint8_t nKeyBehaviors; /**< */ + uint8_t totalKeyBehaviors; /**< */ + xcb_keycode_t firstKeyExplicit; /**< */ + uint8_t nKeyExplicit; /**< */ + uint8_t totalKeyExplicit; /**< */ + xcb_keycode_t firstModMapKey; /**< */ + uint8_t nModMapKeys; /**< */ + uint8_t totalModMapKeys; /**< */ + xcb_keycode_t firstVModMapKey; /**< */ + uint8_t nVModMapKeys; /**< */ + uint8_t totalVModMapKeys; /**< */ + uint16_t virtualMods; /**< */ +} xcb_xkb_set_map_request_t; + +/** + * @brief xcb_xkb_get_compat_map_cookie_t + **/ +typedef struct xcb_xkb_get_compat_map_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_compat_map_cookie_t; + +/** Opcode for xcb_xkb_get_compat_map. */ +#define XCB_XKB_GET_COMPAT_MAP 10 + +/** + * @brief xcb_xkb_get_compat_map_request_t + **/ +typedef struct xcb_xkb_get_compat_map_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t groups; /**< */ + uint8_t getAllSI; /**< */ + uint16_t firstSI; /**< */ + uint16_t nSI; /**< */ +} xcb_xkb_get_compat_map_request_t; + +/** + * @brief xcb_xkb_get_compat_map_reply_t + **/ +typedef struct xcb_xkb_get_compat_map_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t groupsRtrn; /**< */ + uint8_t pad0; /**< */ + uint16_t firstSIRtrn; /**< */ + uint16_t nSIRtrn; /**< */ + uint16_t nTotalSI; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_xkb_get_compat_map_reply_t; + +/** Opcode for xcb_xkb_set_compat_map. */ +#define XCB_XKB_SET_COMPAT_MAP 11 + +/** + * @brief xcb_xkb_set_compat_map_request_t + **/ +typedef struct xcb_xkb_set_compat_map_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t pad0; /**< */ + uint8_t recomputeActions; /**< */ + uint8_t truncateSI; /**< */ + uint8_t groups; /**< */ + uint16_t firstSI; /**< */ + uint16_t nSI; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_xkb_set_compat_map_request_t; + +/** + * @brief xcb_xkb_get_indicator_state_cookie_t + **/ +typedef struct xcb_xkb_get_indicator_state_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_indicator_state_cookie_t; + +/** Opcode for xcb_xkb_get_indicator_state. */ +#define XCB_XKB_GET_INDICATOR_STATE 12 + +/** + * @brief xcb_xkb_get_indicator_state_request_t + **/ +typedef struct xcb_xkb_get_indicator_state_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_get_indicator_state_request_t; + +/** + * @brief xcb_xkb_get_indicator_state_reply_t + **/ +typedef struct xcb_xkb_get_indicator_state_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t state; /**< */ + uint8_t pad0[20]; /**< */ +} xcb_xkb_get_indicator_state_reply_t; + +/** + * @brief xcb_xkb_get_indicator_map_cookie_t + **/ +typedef struct xcb_xkb_get_indicator_map_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_indicator_map_cookie_t; + +/** Opcode for xcb_xkb_get_indicator_map. */ +#define XCB_XKB_GET_INDICATOR_MAP 13 + +/** + * @brief xcb_xkb_get_indicator_map_request_t + **/ +typedef struct xcb_xkb_get_indicator_map_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t which; /**< */ +} xcb_xkb_get_indicator_map_request_t; + +/** + * @brief xcb_xkb_get_indicator_map_reply_t + **/ +typedef struct xcb_xkb_get_indicator_map_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t which; /**< */ + uint32_t realIndicators; /**< */ + uint8_t nIndicators; /**< */ + uint8_t pad0[15]; /**< */ +} xcb_xkb_get_indicator_map_reply_t; + +/** Opcode for xcb_xkb_set_indicator_map. */ +#define XCB_XKB_SET_INDICATOR_MAP 14 + +/** + * @brief xcb_xkb_set_indicator_map_request_t + **/ +typedef struct xcb_xkb_set_indicator_map_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t which; /**< */ +} xcb_xkb_set_indicator_map_request_t; + +/** + * @brief xcb_xkb_get_named_indicator_cookie_t + **/ +typedef struct xcb_xkb_get_named_indicator_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_named_indicator_cookie_t; + +/** Opcode for xcb_xkb_get_named_indicator. */ +#define XCB_XKB_GET_NAMED_INDICATOR 15 + +/** + * @brief xcb_xkb_get_named_indicator_request_t + **/ +typedef struct xcb_xkb_get_named_indicator_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + xcb_xkb_led_class_spec_t ledClass; /**< */ + xcb_xkb_id_spec_t ledID; /**< */ + uint8_t pad0[2]; /**< */ + xcb_atom_t indicator; /**< */ +} xcb_xkb_get_named_indicator_request_t; + +/** + * @brief xcb_xkb_get_named_indicator_reply_t + **/ +typedef struct xcb_xkb_get_named_indicator_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_atom_t indicator; /**< */ + uint8_t found; /**< */ + uint8_t on; /**< */ + uint8_t realIndicator; /**< */ + uint8_t ndx; /**< */ + uint8_t map_flags; /**< */ + uint8_t map_whichGroups; /**< */ + uint8_t map_groups; /**< */ + uint8_t map_whichMods; /**< */ + uint8_t map_mods; /**< */ + uint8_t map_realMods; /**< */ + uint16_t map_vmod; /**< */ + uint32_t map_ctrls; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xkb_get_named_indicator_reply_t; + +/** Opcode for xcb_xkb_set_named_indicator. */ +#define XCB_XKB_SET_NAMED_INDICATOR 16 + +/** + * @brief xcb_xkb_set_named_indicator_request_t + **/ +typedef struct xcb_xkb_set_named_indicator_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + xcb_xkb_led_class_spec_t ledClass; /**< */ + xcb_xkb_id_spec_t ledID; /**< */ + uint8_t pad0[2]; /**< */ + xcb_atom_t indicator; /**< */ + uint8_t setState; /**< */ + uint8_t on; /**< */ + uint8_t setMap; /**< */ + uint8_t createMap; /**< */ + uint8_t pad1; /**< */ + uint8_t map_flags; /**< */ + uint8_t map_whichGroups; /**< */ + uint8_t map_groups; /**< */ + uint8_t map_whichMods; /**< */ + uint8_t map_realMods; /**< */ + uint16_t map_vmods; /**< */ + uint32_t map_ctrls; /**< */ +} xcb_xkb_set_named_indicator_request_t; + +/** + * @brief xcb_xkb_get_names_cookie_t + **/ +typedef struct xcb_xkb_get_names_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_names_cookie_t; + +/** Opcode for xcb_xkb_get_names. */ +#define XCB_XKB_GET_NAMES 17 + +/** + * @brief xcb_xkb_get_names_request_t + **/ +typedef struct xcb_xkb_get_names_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t which; /**< */ +} xcb_xkb_get_names_request_t; + +/** + * @brief xcb_xkb_get_names_value_list_t + **/ +typedef struct xcb_xkb_get_names_value_list_t { + xcb_atom_t keycodesName; /**< */ + xcb_atom_t geometryName; /**< */ + xcb_atom_t symbolsName; /**< */ + xcb_atom_t physSymbolsName; /**< */ + xcb_atom_t typesName; /**< */ + xcb_atom_t compatName; /**< */ + xcb_atom_t *typeNames; /**< */ + uint8_t *nLevelsPerType; /**< */ + xcb_atom_t *ktLevelNames; /**< */ + xcb_atom_t *indicatorNames; /**< */ + xcb_atom_t *virtualModNames; /**< */ + xcb_atom_t *groups; /**< */ + xcb_xkb_key_name_t *keyNames; /**< */ + xcb_xkb_key_alias_t *keyAliases; /**< */ + xcb_atom_t *radioGroupNames; /**< */ +} xcb_xkb_get_names_value_list_t; + +/** + * @brief xcb_xkb_get_names_reply_t + **/ +typedef struct xcb_xkb_get_names_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t which; /**< */ + xcb_keycode_t minKeyCode; /**< */ + xcb_keycode_t maxKeyCode; /**< */ + uint8_t nTypes; /**< */ + uint8_t groupNames; /**< */ + uint16_t virtualMods; /**< */ + xcb_keycode_t firstKey; /**< */ + uint8_t nKeys; /**< */ + uint32_t indicators; /**< */ + uint8_t nRadioGroups; /**< */ + uint8_t nKeyAliases; /**< */ + uint16_t nKTLevels; /**< */ + uint8_t pad0[4]; /**< */ +} xcb_xkb_get_names_reply_t; + +/** + * @brief xcb_xkb_set_names_values_t + **/ +typedef struct xcb_xkb_set_names_values_t { + xcb_atom_t keycodesName; /**< */ + xcb_atom_t geometryName; /**< */ + xcb_atom_t symbolsName; /**< */ + xcb_atom_t physSymbolsName; /**< */ + xcb_atom_t typesName; /**< */ + xcb_atom_t compatName; /**< */ + xcb_atom_t *typeNames; /**< */ + uint8_t *nLevelsPerType; /**< */ + xcb_atom_t *ktLevelNames; /**< */ + xcb_atom_t *indicatorNames; /**< */ + xcb_atom_t *virtualModNames; /**< */ + xcb_atom_t *groups; /**< */ + xcb_xkb_key_name_t *keyNames; /**< */ + xcb_xkb_key_alias_t *keyAliases; /**< */ + xcb_atom_t *radioGroupNames; /**< */ +} xcb_xkb_set_names_values_t; + +/** Opcode for xcb_xkb_set_names. */ +#define XCB_XKB_SET_NAMES 18 + +/** + * @brief xcb_xkb_set_names_request_t + **/ +typedef struct xcb_xkb_set_names_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint16_t virtualMods; /**< */ + uint32_t which; /**< */ + uint8_t firstType; /**< */ + uint8_t nTypes; /**< */ + uint8_t firstKTLevelt; /**< */ + uint8_t nKTLevels; /**< */ + uint32_t indicators; /**< */ + uint8_t groupNames; /**< */ + uint8_t nRadioGroups; /**< */ + xcb_keycode_t firstKey; /**< */ + uint8_t nKeys; /**< */ + uint8_t nKeyAliases; /**< */ + uint8_t pad0; /**< */ + uint16_t totalKTLevelNames; /**< */ +} xcb_xkb_set_names_request_t; + +/** + * @brief xcb_xkb_get_geometry_cookie_t + **/ +typedef struct xcb_xkb_get_geometry_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_geometry_cookie_t; + +/** Opcode for xcb_xkb_get_geometry. */ +#define XCB_XKB_GET_GEOMETRY 19 + +/** + * @brief xcb_xkb_get_geometry_request_t + **/ +typedef struct xcb_xkb_get_geometry_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t pad0[2]; /**< */ + xcb_atom_t name; /**< */ +} xcb_xkb_get_geometry_request_t; + +/** + * @brief xcb_xkb_get_geometry_reply_t + **/ +typedef struct xcb_xkb_get_geometry_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_atom_t name; /**< */ + uint8_t found; /**< */ + uint8_t pad0; /**< */ + uint16_t widthMM; /**< */ + uint16_t heightMM; /**< */ + uint16_t nProperties; /**< */ + uint16_t nColors; /**< */ + uint16_t nShapes; /**< */ + uint16_t nSections; /**< */ + uint16_t nDoodads; /**< */ + uint16_t nKeyAliases; /**< */ + uint8_t baseColorNdx; /**< */ + uint8_t labelColorNdx; /**< */ +} xcb_xkb_get_geometry_reply_t; + +/** Opcode for xcb_xkb_set_geometry. */ +#define XCB_XKB_SET_GEOMETRY 20 + +/** + * @brief xcb_xkb_set_geometry_request_t + **/ +typedef struct xcb_xkb_set_geometry_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t nShapes; /**< */ + uint8_t nSections; /**< */ + xcb_atom_t name; /**< */ + uint16_t widthMM; /**< */ + uint16_t heightMM; /**< */ + uint16_t nProperties; /**< */ + uint16_t nColors; /**< */ + uint16_t nDoodads; /**< */ + uint16_t nKeyAliases; /**< */ + uint8_t baseColorNdx; /**< */ + uint8_t labelColorNdx; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_set_geometry_request_t; + +/** + * @brief xcb_xkb_per_client_flags_cookie_t + **/ +typedef struct xcb_xkb_per_client_flags_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_per_client_flags_cookie_t; + +/** Opcode for xcb_xkb_per_client_flags. */ +#define XCB_XKB_PER_CLIENT_FLAGS 21 + +/** + * @brief xcb_xkb_per_client_flags_request_t + **/ +typedef struct xcb_xkb_per_client_flags_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t change; /**< */ + uint32_t value; /**< */ + uint32_t ctrlsToChange; /**< */ + uint32_t autoCtrls; /**< */ + uint32_t autoCtrlsValues; /**< */ +} xcb_xkb_per_client_flags_request_t; + +/** + * @brief xcb_xkb_per_client_flags_reply_t + **/ +typedef struct xcb_xkb_per_client_flags_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t supported; /**< */ + uint32_t value; /**< */ + uint32_t autoCtrls; /**< */ + uint32_t autoCtrlsValues; /**< */ + uint8_t pad0[8]; /**< */ +} xcb_xkb_per_client_flags_reply_t; + +/** + * @brief xcb_xkb_list_components_cookie_t + **/ +typedef struct xcb_xkb_list_components_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_list_components_cookie_t; + +/** Opcode for xcb_xkb_list_components. */ +#define XCB_XKB_LIST_COMPONENTS 22 + +/** + * @brief xcb_xkb_list_components_request_t + **/ +typedef struct xcb_xkb_list_components_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint16_t maxNames; /**< */ + uint8_t keymapsSpecLen; /**< */ + uint8_t keycodesSpecLen; /**< */ + uint8_t typesSpecLen; /**< */ + uint8_t compatMapSpecLen; /**< */ + uint8_t symbolsSpecLen; /**< */ + uint8_t geometrySpecLen; /**< */ +} xcb_xkb_list_components_request_t; + +/** + * @brief xcb_xkb_list_components_reply_t + **/ +typedef struct xcb_xkb_list_components_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t nKeymaps; /**< */ + uint16_t nKeycodes; /**< */ + uint16_t nTypes; /**< */ + uint16_t nCompatMaps; /**< */ + uint16_t nSymbols; /**< */ + uint16_t nGeometries; /**< */ + uint16_t extra; /**< */ + uint8_t pad0[10]; /**< */ +} xcb_xkb_list_components_reply_t; + +/** + * @brief xcb_xkb_get_kbd_by_name_cookie_t + **/ +typedef struct xcb_xkb_get_kbd_by_name_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_kbd_by_name_cookie_t; + +/** Opcode for xcb_xkb_get_kbd_by_name. */ +#define XCB_XKB_GET_KBD_BY_NAME 23 + +/** + * @brief xcb_xkb_get_kbd_by_name_request_t + **/ +typedef struct xcb_xkb_get_kbd_by_name_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint16_t need; /**< */ + uint16_t want; /**< */ + uint8_t load; /**< */ + uint8_t pad0; /**< */ + uint8_t keymapsSpecLen; /**< */ + uint8_t keycodesSpecLen; /**< */ + uint8_t typesSpecLen; /**< */ + uint8_t compatMapSpecLen; /**< */ + uint8_t symbolsSpecLen; /**< */ + uint8_t geometrySpecLen; /**< */ +} xcb_xkb_get_kbd_by_name_request_t; + +/** + * @brief xcb_xkb_get_kbd_by_name_replies_types_map_t + **/ +typedef struct xcb_xkb_get_kbd_by_name_replies_types_map_t { + xcb_xkb_key_type_t *types_rtrn; /**< */ + xcb_xkb_key_sym_map_t *syms_rtrn; /**< */ + uint8_t *acts_rtrn_count; /**< */ + xcb_xkb_action_t *acts_rtrn_acts; /**< */ + xcb_xkb_set_behavior_t *behaviors_rtrn; /**< */ + uint8_t *vmods_rtrn; /**< */ + xcb_xkb_set_explicit_t *explicit_rtrn; /**< */ + xcb_xkb_key_mod_map_t *modmap_rtrn; /**< */ + xcb_xkb_key_v_mod_map_t *vmodmap_rtrn; /**< */ +} xcb_xkb_get_kbd_by_name_replies_types_map_t; + +/** + * @brief xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t + **/ +typedef struct xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t { + xcb_xkb_key_type_t *types_rtrn; /**< */ + xcb_xkb_key_sym_map_t *syms_rtrn; /**< */ + uint8_t *acts_rtrn_count; /**< */ + xcb_xkb_action_t *acts_rtrn_acts; /**< */ + xcb_xkb_set_behavior_t *behaviors_rtrn; /**< */ + uint8_t *vmods_rtrn; /**< */ + xcb_xkb_set_explicit_t *explicit_rtrn; /**< */ + xcb_xkb_key_mod_map_t *modmap_rtrn; /**< */ + xcb_xkb_key_v_mod_map_t *vmodmap_rtrn; /**< */ +} xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t; + +/** + * @brief xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t + **/ +typedef struct xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t { + xcb_xkb_key_type_t *types_rtrn; /**< */ + xcb_xkb_key_sym_map_t *syms_rtrn; /**< */ + uint8_t *acts_rtrn_count; /**< */ + xcb_xkb_action_t *acts_rtrn_acts; /**< */ + xcb_xkb_set_behavior_t *behaviors_rtrn; /**< */ + uint8_t *vmods_rtrn; /**< */ + xcb_xkb_set_explicit_t *explicit_rtrn; /**< */ + xcb_xkb_key_mod_map_t *modmap_rtrn; /**< */ + xcb_xkb_key_v_mod_map_t *vmodmap_rtrn; /**< */ +} xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t; + +/** + * @brief xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t + **/ +typedef struct xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t { + xcb_atom_t keycodesName; /**< */ + xcb_atom_t geometryName; /**< */ + xcb_atom_t symbolsName; /**< */ + xcb_atom_t physSymbolsName; /**< */ + xcb_atom_t typesName; /**< */ + xcb_atom_t compatName; /**< */ + xcb_atom_t *typeNames; /**< */ + uint8_t *nLevelsPerType; /**< */ + xcb_atom_t *ktLevelNames; /**< */ + xcb_atom_t *indicatorNames; /**< */ + xcb_atom_t *virtualModNames; /**< */ + xcb_atom_t *groups; /**< */ + xcb_xkb_key_name_t *keyNames; /**< */ + xcb_xkb_key_alias_t *keyAliases; /**< */ + xcb_atom_t *radioGroupNames; /**< */ +} xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t; + +/** + * @brief xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t + **/ +typedef struct xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t { + xcb_atom_t keycodesName; /**< */ + xcb_atom_t geometryName; /**< */ + xcb_atom_t symbolsName; /**< */ + xcb_atom_t physSymbolsName; /**< */ + xcb_atom_t typesName; /**< */ + xcb_atom_t compatName; /**< */ + xcb_atom_t *typeNames; /**< */ + uint8_t *nLevelsPerType; /**< */ + xcb_atom_t *ktLevelNames; /**< */ + xcb_atom_t *indicatorNames; /**< */ + xcb_atom_t *virtualModNames; /**< */ + xcb_atom_t *groups; /**< */ + xcb_xkb_key_name_t *keyNames; /**< */ + xcb_xkb_key_alias_t *keyAliases; /**< */ + xcb_atom_t *radioGroupNames; /**< */ +} xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t; + +/** + * @brief xcb_xkb_get_kbd_by_name_replies_t + **/ +typedef struct xcb_xkb_get_kbd_by_name_replies_t { + struct _types { + uint8_t getmap_type; /**< */ + uint8_t typeDeviceID; /**< */ + uint16_t getmap_sequence; /**< */ + uint32_t getmap_length; /**< */ + uint8_t pad0[2]; /**< */ + xcb_keycode_t typeMinKeyCode; /**< */ + xcb_keycode_t typeMaxKeyCode; /**< */ + uint16_t present; /**< */ + uint8_t firstType; /**< */ + uint8_t nTypes; /**< */ + uint8_t totalTypes; /**< */ + xcb_keycode_t firstKeySym; /**< */ + uint16_t totalSyms; /**< */ + uint8_t nKeySyms; /**< */ + xcb_keycode_t firstKeyAction; /**< */ + uint16_t totalActions; /**< */ + uint8_t nKeyActions; /**< */ + xcb_keycode_t firstKeyBehavior; /**< */ + uint8_t nKeyBehaviors; /**< */ + uint8_t totalKeyBehaviors; /**< */ + xcb_keycode_t firstKeyExplicit; /**< */ + uint8_t nKeyExplicit; /**< */ + uint8_t totalKeyExplicit; /**< */ + xcb_keycode_t firstModMapKey; /**< */ + uint8_t nModMapKeys; /**< */ + uint8_t totalModMapKeys; /**< */ + xcb_keycode_t firstVModMapKey; /**< */ + uint8_t nVModMapKeys; /**< */ + uint8_t totalVModMapKeys; /**< */ + uint8_t pad1; /**< */ + uint16_t virtualMods; /**< */ + xcb_xkb_get_kbd_by_name_replies_types_map_t map; /**< */ + } types; + struct _compat_map { + uint8_t compatDeviceID; /**< */ + uint8_t groupsRtrn; /**< */ + uint8_t pad0; /**< */ + uint16_t firstSIRtrn; /**< */ + uint16_t nSIRtrn; /**< */ + uint16_t nTotalSI; /**< */ + uint8_t pad1[16]; /**< */ + uint8_t *si_rtrn; /**< */ + xcb_xkb_mod_def_t *group_rtrn; /**< */ + } compat_map; + struct _client_symbols { + uint8_t clientDeviceID; /**< */ + uint8_t pad0[2]; /**< */ + xcb_keycode_t clientMinKeyCode; /**< */ + xcb_keycode_t clientMaxKeyCode; /**< */ + uint16_t present; /**< */ + uint8_t firstType; /**< */ + uint8_t nTypes; /**< */ + uint8_t totalTypes; /**< */ + xcb_keycode_t firstKeySym; /**< */ + uint16_t totalSyms; /**< */ + uint8_t nKeySyms; /**< */ + xcb_keycode_t firstKeyAction; /**< */ + uint16_t totalActions; /**< */ + uint8_t nKeyActions; /**< */ + xcb_keycode_t firstKeyBehavior; /**< */ + uint8_t nKeyBehaviors; /**< */ + uint8_t totalKeyBehaviors; /**< */ + xcb_keycode_t firstKeyExplicit; /**< */ + uint8_t nKeyExplicit; /**< */ + uint8_t totalKeyExplicit; /**< */ + xcb_keycode_t firstModMapKey; /**< */ + uint8_t nModMapKeys; /**< */ + uint8_t totalModMapKeys; /**< */ + xcb_keycode_t firstVModMapKey; /**< */ + uint8_t nVModMapKeys; /**< */ + uint8_t totalVModMapKeys; /**< */ + uint8_t pad1; /**< */ + uint16_t virtualMods; /**< */ + xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t map; /**< */ + } client_symbols; + struct _server_symbols { + uint8_t serverDeviceID; /**< */ + uint8_t pad0[2]; /**< */ + xcb_keycode_t serverMinKeyCode; /**< */ + xcb_keycode_t serverMaxKeyCode; /**< */ + uint16_t present; /**< */ + uint8_t firstType; /**< */ + uint8_t nTypes; /**< */ + uint8_t totalTypes; /**< */ + xcb_keycode_t firstKeySym; /**< */ + uint16_t totalSyms; /**< */ + uint8_t nKeySyms; /**< */ + xcb_keycode_t firstKeyAction; /**< */ + uint16_t totalActions; /**< */ + uint8_t nKeyActions; /**< */ + xcb_keycode_t firstKeyBehavior; /**< */ + uint8_t nKeyBehaviors; /**< */ + uint8_t totalKeyBehaviors; /**< */ + xcb_keycode_t firstKeyExplicit; /**< */ + uint8_t nKeyExplicit; /**< */ + uint8_t totalKeyExplicit; /**< */ + xcb_keycode_t firstModMapKey; /**< */ + uint8_t nModMapKeys; /**< */ + uint8_t totalModMapKeys; /**< */ + xcb_keycode_t firstVModMapKey; /**< */ + uint8_t nVModMapKeys; /**< */ + uint8_t totalVModMapKeys; /**< */ + uint8_t pad1; /**< */ + uint16_t virtualMods; /**< */ + xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t map; /**< */ + } server_symbols; + struct _indicator_maps { + uint8_t indicatorDeviceID; /**< */ + uint32_t which; /**< */ + uint32_t realIndicators; /**< */ + uint8_t nIndicators; /**< */ + uint8_t pad0[15]; /**< */ + xcb_xkb_indicator_map_t *maps; /**< */ + } indicator_maps; + struct _key_names { + uint8_t keyDeviceID; /**< */ + uint32_t which; /**< */ + xcb_keycode_t keyMinKeyCode; /**< */ + xcb_keycode_t keyMaxKeyCode; /**< */ + uint8_t nTypes; /**< */ + uint8_t groupNames; /**< */ + uint16_t virtualMods; /**< */ + xcb_keycode_t firstKey; /**< */ + uint8_t nKeys; /**< */ + uint32_t indicators; /**< */ + uint8_t nRadioGroups; /**< */ + uint8_t nKeyAliases; /**< */ + uint16_t nKTLevels; /**< */ + uint8_t pad0[4]; /**< */ + xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t valueList; /**< */ + } key_names; + struct _other_names { + uint8_t otherDeviceID; /**< */ + uint32_t which; /**< */ + xcb_keycode_t otherMinKeyCode; /**< */ + xcb_keycode_t otherMaxKeyCode; /**< */ + uint8_t nTypes; /**< */ + uint8_t groupNames; /**< */ + uint16_t virtualMods; /**< */ + xcb_keycode_t firstKey; /**< */ + uint8_t nKeys; /**< */ + uint32_t indicators; /**< */ + uint8_t nRadioGroups; /**< */ + uint8_t nKeyAliases; /**< */ + uint16_t nKTLevels; /**< */ + uint8_t pad0[4]; /**< */ + xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t valueList; /**< */ + } other_names; + struct _geometry { + uint8_t geometryDeviceID; /**< */ + xcb_atom_t name; /**< */ + uint8_t geometryFound; /**< */ + uint8_t pad0; /**< */ + uint16_t widthMM; /**< */ + uint16_t heightMM; /**< */ + uint16_t nProperties; /**< */ + uint16_t nColors; /**< */ + uint16_t nShapes; /**< */ + uint16_t nSections; /**< */ + uint16_t nDoodads; /**< */ + uint16_t nKeyAliases; /**< */ + uint8_t baseColorNdx; /**< */ + uint8_t labelColorNdx; /**< */ + xcb_xkb_counted_string_16_t *labelFont; /**< */ + xcb_xkb_property_t *properties; /**< */ + xcb_xkb_counted_string_16_t *colors; /**< */ + xcb_xkb_shape_t *shapes; /**< */ + xcb_xkb_section_t *sections; /**< */ + xcb_xkb_doodad_t *doodads; /**< */ + xcb_xkb_key_alias_t *keyAliases; /**< */ + } geometry; +} xcb_xkb_get_kbd_by_name_replies_t; + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_types_map_t * xcb_xkb_get_kbd_by_name_replies_types_map + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_types_map_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_types_map_t * +xcb_xkb_get_kbd_by_name_replies_types_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */); + +/** + * @brief xcb_xkb_get_kbd_by_name_reply_t + **/ +typedef struct xcb_xkb_get_kbd_by_name_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_keycode_t minKeyCode; /**< */ + xcb_keycode_t maxKeyCode; /**< */ + uint8_t loaded; /**< */ + uint8_t newKeyboard; /**< */ + uint16_t found; /**< */ + uint16_t reported; /**< */ + uint8_t pad0[16]; /**< */ +} xcb_xkb_get_kbd_by_name_reply_t; + +/** + * @brief xcb_xkb_get_device_info_cookie_t + **/ +typedef struct xcb_xkb_get_device_info_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_get_device_info_cookie_t; + +/** Opcode for xcb_xkb_get_device_info. */ +#define XCB_XKB_GET_DEVICE_INFO 24 + +/** + * @brief xcb_xkb_get_device_info_request_t + **/ +typedef struct xcb_xkb_get_device_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint16_t wanted; /**< */ + uint8_t allButtons; /**< */ + uint8_t firstButton; /**< */ + uint8_t nButtons; /**< */ + uint8_t pad0; /**< */ + xcb_xkb_led_class_spec_t ledClass; /**< */ + xcb_xkb_id_spec_t ledID; /**< */ +} xcb_xkb_get_device_info_request_t; + +/** + * @brief xcb_xkb_get_device_info_reply_t + **/ +typedef struct xcb_xkb_get_device_info_reply_t { + uint8_t response_type; /**< */ + uint8_t deviceID; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t present; /**< */ + uint16_t supported; /**< */ + uint16_t unsupported; /**< */ + uint16_t nDeviceLedFBs; /**< */ + uint8_t firstBtnWanted; /**< */ + uint8_t nBtnsWanted; /**< */ + uint8_t firstBtnRtrn; /**< */ + uint8_t nBtnsRtrn; /**< */ + uint8_t totalBtns; /**< */ + uint8_t hasOwnState; /**< */ + uint16_t dfltKbdFB; /**< */ + uint16_t dfltLedFB; /**< */ + uint8_t pad0[2]; /**< */ + xcb_atom_t devType; /**< */ + uint16_t nameLen; /**< */ +} xcb_xkb_get_device_info_reply_t; + +/** Opcode for xcb_xkb_set_device_info. */ +#define XCB_XKB_SET_DEVICE_INFO 25 + +/** + * @brief xcb_xkb_set_device_info_request_t + **/ +typedef struct xcb_xkb_set_device_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xkb_device_spec_t deviceSpec; /**< */ + uint8_t firstBtn; /**< */ + uint8_t nBtns; /**< */ + uint16_t change; /**< */ + uint16_t nDeviceLedFBs; /**< */ +} xcb_xkb_set_device_info_request_t; + +/** + * @brief xcb_xkb_set_debugging_flags_cookie_t + **/ +typedef struct xcb_xkb_set_debugging_flags_cookie_t { + unsigned int sequence; /**< */ +} xcb_xkb_set_debugging_flags_cookie_t; + +/** Opcode for xcb_xkb_set_debugging_flags. */ +#define XCB_XKB_SET_DEBUGGING_FLAGS 101 + +/** + * @brief xcb_xkb_set_debugging_flags_request_t + **/ +typedef struct xcb_xkb_set_debugging_flags_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint16_t msgLength; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t affectFlags; /**< */ + uint32_t flags; /**< */ + uint32_t affectCtrls; /**< */ + uint32_t ctrls; /**< */ +} xcb_xkb_set_debugging_flags_request_t; + +/** + * @brief xcb_xkb_set_debugging_flags_reply_t + **/ +typedef struct xcb_xkb_set_debugging_flags_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t currentFlags; /**< */ + uint32_t currentCtrls; /**< */ + uint32_t supportedFlags; /**< */ + uint32_t supportedCtrls; /**< */ + uint8_t pad1[8]; /**< */ +} xcb_xkb_set_debugging_flags_reply_t; + +/** Opcode for xcb_xkb_new_keyboard_notify. */ +#define XCB_XKB_NEW_KEYBOARD_NOTIFY 0 + +/** + * @brief xcb_xkb_new_keyboard_notify_event_t + **/ +typedef struct xcb_xkb_new_keyboard_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t oldDeviceID; /**< */ + xcb_keycode_t minKeyCode; /**< */ + xcb_keycode_t maxKeyCode; /**< */ + xcb_keycode_t oldMinKeyCode; /**< */ + xcb_keycode_t oldMaxKeyCode; /**< */ + uint8_t requestMajor; /**< */ + uint8_t requestMinor; /**< */ + uint16_t changed; /**< */ + uint8_t pad0[14]; /**< */ +} xcb_xkb_new_keyboard_notify_event_t; + +/** Opcode for xcb_xkb_map_notify. */ +#define XCB_XKB_MAP_NOTIFY 1 + +/** + * @brief xcb_xkb_map_notify_event_t + **/ +typedef struct xcb_xkb_map_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t ptrBtnActions; /**< */ + uint16_t changed; /**< */ + xcb_keycode_t minKeyCode; /**< */ + xcb_keycode_t maxKeyCode; /**< */ + uint8_t firstType; /**< */ + uint8_t nTypes; /**< */ + xcb_keycode_t firstKeySym; /**< */ + uint8_t nKeySyms; /**< */ + xcb_keycode_t firstKeyAct; /**< */ + uint8_t nKeyActs; /**< */ + xcb_keycode_t firstKeyBehavior; /**< */ + uint8_t nKeyBehavior; /**< */ + xcb_keycode_t firstKeyExplicit; /**< */ + uint8_t nKeyExplicit; /**< */ + xcb_keycode_t firstModMapKey; /**< */ + uint8_t nModMapKeys; /**< */ + xcb_keycode_t firstVModMapKey; /**< */ + uint8_t nVModMapKeys; /**< */ + uint16_t virtualMods; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_xkb_map_notify_event_t; + +/** Opcode for xcb_xkb_state_notify. */ +#define XCB_XKB_STATE_NOTIFY 2 + +/** + * @brief xcb_xkb_state_notify_event_t + **/ +typedef struct xcb_xkb_state_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t mods; /**< */ + uint8_t baseMods; /**< */ + uint8_t latchedMods; /**< */ + uint8_t lockedMods; /**< */ + uint8_t group; /**< */ + int16_t baseGroup; /**< */ + int16_t latchedGroup; /**< */ + uint8_t lockedGroup; /**< */ + uint8_t compatState; /**< */ + uint8_t grabMods; /**< */ + uint8_t compatGrabMods; /**< */ + uint8_t lookupMods; /**< */ + uint8_t compatLoockupMods; /**< */ + uint16_t ptrBtnState; /**< */ + uint16_t changed; /**< */ + xcb_keycode_t keycode; /**< */ + uint8_t eventType; /**< */ + uint8_t requestMajor; /**< */ + uint8_t requestMinor; /**< */ +} xcb_xkb_state_notify_event_t; + +/** Opcode for xcb_xkb_controls_notify. */ +#define XCB_XKB_CONTROLS_NOTIFY 3 + +/** + * @brief xcb_xkb_controls_notify_event_t + **/ +typedef struct xcb_xkb_controls_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t numGroups; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t changedControls; /**< */ + uint32_t enabledControls; /**< */ + uint32_t enabledControlChanges; /**< */ + xcb_keycode_t keycode; /**< */ + uint8_t eventType; /**< */ + uint8_t requestMajor; /**< */ + uint8_t requestMinor; /**< */ + uint8_t pad1[4]; /**< */ +} xcb_xkb_controls_notify_event_t; + +/** Opcode for xcb_xkb_indicator_state_notify. */ +#define XCB_XKB_INDICATOR_STATE_NOTIFY 4 + +/** + * @brief xcb_xkb_indicator_state_notify_event_t + **/ +typedef struct xcb_xkb_indicator_state_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t pad0[3]; /**< */ + uint32_t state; /**< */ + uint32_t stateChanged; /**< */ + uint8_t pad1[12]; /**< */ +} xcb_xkb_indicator_state_notify_event_t; + +/** Opcode for xcb_xkb_indicator_map_notify. */ +#define XCB_XKB_INDICATOR_MAP_NOTIFY 5 + +/** + * @brief xcb_xkb_indicator_map_notify_event_t + **/ +typedef struct xcb_xkb_indicator_map_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t pad0[3]; /**< */ + uint32_t state; /**< */ + uint32_t mapChanged; /**< */ + uint8_t pad1[12]; /**< */ +} xcb_xkb_indicator_map_notify_event_t; + +/** Opcode for xcb_xkb_names_notify. */ +#define XCB_XKB_NAMES_NOTIFY 6 + +/** + * @brief xcb_xkb_names_notify_event_t + **/ +typedef struct xcb_xkb_names_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t pad0; /**< */ + uint16_t changed; /**< */ + uint8_t firstType; /**< */ + uint8_t nTypes; /**< */ + uint8_t firstLevelName; /**< */ + uint8_t nLevelNames; /**< */ + uint8_t pad1; /**< */ + uint8_t nRadioGroups; /**< */ + uint8_t nKeyAliases; /**< */ + uint8_t changedGroupNames; /**< */ + uint16_t changedVirtualMods; /**< */ + xcb_keycode_t firstKey; /**< */ + uint8_t nKeys; /**< */ + uint32_t changedIndicators; /**< */ + uint8_t pad2[4]; /**< */ +} xcb_xkb_names_notify_event_t; + +/** Opcode for xcb_xkb_compat_map_notify. */ +#define XCB_XKB_COMPAT_MAP_NOTIFY 7 + +/** + * @brief xcb_xkb_compat_map_notify_event_t + **/ +typedef struct xcb_xkb_compat_map_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t changedGroups; /**< */ + uint16_t firstSI; /**< */ + uint16_t nSI; /**< */ + uint16_t nTotalSI; /**< */ + uint8_t pad0[16]; /**< */ +} xcb_xkb_compat_map_notify_event_t; + +/** Opcode for xcb_xkb_bell_notify. */ +#define XCB_XKB_BELL_NOTIFY 8 + +/** + * @brief xcb_xkb_bell_notify_event_t + **/ +typedef struct xcb_xkb_bell_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t bellClass; /**< */ + uint8_t bellID; /**< */ + uint8_t percent; /**< */ + uint16_t pitch; /**< */ + uint16_t duration; /**< */ + xcb_atom_t name; /**< */ + xcb_window_t window; /**< */ + uint8_t eventOnly; /**< */ + uint8_t pad0[7]; /**< */ +} xcb_xkb_bell_notify_event_t; + +/** Opcode for xcb_xkb_action_message. */ +#define XCB_XKB_ACTION_MESSAGE 9 + +/** + * @brief xcb_xkb_action_message_event_t + **/ +typedef struct xcb_xkb_action_message_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + xcb_keycode_t keycode; /**< */ + uint8_t press; /**< */ + uint8_t keyEventFollows; /**< */ + uint8_t mods; /**< */ + uint8_t group; /**< */ + xcb_xkb_string8_t message[8]; /**< */ + uint8_t pad0[10]; /**< */ +} xcb_xkb_action_message_event_t; + +/** Opcode for xcb_xkb_access_x_notify. */ +#define XCB_XKB_ACCESS_X_NOTIFY 10 + +/** + * @brief xcb_xkb_access_x_notify_event_t + **/ +typedef struct xcb_xkb_access_x_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + xcb_keycode_t keycode; /**< */ + uint16_t detailt; /**< */ + uint16_t slowKeysDelay; /**< */ + uint16_t debounceDelay; /**< */ + uint8_t pad0[16]; /**< */ +} xcb_xkb_access_x_notify_event_t; + +/** Opcode for xcb_xkb_extension_device_notify. */ +#define XCB_XKB_EXTENSION_DEVICE_NOTIFY 11 + +/** + * @brief xcb_xkb_extension_device_notify_event_t + **/ +typedef struct xcb_xkb_extension_device_notify_event_t { + uint8_t response_type; /**< */ + uint8_t xkbType; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t deviceID; /**< */ + uint8_t pad0; /**< */ + uint16_t reason; /**< */ + uint16_t ledClass; /**< */ + uint8_t ledID; /**< */ + uint32_t ledsDefined; /**< */ + uint32_t ledState; /**< */ + uint8_t firstButton; /**< */ + uint8_t nButtons; /**< */ + uint16_t supported; /**< */ + uint16_t unsupported; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_xkb_extension_device_notify_event_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_ax_option_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_ax_option_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_ax_option_next + ** + ** @param xcb_xkb_ax_option_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_ax_option_next (xcb_xkb_ax_option_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_ax_option_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_ax_option_end + ** + ** @param xcb_xkb_ax_option_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_ax_option_end (xcb_xkb_ax_option_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_device_spec_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_device_spec_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_device_spec_next + ** + ** @param xcb_xkb_device_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_device_spec_next (xcb_xkb_device_spec_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_device_spec_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_device_spec_end + ** + ** @param xcb_xkb_device_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_device_spec_end (xcb_xkb_device_spec_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_led_class_spec_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_led_class_spec_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_led_class_spec_next + ** + ** @param xcb_xkb_led_class_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_led_class_spec_next (xcb_xkb_led_class_spec_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_led_class_spec_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_led_class_spec_end + ** + ** @param xcb_xkb_led_class_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_led_class_spec_end (xcb_xkb_led_class_spec_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_bell_class_spec_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_bell_class_spec_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_bell_class_spec_next + ** + ** @param xcb_xkb_bell_class_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_bell_class_spec_next (xcb_xkb_bell_class_spec_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_bell_class_spec_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_bell_class_spec_end + ** + ** @param xcb_xkb_bell_class_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_bell_class_spec_end (xcb_xkb_bell_class_spec_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_id_spec_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_id_spec_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_id_spec_next + ** + ** @param xcb_xkb_id_spec_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_id_spec_next (xcb_xkb_id_spec_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_id_spec_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_id_spec_end + ** + ** @param xcb_xkb_id_spec_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_id_spec_end (xcb_xkb_id_spec_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_indicator_map_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_indicator_map_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_indicator_map_next + ** + ** @param xcb_xkb_indicator_map_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_indicator_map_next (xcb_xkb_indicator_map_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_indicator_map_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_indicator_map_end + ** + ** @param xcb_xkb_indicator_map_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_indicator_map_end (xcb_xkb_indicator_map_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_mod_def_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_mod_def_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_mod_def_next + ** + ** @param xcb_xkb_mod_def_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_mod_def_next (xcb_xkb_mod_def_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_mod_def_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_mod_def_end + ** + ** @param xcb_xkb_mod_def_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_mod_def_end (xcb_xkb_mod_def_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_key_name_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_key_name_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_key_name_next + ** + ** @param xcb_xkb_key_name_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_name_next (xcb_xkb_key_name_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_key_name_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_name_end + ** + ** @param xcb_xkb_key_name_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_name_end (xcb_xkb_key_name_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_key_alias_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_key_alias_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_key_alias_next + ** + ** @param xcb_xkb_key_alias_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_alias_next (xcb_xkb_key_alias_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_key_alias_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_alias_end + ** + ** @param xcb_xkb_key_alias_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_alias_end (xcb_xkb_key_alias_iterator_t i /**< */); + +int +xcb_xkb_counted_string_8_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_counted_string_8_string + ** + ** @param const xcb_xkb_counted_string_8_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_counted_string_8_string (const xcb_xkb_counted_string_8_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_counted_string_8_string_length + ** + ** @param const xcb_xkb_counted_string_8_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_counted_string_8_string_length (const xcb_xkb_counted_string_8_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_counted_string_8_string_end + ** + ** @param const xcb_xkb_counted_string_8_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_counted_string_8_string_end (const xcb_xkb_counted_string_8_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_counted_string_8_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_counted_string_8_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_counted_string_8_next + ** + ** @param xcb_xkb_counted_string_8_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_counted_string_8_next (xcb_xkb_counted_string_8_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_counted_string_8_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_counted_string_8_end + ** + ** @param xcb_xkb_counted_string_8_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_counted_string_8_end (xcb_xkb_counted_string_8_iterator_t i /**< */); + +int +xcb_xkb_counted_string_16_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_counted_string_16_string + ** + ** @param const xcb_xkb_counted_string_16_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_counted_string_16_string (const xcb_xkb_counted_string_16_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_counted_string_16_string_length + ** + ** @param const xcb_xkb_counted_string_16_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_counted_string_16_string_length (const xcb_xkb_counted_string_16_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_counted_string_16_string_end + ** + ** @param const xcb_xkb_counted_string_16_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_counted_string_16_string_end (const xcb_xkb_counted_string_16_t *R /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_counted_string_16_pad_0 + ** + ** @param const xcb_xkb_counted_string_16_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_counted_string_16_pad_0 (const xcb_xkb_counted_string_16_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_counted_string_16_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_counted_string_16_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_counted_string_16_next + ** + ** @param xcb_xkb_counted_string_16_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_counted_string_16_next (xcb_xkb_counted_string_16_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_counted_string_16_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_counted_string_16_end + ** + ** @param xcb_xkb_counted_string_16_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_counted_string_16_end (xcb_xkb_counted_string_16_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_kt_map_entry_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_kt_map_entry_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_kt_map_entry_next + ** + ** @param xcb_xkb_kt_map_entry_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_kt_map_entry_next (xcb_xkb_kt_map_entry_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_kt_map_entry_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_kt_map_entry_end + ** + ** @param xcb_xkb_kt_map_entry_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_kt_map_entry_end (xcb_xkb_kt_map_entry_iterator_t i /**< */); + +int +xcb_xkb_key_type_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_kt_map_entry_t * xcb_xkb_key_type_map + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns xcb_xkb_kt_map_entry_t * + ** + *****************************************************************************/ + +xcb_xkb_kt_map_entry_t * +xcb_xkb_key_type_map (const xcb_xkb_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_key_type_map_length + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_key_type_map_length (const xcb_xkb_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_kt_map_entry_iterator_t xcb_xkb_key_type_map_iterator + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns xcb_xkb_kt_map_entry_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_kt_map_entry_iterator_t +xcb_xkb_key_type_map_iterator (const xcb_xkb_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_t * xcb_xkb_key_type_preserve + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns xcb_xkb_mod_def_t * + ** + *****************************************************************************/ + +xcb_xkb_mod_def_t * +xcb_xkb_key_type_preserve (const xcb_xkb_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_key_type_preserve_length + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_key_type_preserve_length (const xcb_xkb_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_iterator_t xcb_xkb_key_type_preserve_iterator + ** + ** @param const xcb_xkb_key_type_t *R + ** @returns xcb_xkb_mod_def_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_mod_def_iterator_t +xcb_xkb_key_type_preserve_iterator (const xcb_xkb_key_type_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_key_type_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_key_type_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_key_type_next + ** + ** @param xcb_xkb_key_type_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_type_next (xcb_xkb_key_type_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_key_type_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_type_end + ** + ** @param xcb_xkb_key_type_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_type_end (xcb_xkb_key_type_iterator_t i /**< */); + +int +xcb_xkb_key_sym_map_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_xkb_key_sym_map_syms + ** + ** @param const xcb_xkb_key_sym_map_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_xkb_key_sym_map_syms (const xcb_xkb_key_sym_map_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_key_sym_map_syms_length + ** + ** @param const xcb_xkb_key_sym_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_key_sym_map_syms_length (const xcb_xkb_key_sym_map_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_sym_map_syms_end + ** + ** @param const xcb_xkb_key_sym_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_sym_map_syms_end (const xcb_xkb_key_sym_map_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_key_sym_map_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_key_sym_map_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_key_sym_map_next + ** + ** @param xcb_xkb_key_sym_map_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_sym_map_next (xcb_xkb_key_sym_map_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_key_sym_map_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_sym_map_end + ** + ** @param xcb_xkb_key_sym_map_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_sym_map_end (xcb_xkb_key_sym_map_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_common_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_common_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_common_behavior_next + ** + ** @param xcb_xkb_common_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_common_behavior_next (xcb_xkb_common_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_common_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_common_behavior_end + ** + ** @param xcb_xkb_common_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_common_behavior_end (xcb_xkb_common_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_default_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_default_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_default_behavior_next + ** + ** @param xcb_xkb_default_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_default_behavior_next (xcb_xkb_default_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_default_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_default_behavior_end + ** + ** @param xcb_xkb_default_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_default_behavior_end (xcb_xkb_default_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_lock_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_lock_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_lock_behavior_next + ** + ** @param xcb_xkb_lock_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_lock_behavior_next (xcb_xkb_lock_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_lock_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_lock_behavior_end + ** + ** @param xcb_xkb_lock_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_lock_behavior_end (xcb_xkb_lock_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_radio_group_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_radio_group_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_radio_group_behavior_next + ** + ** @param xcb_xkb_radio_group_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_radio_group_behavior_next (xcb_xkb_radio_group_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_radio_group_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_radio_group_behavior_end + ** + ** @param xcb_xkb_radio_group_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_radio_group_behavior_end (xcb_xkb_radio_group_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_overlay_1_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_overlay_1_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_1_behavior_next + ** + ** @param xcb_xkb_overlay_1_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_1_behavior_next (xcb_xkb_overlay_1_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_overlay_1_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_1_behavior_end + ** + ** @param xcb_xkb_overlay_1_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_1_behavior_end (xcb_xkb_overlay_1_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_overlay_2_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_overlay_2_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_2_behavior_next + ** + ** @param xcb_xkb_overlay_2_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_2_behavior_next (xcb_xkb_overlay_2_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_overlay_2_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_2_behavior_end + ** + ** @param xcb_xkb_overlay_2_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_2_behavior_end (xcb_xkb_overlay_2_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_permament_lock_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_permament_lock_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_permament_lock_behavior_next + ** + ** @param xcb_xkb_permament_lock_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_permament_lock_behavior_next (xcb_xkb_permament_lock_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_permament_lock_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_permament_lock_behavior_end + ** + ** @param xcb_xkb_permament_lock_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_permament_lock_behavior_end (xcb_xkb_permament_lock_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_permament_radio_group_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_permament_radio_group_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_permament_radio_group_behavior_next + ** + ** @param xcb_xkb_permament_radio_group_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_permament_radio_group_behavior_next (xcb_xkb_permament_radio_group_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_permament_radio_group_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_permament_radio_group_behavior_end + ** + ** @param xcb_xkb_permament_radio_group_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_permament_radio_group_behavior_end (xcb_xkb_permament_radio_group_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_permament_overlay_1_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_permament_overlay_1_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_permament_overlay_1_behavior_next + ** + ** @param xcb_xkb_permament_overlay_1_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_permament_overlay_1_behavior_next (xcb_xkb_permament_overlay_1_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_permament_overlay_1_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_permament_overlay_1_behavior_end + ** + ** @param xcb_xkb_permament_overlay_1_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_permament_overlay_1_behavior_end (xcb_xkb_permament_overlay_1_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_permament_overlay_2_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_permament_overlay_2_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_permament_overlay_2_behavior_next + ** + ** @param xcb_xkb_permament_overlay_2_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_permament_overlay_2_behavior_next (xcb_xkb_permament_overlay_2_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_permament_overlay_2_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_permament_overlay_2_behavior_end + ** + ** @param xcb_xkb_permament_overlay_2_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_permament_overlay_2_behavior_end (xcb_xkb_permament_overlay_2_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_behavior_next + ** + ** @param xcb_xkb_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_behavior_next (xcb_xkb_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_behavior_end + ** + ** @param xcb_xkb_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_behavior_end (xcb_xkb_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_set_behavior_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_set_behavior_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_set_behavior_next + ** + ** @param xcb_xkb_set_behavior_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_set_behavior_next (xcb_xkb_set_behavior_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_set_behavior_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_behavior_end + ** + ** @param xcb_xkb_set_behavior_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_behavior_end (xcb_xkb_set_behavior_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_set_explicit_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_set_explicit_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_set_explicit_next + ** + ** @param xcb_xkb_set_explicit_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_set_explicit_next (xcb_xkb_set_explicit_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_set_explicit_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_explicit_end + ** + ** @param xcb_xkb_set_explicit_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_explicit_end (xcb_xkb_set_explicit_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_key_mod_map_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_key_mod_map_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_key_mod_map_next + ** + ** @param xcb_xkb_key_mod_map_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_mod_map_next (xcb_xkb_key_mod_map_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_key_mod_map_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_mod_map_end + ** + ** @param xcb_xkb_key_mod_map_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_mod_map_end (xcb_xkb_key_mod_map_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_key_v_mod_map_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_key_v_mod_map_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_key_v_mod_map_next + ** + ** @param xcb_xkb_key_v_mod_map_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_v_mod_map_next (xcb_xkb_key_v_mod_map_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_key_v_mod_map_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_v_mod_map_end + ** + ** @param xcb_xkb_key_v_mod_map_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_v_mod_map_end (xcb_xkb_key_v_mod_map_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_kt_set_map_entry_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_kt_set_map_entry_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_kt_set_map_entry_next + ** + ** @param xcb_xkb_kt_set_map_entry_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_kt_set_map_entry_next (xcb_xkb_kt_set_map_entry_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_kt_set_map_entry_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_kt_set_map_entry_end + ** + ** @param xcb_xkb_kt_set_map_entry_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_kt_set_map_entry_end (xcb_xkb_kt_set_map_entry_iterator_t i /**< */); + +int +xcb_xkb_set_key_type_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_kt_set_map_entry_t * xcb_xkb_set_key_type_entries + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns xcb_xkb_kt_set_map_entry_t * + ** + *****************************************************************************/ + +xcb_xkb_kt_set_map_entry_t * +xcb_xkb_set_key_type_entries (const xcb_xkb_set_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_key_type_entries_length + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_key_type_entries_length (const xcb_xkb_set_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_kt_set_map_entry_iterator_t xcb_xkb_set_key_type_entries_iterator + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns xcb_xkb_kt_set_map_entry_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_kt_set_map_entry_iterator_t +xcb_xkb_set_key_type_entries_iterator (const xcb_xkb_set_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_kt_set_map_entry_t * xcb_xkb_set_key_type_preserve_entries + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns xcb_xkb_kt_set_map_entry_t * + ** + *****************************************************************************/ + +xcb_xkb_kt_set_map_entry_t * +xcb_xkb_set_key_type_preserve_entries (const xcb_xkb_set_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_key_type_preserve_entries_length + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_key_type_preserve_entries_length (const xcb_xkb_set_key_type_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_kt_set_map_entry_iterator_t xcb_xkb_set_key_type_preserve_entries_iterator + ** + ** @param const xcb_xkb_set_key_type_t *R + ** @returns xcb_xkb_kt_set_map_entry_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_kt_set_map_entry_iterator_t +xcb_xkb_set_key_type_preserve_entries_iterator (const xcb_xkb_set_key_type_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_set_key_type_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_set_key_type_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_set_key_type_next + ** + ** @param xcb_xkb_set_key_type_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_set_key_type_next (xcb_xkb_set_key_type_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_set_key_type_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_key_type_end + ** + ** @param xcb_xkb_set_key_type_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_key_type_end (xcb_xkb_set_key_type_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_string8_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_string8_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_string8_next + ** + ** @param xcb_xkb_string8_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_string8_next (xcb_xkb_string8_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_string8_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_string8_end + ** + ** @param xcb_xkb_string8_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_string8_end (xcb_xkb_string8_iterator_t i /**< */); + +int +xcb_xkb_property_serialize (void **_buffer /**< */, + const xcb_xkb_property_t *_aux /**< */, + const xcb_xkb_string8_t *name /**< */, + const xcb_xkb_string8_t *value /**< */); + +int +xcb_xkb_property_unserialize (const void *_buffer /**< */, + xcb_xkb_property_t **_aux /**< */); + +int +xcb_xkb_property_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_string8_t * xcb_xkb_property_name + ** + ** @param const xcb_xkb_property_t *R + ** @returns xcb_xkb_string8_t * + ** + *****************************************************************************/ + +xcb_xkb_string8_t * +xcb_xkb_property_name (const xcb_xkb_property_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_property_name_length + ** + ** @param const xcb_xkb_property_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_property_name_length (const xcb_xkb_property_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_property_name_end + ** + ** @param const xcb_xkb_property_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_property_name_end (const xcb_xkb_property_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_string8_t * xcb_xkb_property_value + ** + ** @param const xcb_xkb_property_t *R + ** @returns xcb_xkb_string8_t * + ** + *****************************************************************************/ + +xcb_xkb_string8_t * +xcb_xkb_property_value (const xcb_xkb_property_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_property_value_length + ** + ** @param const xcb_xkb_property_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_property_value_length (const xcb_xkb_property_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_property_value_end + ** + ** @param const xcb_xkb_property_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_property_value_end (const xcb_xkb_property_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_property_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_property_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_property_next + ** + ** @param xcb_xkb_property_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_property_next (xcb_xkb_property_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_property_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_property_end + ** + ** @param xcb_xkb_property_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_property_end (xcb_xkb_property_iterator_t i /**< */); + +int +xcb_xkb_outline_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_point_t * xcb_xkb_outline_points + ** + ** @param const xcb_xkb_outline_t *R + ** @returns xcb_point_t * + ** + *****************************************************************************/ + +xcb_point_t * +xcb_xkb_outline_points (const xcb_xkb_outline_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_outline_points_length + ** + ** @param const xcb_xkb_outline_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_outline_points_length (const xcb_xkb_outline_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_point_iterator_t xcb_xkb_outline_points_iterator + ** + ** @param const xcb_xkb_outline_t *R + ** @returns xcb_point_iterator_t + ** + *****************************************************************************/ + +xcb_point_iterator_t +xcb_xkb_outline_points_iterator (const xcb_xkb_outline_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_outline_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_outline_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_outline_next + ** + ** @param xcb_xkb_outline_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_outline_next (xcb_xkb_outline_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_outline_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_outline_end + ** + ** @param xcb_xkb_outline_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_outline_end (xcb_xkb_outline_iterator_t i /**< */); + +int +xcb_xkb_shape_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_shape_outlines_length + ** + ** @param const xcb_xkb_shape_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_shape_outlines_length (const xcb_xkb_shape_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_outline_iterator_t xcb_xkb_shape_outlines_iterator + ** + ** @param const xcb_xkb_shape_t *R + ** @returns xcb_xkb_outline_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_outline_iterator_t +xcb_xkb_shape_outlines_iterator (const xcb_xkb_shape_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_shape_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_shape_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_shape_next + ** + ** @param xcb_xkb_shape_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_shape_next (xcb_xkb_shape_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_shape_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_shape_end + ** + ** @param xcb_xkb_shape_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_shape_end (xcb_xkb_shape_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_key_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_key_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_key_next + ** + ** @param xcb_xkb_key_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_key_next (xcb_xkb_key_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_key_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_key_end + ** + ** @param xcb_xkb_key_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_key_end (xcb_xkb_key_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_overlay_key_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_overlay_key_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_key_next + ** + ** @param xcb_xkb_overlay_key_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_key_next (xcb_xkb_overlay_key_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_overlay_key_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_key_end + ** + ** @param xcb_xkb_overlay_key_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_key_end (xcb_xkb_overlay_key_iterator_t i /**< */); + +int +xcb_xkb_overlay_row_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_overlay_key_t * xcb_xkb_overlay_row_keys + ** + ** @param const xcb_xkb_overlay_row_t *R + ** @returns xcb_xkb_overlay_key_t * + ** + *****************************************************************************/ + +xcb_xkb_overlay_key_t * +xcb_xkb_overlay_row_keys (const xcb_xkb_overlay_row_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_overlay_row_keys_length + ** + ** @param const xcb_xkb_overlay_row_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_overlay_row_keys_length (const xcb_xkb_overlay_row_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_overlay_key_iterator_t xcb_xkb_overlay_row_keys_iterator + ** + ** @param const xcb_xkb_overlay_row_t *R + ** @returns xcb_xkb_overlay_key_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_overlay_key_iterator_t +xcb_xkb_overlay_row_keys_iterator (const xcb_xkb_overlay_row_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_overlay_row_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_overlay_row_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_row_next + ** + ** @param xcb_xkb_overlay_row_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_row_next (xcb_xkb_overlay_row_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_overlay_row_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_row_end + ** + ** @param xcb_xkb_overlay_row_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_row_end (xcb_xkb_overlay_row_iterator_t i /**< */); + +int +xcb_xkb_overlay_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_overlay_rows_length + ** + ** @param const xcb_xkb_overlay_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_overlay_rows_length (const xcb_xkb_overlay_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_overlay_row_iterator_t xcb_xkb_overlay_rows_iterator + ** + ** @param const xcb_xkb_overlay_t *R + ** @returns xcb_xkb_overlay_row_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_overlay_row_iterator_t +xcb_xkb_overlay_rows_iterator (const xcb_xkb_overlay_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_overlay_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_overlay_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_overlay_next + ** + ** @param xcb_xkb_overlay_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_overlay_next (xcb_xkb_overlay_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_overlay_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_overlay_end + ** + ** @param xcb_xkb_overlay_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_overlay_end (xcb_xkb_overlay_iterator_t i /**< */); + +int +xcb_xkb_row_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_t * xcb_xkb_row_keys + ** + ** @param const xcb_xkb_row_t *R + ** @returns xcb_xkb_key_t * + ** + *****************************************************************************/ + +xcb_xkb_key_t * +xcb_xkb_row_keys (const xcb_xkb_row_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_row_keys_length + ** + ** @param const xcb_xkb_row_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_row_keys_length (const xcb_xkb_row_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_iterator_t xcb_xkb_row_keys_iterator + ** + ** @param const xcb_xkb_row_t *R + ** @returns xcb_xkb_key_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_iterator_t +xcb_xkb_row_keys_iterator (const xcb_xkb_row_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_row_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_row_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_row_next + ** + ** @param xcb_xkb_row_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_row_next (xcb_xkb_row_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_row_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_row_end + ** + ** @param xcb_xkb_row_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_row_end (xcb_xkb_row_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_common_doodad_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_common_doodad_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_common_doodad_next + ** + ** @param xcb_xkb_common_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_common_doodad_next (xcb_xkb_common_doodad_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_common_doodad_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_common_doodad_end + ** + ** @param xcb_xkb_common_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_common_doodad_end (xcb_xkb_common_doodad_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_shape_doodad_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_shape_doodad_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_shape_doodad_next + ** + ** @param xcb_xkb_shape_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_shape_doodad_next (xcb_xkb_shape_doodad_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_shape_doodad_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_shape_doodad_end + ** + ** @param xcb_xkb_shape_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_shape_doodad_end (xcb_xkb_shape_doodad_iterator_t i /**< */); + +int +xcb_xkb_text_doodad_sizeof (const void *_buffer /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_text_doodad_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_text_doodad_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_text_doodad_next + ** + ** @param xcb_xkb_text_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_text_doodad_next (xcb_xkb_text_doodad_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_text_doodad_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_text_doodad_end + ** + ** @param xcb_xkb_text_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_text_doodad_end (xcb_xkb_text_doodad_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_indicator_doodad_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_indicator_doodad_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_indicator_doodad_next + ** + ** @param xcb_xkb_indicator_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_indicator_doodad_next (xcb_xkb_indicator_doodad_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_indicator_doodad_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_indicator_doodad_end + ** + ** @param xcb_xkb_indicator_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_indicator_doodad_end (xcb_xkb_indicator_doodad_iterator_t i /**< */); + +int +xcb_xkb_logo_doodad_sizeof (const void *_buffer /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_logo_doodad_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_logo_doodad_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_logo_doodad_next + ** + ** @param xcb_xkb_logo_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_logo_doodad_next (xcb_xkb_logo_doodad_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_logo_doodad_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_logo_doodad_end + ** + ** @param xcb_xkb_logo_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_logo_doodad_end (xcb_xkb_logo_doodad_iterator_t i /**< */); + +int +xcb_xkb_doodad_sizeof (const void *_buffer /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_doodad_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_doodad_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_doodad_next + ** + ** @param xcb_xkb_doodad_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_doodad_next (xcb_xkb_doodad_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_doodad_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_doodad_end + ** + ** @param xcb_xkb_doodad_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_doodad_end (xcb_xkb_doodad_iterator_t i /**< */); + +int +xcb_xkb_section_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_section_rows_length + ** + ** @param const xcb_xkb_section_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_section_rows_length (const xcb_xkb_section_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_row_iterator_t xcb_xkb_section_rows_iterator + ** + ** @param const xcb_xkb_section_t *R + ** @returns xcb_xkb_row_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_row_iterator_t +xcb_xkb_section_rows_iterator (const xcb_xkb_section_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_section_doodads_length + ** + ** @param const xcb_xkb_section_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_section_doodads_length (const xcb_xkb_section_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_doodad_iterator_t xcb_xkb_section_doodads_iterator + ** + ** @param const xcb_xkb_section_t *R + ** @returns xcb_xkb_doodad_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_doodad_iterator_t +xcb_xkb_section_doodads_iterator (const xcb_xkb_section_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_section_overlays_length + ** + ** @param const xcb_xkb_section_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_section_overlays_length (const xcb_xkb_section_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_overlay_iterator_t xcb_xkb_section_overlays_iterator + ** + ** @param const xcb_xkb_section_t *R + ** @returns xcb_xkb_overlay_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_overlay_iterator_t +xcb_xkb_section_overlays_iterator (const xcb_xkb_section_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_section_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_section_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_section_next + ** + ** @param xcb_xkb_section_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_section_next (xcb_xkb_section_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_section_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_section_end + ** + ** @param xcb_xkb_section_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_section_end (xcb_xkb_section_iterator_t i /**< */); + +int +xcb_xkb_listing_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_string8_t * xcb_xkb_listing_string + ** + ** @param const xcb_xkb_listing_t *R + ** @returns xcb_xkb_string8_t * + ** + *****************************************************************************/ + +xcb_xkb_string8_t * +xcb_xkb_listing_string (const xcb_xkb_listing_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_listing_string_length + ** + ** @param const xcb_xkb_listing_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_listing_string_length (const xcb_xkb_listing_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_listing_string_end + ** + ** @param const xcb_xkb_listing_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_listing_string_end (const xcb_xkb_listing_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_listing_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_listing_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_listing_next + ** + ** @param xcb_xkb_listing_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_listing_next (xcb_xkb_listing_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_listing_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_listing_end + ** + ** @param xcb_xkb_listing_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_listing_end (xcb_xkb_listing_iterator_t i /**< */); + +int +xcb_xkb_device_led_info_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_device_led_info_names + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_device_led_info_names (const xcb_xkb_device_led_info_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_device_led_info_names_length + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_device_led_info_names_length (const xcb_xkb_device_led_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_device_led_info_names_end + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_device_led_info_names_end (const xcb_xkb_device_led_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_t * xcb_xkb_device_led_info_maps + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns xcb_xkb_indicator_map_t * + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_t * +xcb_xkb_device_led_info_maps (const xcb_xkb_device_led_info_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_device_led_info_maps_length + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_device_led_info_maps_length (const xcb_xkb_device_led_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_iterator_t xcb_xkb_device_led_info_maps_iterator + ** + ** @param const xcb_xkb_device_led_info_t *R + ** @returns xcb_xkb_indicator_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_iterator_t +xcb_xkb_device_led_info_maps_iterator (const xcb_xkb_device_led_info_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_device_led_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_device_led_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_device_led_info_next + ** + ** @param xcb_xkb_device_led_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_device_led_info_next (xcb_xkb_device_led_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_device_led_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_device_led_info_end + ** + ** @param xcb_xkb_device_led_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_device_led_info_end (xcb_xkb_device_led_info_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_no_action_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_no_action_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_no_action_next + ** + ** @param xcb_xkb_sa_no_action_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_no_action_next (xcb_xkb_sa_no_action_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_no_action_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_no_action_end + ** + ** @param xcb_xkb_sa_no_action_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_no_action_end (xcb_xkb_sa_no_action_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_set_mods_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_set_mods_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_set_mods_next + ** + ** @param xcb_xkb_sa_set_mods_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_set_mods_next (xcb_xkb_sa_set_mods_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_set_mods_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_set_mods_end + ** + ** @param xcb_xkb_sa_set_mods_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_set_mods_end (xcb_xkb_sa_set_mods_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_latch_mods_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_latch_mods_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_latch_mods_next + ** + ** @param xcb_xkb_sa_latch_mods_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_latch_mods_next (xcb_xkb_sa_latch_mods_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_latch_mods_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_latch_mods_end + ** + ** @param xcb_xkb_sa_latch_mods_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_latch_mods_end (xcb_xkb_sa_latch_mods_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_lock_mods_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_lock_mods_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_mods_next + ** + ** @param xcb_xkb_sa_lock_mods_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_mods_next (xcb_xkb_sa_lock_mods_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_lock_mods_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_mods_end + ** + ** @param xcb_xkb_sa_lock_mods_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_mods_end (xcb_xkb_sa_lock_mods_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_set_group_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_set_group_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_set_group_next + ** + ** @param xcb_xkb_sa_set_group_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_set_group_next (xcb_xkb_sa_set_group_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_set_group_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_set_group_end + ** + ** @param xcb_xkb_sa_set_group_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_set_group_end (xcb_xkb_sa_set_group_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_latch_group_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_latch_group_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_latch_group_next + ** + ** @param xcb_xkb_sa_latch_group_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_latch_group_next (xcb_xkb_sa_latch_group_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_latch_group_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_latch_group_end + ** + ** @param xcb_xkb_sa_latch_group_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_latch_group_end (xcb_xkb_sa_latch_group_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_lock_group_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_lock_group_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_group_next + ** + ** @param xcb_xkb_sa_lock_group_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_group_next (xcb_xkb_sa_lock_group_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_lock_group_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_group_end + ** + ** @param xcb_xkb_sa_lock_group_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_group_end (xcb_xkb_sa_lock_group_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_move_ptr_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_move_ptr_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_move_ptr_next + ** + ** @param xcb_xkb_sa_move_ptr_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_move_ptr_next (xcb_xkb_sa_move_ptr_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_move_ptr_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_move_ptr_end + ** + ** @param xcb_xkb_sa_move_ptr_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_move_ptr_end (xcb_xkb_sa_move_ptr_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_ptr_btn_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_ptr_btn_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_ptr_btn_next + ** + ** @param xcb_xkb_sa_ptr_btn_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_ptr_btn_next (xcb_xkb_sa_ptr_btn_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_ptr_btn_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_ptr_btn_end + ** + ** @param xcb_xkb_sa_ptr_btn_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_ptr_btn_end (xcb_xkb_sa_ptr_btn_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_lock_ptr_btn_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_lock_ptr_btn_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_ptr_btn_next + ** + ** @param xcb_xkb_sa_lock_ptr_btn_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_ptr_btn_next (xcb_xkb_sa_lock_ptr_btn_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_lock_ptr_btn_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_ptr_btn_end + ** + ** @param xcb_xkb_sa_lock_ptr_btn_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_ptr_btn_end (xcb_xkb_sa_lock_ptr_btn_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_set_ptr_dflt_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_set_ptr_dflt_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_set_ptr_dflt_next + ** + ** @param xcb_xkb_sa_set_ptr_dflt_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_set_ptr_dflt_next (xcb_xkb_sa_set_ptr_dflt_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_set_ptr_dflt_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_set_ptr_dflt_end + ** + ** @param xcb_xkb_sa_set_ptr_dflt_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_set_ptr_dflt_end (xcb_xkb_sa_set_ptr_dflt_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_iso_lock_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_iso_lock_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_iso_lock_next + ** + ** @param xcb_xkb_sa_iso_lock_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_iso_lock_next (xcb_xkb_sa_iso_lock_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_iso_lock_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_iso_lock_end + ** + ** @param xcb_xkb_sa_iso_lock_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_iso_lock_end (xcb_xkb_sa_iso_lock_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_terminate_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_terminate_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_terminate_next + ** + ** @param xcb_xkb_sa_terminate_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_terminate_next (xcb_xkb_sa_terminate_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_terminate_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_terminate_end + ** + ** @param xcb_xkb_sa_terminate_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_terminate_end (xcb_xkb_sa_terminate_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_switch_screen_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_switch_screen_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_switch_screen_next + ** + ** @param xcb_xkb_sa_switch_screen_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_switch_screen_next (xcb_xkb_sa_switch_screen_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_switch_screen_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_switch_screen_end + ** + ** @param xcb_xkb_sa_switch_screen_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_switch_screen_end (xcb_xkb_sa_switch_screen_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_set_controls_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_set_controls_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_set_controls_next + ** + ** @param xcb_xkb_sa_set_controls_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_set_controls_next (xcb_xkb_sa_set_controls_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_set_controls_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_set_controls_end + ** + ** @param xcb_xkb_sa_set_controls_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_set_controls_end (xcb_xkb_sa_set_controls_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_lock_controls_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_lock_controls_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_controls_next + ** + ** @param xcb_xkb_sa_lock_controls_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_controls_next (xcb_xkb_sa_lock_controls_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_lock_controls_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_controls_end + ** + ** @param xcb_xkb_sa_lock_controls_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_controls_end (xcb_xkb_sa_lock_controls_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_action_message_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_action_message_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_action_message_next + ** + ** @param xcb_xkb_sa_action_message_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_action_message_next (xcb_xkb_sa_action_message_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_action_message_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_action_message_end + ** + ** @param xcb_xkb_sa_action_message_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_action_message_end (xcb_xkb_sa_action_message_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_redirect_key_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_redirect_key_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_redirect_key_next + ** + ** @param xcb_xkb_sa_redirect_key_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_redirect_key_next (xcb_xkb_sa_redirect_key_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_redirect_key_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_redirect_key_end + ** + ** @param xcb_xkb_sa_redirect_key_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_redirect_key_end (xcb_xkb_sa_redirect_key_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_device_btn_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_device_btn_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_device_btn_next + ** + ** @param xcb_xkb_sa_device_btn_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_device_btn_next (xcb_xkb_sa_device_btn_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_device_btn_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_device_btn_end + ** + ** @param xcb_xkb_sa_device_btn_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_device_btn_end (xcb_xkb_sa_device_btn_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_lock_device_btn_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_lock_device_btn_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_lock_device_btn_next + ** + ** @param xcb_xkb_sa_lock_device_btn_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_lock_device_btn_next (xcb_xkb_sa_lock_device_btn_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_lock_device_btn_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_lock_device_btn_end + ** + ** @param xcb_xkb_sa_lock_device_btn_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_lock_device_btn_end (xcb_xkb_sa_lock_device_btn_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_sa_device_valuator_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_sa_device_valuator_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_sa_device_valuator_next + ** + ** @param xcb_xkb_sa_device_valuator_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_sa_device_valuator_next (xcb_xkb_sa_device_valuator_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_sa_device_valuator_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_sa_device_valuator_end + ** + ** @param xcb_xkb_sa_device_valuator_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_sa_device_valuator_end (xcb_xkb_sa_device_valuator_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xkb_action_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xkb_action_t) + */ + +/***************************************************************************** + ** + ** void xcb_xkb_action_next + ** + ** @param xcb_xkb_action_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xkb_action_next (xcb_xkb_action_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xkb_action_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_action_end + ** + ** @param xcb_xkb_action_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_action_end (xcb_xkb_action_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_use_extension_cookie_t xcb_xkb_use_extension + ** + ** @param xcb_connection_t *c + ** @param uint16_t wantedMajor + ** @param uint16_t wantedMinor + ** @returns xcb_xkb_use_extension_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_use_extension_cookie_t +xcb_xkb_use_extension (xcb_connection_t *c /**< */, + uint16_t wantedMajor /**< */, + uint16_t wantedMinor /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_use_extension_cookie_t xcb_xkb_use_extension_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t wantedMajor + ** @param uint16_t wantedMinor + ** @returns xcb_xkb_use_extension_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_use_extension_cookie_t +xcb_xkb_use_extension_unchecked (xcb_connection_t *c /**< */, + uint16_t wantedMajor /**< */, + uint16_t wantedMinor /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_use_extension_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_use_extension_reply_t * xcb_xkb_use_extension_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_use_extension_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_use_extension_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_use_extension_reply_t * +xcb_xkb_use_extension_reply (xcb_connection_t *c /**< */, + xcb_xkb_use_extension_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xkb_select_events_details_serialize (void **_buffer /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + const xcb_xkb_select_events_details_t *_aux /**< */); + +int +xcb_xkb_select_events_details_unpack (const void *_buffer /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + xcb_xkb_select_events_details_t *_aux /**< */); + +int +xcb_xkb_select_events_details_sizeof (const void *_buffer /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_select_events_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t affectWhich + ** @param uint16_t clear + ** @param uint16_t selectAll + ** @param uint16_t affectMap + ** @param uint16_t map + ** @param const void *details + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_select_events_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + uint16_t affectMap /**< */, + uint16_t map /**< */, + const void *details /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_select_events + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t affectWhich + ** @param uint16_t clear + ** @param uint16_t selectAll + ** @param uint16_t affectMap + ** @param uint16_t map + ** @param const void *details + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_select_events (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + uint16_t affectMap /**< */, + uint16_t map /**< */, + const void *details /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_select_events_aux_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t affectWhich + ** @param uint16_t clear + ** @param uint16_t selectAll + ** @param uint16_t affectMap + ** @param uint16_t map + ** @param const xcb_xkb_select_events_details_t *details + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_select_events_aux_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + uint16_t affectMap /**< */, + uint16_t map /**< */, + const xcb_xkb_select_events_details_t *details /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_select_events_aux + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t affectWhich + ** @param uint16_t clear + ** @param uint16_t selectAll + ** @param uint16_t affectMap + ** @param uint16_t map + ** @param const xcb_xkb_select_events_details_t *details + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_select_events_aux (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t affectWhich /**< */, + uint16_t clear /**< */, + uint16_t selectAll /**< */, + uint16_t affectMap /**< */, + uint16_t map /**< */, + const xcb_xkb_select_events_details_t *details /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_bell_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_bell_class_spec_t bellClass + ** @param xcb_xkb_id_spec_t bellID + ** @param int8_t percent + ** @param uint8_t forceSound + ** @param uint8_t eventOnly + ** @param int16_t pitch + ** @param int16_t duration + ** @param xcb_atom_t name + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_bell_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_bell_class_spec_t bellClass /**< */, + xcb_xkb_id_spec_t bellID /**< */, + int8_t percent /**< */, + uint8_t forceSound /**< */, + uint8_t eventOnly /**< */, + int16_t pitch /**< */, + int16_t duration /**< */, + xcb_atom_t name /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_bell + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_bell_class_spec_t bellClass + ** @param xcb_xkb_id_spec_t bellID + ** @param int8_t percent + ** @param uint8_t forceSound + ** @param uint8_t eventOnly + ** @param int16_t pitch + ** @param int16_t duration + ** @param xcb_atom_t name + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_bell (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_bell_class_spec_t bellClass /**< */, + xcb_xkb_id_spec_t bellID /**< */, + int8_t percent /**< */, + uint8_t forceSound /**< */, + uint8_t eventOnly /**< */, + int16_t pitch /**< */, + int16_t duration /**< */, + xcb_atom_t name /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_state_cookie_t xcb_xkb_get_state + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_state_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_state_cookie_t +xcb_xkb_get_state (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_state_cookie_t xcb_xkb_get_state_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_state_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_state_cookie_t +xcb_xkb_get_state_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_state_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_state_reply_t * xcb_xkb_get_state_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_state_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_state_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_state_reply_t * +xcb_xkb_get_state_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_state_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_latch_lock_state_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t affectModLocks + ** @param uint8_t modLocks + ** @param uint8_t lockGroup + ** @param uint8_t groupLock + ** @param uint8_t affectModLatches + ** @param uint8_t latchGroup + ** @param uint16_t groupLatch + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_latch_lock_state_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t affectModLocks /**< */, + uint8_t modLocks /**< */, + uint8_t lockGroup /**< */, + uint8_t groupLock /**< */, + uint8_t affectModLatches /**< */, + uint8_t latchGroup /**< */, + uint16_t groupLatch /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_latch_lock_state + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t affectModLocks + ** @param uint8_t modLocks + ** @param uint8_t lockGroup + ** @param uint8_t groupLock + ** @param uint8_t affectModLatches + ** @param uint8_t latchGroup + ** @param uint16_t groupLatch + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_latch_lock_state (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t affectModLocks /**< */, + uint8_t modLocks /**< */, + uint8_t lockGroup /**< */, + uint8_t groupLock /**< */, + uint8_t affectModLatches /**< */, + uint8_t latchGroup /**< */, + uint16_t groupLatch /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_controls_cookie_t xcb_xkb_get_controls + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_controls_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_controls_cookie_t +xcb_xkb_get_controls (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_controls_cookie_t xcb_xkb_get_controls_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_controls_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_controls_cookie_t +xcb_xkb_get_controls_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_controls_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_controls_reply_t * xcb_xkb_get_controls_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_controls_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_controls_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_controls_reply_t * +xcb_xkb_get_controls_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_controls_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_controls_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t affectInternalRealMods + ** @param uint8_t internalRealMods + ** @param uint8_t affectIgnoreLockRealMods + ** @param uint8_t ignoreLockRealMods + ** @param uint16_t affectInternalVirtualMods + ** @param uint16_t internalVirtualMods + ** @param uint16_t affectIgnoreLockVirtualMods + ** @param uint16_t ignoreLockVirtualMods + ** @param uint8_t mouseKeysDfltBtn + ** @param uint8_t groupsWrap + ** @param xcb_xkb_ax_option_t accessXOptions + ** @param uint32_t affectEnabledControls + ** @param uint32_t enabledControls + ** @param uint32_t changeControls + ** @param uint16_t repeatDelay + ** @param uint16_t repeatInterval + ** @param uint16_t slowKeysDelay + ** @param uint16_t debounceDelay + ** @param uint16_t mouseKeysDelay + ** @param uint16_t mouseKeysInterval + ** @param uint16_t mouseKeysTimeToMax + ** @param uint16_t mouseKeysMaxSpeed + ** @param int16_t mouseKeysCurve + ** @param uint16_t accessXTimeout + ** @param uint32_t accessXTimeoutMask + ** @param uint32_t accessXTimeoutValues + ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsMask + ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsValues + ** @param const uint8_t *perKeyRepeat + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_controls_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t affectInternalRealMods /**< */, + uint8_t internalRealMods /**< */, + uint8_t affectIgnoreLockRealMods /**< */, + uint8_t ignoreLockRealMods /**< */, + uint16_t affectInternalVirtualMods /**< */, + uint16_t internalVirtualMods /**< */, + uint16_t affectIgnoreLockVirtualMods /**< */, + uint16_t ignoreLockVirtualMods /**< */, + uint8_t mouseKeysDfltBtn /**< */, + uint8_t groupsWrap /**< */, + xcb_xkb_ax_option_t accessXOptions /**< */, + uint32_t affectEnabledControls /**< */, + uint32_t enabledControls /**< */, + uint32_t changeControls /**< */, + uint16_t repeatDelay /**< */, + uint16_t repeatInterval /**< */, + uint16_t slowKeysDelay /**< */, + uint16_t debounceDelay /**< */, + uint16_t mouseKeysDelay /**< */, + uint16_t mouseKeysInterval /**< */, + uint16_t mouseKeysTimeToMax /**< */, + uint16_t mouseKeysMaxSpeed /**< */, + int16_t mouseKeysCurve /**< */, + uint16_t accessXTimeout /**< */, + uint32_t accessXTimeoutMask /**< */, + uint32_t accessXTimeoutValues /**< */, + xcb_xkb_ax_option_t accessXTimeoutOptionsMask /**< */, + xcb_xkb_ax_option_t accessXTimeoutOptionsValues /**< */, + const uint8_t *perKeyRepeat /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_controls + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t affectInternalRealMods + ** @param uint8_t internalRealMods + ** @param uint8_t affectIgnoreLockRealMods + ** @param uint8_t ignoreLockRealMods + ** @param uint16_t affectInternalVirtualMods + ** @param uint16_t internalVirtualMods + ** @param uint16_t affectIgnoreLockVirtualMods + ** @param uint16_t ignoreLockVirtualMods + ** @param uint8_t mouseKeysDfltBtn + ** @param uint8_t groupsWrap + ** @param xcb_xkb_ax_option_t accessXOptions + ** @param uint32_t affectEnabledControls + ** @param uint32_t enabledControls + ** @param uint32_t changeControls + ** @param uint16_t repeatDelay + ** @param uint16_t repeatInterval + ** @param uint16_t slowKeysDelay + ** @param uint16_t debounceDelay + ** @param uint16_t mouseKeysDelay + ** @param uint16_t mouseKeysInterval + ** @param uint16_t mouseKeysTimeToMax + ** @param uint16_t mouseKeysMaxSpeed + ** @param int16_t mouseKeysCurve + ** @param uint16_t accessXTimeout + ** @param uint32_t accessXTimeoutMask + ** @param uint32_t accessXTimeoutValues + ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsMask + ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsValues + ** @param const uint8_t *perKeyRepeat + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_controls (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t affectInternalRealMods /**< */, + uint8_t internalRealMods /**< */, + uint8_t affectIgnoreLockRealMods /**< */, + uint8_t ignoreLockRealMods /**< */, + uint16_t affectInternalVirtualMods /**< */, + uint16_t internalVirtualMods /**< */, + uint16_t affectIgnoreLockVirtualMods /**< */, + uint16_t ignoreLockVirtualMods /**< */, + uint8_t mouseKeysDfltBtn /**< */, + uint8_t groupsWrap /**< */, + xcb_xkb_ax_option_t accessXOptions /**< */, + uint32_t affectEnabledControls /**< */, + uint32_t enabledControls /**< */, + uint32_t changeControls /**< */, + uint16_t repeatDelay /**< */, + uint16_t repeatInterval /**< */, + uint16_t slowKeysDelay /**< */, + uint16_t debounceDelay /**< */, + uint16_t mouseKeysDelay /**< */, + uint16_t mouseKeysInterval /**< */, + uint16_t mouseKeysTimeToMax /**< */, + uint16_t mouseKeysMaxSpeed /**< */, + int16_t mouseKeysCurve /**< */, + uint16_t accessXTimeout /**< */, + uint32_t accessXTimeoutMask /**< */, + uint32_t accessXTimeoutValues /**< */, + xcb_xkb_ax_option_t accessXTimeoutOptionsMask /**< */, + xcb_xkb_ax_option_t accessXTimeoutOptionsValues /**< */, + const uint8_t *perKeyRepeat /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_types_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_types_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_type_iterator_t xcb_xkb_get_map_map_types_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_type_iterator_t +xcb_xkb_get_map_map_types_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_syms_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_syms_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_map_map_syms_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_get_map_map_syms_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_map_map_acts_rtrn_count + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_map_map_acts_rtrn_count (const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_acts_rtrn_count_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_acts_rtrn_count_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_map_map_acts_rtrn_count_end + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_map_map_acts_rtrn_count_end (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_map_map_acts_rtrn_acts + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_map_map_acts_rtrn_acts (const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_acts_rtrn_acts_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_acts_rtrn_acts_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_map_map_acts_rtrn_acts_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_map_map_acts_rtrn_acts_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_get_map_map_behaviors_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_get_map_map_behaviors_rtrn (const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_behaviors_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_behaviors_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_map_map_behaviors_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_get_map_map_behaviors_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_map_map_vmods_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_map_map_vmods_rtrn (const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_vmods_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_vmods_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_map_map_vmods_rtrn_end + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_map_map_vmods_rtrn_end (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_get_map_map_explicit_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_get_map_map_explicit_rtrn (const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_explicit_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_explicit_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_map_map_explicit_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_get_map_map_explicit_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_get_map_map_modmap_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_get_map_map_modmap_rtrn (const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_modmap_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_modmap_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_map_map_modmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_get_map_map_modmap_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_map_map_vmodmap_rtrn + ** + ** @param const xcb_xkb_get_map_map_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_get_map_map_vmodmap_rtrn (const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_map_map_vmodmap_rtrn_length + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_map_map_vmodmap_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_map_map_vmodmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_map_map_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_get_map_map_vmodmap_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */, + const xcb_xkb_get_map_map_t *S /**< */); + +int +xcb_xkb_get_map_map_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_get_map_map_t *_aux /**< */); + +int +xcb_xkb_get_map_map_unpack (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + xcb_xkb_get_map_map_t *_aux /**< */); + +int +xcb_xkb_get_map_map_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_map_cookie_t xcb_xkb_get_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t full + ** @param uint16_t partial + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint16_t virtualMods + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @returns xcb_xkb_get_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_map_cookie_t +xcb_xkb_get_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t full /**< */, + uint16_t partial /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint16_t virtualMods /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_map_cookie_t xcb_xkb_get_map_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t full + ** @param uint16_t partial + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint16_t virtualMods + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @returns xcb_xkb_get_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_map_cookie_t +xcb_xkb_get_map_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t full /**< */, + uint16_t partial /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint16_t virtualMods /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_get_map_map_t * xcb_xkb_get_map_map + ** + ** @param const xcb_xkb_get_map_reply_t *R + ** @returns xcb_xkb_get_map_map_t * + ** + *****************************************************************************/ + +void * +xcb_xkb_get_map_map (const xcb_xkb_get_map_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_map_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_map_reply_t * xcb_xkb_get_map_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_map_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_map_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_map_reply_t * +xcb_xkb_get_map_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_map_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_types_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_types_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_key_type_iterator_t xcb_xkb_set_map_values_types_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_set_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_key_type_iterator_t +xcb_xkb_set_map_values_types_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_syms_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_syms_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_set_map_values_syms_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_set_map_values_syms_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_set_map_values_actions_count + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_set_map_values_actions_count (const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_actions_count_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_actions_count_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_map_values_actions_count_end + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_map_values_actions_count_end (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_set_map_values_actions + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_set_map_values_actions (const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_actions_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_actions_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_set_map_values_actions_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_set_map_values_actions_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_set_map_values_behaviors + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_set_map_values_behaviors (const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_behaviors_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_behaviors_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_set_map_values_behaviors_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_set_map_values_behaviors_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_set_map_values_vmods + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_set_map_values_vmods (const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_vmods_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_vmods_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_map_values_vmods_end + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_map_values_vmods_end (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_set_map_values_explicit + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_set_map_values_explicit (const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_explicit_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_explicit_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_set_map_values_explicit_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_set_map_values_explicit_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_set_map_values_modmap + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_set_map_values_modmap (const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_modmap_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_modmap_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_set_map_values_modmap_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_set_map_values_modmap_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_set_map_values_vmodmap + ** + ** @param const xcb_xkb_set_map_values_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_set_map_values_vmodmap (const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_map_values_vmodmap_length + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_map_values_vmodmap_length (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_set_map_values_vmodmap_iterator + ** + ** @param const xcb_xkb_set_map_values_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_set_map_values_vmodmap_iterator (const xcb_xkb_set_map_request_t *R /**< */, + const xcb_xkb_set_map_values_t *S /**< */); + +int +xcb_xkb_set_map_values_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_set_map_values_t *_aux /**< */); + +int +xcb_xkb_set_map_values_unpack (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + xcb_xkb_set_map_values_t *_aux /**< */); + +int +xcb_xkb_set_map_values_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_map_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t present + ** @param uint16_t flags + ** @param xcb_keycode_t minKeyCode + ** @param xcb_keycode_t maxKeyCode + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param uint16_t totalSyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param uint16_t totalActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint8_t totalKeyBehaviors + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param uint8_t totalKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param uint8_t totalModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @param uint8_t totalVModMapKeys + ** @param uint16_t virtualMods + ** @param const void *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_map_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t present /**< */, + uint16_t flags /**< */, + xcb_keycode_t minKeyCode /**< */, + xcb_keycode_t maxKeyCode /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + uint16_t totalSyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint8_t totalKeyBehaviors /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + uint8_t totalKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + uint8_t totalModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t virtualMods /**< */, + const void *values /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t present + ** @param uint16_t flags + ** @param xcb_keycode_t minKeyCode + ** @param xcb_keycode_t maxKeyCode + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param uint16_t totalSyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param uint16_t totalActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint8_t totalKeyBehaviors + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param uint8_t totalKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param uint8_t totalModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @param uint8_t totalVModMapKeys + ** @param uint16_t virtualMods + ** @param const void *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t present /**< */, + uint16_t flags /**< */, + xcb_keycode_t minKeyCode /**< */, + xcb_keycode_t maxKeyCode /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + uint16_t totalSyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint8_t totalKeyBehaviors /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + uint8_t totalKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + uint8_t totalModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t virtualMods /**< */, + const void *values /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_map_aux_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t present + ** @param uint16_t flags + ** @param xcb_keycode_t minKeyCode + ** @param xcb_keycode_t maxKeyCode + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param uint16_t totalSyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param uint16_t totalActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint8_t totalKeyBehaviors + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param uint8_t totalKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param uint8_t totalModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @param uint8_t totalVModMapKeys + ** @param uint16_t virtualMods + ** @param const xcb_xkb_set_map_values_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_map_aux_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t present /**< */, + uint16_t flags /**< */, + xcb_keycode_t minKeyCode /**< */, + xcb_keycode_t maxKeyCode /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + uint16_t totalSyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint8_t totalKeyBehaviors /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + uint8_t totalKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + uint8_t totalModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t virtualMods /**< */, + const xcb_xkb_set_map_values_t *values /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_map_aux + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t present + ** @param uint16_t flags + ** @param xcb_keycode_t minKeyCode + ** @param xcb_keycode_t maxKeyCode + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param xcb_keycode_t firstKeySym + ** @param uint8_t nKeySyms + ** @param uint16_t totalSyms + ** @param xcb_keycode_t firstKeyAction + ** @param uint8_t nKeyActions + ** @param uint16_t totalActions + ** @param xcb_keycode_t firstKeyBehavior + ** @param uint8_t nKeyBehaviors + ** @param uint8_t totalKeyBehaviors + ** @param xcb_keycode_t firstKeyExplicit + ** @param uint8_t nKeyExplicit + ** @param uint8_t totalKeyExplicit + ** @param xcb_keycode_t firstModMapKey + ** @param uint8_t nModMapKeys + ** @param uint8_t totalModMapKeys + ** @param xcb_keycode_t firstVModMapKey + ** @param uint8_t nVModMapKeys + ** @param uint8_t totalVModMapKeys + ** @param uint16_t virtualMods + ** @param const xcb_xkb_set_map_values_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_map_aux (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t present /**< */, + uint16_t flags /**< */, + xcb_keycode_t minKeyCode /**< */, + xcb_keycode_t maxKeyCode /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + xcb_keycode_t firstKeySym /**< */, + uint8_t nKeySyms /**< */, + uint16_t totalSyms /**< */, + xcb_keycode_t firstKeyAction /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + xcb_keycode_t firstKeyBehavior /**< */, + uint8_t nKeyBehaviors /**< */, + uint8_t totalKeyBehaviors /**< */, + xcb_keycode_t firstKeyExplicit /**< */, + uint8_t nKeyExplicit /**< */, + uint8_t totalKeyExplicit /**< */, + xcb_keycode_t firstModMapKey /**< */, + uint8_t nModMapKeys /**< */, + uint8_t totalModMapKeys /**< */, + xcb_keycode_t firstVModMapKey /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t virtualMods /**< */, + const xcb_xkb_set_map_values_t *values /**< */); + +int +xcb_xkb_get_compat_map_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_compat_map_cookie_t xcb_xkb_get_compat_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t groups + ** @param uint8_t getAllSI + ** @param uint16_t firstSI + ** @param uint16_t nSI + ** @returns xcb_xkb_get_compat_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_compat_map_cookie_t +xcb_xkb_get_compat_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t groups /**< */, + uint8_t getAllSI /**< */, + uint16_t firstSI /**< */, + uint16_t nSI /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_compat_map_cookie_t xcb_xkb_get_compat_map_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t groups + ** @param uint8_t getAllSI + ** @param uint16_t firstSI + ** @param uint16_t nSI + ** @returns xcb_xkb_get_compat_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_compat_map_cookie_t +xcb_xkb_get_compat_map_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t groups /**< */, + uint8_t getAllSI /**< */, + uint16_t firstSI /**< */, + uint16_t nSI /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_compat_map_si_rtrn + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_compat_map_si_rtrn (const xcb_xkb_get_compat_map_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_compat_map_si_rtrn_length + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_compat_map_si_rtrn_length (const xcb_xkb_get_compat_map_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_compat_map_si_rtrn_end + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_compat_map_si_rtrn_end (const xcb_xkb_get_compat_map_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_t * xcb_xkb_get_compat_map_group_rtrn + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns xcb_xkb_mod_def_t * + ** + *****************************************************************************/ + +xcb_xkb_mod_def_t * +xcb_xkb_get_compat_map_group_rtrn (const xcb_xkb_get_compat_map_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_compat_map_group_rtrn_length + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_compat_map_group_rtrn_length (const xcb_xkb_get_compat_map_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_iterator_t xcb_xkb_get_compat_map_group_rtrn_iterator + ** + ** @param const xcb_xkb_get_compat_map_reply_t *R + ** @returns xcb_xkb_mod_def_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_mod_def_iterator_t +xcb_xkb_get_compat_map_group_rtrn_iterator (const xcb_xkb_get_compat_map_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_compat_map_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_compat_map_reply_t * xcb_xkb_get_compat_map_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_compat_map_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_compat_map_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_compat_map_reply_t * +xcb_xkb_get_compat_map_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_compat_map_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xkb_set_compat_map_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_compat_map_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t recomputeActions + ** @param uint8_t truncateSI + ** @param uint8_t groups + ** @param uint16_t firstSI + ** @param uint16_t nSI + ** @param const uint8_t *si + ** @param const xcb_xkb_mod_def_t *groupMaps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_compat_map_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t recomputeActions /**< */, + uint8_t truncateSI /**< */, + uint8_t groups /**< */, + uint16_t firstSI /**< */, + uint16_t nSI /**< */, + const uint8_t *si /**< */, + const xcb_xkb_mod_def_t *groupMaps /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_compat_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t recomputeActions + ** @param uint8_t truncateSI + ** @param uint8_t groups + ** @param uint16_t firstSI + ** @param uint16_t nSI + ** @param const uint8_t *si + ** @param const xcb_xkb_mod_def_t *groupMaps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_compat_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t recomputeActions /**< */, + uint8_t truncateSI /**< */, + uint8_t groups /**< */, + uint16_t firstSI /**< */, + uint16_t nSI /**< */, + const uint8_t *si /**< */, + const xcb_xkb_mod_def_t *groupMaps /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_state_cookie_t xcb_xkb_get_indicator_state + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_indicator_state_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_state_cookie_t +xcb_xkb_get_indicator_state (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_state_cookie_t xcb_xkb_get_indicator_state_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @returns xcb_xkb_get_indicator_state_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_state_cookie_t +xcb_xkb_get_indicator_state_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_indicator_state_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_state_reply_t * xcb_xkb_get_indicator_state_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_indicator_state_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_indicator_state_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_state_reply_t * +xcb_xkb_get_indicator_state_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_indicator_state_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xkb_get_indicator_map_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_map_cookie_t xcb_xkb_get_indicator_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @returns xcb_xkb_get_indicator_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_map_cookie_t +xcb_xkb_get_indicator_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_map_cookie_t xcb_xkb_get_indicator_map_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @returns xcb_xkb_get_indicator_map_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_map_cookie_t +xcb_xkb_get_indicator_map_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_t * xcb_xkb_get_indicator_map_maps + ** + ** @param const xcb_xkb_get_indicator_map_reply_t *R + ** @returns xcb_xkb_indicator_map_t * + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_t * +xcb_xkb_get_indicator_map_maps (const xcb_xkb_get_indicator_map_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_indicator_map_maps_length + ** + ** @param const xcb_xkb_get_indicator_map_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_indicator_map_maps_length (const xcb_xkb_get_indicator_map_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_iterator_t xcb_xkb_get_indicator_map_maps_iterator + ** + ** @param const xcb_xkb_get_indicator_map_reply_t *R + ** @returns xcb_xkb_indicator_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_iterator_t +xcb_xkb_get_indicator_map_maps_iterator (const xcb_xkb_get_indicator_map_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_indicator_map_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_indicator_map_reply_t * xcb_xkb_get_indicator_map_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_indicator_map_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_indicator_map_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_indicator_map_reply_t * +xcb_xkb_get_indicator_map_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_indicator_map_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xkb_set_indicator_map_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_indicator_map_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @param const xcb_xkb_indicator_map_t *maps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_indicator_map_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */, + const xcb_xkb_indicator_map_t *maps /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_indicator_map + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @param const xcb_xkb_indicator_map_t *maps + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_indicator_map (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */, + const xcb_xkb_indicator_map_t *maps /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_named_indicator_cookie_t xcb_xkb_get_named_indicator + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @param xcb_atom_t indicator + ** @returns xcb_xkb_get_named_indicator_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_named_indicator_cookie_t +xcb_xkb_get_named_indicator (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */, + xcb_atom_t indicator /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_named_indicator_cookie_t xcb_xkb_get_named_indicator_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @param xcb_atom_t indicator + ** @returns xcb_xkb_get_named_indicator_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_named_indicator_cookie_t +xcb_xkb_get_named_indicator_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */, + xcb_atom_t indicator /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_named_indicator_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_named_indicator_reply_t * xcb_xkb_get_named_indicator_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_named_indicator_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_named_indicator_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_named_indicator_reply_t * +xcb_xkb_get_named_indicator_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_named_indicator_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_named_indicator_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @param xcb_atom_t indicator + ** @param uint8_t setState + ** @param uint8_t on + ** @param uint8_t setMap + ** @param uint8_t createMap + ** @param uint8_t map_flags + ** @param uint8_t map_whichGroups + ** @param uint8_t map_groups + ** @param uint8_t map_whichMods + ** @param uint8_t map_realMods + ** @param uint16_t map_vmods + ** @param uint32_t map_ctrls + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_named_indicator_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */, + xcb_atom_t indicator /**< */, + uint8_t setState /**< */, + uint8_t on /**< */, + uint8_t setMap /**< */, + uint8_t createMap /**< */, + uint8_t map_flags /**< */, + uint8_t map_whichGroups /**< */, + uint8_t map_groups /**< */, + uint8_t map_whichMods /**< */, + uint8_t map_realMods /**< */, + uint16_t map_vmods /**< */, + uint32_t map_ctrls /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_named_indicator + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @param xcb_atom_t indicator + ** @param uint8_t setState + ** @param uint8_t on + ** @param uint8_t setMap + ** @param uint8_t createMap + ** @param uint8_t map_flags + ** @param uint8_t map_whichGroups + ** @param uint8_t map_groups + ** @param uint8_t map_whichMods + ** @param uint8_t map_realMods + ** @param uint16_t map_vmods + ** @param uint32_t map_ctrls + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_named_indicator (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */, + xcb_atom_t indicator /**< */, + uint8_t setState /**< */, + uint8_t on /**< */, + uint8_t setMap /**< */, + uint8_t createMap /**< */, + uint8_t map_flags /**< */, + uint8_t map_whichGroups /**< */, + uint8_t map_groups /**< */, + uint8_t map_whichMods /**< */, + uint8_t map_realMods /**< */, + uint16_t map_vmods /**< */, + uint32_t map_ctrls /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_type_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_type_names (const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_type_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_type_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_type_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_type_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_names_value_list_n_levels_per_type + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_names_value_list_n_levels_per_type (const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_n_levels_per_type_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_n_levels_per_type_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_n_levels_per_type_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_n_levels_per_type_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_kt_level_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_kt_level_names (const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_kt_level_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_kt_level_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_kt_level_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_kt_level_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_indicator_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_indicator_names (const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_indicator_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_indicator_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_indicator_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_indicator_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_virtual_mod_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_virtual_mod_names (const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_virtual_mod_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_virtual_mod_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_virtual_mod_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_virtual_mod_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_groups + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_groups (const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_groups_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_groups_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_groups_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_groups_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_t * xcb_xkb_get_names_value_list_key_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_xkb_key_name_t * + ** + *****************************************************************************/ + +xcb_xkb_key_name_t * +xcb_xkb_get_names_value_list_key_names (const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_key_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_key_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_iterator_t xcb_xkb_get_names_value_list_key_names_iterator + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_xkb_key_name_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_name_iterator_t +xcb_xkb_get_names_value_list_key_names_iterator (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_names_value_list_key_aliases + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_names_value_list_key_aliases (const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_key_aliases_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_key_aliases_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_names_value_list_key_aliases_iterator + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_names_value_list_key_aliases_iterator (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_names_value_list_radio_group_names + ** + ** @param const xcb_xkb_get_names_value_list_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_names_value_list_radio_group_names (const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_names_value_list_radio_group_names_length + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_names_value_list_radio_group_names_length (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_radio_group_names_end + ** + ** @param const xcb_xkb_get_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_names_value_list_radio_group_names_end (const xcb_xkb_get_names_reply_t *R /**< */, + const xcb_xkb_get_names_value_list_t *S /**< */); + +int +xcb_xkb_get_names_value_list_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + const xcb_xkb_get_names_value_list_t *_aux /**< */); + +int +xcb_xkb_get_names_value_list_unpack (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + xcb_xkb_get_names_value_list_t *_aux /**< */); + +int +xcb_xkb_get_names_value_list_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_names_cookie_t xcb_xkb_get_names + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @returns xcb_xkb_get_names_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_names_cookie_t +xcb_xkb_get_names (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_names_cookie_t xcb_xkb_get_names_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t which + ** @returns xcb_xkb_get_names_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_names_cookie_t +xcb_xkb_get_names_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t which /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_get_names_value_list_t * xcb_xkb_get_names_value_list + ** + ** @param const xcb_xkb_get_names_reply_t *R + ** @returns xcb_xkb_get_names_value_list_t * + ** + *****************************************************************************/ + +void * +xcb_xkb_get_names_value_list (const xcb_xkb_get_names_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_names_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_names_reply_t * xcb_xkb_get_names_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_names_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_names_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_names_reply_t * +xcb_xkb_get_names_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_names_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_type_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_type_names (const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_type_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_type_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_type_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_type_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_set_names_values_n_levels_per_type + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_set_names_values_n_levels_per_type (const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_n_levels_per_type_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_n_levels_per_type_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_n_levels_per_type_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_n_levels_per_type_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_kt_level_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_kt_level_names (const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_kt_level_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_kt_level_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_kt_level_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_kt_level_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_indicator_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_indicator_names (const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_indicator_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_indicator_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_indicator_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_indicator_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_virtual_mod_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_virtual_mod_names (const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_virtual_mod_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_virtual_mod_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_virtual_mod_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_virtual_mod_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_groups + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_groups (const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_groups_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_groups_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_groups_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_groups_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_t * xcb_xkb_set_names_values_key_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_xkb_key_name_t * + ** + *****************************************************************************/ + +xcb_xkb_key_name_t * +xcb_xkb_set_names_values_key_names (const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_key_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_key_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_iterator_t xcb_xkb_set_names_values_key_names_iterator + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_xkb_key_name_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_name_iterator_t +xcb_xkb_set_names_values_key_names_iterator (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_set_names_values_key_aliases + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_set_names_values_key_aliases (const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_key_aliases_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_key_aliases_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_set_names_values_key_aliases_iterator + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_set_names_values_key_aliases_iterator (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_set_names_values_radio_group_names + ** + ** @param const xcb_xkb_set_names_values_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_set_names_values_radio_group_names (const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_set_names_values_radio_group_names_length + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_set_names_values_radio_group_names_length (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_set_names_values_radio_group_names_end + ** + ** @param const xcb_xkb_set_names_values_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_set_names_values_radio_group_names_end (const xcb_xkb_set_names_request_t *R /**< */, + const xcb_xkb_set_names_values_t *S /**< */); + +int +xcb_xkb_set_names_values_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + const xcb_xkb_set_names_values_t *_aux /**< */); + +int +xcb_xkb_set_names_values_unpack (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + xcb_xkb_set_names_values_t *_aux /**< */); + +int +xcb_xkb_set_names_values_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_names_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t virtualMods + ** @param uint32_t which + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param uint8_t firstKTLevelt + ** @param uint8_t nKTLevels + ** @param uint32_t indicators + ** @param uint8_t groupNames + ** @param uint8_t nRadioGroups + ** @param xcb_keycode_t firstKey + ** @param uint8_t nKeys + ** @param uint8_t nKeyAliases + ** @param uint16_t totalKTLevelNames + ** @param const void *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_names_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t virtualMods /**< */, + uint32_t which /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + uint8_t firstKTLevelt /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint8_t groupNames /**< */, + uint8_t nRadioGroups /**< */, + xcb_keycode_t firstKey /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint16_t totalKTLevelNames /**< */, + const void *values /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_names + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t virtualMods + ** @param uint32_t which + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param uint8_t firstKTLevelt + ** @param uint8_t nKTLevels + ** @param uint32_t indicators + ** @param uint8_t groupNames + ** @param uint8_t nRadioGroups + ** @param xcb_keycode_t firstKey + ** @param uint8_t nKeys + ** @param uint8_t nKeyAliases + ** @param uint16_t totalKTLevelNames + ** @param const void *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_names (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t virtualMods /**< */, + uint32_t which /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + uint8_t firstKTLevelt /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint8_t groupNames /**< */, + uint8_t nRadioGroups /**< */, + xcb_keycode_t firstKey /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint16_t totalKTLevelNames /**< */, + const void *values /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_names_aux_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t virtualMods + ** @param uint32_t which + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param uint8_t firstKTLevelt + ** @param uint8_t nKTLevels + ** @param uint32_t indicators + ** @param uint8_t groupNames + ** @param uint8_t nRadioGroups + ** @param xcb_keycode_t firstKey + ** @param uint8_t nKeys + ** @param uint8_t nKeyAliases + ** @param uint16_t totalKTLevelNames + ** @param const xcb_xkb_set_names_values_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_names_aux_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t virtualMods /**< */, + uint32_t which /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + uint8_t firstKTLevelt /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint8_t groupNames /**< */, + uint8_t nRadioGroups /**< */, + xcb_keycode_t firstKey /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint16_t totalKTLevelNames /**< */, + const xcb_xkb_set_names_values_t *values /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_names_aux + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t virtualMods + ** @param uint32_t which + ** @param uint8_t firstType + ** @param uint8_t nTypes + ** @param uint8_t firstKTLevelt + ** @param uint8_t nKTLevels + ** @param uint32_t indicators + ** @param uint8_t groupNames + ** @param uint8_t nRadioGroups + ** @param xcb_keycode_t firstKey + ** @param uint8_t nKeys + ** @param uint8_t nKeyAliases + ** @param uint16_t totalKTLevelNames + ** @param const xcb_xkb_set_names_values_t *values + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_names_aux (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t virtualMods /**< */, + uint32_t which /**< */, + uint8_t firstType /**< */, + uint8_t nTypes /**< */, + uint8_t firstKTLevelt /**< */, + uint8_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint8_t groupNames /**< */, + uint8_t nRadioGroups /**< */, + xcb_keycode_t firstKey /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint16_t totalKTLevelNames /**< */, + const xcb_xkb_set_names_values_t *values /**< */); + +int +xcb_xkb_get_geometry_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_geometry_cookie_t xcb_xkb_get_geometry + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_atom_t name + ** @returns xcb_xkb_get_geometry_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_geometry_cookie_t +xcb_xkb_get_geometry (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_atom_t name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_geometry_cookie_t xcb_xkb_get_geometry_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param xcb_atom_t name + ** @returns xcb_xkb_get_geometry_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_geometry_cookie_t +xcb_xkb_get_geometry_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + xcb_atom_t name /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_get_geometry_label_font + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_get_geometry_label_font (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_properties_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_properties_length (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_property_iterator_t xcb_xkb_get_geometry_properties_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_property_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_property_iterator_t +xcb_xkb_get_geometry_properties_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_colors_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_colors_length (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_iterator_t xcb_xkb_get_geometry_colors_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_counted_string_16_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_iterator_t +xcb_xkb_get_geometry_colors_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_shapes_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_shapes_length (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_shape_iterator_t xcb_xkb_get_geometry_shapes_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_shape_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_shape_iterator_t +xcb_xkb_get_geometry_shapes_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_sections_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_sections_length (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_section_iterator_t xcb_xkb_get_geometry_sections_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_section_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_section_iterator_t +xcb_xkb_get_geometry_sections_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_doodads_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_doodads_length (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_doodad_iterator_t xcb_xkb_get_geometry_doodads_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_doodad_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_doodad_iterator_t +xcb_xkb_get_geometry_doodads_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_geometry_key_aliases + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_geometry_key_aliases (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_geometry_key_aliases_length + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_geometry_key_aliases_length (const xcb_xkb_get_geometry_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_geometry_key_aliases_iterator + ** + ** @param const xcb_xkb_get_geometry_reply_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_geometry_key_aliases_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_geometry_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_geometry_reply_t * xcb_xkb_get_geometry_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_geometry_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_geometry_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_geometry_reply_t * +xcb_xkb_get_geometry_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_geometry_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xkb_set_geometry_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_geometry_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t nShapes + ** @param uint8_t nSections + ** @param xcb_atom_t name + ** @param uint16_t widthMM + ** @param uint16_t heightMM + ** @param uint16_t nProperties + ** @param uint16_t nColors + ** @param uint16_t nDoodads + ** @param uint16_t nKeyAliases + ** @param uint8_t baseColorNdx + ** @param uint8_t labelColorNdx + ** @param xcb_xkb_counted_string_16_t *labelFont + ** @param const xcb_xkb_property_t *properties + ** @param const xcb_xkb_counted_string_16_t *colors + ** @param const xcb_xkb_shape_t *shapes + ** @param const xcb_xkb_section_t *sections + ** @param const xcb_xkb_doodad_t *doodads + ** @param const xcb_xkb_key_alias_t *keyAliases + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_geometry_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t nShapes /**< */, + uint8_t nSections /**< */, + xcb_atom_t name /**< */, + uint16_t widthMM /**< */, + uint16_t heightMM /**< */, + uint16_t nProperties /**< */, + uint16_t nColors /**< */, + uint16_t nDoodads /**< */, + uint16_t nKeyAliases /**< */, + uint8_t baseColorNdx /**< */, + uint8_t labelColorNdx /**< */, + xcb_xkb_counted_string_16_t *labelFont /**< */, + const xcb_xkb_property_t *properties /**< */, + const xcb_xkb_counted_string_16_t *colors /**< */, + const xcb_xkb_shape_t *shapes /**< */, + const xcb_xkb_section_t *sections /**< */, + const xcb_xkb_doodad_t *doodads /**< */, + const xcb_xkb_key_alias_t *keyAliases /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_geometry + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t nShapes + ** @param uint8_t nSections + ** @param xcb_atom_t name + ** @param uint16_t widthMM + ** @param uint16_t heightMM + ** @param uint16_t nProperties + ** @param uint16_t nColors + ** @param uint16_t nDoodads + ** @param uint16_t nKeyAliases + ** @param uint8_t baseColorNdx + ** @param uint8_t labelColorNdx + ** @param xcb_xkb_counted_string_16_t *labelFont + ** @param const xcb_xkb_property_t *properties + ** @param const xcb_xkb_counted_string_16_t *colors + ** @param const xcb_xkb_shape_t *shapes + ** @param const xcb_xkb_section_t *sections + ** @param const xcb_xkb_doodad_t *doodads + ** @param const xcb_xkb_key_alias_t *keyAliases + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_geometry (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t nShapes /**< */, + uint8_t nSections /**< */, + xcb_atom_t name /**< */, + uint16_t widthMM /**< */, + uint16_t heightMM /**< */, + uint16_t nProperties /**< */, + uint16_t nColors /**< */, + uint16_t nDoodads /**< */, + uint16_t nKeyAliases /**< */, + uint8_t baseColorNdx /**< */, + uint8_t labelColorNdx /**< */, + xcb_xkb_counted_string_16_t *labelFont /**< */, + const xcb_xkb_property_t *properties /**< */, + const xcb_xkb_counted_string_16_t *colors /**< */, + const xcb_xkb_shape_t *shapes /**< */, + const xcb_xkb_section_t *sections /**< */, + const xcb_xkb_doodad_t *doodads /**< */, + const xcb_xkb_key_alias_t *keyAliases /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_per_client_flags_cookie_t xcb_xkb_per_client_flags + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t change + ** @param uint32_t value + ** @param uint32_t ctrlsToChange + ** @param uint32_t autoCtrls + ** @param uint32_t autoCtrlsValues + ** @returns xcb_xkb_per_client_flags_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_per_client_flags_cookie_t +xcb_xkb_per_client_flags (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t change /**< */, + uint32_t value /**< */, + uint32_t ctrlsToChange /**< */, + uint32_t autoCtrls /**< */, + uint32_t autoCtrlsValues /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_per_client_flags_cookie_t xcb_xkb_per_client_flags_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint32_t change + ** @param uint32_t value + ** @param uint32_t ctrlsToChange + ** @param uint32_t autoCtrls + ** @param uint32_t autoCtrlsValues + ** @returns xcb_xkb_per_client_flags_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_per_client_flags_cookie_t +xcb_xkb_per_client_flags_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint32_t change /**< */, + uint32_t value /**< */, + uint32_t ctrlsToChange /**< */, + uint32_t autoCtrls /**< */, + uint32_t autoCtrlsValues /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_per_client_flags_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_per_client_flags_reply_t * xcb_xkb_per_client_flags_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_per_client_flags_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_per_client_flags_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_per_client_flags_reply_t * +xcb_xkb_per_client_flags_reply (xcb_connection_t *c /**< */, + xcb_xkb_per_client_flags_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xkb_list_components_serialize (void **_buffer /**< */, + const xcb_xkb_list_components_request_t *_aux /**< */, + const xcb_xkb_string8_t *keymapsSpec /**< */, + const xcb_xkb_string8_t *keycodesSpec /**< */, + const xcb_xkb_string8_t *typesSpec /**< */, + const xcb_xkb_string8_t *compatMapSpec /**< */, + const xcb_xkb_string8_t *symbolsSpec /**< */, + const xcb_xkb_string8_t *geometrySpec /**< */); + +int +xcb_xkb_list_components_unserialize (const void *_buffer /**< */, + xcb_xkb_list_components_request_t **_aux /**< */); + +int +xcb_xkb_list_components_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_list_components_cookie_t xcb_xkb_list_components + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t maxNames + ** @param uint8_t keymapsSpecLen + ** @param const xcb_xkb_string8_t *keymapsSpec + ** @param uint8_t keycodesSpecLen + ** @param const xcb_xkb_string8_t *keycodesSpec + ** @param uint8_t typesSpecLen + ** @param const xcb_xkb_string8_t *typesSpec + ** @param uint8_t compatMapSpecLen + ** @param const xcb_xkb_string8_t *compatMapSpec + ** @param uint8_t symbolsSpecLen + ** @param const xcb_xkb_string8_t *symbolsSpec + ** @param uint8_t geometrySpecLen + ** @param const xcb_xkb_string8_t *geometrySpec + ** @returns xcb_xkb_list_components_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_list_components_cookie_t +xcb_xkb_list_components (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t maxNames /**< */, + uint8_t keymapsSpecLen /**< */, + const xcb_xkb_string8_t *keymapsSpec /**< */, + uint8_t keycodesSpecLen /**< */, + const xcb_xkb_string8_t *keycodesSpec /**< */, + uint8_t typesSpecLen /**< */, + const xcb_xkb_string8_t *typesSpec /**< */, + uint8_t compatMapSpecLen /**< */, + const xcb_xkb_string8_t *compatMapSpec /**< */, + uint8_t symbolsSpecLen /**< */, + const xcb_xkb_string8_t *symbolsSpec /**< */, + uint8_t geometrySpecLen /**< */, + const xcb_xkb_string8_t *geometrySpec /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_list_components_cookie_t xcb_xkb_list_components_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t maxNames + ** @param uint8_t keymapsSpecLen + ** @param const xcb_xkb_string8_t *keymapsSpec + ** @param uint8_t keycodesSpecLen + ** @param const xcb_xkb_string8_t *keycodesSpec + ** @param uint8_t typesSpecLen + ** @param const xcb_xkb_string8_t *typesSpec + ** @param uint8_t compatMapSpecLen + ** @param const xcb_xkb_string8_t *compatMapSpec + ** @param uint8_t symbolsSpecLen + ** @param const xcb_xkb_string8_t *symbolsSpec + ** @param uint8_t geometrySpecLen + ** @param const xcb_xkb_string8_t *geometrySpec + ** @returns xcb_xkb_list_components_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_list_components_cookie_t +xcb_xkb_list_components_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t maxNames /**< */, + uint8_t keymapsSpecLen /**< */, + const xcb_xkb_string8_t *keymapsSpec /**< */, + uint8_t keycodesSpecLen /**< */, + const xcb_xkb_string8_t *keycodesSpec /**< */, + uint8_t typesSpecLen /**< */, + const xcb_xkb_string8_t *typesSpec /**< */, + uint8_t compatMapSpecLen /**< */, + const xcb_xkb_string8_t *compatMapSpec /**< */, + uint8_t symbolsSpecLen /**< */, + const xcb_xkb_string8_t *symbolsSpec /**< */, + uint8_t geometrySpecLen /**< */, + const xcb_xkb_string8_t *geometrySpec /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_keymaps_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_keymaps_length (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_keymaps_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_keymaps_iterator (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_keycodes_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_keycodes_length (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_keycodes_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_keycodes_iterator (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_types_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_types_length (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_types_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_types_iterator (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_compat_maps_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_compat_maps_length (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_compat_maps_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_compat_maps_iterator (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_symbols_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_symbols_length (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_symbols_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_symbols_iterator (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_list_components_geometries_length + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_list_components_geometries_length (const xcb_xkb_list_components_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_geometries_iterator + ** + ** @param const xcb_xkb_list_components_reply_t *R + ** @returns xcb_xkb_listing_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_listing_iterator_t +xcb_xkb_list_components_geometries_iterator (const xcb_xkb_list_components_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_list_components_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_list_components_reply_t * xcb_xkb_list_components_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_list_components_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_list_components_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_list_components_reply_t * +xcb_xkb_list_components_reply (xcb_connection_t *c /**< */, + xcb_xkb_list_components_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xkb_get_kbd_by_name_serialize (void **_buffer /**< */, + const xcb_xkb_get_kbd_by_name_request_t *_aux /**< */, + const xcb_xkb_string8_t *keymapsSpec /**< */, + const xcb_xkb_string8_t *keycodesSpec /**< */, + const xcb_xkb_string8_t *typesSpec /**< */, + const xcb_xkb_string8_t *compatMapSpec /**< */, + const xcb_xkb_string8_t *symbolsSpec /**< */, + const xcb_xkb_string8_t *geometrySpec /**< */); + +int +xcb_xkb_get_kbd_by_name_unserialize (const void *_buffer /**< */, + xcb_xkb_get_kbd_by_name_request_t **_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_type_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_types_map_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_get_kbd_by_name_replies_types_map_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_types_map_unpack (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + xcb_xkb_get_kbd_by_name_replies_types_map_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_types_map_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_type_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_unpack (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_key_type_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_type_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_key_sym_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_sym_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_behavior_t * + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_set_behavior_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_behavior_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_set_explicit_t * + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_set_explicit_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_set_explicit_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_key_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_v_mod_map_t * + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R + ** @returns xcb_xkb_key_v_mod_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_v_mod_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_unpack (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */, + xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint8_t nKeySyms /**< */, + uint8_t nKeyActions /**< */, + uint16_t totalActions /**< */, + uint8_t totalKeyBehaviors /**< */, + uint8_t nVModMapKeys /**< */, + uint8_t totalKeyExplicit /**< */, + uint8_t totalModMapKeys /**< */, + uint8_t totalVModMapKeys /**< */, + uint16_t present /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_name_t * + ** + *****************************************************************************/ + +xcb_xkb_key_name_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_xkb_key_name_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_name_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_unpack (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_name_t * + ** + *****************************************************************************/ + +xcb_xkb_key_name_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_name_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_xkb_key_name_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_name_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_serialize (void **_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_unpack (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */, + xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_sizeof (const void *_buffer /**< */, + uint8_t nTypes /**< */, + uint16_t nKTLevels /**< */, + uint32_t indicators /**< */, + uint16_t virtualMods /**< */, + uint8_t groupNames /**< */, + uint8_t nKeys /**< */, + uint8_t nKeyAliases /**< */, + uint8_t nRadioGroups /**< */, + uint32_t which /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_end + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_t * xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_mod_def_t * + ** + *****************************************************************************/ + +xcb_xkb_mod_def_t * +xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_mod_def_iterator_t xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_mod_def_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_mod_def_iterator_t +xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t * +xcb_xkb_get_kbd_by_name_replies_client_symbols_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t * +xcb_xkb_get_kbd_by_name_replies_server_symbols_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_t * xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_indicator_map_t * + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_t * +xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_indicator_map_iterator_t xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_indicator_map_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_indicator_map_iterator_t +xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t * +xcb_xkb_get_kbd_by_name_replies_key_names_value_list (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t * +xcb_xkb_get_kbd_by_name_replies_other_names_value_list (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_t * xcb_xkb_get_kbd_by_name_replies_geometry_label_font + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_counted_string_16_t * + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_t * +xcb_xkb_get_kbd_by_name_replies_geometry_label_font (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_properties_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_properties_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_property_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_properties_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_property_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_property_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_properties_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_colors_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_colors_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_counted_string_16_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_colors_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_counted_string_16_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_counted_string_16_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_colors_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_shapes_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_shapes_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_shape_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_shapes_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_shape_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_shape_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_shapes_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_sections_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_sections_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_section_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_sections_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_section_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_section_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_sections_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_doodads_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_doodads_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_doodad_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_doodads_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_doodad_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_doodad_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_doodads_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *S + ** @returns xcb_xkb_key_alias_t * + ** + *****************************************************************************/ + +xcb_xkb_key_alias_t * +xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_length + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_iterator + ** + ** @param const xcb_xkb_get_kbd_by_name_replies_t *R + ** @returns xcb_xkb_key_alias_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_key_alias_iterator_t +xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *S /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_serialize (void **_buffer /**< */, + uint16_t reported /**< */, + const xcb_xkb_get_kbd_by_name_replies_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_unpack (const void *_buffer /**< */, + uint16_t reported /**< */, + xcb_xkb_get_kbd_by_name_replies_t *_aux /**< */); + +int +xcb_xkb_get_kbd_by_name_replies_sizeof (const void *_buffer /**< */, + uint16_t reported /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_cookie_t xcb_xkb_get_kbd_by_name + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t need + ** @param uint16_t want + ** @param uint8_t load + ** @param uint8_t keymapsSpecLen + ** @param const xcb_xkb_string8_t *keymapsSpec + ** @param uint8_t keycodesSpecLen + ** @param const xcb_xkb_string8_t *keycodesSpec + ** @param uint8_t typesSpecLen + ** @param const xcb_xkb_string8_t *typesSpec + ** @param uint8_t compatMapSpecLen + ** @param const xcb_xkb_string8_t *compatMapSpec + ** @param uint8_t symbolsSpecLen + ** @param const xcb_xkb_string8_t *symbolsSpec + ** @param uint8_t geometrySpecLen + ** @param const xcb_xkb_string8_t *geometrySpec + ** @returns xcb_xkb_get_kbd_by_name_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_cookie_t +xcb_xkb_get_kbd_by_name (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t need /**< */, + uint16_t want /**< */, + uint8_t load /**< */, + uint8_t keymapsSpecLen /**< */, + const xcb_xkb_string8_t *keymapsSpec /**< */, + uint8_t keycodesSpecLen /**< */, + const xcb_xkb_string8_t *keycodesSpec /**< */, + uint8_t typesSpecLen /**< */, + const xcb_xkb_string8_t *typesSpec /**< */, + uint8_t compatMapSpecLen /**< */, + const xcb_xkb_string8_t *compatMapSpec /**< */, + uint8_t symbolsSpecLen /**< */, + const xcb_xkb_string8_t *symbolsSpec /**< */, + uint8_t geometrySpecLen /**< */, + const xcb_xkb_string8_t *geometrySpec /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_cookie_t xcb_xkb_get_kbd_by_name_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t need + ** @param uint16_t want + ** @param uint8_t load + ** @param uint8_t keymapsSpecLen + ** @param const xcb_xkb_string8_t *keymapsSpec + ** @param uint8_t keycodesSpecLen + ** @param const xcb_xkb_string8_t *keycodesSpec + ** @param uint8_t typesSpecLen + ** @param const xcb_xkb_string8_t *typesSpec + ** @param uint8_t compatMapSpecLen + ** @param const xcb_xkb_string8_t *compatMapSpec + ** @param uint8_t symbolsSpecLen + ** @param const xcb_xkb_string8_t *symbolsSpec + ** @param uint8_t geometrySpecLen + ** @param const xcb_xkb_string8_t *geometrySpec + ** @returns xcb_xkb_get_kbd_by_name_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_cookie_t +xcb_xkb_get_kbd_by_name_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t need /**< */, + uint16_t want /**< */, + uint8_t load /**< */, + uint8_t keymapsSpecLen /**< */, + const xcb_xkb_string8_t *keymapsSpec /**< */, + uint8_t keycodesSpecLen /**< */, + const xcb_xkb_string8_t *keycodesSpec /**< */, + uint8_t typesSpecLen /**< */, + const xcb_xkb_string8_t *typesSpec /**< */, + uint8_t compatMapSpecLen /**< */, + const xcb_xkb_string8_t *compatMapSpec /**< */, + uint8_t symbolsSpecLen /**< */, + const xcb_xkb_string8_t *symbolsSpec /**< */, + uint8_t geometrySpecLen /**< */, + const xcb_xkb_string8_t *geometrySpec /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_replies_t * xcb_xkb_get_kbd_by_name_replies + ** + ** @param const xcb_xkb_get_kbd_by_name_reply_t *R + ** @returns xcb_xkb_get_kbd_by_name_replies_t * + ** + *****************************************************************************/ + +void * +xcb_xkb_get_kbd_by_name_replies (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_kbd_by_name_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_kbd_by_name_reply_t * xcb_xkb_get_kbd_by_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_kbd_by_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_kbd_by_name_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_kbd_by_name_reply_t * +xcb_xkb_get_kbd_by_name_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_kbd_by_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xkb_get_device_info_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_device_info_cookie_t xcb_xkb_get_device_info + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t wanted + ** @param uint8_t allButtons + ** @param uint8_t firstButton + ** @param uint8_t nButtons + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @returns xcb_xkb_get_device_info_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_device_info_cookie_t +xcb_xkb_get_device_info (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t wanted /**< */, + uint8_t allButtons /**< */, + uint8_t firstButton /**< */, + uint8_t nButtons /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_device_info_cookie_t xcb_xkb_get_device_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint16_t wanted + ** @param uint8_t allButtons + ** @param uint8_t firstButton + ** @param uint8_t nButtons + ** @param xcb_xkb_led_class_spec_t ledClass + ** @param xcb_xkb_id_spec_t ledID + ** @returns xcb_xkb_get_device_info_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_get_device_info_cookie_t +xcb_xkb_get_device_info_unchecked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint16_t wanted /**< */, + uint8_t allButtons /**< */, + uint8_t firstButton /**< */, + uint8_t nButtons /**< */, + xcb_xkb_led_class_spec_t ledClass /**< */, + xcb_xkb_id_spec_t ledID /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_string8_t * xcb_xkb_get_device_info_name + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_xkb_string8_t * + ** + *****************************************************************************/ + +xcb_xkb_string8_t * +xcb_xkb_get_device_info_name (const xcb_xkb_get_device_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_device_info_name_length + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_device_info_name_length (const xcb_xkb_get_device_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xkb_get_device_info_name_end + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xkb_get_device_info_name_end (const xcb_xkb_get_device_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_t * xcb_xkb_get_device_info_btn_actions + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_xkb_action_t * + ** + *****************************************************************************/ + +xcb_xkb_action_t * +xcb_xkb_get_device_info_btn_actions (const xcb_xkb_get_device_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_device_info_btn_actions_length + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_device_info_btn_actions_length (const xcb_xkb_get_device_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_action_iterator_t xcb_xkb_get_device_info_btn_actions_iterator + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_xkb_action_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_action_iterator_t +xcb_xkb_get_device_info_btn_actions_iterator (const xcb_xkb_get_device_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xkb_get_device_info_leds_length + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xkb_get_device_info_leds_length (const xcb_xkb_get_device_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xkb_device_led_info_iterator_t xcb_xkb_get_device_info_leds_iterator + ** + ** @param const xcb_xkb_get_device_info_reply_t *R + ** @returns xcb_xkb_device_led_info_iterator_t + ** + *****************************************************************************/ + +xcb_xkb_device_led_info_iterator_t +xcb_xkb_get_device_info_leds_iterator (const xcb_xkb_get_device_info_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_get_device_info_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_get_device_info_reply_t * xcb_xkb_get_device_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_get_device_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_get_device_info_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_get_device_info_reply_t * +xcb_xkb_get_device_info_reply (xcb_connection_t *c /**< */, + xcb_xkb_get_device_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xkb_set_device_info_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_device_info_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t firstBtn + ** @param uint8_t nBtns + ** @param uint16_t change + ** @param uint16_t nDeviceLedFBs + ** @param const xcb_xkb_action_t *btnActions + ** @param const xcb_xkb_device_led_info_t *leds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_device_info_checked (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t firstBtn /**< */, + uint8_t nBtns /**< */, + uint16_t change /**< */, + uint16_t nDeviceLedFBs /**< */, + const xcb_xkb_action_t *btnActions /**< */, + const xcb_xkb_device_led_info_t *leds /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xkb_set_device_info + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_device_spec_t deviceSpec + ** @param uint8_t firstBtn + ** @param uint8_t nBtns + ** @param uint16_t change + ** @param uint16_t nDeviceLedFBs + ** @param const xcb_xkb_action_t *btnActions + ** @param const xcb_xkb_device_led_info_t *leds + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xkb_set_device_info (xcb_connection_t *c /**< */, + xcb_xkb_device_spec_t deviceSpec /**< */, + uint8_t firstBtn /**< */, + uint8_t nBtns /**< */, + uint16_t change /**< */, + uint16_t nDeviceLedFBs /**< */, + const xcb_xkb_action_t *btnActions /**< */, + const xcb_xkb_device_led_info_t *leds /**< */); + +int +xcb_xkb_set_debugging_flags_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xkb_set_debugging_flags_cookie_t xcb_xkb_set_debugging_flags + ** + ** @param xcb_connection_t *c + ** @param uint16_t msgLength + ** @param uint32_t affectFlags + ** @param uint32_t flags + ** @param uint32_t affectCtrls + ** @param uint32_t ctrls + ** @param const xcb_xkb_string8_t *message + ** @returns xcb_xkb_set_debugging_flags_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_set_debugging_flags_cookie_t +xcb_xkb_set_debugging_flags (xcb_connection_t *c /**< */, + uint16_t msgLength /**< */, + uint32_t affectFlags /**< */, + uint32_t flags /**< */, + uint32_t affectCtrls /**< */, + uint32_t ctrls /**< */, + const xcb_xkb_string8_t *message /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xkb_set_debugging_flags_cookie_t xcb_xkb_set_debugging_flags_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t msgLength + ** @param uint32_t affectFlags + ** @param uint32_t flags + ** @param uint32_t affectCtrls + ** @param uint32_t ctrls + ** @param const xcb_xkb_string8_t *message + ** @returns xcb_xkb_set_debugging_flags_cookie_t + ** + *****************************************************************************/ + +xcb_xkb_set_debugging_flags_cookie_t +xcb_xkb_set_debugging_flags_unchecked (xcb_connection_t *c /**< */, + uint16_t msgLength /**< */, + uint32_t affectFlags /**< */, + uint32_t flags /**< */, + uint32_t affectCtrls /**< */, + uint32_t ctrls /**< */, + const xcb_xkb_string8_t *message /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xkb_set_debugging_flags_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xkb_set_debugging_flags_reply_t * xcb_xkb_set_debugging_flags_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xkb_set_debugging_flags_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xkb_set_debugging_flags_reply_t * + ** + *****************************************************************************/ + +xcb_xkb_set_debugging_flags_reply_t * +xcb_xkb_set_debugging_flags_reply (xcb_connection_t *c /**< */, + xcb_xkb_set_debugging_flags_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xprint.c b/external/mit/xorg/lib/libxcb/files/xprint.c new file mode 100644 index 000000000..5e8ffea1c --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xprint.c @@ -0,0 +1,3454 @@ +/* + * This file generated automatically from xprint.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xprint.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_x_print_id = { "XpExtension", 0 }; + + +/***************************************************************************** + ** + ** void xcb_x_print_string8_next + ** + ** @param xcb_x_print_string8_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_x_print_string8_next (xcb_x_print_string8_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_x_print_string8_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_string8_end + ** + ** @param xcb_x_print_string8_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_string8_end (xcb_x_print_string8_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_x_print_printer_serialize (void **_buffer /**< */, + const xcb_x_print_printer_t *_aux /**< */, + const xcb_x_print_string8_t *name /**< */, + const xcb_x_print_string8_t *description /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[5]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + /* xcb_x_print_printer_t.nameLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->nameLen; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* name */ + xcb_parts[xcb_parts_idx].iov_base = (char *) name; + xcb_block_len += _aux->nameLen * sizeof(xcb_x_print_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->nameLen * sizeof(xcb_x_print_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* xcb_x_print_printer_t.descLen */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->descLen; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* description */ + xcb_parts[xcb_parts_idx].iov_base = (char *) description; + xcb_block_len += _aux->descLen * sizeof(xcb_x_print_string8_t); + xcb_parts[xcb_parts_idx].iov_len = _aux->descLen * sizeof(xcb_x_print_string8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; inameLen; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_printer_name_end + ** + ** @param const xcb_x_print_printer_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_printer_name_end (const xcb_x_print_printer_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_x_print_string8_t *) (R + 1)) + (R->nameLen); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_x_print_string8_t * xcb_x_print_printer_description + ** + ** @param const xcb_x_print_printer_t *R + ** @returns xcb_x_print_string8_t * + ** + *****************************************************************************/ + +xcb_x_print_string8_t * +xcb_x_print_printer_description (const xcb_x_print_printer_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_x_print_printer_name_end(R); + return (xcb_x_print_string8_t *) ((char *) prev.data + XCB_TYPE_PAD(uint32_t, prev.index) + 4); +} + + +/***************************************************************************** + ** + ** int xcb_x_print_printer_description_length + ** + ** @param const xcb_x_print_printer_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_printer_description_length (const xcb_x_print_printer_t *R /**< */) +{ + return R->descLen; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_printer_description_end + ** + ** @param const xcb_x_print_printer_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_printer_description_end (const xcb_x_print_printer_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_x_print_printer_name_end(R); + i.data = ((xcb_x_print_string8_t *) child.data) + (R->descLen); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_x_print_printer_next + ** + ** @param xcb_x_print_printer_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_x_print_printer_next (xcb_x_print_printer_iterator_t *i /**< */) +{ + xcb_x_print_printer_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_x_print_printer_t *)(((char *)R) + xcb_x_print_printer_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_x_print_printer_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_printer_end + ** + ** @param xcb_x_print_printer_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_printer_end (xcb_x_print_printer_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_x_print_printer_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_x_print_pcontext_next + ** + ** @param xcb_x_print_pcontext_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_x_print_pcontext_next (xcb_x_print_pcontext_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_x_print_pcontext_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_pcontext_end + ** + ** @param xcb_x_print_pcontext_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_pcontext_end (xcb_x_print_pcontext_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_query_version_cookie_t xcb_x_print_print_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_query_version_cookie_t +xcb_x_print_print_query_version (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_query_version_cookie_t xcb_ret; + xcb_x_print_print_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_query_version_cookie_t xcb_x_print_print_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_query_version_cookie_t +xcb_x_print_print_query_version_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_query_version_cookie_t xcb_ret; + xcb_x_print_print_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_query_version_reply_t * xcb_x_print_print_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_query_version_reply_t * +xcb_x_print_print_query_version_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_x_print_print_get_printer_list_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_x_print_print_get_printer_list_request_t *_aux = (xcb_x_print_print_get_printer_list_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_x_print_print_get_printer_list_request_t); + xcb_tmp += xcb_block_len; + /* printer_name */ + xcb_block_len += _aux->printerNameLen * sizeof(xcb_x_print_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* locale */ + xcb_block_len += _aux->localeLen * sizeof(xcb_x_print_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_printer_list_cookie_t xcb_x_print_print_get_printer_list + ** + ** @param xcb_connection_t *c + ** @param uint32_t printerNameLen + ** @param uint32_t localeLen + ** @param const xcb_x_print_string8_t *printer_name + ** @param const xcb_x_print_string8_t *locale + ** @returns xcb_x_print_print_get_printer_list_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_printer_list_cookie_t +xcb_x_print_print_get_printer_list (xcb_connection_t *c /**< */, + uint32_t printerNameLen /**< */, + uint32_t localeLen /**< */, + const xcb_x_print_string8_t *printer_name /**< */, + const xcb_x_print_string8_t *locale /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_PRINTER_LIST, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[8]; + xcb_x_print_print_get_printer_list_cookie_t xcb_ret; + xcb_x_print_print_get_printer_list_request_t xcb_out; + + xcb_out.printerNameLen = printerNameLen; + xcb_out.localeLen = localeLen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_x_print_string8_t printer_name */ + xcb_parts[4].iov_base = (char *) printer_name; + xcb_parts[4].iov_len = printerNameLen * sizeof(xcb_x_print_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_x_print_string8_t locale */ + xcb_parts[6].iov_base = (char *) locale; + xcb_parts[6].iov_len = localeLen * sizeof(xcb_x_print_string8_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_printer_list_cookie_t xcb_x_print_print_get_printer_list_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t printerNameLen + ** @param uint32_t localeLen + ** @param const xcb_x_print_string8_t *printer_name + ** @param const xcb_x_print_string8_t *locale + ** @returns xcb_x_print_print_get_printer_list_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_printer_list_cookie_t +xcb_x_print_print_get_printer_list_unchecked (xcb_connection_t *c /**< */, + uint32_t printerNameLen /**< */, + uint32_t localeLen /**< */, + const xcb_x_print_string8_t *printer_name /**< */, + const xcb_x_print_string8_t *locale /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_PRINTER_LIST, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[8]; + xcb_x_print_print_get_printer_list_cookie_t xcb_ret; + xcb_x_print_print_get_printer_list_request_t xcb_out; + + xcb_out.printerNameLen = printerNameLen; + xcb_out.localeLen = localeLen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_x_print_string8_t printer_name */ + xcb_parts[4].iov_base = (char *) printer_name; + xcb_parts[4].iov_len = printerNameLen * sizeof(xcb_x_print_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_x_print_string8_t locale */ + xcb_parts[6].iov_base = (char *) locale; + xcb_parts[6].iov_len = localeLen * sizeof(xcb_x_print_string8_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_x_print_print_get_printer_list_printers_length + ** + ** @param const xcb_x_print_print_get_printer_list_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_get_printer_list_printers_length (const xcb_x_print_print_get_printer_list_reply_t *R /**< */) +{ + return R->listCount; +} + + +/***************************************************************************** + ** + ** xcb_x_print_printer_iterator_t xcb_x_print_print_get_printer_list_printers_iterator + ** + ** @param const xcb_x_print_print_get_printer_list_reply_t *R + ** @returns xcb_x_print_printer_iterator_t + ** + *****************************************************************************/ + +xcb_x_print_printer_iterator_t +xcb_x_print_print_get_printer_list_printers_iterator (const xcb_x_print_print_get_printer_list_reply_t *R /**< */) +{ + xcb_x_print_printer_iterator_t i; + i.data = (xcb_x_print_printer_t *) (R + 1); + i.rem = R->listCount; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_printer_list_reply_t * xcb_x_print_print_get_printer_list_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_printer_list_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_printer_list_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_printer_list_reply_t * +xcb_x_print_print_get_printer_list_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_printer_list_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + xcb_x_print_print_get_printer_list_reply_t *reply = (xcb_x_print_print_get_printer_list_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); + int i; + xcb_x_print_printer_iterator_t printers_iter = xcb_x_print_print_get_printer_list_printers_iterator(reply); + int printers_len = xcb_x_print_print_get_printer_list_printers_length(reply); + xcb_x_print_printer_t *printers_data; + /* special cases: transform parts of the reply to match XCB data structures */ + for(i=0; iprinterNameLen * sizeof(xcb_x_print_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* locale */ + xcb_block_len += _aux->localeLen * sizeof(xcb_x_print_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_id + ** @param uint32_t printerNameLen + ** @param uint32_t localeLen + ** @param const xcb_x_print_string8_t *printerName + ** @param const xcb_x_print_string8_t *locale + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_id /**< */, + uint32_t printerNameLen /**< */, + uint32_t localeLen /**< */, + const xcb_x_print_string8_t *printerName /**< */, + const xcb_x_print_string8_t *locale /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_create_context_request_t xcb_out; + + xcb_out.context_id = context_id; + xcb_out.printerNameLen = printerNameLen; + xcb_out.localeLen = localeLen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_x_print_string8_t printerName */ + xcb_parts[4].iov_base = (char *) printerName; + xcb_parts[4].iov_len = printerNameLen * sizeof(xcb_x_print_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_x_print_string8_t locale */ + xcb_parts[6].iov_base = (char *) locale; + xcb_parts[6].iov_len = localeLen * sizeof(xcb_x_print_string8_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_id + ** @param uint32_t printerNameLen + ** @param uint32_t localeLen + ** @param const xcb_x_print_string8_t *printerName + ** @param const xcb_x_print_string8_t *locale + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_create_context (xcb_connection_t *c /**< */, + uint32_t context_id /**< */, + uint32_t printerNameLen /**< */, + uint32_t localeLen /**< */, + const xcb_x_print_string8_t *printerName /**< */, + const xcb_x_print_string8_t *locale /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 6, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[8]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_create_context_request_t xcb_out; + + xcb_out.context_id = context_id; + xcb_out.printerNameLen = printerNameLen; + xcb_out.localeLen = localeLen; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_x_print_string8_t printerName */ + xcb_parts[4].iov_base = (char *) printerName; + xcb_parts[4].iov_len = printerNameLen * sizeof(xcb_x_print_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_x_print_string8_t locale */ + xcb_parts[6].iov_base = (char *) locale; + xcb_parts[6].iov_len = localeLen * sizeof(xcb_x_print_string8_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_set_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_set_context_checked (xcb_connection_t *c /**< */, + uint32_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_SET_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_set_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_set_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_set_context (xcb_connection_t *c /**< */, + uint32_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_SET_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_set_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_context_cookie_t xcb_x_print_print_get_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_get_context_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_context_cookie_t +xcb_x_print_print_get_context (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_context_cookie_t xcb_ret; + xcb_x_print_print_get_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_context_cookie_t xcb_x_print_print_get_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_get_context_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_context_cookie_t +xcb_x_print_print_get_context_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_context_cookie_t xcb_ret; + xcb_x_print_print_get_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_context_reply_t * xcb_x_print_print_get_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_context_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_context_reply_t * +xcb_x_print_print_get_context_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_get_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_destroy_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_destroy_context_checked (xcb_connection_t *c /**< */, + uint32_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_DESTROY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_destroy_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_destroy_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_destroy_context (xcb_connection_t *c /**< */, + uint32_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_DESTROY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_destroy_context_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_screen_of_context_cookie_t xcb_x_print_print_get_screen_of_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_get_screen_of_context_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_screen_of_context_cookie_t +xcb_x_print_print_get_screen_of_context (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_SCREEN_OF_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_screen_of_context_cookie_t xcb_ret; + xcb_x_print_print_get_screen_of_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_screen_of_context_cookie_t xcb_x_print_print_get_screen_of_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_get_screen_of_context_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_screen_of_context_cookie_t +xcb_x_print_print_get_screen_of_context_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_SCREEN_OF_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_screen_of_context_cookie_t xcb_ret; + xcb_x_print_print_get_screen_of_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_screen_of_context_reply_t * xcb_x_print_print_get_screen_of_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_screen_of_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_screen_of_context_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_screen_of_context_reply_t * +xcb_x_print_print_get_screen_of_context_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_screen_of_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_get_screen_of_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_job_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t output_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_job_checked (xcb_connection_t *c /**< */, + uint8_t output_mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_START_JOB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_start_job_request_t xcb_out; + + xcb_out.output_mode = output_mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_job + ** + ** @param xcb_connection_t *c + ** @param uint8_t output_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_job (xcb_connection_t *c /**< */, + uint8_t output_mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_START_JOB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_start_job_request_t xcb_out; + + xcb_out.output_mode = output_mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_job_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_job_checked (xcb_connection_t *c /**< */, + uint8_t cancel /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_END_JOB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_end_job_request_t xcb_out; + + xcb_out.cancel = cancel; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_job + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_job (xcb_connection_t *c /**< */, + uint8_t cancel /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_END_JOB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_end_job_request_t xcb_out; + + xcb_out.cancel = cancel; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_doc_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t driver_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_doc_checked (xcb_connection_t *c /**< */, + uint8_t driver_mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_START_DOC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_start_doc_request_t xcb_out; + + xcb_out.driver_mode = driver_mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_doc + ** + ** @param xcb_connection_t *c + ** @param uint8_t driver_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_doc (xcb_connection_t *c /**< */, + uint8_t driver_mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_START_DOC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_start_doc_request_t xcb_out; + + xcb_out.driver_mode = driver_mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_doc_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_doc_checked (xcb_connection_t *c /**< */, + uint8_t cancel /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_END_DOC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_end_doc_request_t xcb_out; + + xcb_out.cancel = cancel; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_doc + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_doc (xcb_connection_t *c /**< */, + uint8_t cancel /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_END_DOC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_end_doc_request_t xcb_out; + + xcb_out.cancel = cancel; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_x_print_print_put_document_data_sizeof (const void *_buffer /**< */, + uint32_t doc_format_len /**< */, + uint32_t options_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_x_print_print_put_document_data_request_t *_aux = (xcb_x_print_print_put_document_data_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_x_print_print_put_document_data_request_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->len_data * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* doc_format */ + xcb_block_len += doc_format_len * sizeof(xcb_x_print_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* options */ + xcb_block_len += options_len * sizeof(xcb_x_print_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_put_document_data_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t len_data + ** @param uint16_t len_fmt + ** @param uint16_t len_options + ** @param const uint8_t *data + ** @param uint32_t doc_format_len + ** @param const xcb_x_print_string8_t *doc_format + ** @param uint32_t options_len + ** @param const xcb_x_print_string8_t *options + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_put_document_data_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t len_data /**< */, + uint16_t len_fmt /**< */, + uint16_t len_options /**< */, + const uint8_t *data /**< */, + uint32_t doc_format_len /**< */, + const xcb_x_print_string8_t *doc_format /**< */, + uint32_t options_len /**< */, + const xcb_x_print_string8_t *options /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_PUT_DOCUMENT_DATA, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_put_document_data_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.len_data = len_data; + xcb_out.len_fmt = len_fmt; + xcb_out.len_options = len_options; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = len_data * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_x_print_string8_t doc_format */ + xcb_parts[6].iov_base = (char *) doc_format; + xcb_parts[6].iov_len = doc_format_len * sizeof(xcb_x_print_string8_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* xcb_x_print_string8_t options */ + xcb_parts[8].iov_base = (char *) options; + xcb_parts[8].iov_len = options_len * sizeof(xcb_x_print_string8_t); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_put_document_data + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t len_data + ** @param uint16_t len_fmt + ** @param uint16_t len_options + ** @param const uint8_t *data + ** @param uint32_t doc_format_len + ** @param const xcb_x_print_string8_t *doc_format + ** @param uint32_t options_len + ** @param const xcb_x_print_string8_t *options + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_put_document_data (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t len_data /**< */, + uint16_t len_fmt /**< */, + uint16_t len_options /**< */, + const uint8_t *data /**< */, + uint32_t doc_format_len /**< */, + const xcb_x_print_string8_t *doc_format /**< */, + uint32_t options_len /**< */, + const xcb_x_print_string8_t *options /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 8, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_PUT_DOCUMENT_DATA, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[10]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_put_document_data_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.len_data = len_data; + xcb_out.len_fmt = len_fmt; + xcb_out.len_options = len_options; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = len_data * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + /* xcb_x_print_string8_t doc_format */ + xcb_parts[6].iov_base = (char *) doc_format; + xcb_parts[6].iov_len = doc_format_len * sizeof(xcb_x_print_string8_t); + xcb_parts[7].iov_base = 0; + xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3; + /* xcb_x_print_string8_t options */ + xcb_parts[8].iov_base = (char *) options; + xcb_parts[8].iov_len = options_len * sizeof(xcb_x_print_string8_t); + xcb_parts[9].iov_base = 0; + xcb_parts[9].iov_len = -xcb_parts[8].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_x_print_print_get_document_data_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_x_print_print_get_document_data_reply_t *_aux = (xcb_x_print_print_get_document_data_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_x_print_print_get_document_data_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += _aux->dataLen * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_document_data_cookie_t xcb_x_print_print_get_document_data + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t max_bytes + ** @returns xcb_x_print_print_get_document_data_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_document_data_cookie_t +xcb_x_print_print_get_document_data (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t max_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_DOCUMENT_DATA, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_document_data_cookie_t xcb_ret; + xcb_x_print_print_get_document_data_request_t xcb_out; + + xcb_out.context = context; + xcb_out.max_bytes = max_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_document_data_cookie_t xcb_x_print_print_get_document_data_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t max_bytes + ** @returns xcb_x_print_print_get_document_data_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_document_data_cookie_t +xcb_x_print_print_get_document_data_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t max_bytes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_DOCUMENT_DATA, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_document_data_cookie_t xcb_ret; + xcb_x_print_print_get_document_data_request_t xcb_out; + + xcb_out.context = context; + xcb_out.max_bytes = max_bytes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_x_print_print_get_document_data_data + ** + ** @param const xcb_x_print_print_get_document_data_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_x_print_print_get_document_data_data (const xcb_x_print_print_get_document_data_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_x_print_print_get_document_data_data_length + ** + ** @param const xcb_x_print_print_get_document_data_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_get_document_data_data_length (const xcb_x_print_print_get_document_data_reply_t *R /**< */) +{ + return R->dataLen; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_get_document_data_data_end + ** + ** @param const xcb_x_print_print_get_document_data_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_get_document_data_data_end (const xcb_x_print_print_get_document_data_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + (R->dataLen); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_document_data_reply_t * xcb_x_print_print_get_document_data_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_document_data_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_document_data_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_document_data_reply_t * +xcb_x_print_print_get_document_data_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_document_data_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_get_document_data_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_page_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_page_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_START_PAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_start_page_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_page + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_page (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_START_PAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_start_page_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_page_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_page_checked (xcb_connection_t *c /**< */, + uint8_t cancel /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_END_PAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_end_page_request_t xcb_out; + + xcb_out.cancel = cancel; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_page + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_page (xcb_connection_t *c /**< */, + uint8_t cancel /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_END_PAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_end_page_request_t xcb_out; + + xcb_out.cancel = cancel; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_x_print_print_select_input_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_x_print_print_select_input_request_t *_aux = (xcb_x_print_print_select_input_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_x_print_print_select_input_request_t); + xcb_tmp += xcb_block_len; + /* event_list */ + xcb_block_len += xcb_popcount(_aux->event_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_select_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t event_mask + ** @param const uint32_t *event_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_select_input_checked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t event_mask /**< */, + const uint32_t *event_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_SELECT_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_select_input_request_t xcb_out; + + xcb_out.context = context; + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t event_list */ + xcb_parts[4].iov_base = (char *) event_list; + xcb_parts[4].iov_len = xcb_popcount(event_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_select_input + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t event_mask + ** @param const uint32_t *event_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_select_input (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t event_mask /**< */, + const uint32_t *event_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_SELECT_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_select_input_request_t xcb_out; + + xcb_out.context = context; + xcb_out.event_mask = event_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t event_list */ + xcb_parts[4].iov_base = (char *) event_list; + xcb_parts[4].iov_len = xcb_popcount(event_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_x_print_print_input_selected_serialize (void **_buffer /**< */, + const xcb_x_print_print_input_selected_reply_t *_aux /**< */, + const uint32_t *event_list /**< */, + const uint32_t *all_events_list /**< */) +{ + char *xcb_out = *_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_align_to; + + unsigned int xcb_pad = 0; + char xcb_pad0[3] = {0, 0, 0}; + struct iovec xcb_parts[6]; + unsigned int xcb_parts_idx = 0; + unsigned int xcb_block_len = 0; + unsigned int i; + char *xcb_tmp; + + /* xcb_x_print_print_input_selected_reply_t.pad0 */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad; + xcb_block_len += sizeof(uint8_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint8_t); + /* xcb_x_print_print_input_selected_reply_t.event_mask */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->event_mask; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* event_list */ + xcb_parts[xcb_parts_idx].iov_base = (char *) event_list; + xcb_block_len += xcb_popcount(_aux->event_mask) * sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(_aux->event_mask) * sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* xcb_x_print_print_input_selected_reply_t.all_events_mask */ + xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->all_events_mask; + xcb_block_len += sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* all_events_list */ + xcb_parts[xcb_parts_idx].iov_base = (char *) all_events_list; + xcb_block_len += xcb_popcount(_aux->all_events_mask) * sizeof(uint32_t); + xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(_aux->all_events_mask) * sizeof(uint32_t); + xcb_parts_idx++; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_parts[xcb_parts_idx].iov_base = xcb_pad0; + xcb_parts[xcb_parts_idx].iov_len = xcb_pad; + xcb_parts_idx++; + xcb_pad = 0; + } + xcb_block_len = 0; + + if (NULL == xcb_out) { + /* allocate memory */ + xcb_out = malloc(xcb_buffer_len); + *_buffer = xcb_out; + } + + xcb_tmp = xcb_out; + for(i=0; ievent_mask); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_input_selected_event_list_end + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_input_selected_event_list_end (const xcb_x_print_print_input_selected_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (xcb_popcount(R->event_mask)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_x_print_print_input_selected_all_events_list + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_x_print_print_input_selected_all_events_list (const xcb_x_print_print_input_selected_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_x_print_print_input_selected_event_list_end(R); + return (uint32_t *) ((char *) prev.data + XCB_TYPE_PAD(uint32_t, prev.index) + 4); +} + + +/***************************************************************************** + ** + ** int xcb_x_print_print_input_selected_all_events_list_length + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_input_selected_all_events_list_length (const xcb_x_print_print_input_selected_reply_t *R /**< */) +{ + return xcb_popcount(R->all_events_mask); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_input_selected_all_events_list_end + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_input_selected_all_events_list_end (const xcb_x_print_print_input_selected_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_x_print_print_input_selected_event_list_end(R); + i.data = ((uint32_t *) child.data) + (xcb_popcount(R->all_events_mask)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_input_selected_reply_t * xcb_x_print_print_input_selected_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_input_selected_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_input_selected_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_input_selected_reply_t * +xcb_x_print_print_input_selected_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_input_selected_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_input_selected_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_attributes_cookie_t xcb_x_print_print_get_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint8_t pool + ** @returns xcb_x_print_print_get_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_attributes_cookie_t +xcb_x_print_print_get_attributes (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint8_t pool /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_attributes_cookie_t xcb_ret; + xcb_x_print_print_get_attributes_request_t xcb_out; + + xcb_out.context = context; + xcb_out.pool = pool; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_attributes_cookie_t xcb_x_print_print_get_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint8_t pool + ** @returns xcb_x_print_print_get_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_attributes_cookie_t +xcb_x_print_print_get_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint8_t pool /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_attributes_cookie_t xcb_ret; + xcb_x_print_print_get_attributes_request_t xcb_out; + + xcb_out.context = context; + xcb_out.pool = pool; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_attributes_reply_t * xcb_x_print_print_get_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_attributes_reply_t * +xcb_x_print_print_get_attributes_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_get_attributes_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_x_print_print_get_one_attributes_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_x_print_print_get_one_attributes_request_t *_aux = (xcb_x_print_print_get_one_attributes_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_x_print_print_get_one_attributes_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->nameLen * sizeof(xcb_x_print_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_one_attributes_cookie_t xcb_x_print_print_get_one_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t nameLen + ** @param uint8_t pool + ** @param const xcb_x_print_string8_t *name + ** @returns xcb_x_print_print_get_one_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_one_attributes_cookie_t +xcb_x_print_print_get_one_attributes (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t nameLen /**< */, + uint8_t pool /**< */, + const xcb_x_print_string8_t *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_ONE_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_x_print_print_get_one_attributes_cookie_t xcb_ret; + xcb_x_print_print_get_one_attributes_request_t xcb_out; + + xcb_out.context = context; + xcb_out.nameLen = nameLen; + xcb_out.pool = pool; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_x_print_string8_t name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = nameLen * sizeof(xcb_x_print_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_one_attributes_cookie_t xcb_x_print_print_get_one_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t nameLen + ** @param uint8_t pool + ** @param const xcb_x_print_string8_t *name + ** @returns xcb_x_print_print_get_one_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_one_attributes_cookie_t +xcb_x_print_print_get_one_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t nameLen /**< */, + uint8_t pool /**< */, + const xcb_x_print_string8_t *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_ONE_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_x_print_print_get_one_attributes_cookie_t xcb_ret; + xcb_x_print_print_get_one_attributes_request_t xcb_out; + + xcb_out.context = context; + xcb_out.nameLen = nameLen; + xcb_out.pool = pool; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_x_print_string8_t name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = nameLen * sizeof(xcb_x_print_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_string8_t * xcb_x_print_print_get_one_attributes_value + ** + ** @param const xcb_x_print_print_get_one_attributes_reply_t *R + ** @returns xcb_x_print_string8_t * + ** + *****************************************************************************/ + +xcb_x_print_string8_t * +xcb_x_print_print_get_one_attributes_value (const xcb_x_print_print_get_one_attributes_reply_t *R /**< */) +{ + return (xcb_x_print_string8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_x_print_print_get_one_attributes_value_length + ** + ** @param const xcb_x_print_print_get_one_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_get_one_attributes_value_length (const xcb_x_print_print_get_one_attributes_reply_t *R /**< */) +{ + return R->valueLen; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_get_one_attributes_value_end + ** + ** @param const xcb_x_print_print_get_one_attributes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_get_one_attributes_value_end (const xcb_x_print_print_get_one_attributes_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_x_print_string8_t *) (R + 1)) + (R->valueLen); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_one_attributes_reply_t * xcb_x_print_print_get_one_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_one_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_one_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_one_attributes_reply_t * +xcb_x_print_print_get_one_attributes_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_one_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_get_one_attributes_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_x_print_print_set_attributes_sizeof (const void *_buffer /**< */, + uint32_t attributes_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_x_print_print_set_attributes_request_t); + xcb_tmp += xcb_block_len; + /* attributes */ + xcb_block_len += attributes_len * sizeof(xcb_x_print_string8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_x_print_string8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_set_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t stringLen + ** @param uint8_t pool + ** @param uint8_t rule + ** @param uint32_t attributes_len + ** @param const xcb_x_print_string8_t *attributes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_set_attributes_checked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t stringLen /**< */, + uint8_t pool /**< */, + uint8_t rule /**< */, + uint32_t attributes_len /**< */, + const xcb_x_print_string8_t *attributes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_SET_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_set_attributes_request_t xcb_out; + + xcb_out.context = context; + xcb_out.stringLen = stringLen; + xcb_out.pool = pool; + xcb_out.rule = rule; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_x_print_string8_t attributes */ + xcb_parts[4].iov_base = (char *) attributes; + xcb_parts[4].iov_len = attributes_len * sizeof(xcb_x_print_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_set_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t stringLen + ** @param uint8_t pool + ** @param uint8_t rule + ** @param uint32_t attributes_len + ** @param const xcb_x_print_string8_t *attributes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_set_attributes (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t stringLen /**< */, + uint8_t pool /**< */, + uint8_t rule /**< */, + uint32_t attributes_len /**< */, + const xcb_x_print_string8_t *attributes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_SET_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_x_print_print_set_attributes_request_t xcb_out; + + xcb_out.context = context; + xcb_out.stringLen = stringLen; + xcb_out.pool = pool; + xcb_out.rule = rule; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_x_print_string8_t attributes */ + xcb_parts[4].iov_base = (char *) attributes; + xcb_parts[4].iov_len = attributes_len * sizeof(xcb_x_print_string8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_page_dimensions_cookie_t xcb_x_print_print_get_page_dimensions + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_get_page_dimensions_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_page_dimensions_cookie_t +xcb_x_print_print_get_page_dimensions (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_PAGE_DIMENSIONS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_page_dimensions_cookie_t xcb_ret; + xcb_x_print_print_get_page_dimensions_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_page_dimensions_cookie_t xcb_x_print_print_get_page_dimensions_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_get_page_dimensions_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_page_dimensions_cookie_t +xcb_x_print_print_get_page_dimensions_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_PAGE_DIMENSIONS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_page_dimensions_cookie_t xcb_ret; + xcb_x_print_print_get_page_dimensions_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_page_dimensions_reply_t * xcb_x_print_print_get_page_dimensions_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_page_dimensions_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_page_dimensions_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_page_dimensions_reply_t * +xcb_x_print_print_get_page_dimensions_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_page_dimensions_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_get_page_dimensions_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_x_print_print_query_screens_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_x_print_print_query_screens_reply_t *_aux = (xcb_x_print_print_query_screens_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_x_print_print_query_screens_reply_t); + xcb_tmp += xcb_block_len; + /* roots */ + xcb_block_len += _aux->listCount * sizeof(xcb_window_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_window_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_query_screens_cookie_t xcb_x_print_print_query_screens + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_query_screens_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_query_screens_cookie_t +xcb_x_print_print_query_screens (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_QUERY_SCREENS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_query_screens_cookie_t xcb_ret; + xcb_x_print_print_query_screens_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_query_screens_cookie_t xcb_x_print_print_query_screens_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_query_screens_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_query_screens_cookie_t +xcb_x_print_print_query_screens_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_QUERY_SCREENS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_query_screens_cookie_t xcb_ret; + xcb_x_print_print_query_screens_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_window_t * xcb_x_print_print_query_screens_roots + ** + ** @param const xcb_x_print_print_query_screens_reply_t *R + ** @returns xcb_window_t * + ** + *****************************************************************************/ + +xcb_window_t * +xcb_x_print_print_query_screens_roots (const xcb_x_print_print_query_screens_reply_t *R /**< */) +{ + return (xcb_window_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_x_print_print_query_screens_roots_length + ** + ** @param const xcb_x_print_print_query_screens_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_query_screens_roots_length (const xcb_x_print_print_query_screens_reply_t *R /**< */) +{ + return R->listCount; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_query_screens_roots_end + ** + ** @param const xcb_x_print_print_query_screens_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_query_screens_roots_end (const xcb_x_print_print_query_screens_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_window_t *) (R + 1)) + (R->listCount); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_query_screens_reply_t * xcb_x_print_print_query_screens_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_query_screens_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_query_screens_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_query_screens_reply_t * +xcb_x_print_print_query_screens_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_query_screens_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_query_screens_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_set_image_resolution_cookie_t xcb_x_print_print_set_image_resolution + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint16_t image_resolution + ** @returns xcb_x_print_print_set_image_resolution_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_set_image_resolution_cookie_t +xcb_x_print_print_set_image_resolution (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint16_t image_resolution /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_SET_IMAGE_RESOLUTION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_set_image_resolution_cookie_t xcb_ret; + xcb_x_print_print_set_image_resolution_request_t xcb_out; + + xcb_out.context = context; + xcb_out.image_resolution = image_resolution; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_set_image_resolution_cookie_t xcb_x_print_print_set_image_resolution_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint16_t image_resolution + ** @returns xcb_x_print_print_set_image_resolution_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_set_image_resolution_cookie_t +xcb_x_print_print_set_image_resolution_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint16_t image_resolution /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_SET_IMAGE_RESOLUTION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_set_image_resolution_cookie_t xcb_ret; + xcb_x_print_print_set_image_resolution_request_t xcb_out; + + xcb_out.context = context; + xcb_out.image_resolution = image_resolution; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_set_image_resolution_reply_t * xcb_x_print_print_set_image_resolution_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_set_image_resolution_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_set_image_resolution_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_set_image_resolution_reply_t * +xcb_x_print_print_set_image_resolution_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_set_image_resolution_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_set_image_resolution_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_image_resolution_cookie_t xcb_x_print_print_get_image_resolution + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_get_image_resolution_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_image_resolution_cookie_t +xcb_x_print_print_get_image_resolution (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_IMAGE_RESOLUTION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_image_resolution_cookie_t xcb_ret; + xcb_x_print_print_get_image_resolution_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_image_resolution_cookie_t xcb_x_print_print_get_image_resolution_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_get_image_resolution_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_image_resolution_cookie_t +xcb_x_print_print_get_image_resolution_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_x_print_id, + /* opcode */ XCB_X_PRINT_PRINT_GET_IMAGE_RESOLUTION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_x_print_print_get_image_resolution_cookie_t xcb_ret; + xcb_x_print_print_get_image_resolution_request_t xcb_out; + + xcb_out.context = context; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_x_print_print_get_image_resolution_reply_t * xcb_x_print_print_get_image_resolution_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_image_resolution_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_image_resolution_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_image_resolution_reply_t * +xcb_x_print_print_get_image_resolution_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_image_resolution_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_x_print_print_get_image_resolution_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/xprint.h b/external/mit/xorg/lib/libxcb/files/xprint.h new file mode 100644 index 000000000..470642ffb --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xprint.h @@ -0,0 +1,2896 @@ +/* + * This file generated automatically from xprint.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_XPrint_API XCB XPrint API + * @brief XPrint XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XPRINT_H +#define __XPRINT_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_XPRINT_MAJOR_VERSION 1 +#define XCB_XPRINT_MINOR_VERSION 0 + +extern xcb_extension_t xcb_x_print_id; + +typedef char xcb_x_print_string8_t; + +/** + * @brief xcb_x_print_string8_iterator_t + **/ +typedef struct xcb_x_print_string8_iterator_t { + xcb_x_print_string8_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_x_print_string8_iterator_t; + +/** + * @brief xcb_x_print_printer_t + **/ +typedef struct xcb_x_print_printer_t { + uint32_t nameLen; /**< */ + uint32_t descLen; /**< */ +} xcb_x_print_printer_t; + +/** + * @brief xcb_x_print_printer_iterator_t + **/ +typedef struct xcb_x_print_printer_iterator_t { + xcb_x_print_printer_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_x_print_printer_iterator_t; + +typedef uint32_t xcb_x_print_pcontext_t; + +/** + * @brief xcb_x_print_pcontext_iterator_t + **/ +typedef struct xcb_x_print_pcontext_iterator_t { + xcb_x_print_pcontext_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_x_print_pcontext_iterator_t; + +typedef enum xcb_x_print_get_doc_t { + XCB_X_PRINT_GET_DOC_FINISHED = 0, + XCB_X_PRINT_GET_DOC_SECOND_CONSUMER = 1 +} xcb_x_print_get_doc_t; + +typedef enum xcb_x_print_ev_mask_t { + XCB_X_PRINT_EV_MASK_NO_EVENT_MASK = 0, + XCB_X_PRINT_EV_MASK_PRINT_MASK = 1, + XCB_X_PRINT_EV_MASK_ATTRIBUTE_MASK = 2 +} xcb_x_print_ev_mask_t; + +typedef enum xcb_x_print_detail_t { + XCB_X_PRINT_DETAIL_START_JOB_NOTIFY = 1, + XCB_X_PRINT_DETAIL_END_JOB_NOTIFY = 2, + XCB_X_PRINT_DETAIL_START_DOC_NOTIFY = 3, + XCB_X_PRINT_DETAIL_END_DOC_NOTIFY = 4, + XCB_X_PRINT_DETAIL_START_PAGE_NOTIFY = 5, + XCB_X_PRINT_DETAIL_END_PAGE_NOTIFY = 6 +} xcb_x_print_detail_t; + +typedef enum xcb_x_print_attr_t { + XCB_X_PRINT_ATTR_JOB_ATTR = 1, + XCB_X_PRINT_ATTR_DOC_ATTR = 2, + XCB_X_PRINT_ATTR_PAGE_ATTR = 3, + XCB_X_PRINT_ATTR_PRINTER_ATTR = 4, + XCB_X_PRINT_ATTR_SERVER_ATTR = 5, + XCB_X_PRINT_ATTR_MEDIUM_ATTR = 6, + XCB_X_PRINT_ATTR_SPOOLER_ATTR = 7 +} xcb_x_print_attr_t; + +/** + * @brief xcb_x_print_print_query_version_cookie_t + **/ +typedef struct xcb_x_print_print_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_query_version_cookie_t; + +/** Opcode for xcb_x_print_print_query_version. */ +#define XCB_X_PRINT_PRINT_QUERY_VERSION 0 + +/** + * @brief xcb_x_print_print_query_version_request_t + **/ +typedef struct xcb_x_print_print_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_x_print_print_query_version_request_t; + +/** + * @brief xcb_x_print_print_query_version_reply_t + **/ +typedef struct xcb_x_print_print_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t major_version; /**< */ + uint16_t minor_version; /**< */ +} xcb_x_print_print_query_version_reply_t; + +/** + * @brief xcb_x_print_print_get_printer_list_cookie_t + **/ +typedef struct xcb_x_print_print_get_printer_list_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_get_printer_list_cookie_t; + +/** Opcode for xcb_x_print_print_get_printer_list. */ +#define XCB_X_PRINT_PRINT_GET_PRINTER_LIST 1 + +/** + * @brief xcb_x_print_print_get_printer_list_request_t + **/ +typedef struct xcb_x_print_print_get_printer_list_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t printerNameLen; /**< */ + uint32_t localeLen; /**< */ +} xcb_x_print_print_get_printer_list_request_t; + +/** + * @brief xcb_x_print_print_get_printer_list_reply_t + **/ +typedef struct xcb_x_print_print_get_printer_list_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t listCount; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_x_print_print_get_printer_list_reply_t; + +/** Opcode for xcb_x_print_print_rehash_printer_list. */ +#define XCB_X_PRINT_PRINT_REHASH_PRINTER_LIST 20 + +/** + * @brief xcb_x_print_print_rehash_printer_list_request_t + **/ +typedef struct xcb_x_print_print_rehash_printer_list_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_x_print_print_rehash_printer_list_request_t; + +/** Opcode for xcb_x_print_create_context. */ +#define XCB_X_PRINT_CREATE_CONTEXT 2 + +/** + * @brief xcb_x_print_create_context_request_t + **/ +typedef struct xcb_x_print_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t context_id; /**< */ + uint32_t printerNameLen; /**< */ + uint32_t localeLen; /**< */ +} xcb_x_print_create_context_request_t; + +/** Opcode for xcb_x_print_print_set_context. */ +#define XCB_X_PRINT_PRINT_SET_CONTEXT 3 + +/** + * @brief xcb_x_print_print_set_context_request_t + **/ +typedef struct xcb_x_print_print_set_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t context; /**< */ +} xcb_x_print_print_set_context_request_t; + +/** + * @brief xcb_x_print_print_get_context_cookie_t + **/ +typedef struct xcb_x_print_print_get_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_get_context_cookie_t; + +/** Opcode for xcb_x_print_print_get_context. */ +#define XCB_X_PRINT_PRINT_GET_CONTEXT 4 + +/** + * @brief xcb_x_print_print_get_context_request_t + **/ +typedef struct xcb_x_print_print_get_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_x_print_print_get_context_request_t; + +/** + * @brief xcb_x_print_print_get_context_reply_t + **/ +typedef struct xcb_x_print_print_get_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context; /**< */ +} xcb_x_print_print_get_context_reply_t; + +/** Opcode for xcb_x_print_print_destroy_context. */ +#define XCB_X_PRINT_PRINT_DESTROY_CONTEXT 5 + +/** + * @brief xcb_x_print_print_destroy_context_request_t + **/ +typedef struct xcb_x_print_print_destroy_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t context; /**< */ +} xcb_x_print_print_destroy_context_request_t; + +/** + * @brief xcb_x_print_print_get_screen_of_context_cookie_t + **/ +typedef struct xcb_x_print_print_get_screen_of_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_get_screen_of_context_cookie_t; + +/** Opcode for xcb_x_print_print_get_screen_of_context. */ +#define XCB_X_PRINT_PRINT_GET_SCREEN_OF_CONTEXT 6 + +/** + * @brief xcb_x_print_print_get_screen_of_context_request_t + **/ +typedef struct xcb_x_print_print_get_screen_of_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_x_print_print_get_screen_of_context_request_t; + +/** + * @brief xcb_x_print_print_get_screen_of_context_reply_t + **/ +typedef struct xcb_x_print_print_get_screen_of_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t root; /**< */ +} xcb_x_print_print_get_screen_of_context_reply_t; + +/** Opcode for xcb_x_print_print_start_job. */ +#define XCB_X_PRINT_PRINT_START_JOB 7 + +/** + * @brief xcb_x_print_print_start_job_request_t + **/ +typedef struct xcb_x_print_print_start_job_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t output_mode; /**< */ +} xcb_x_print_print_start_job_request_t; + +/** Opcode for xcb_x_print_print_end_job. */ +#define XCB_X_PRINT_PRINT_END_JOB 8 + +/** + * @brief xcb_x_print_print_end_job_request_t + **/ +typedef struct xcb_x_print_print_end_job_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t cancel; /**< */ +} xcb_x_print_print_end_job_request_t; + +/** Opcode for xcb_x_print_print_start_doc. */ +#define XCB_X_PRINT_PRINT_START_DOC 9 + +/** + * @brief xcb_x_print_print_start_doc_request_t + **/ +typedef struct xcb_x_print_print_start_doc_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t driver_mode; /**< */ +} xcb_x_print_print_start_doc_request_t; + +/** Opcode for xcb_x_print_print_end_doc. */ +#define XCB_X_PRINT_PRINT_END_DOC 10 + +/** + * @brief xcb_x_print_print_end_doc_request_t + **/ +typedef struct xcb_x_print_print_end_doc_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t cancel; /**< */ +} xcb_x_print_print_end_doc_request_t; + +/** Opcode for xcb_x_print_print_put_document_data. */ +#define XCB_X_PRINT_PRINT_PUT_DOCUMENT_DATA 11 + +/** + * @brief xcb_x_print_print_put_document_data_request_t + **/ +typedef struct xcb_x_print_print_put_document_data_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t len_data; /**< */ + uint16_t len_fmt; /**< */ + uint16_t len_options; /**< */ +} xcb_x_print_print_put_document_data_request_t; + +/** + * @brief xcb_x_print_print_get_document_data_cookie_t + **/ +typedef struct xcb_x_print_print_get_document_data_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_get_document_data_cookie_t; + +/** Opcode for xcb_x_print_print_get_document_data. */ +#define XCB_X_PRINT_PRINT_GET_DOCUMENT_DATA 12 + +/** + * @brief xcb_x_print_print_get_document_data_request_t + **/ +typedef struct xcb_x_print_print_get_document_data_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_x_print_pcontext_t context; /**< */ + uint32_t max_bytes; /**< */ +} xcb_x_print_print_get_document_data_request_t; + +/** + * @brief xcb_x_print_print_get_document_data_reply_t + **/ +typedef struct xcb_x_print_print_get_document_data_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t status_code; /**< */ + uint32_t finished_flag; /**< */ + uint32_t dataLen; /**< */ + uint8_t pad1[12]; /**< */ +} xcb_x_print_print_get_document_data_reply_t; + +/** Opcode for xcb_x_print_print_start_page. */ +#define XCB_X_PRINT_PRINT_START_PAGE 13 + +/** + * @brief xcb_x_print_print_start_page_request_t + **/ +typedef struct xcb_x_print_print_start_page_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_x_print_print_start_page_request_t; + +/** Opcode for xcb_x_print_print_end_page. */ +#define XCB_X_PRINT_PRINT_END_PAGE 14 + +/** + * @brief xcb_x_print_print_end_page_request_t + **/ +typedef struct xcb_x_print_print_end_page_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t cancel; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_x_print_print_end_page_request_t; + +/** Opcode for xcb_x_print_print_select_input. */ +#define XCB_X_PRINT_PRINT_SELECT_INPUT 15 + +/** + * @brief xcb_x_print_print_select_input_request_t + **/ +typedef struct xcb_x_print_print_select_input_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_x_print_pcontext_t context; /**< */ + uint32_t event_mask; /**< */ +} xcb_x_print_print_select_input_request_t; + +/** + * @brief xcb_x_print_print_input_selected_cookie_t + **/ +typedef struct xcb_x_print_print_input_selected_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_input_selected_cookie_t; + +/** Opcode for xcb_x_print_print_input_selected. */ +#define XCB_X_PRINT_PRINT_INPUT_SELECTED 16 + +/** + * @brief xcb_x_print_print_input_selected_request_t + **/ +typedef struct xcb_x_print_print_input_selected_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_x_print_pcontext_t context; /**< */ +} xcb_x_print_print_input_selected_request_t; + +/** + * @brief xcb_x_print_print_input_selected_reply_t + **/ +typedef struct xcb_x_print_print_input_selected_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t event_mask; /**< */ + uint32_t all_events_mask; /**< */ +} xcb_x_print_print_input_selected_reply_t; + +/** + * @brief xcb_x_print_print_get_attributes_cookie_t + **/ +typedef struct xcb_x_print_print_get_attributes_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_get_attributes_cookie_t; + +/** Opcode for xcb_x_print_print_get_attributes. */ +#define XCB_X_PRINT_PRINT_GET_ATTRIBUTES 17 + +/** + * @brief xcb_x_print_print_get_attributes_request_t + **/ +typedef struct xcb_x_print_print_get_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_x_print_pcontext_t context; /**< */ + uint8_t pool; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_x_print_print_get_attributes_request_t; + +/** + * @brief xcb_x_print_print_get_attributes_reply_t + **/ +typedef struct xcb_x_print_print_get_attributes_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t stringLen; /**< */ + uint8_t pad1[20]; /**< */ + xcb_x_print_string8_t attributes; /**< */ +} xcb_x_print_print_get_attributes_reply_t; + +/** + * @brief xcb_x_print_print_get_one_attributes_cookie_t + **/ +typedef struct xcb_x_print_print_get_one_attributes_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_get_one_attributes_cookie_t; + +/** Opcode for xcb_x_print_print_get_one_attributes. */ +#define XCB_X_PRINT_PRINT_GET_ONE_ATTRIBUTES 19 + +/** + * @brief xcb_x_print_print_get_one_attributes_request_t + **/ +typedef struct xcb_x_print_print_get_one_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_x_print_pcontext_t context; /**< */ + uint32_t nameLen; /**< */ + uint8_t pool; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_x_print_print_get_one_attributes_request_t; + +/** + * @brief xcb_x_print_print_get_one_attributes_reply_t + **/ +typedef struct xcb_x_print_print_get_one_attributes_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t valueLen; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_x_print_print_get_one_attributes_reply_t; + +/** Opcode for xcb_x_print_print_set_attributes. */ +#define XCB_X_PRINT_PRINT_SET_ATTRIBUTES 18 + +/** + * @brief xcb_x_print_print_set_attributes_request_t + **/ +typedef struct xcb_x_print_print_set_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_x_print_pcontext_t context; /**< */ + uint32_t stringLen; /**< */ + uint8_t pool; /**< */ + uint8_t rule; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_x_print_print_set_attributes_request_t; + +/** + * @brief xcb_x_print_print_get_page_dimensions_cookie_t + **/ +typedef struct xcb_x_print_print_get_page_dimensions_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_get_page_dimensions_cookie_t; + +/** Opcode for xcb_x_print_print_get_page_dimensions. */ +#define XCB_X_PRINT_PRINT_GET_PAGE_DIMENSIONS 21 + +/** + * @brief xcb_x_print_print_get_page_dimensions_request_t + **/ +typedef struct xcb_x_print_print_get_page_dimensions_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_x_print_pcontext_t context; /**< */ +} xcb_x_print_print_get_page_dimensions_request_t; + +/** + * @brief xcb_x_print_print_get_page_dimensions_reply_t + **/ +typedef struct xcb_x_print_print_get_page_dimensions_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t offset_x; /**< */ + uint16_t offset_y; /**< */ + uint16_t reproducible_width; /**< */ + uint16_t reproducible_height; /**< */ +} xcb_x_print_print_get_page_dimensions_reply_t; + +/** + * @brief xcb_x_print_print_query_screens_cookie_t + **/ +typedef struct xcb_x_print_print_query_screens_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_query_screens_cookie_t; + +/** Opcode for xcb_x_print_print_query_screens. */ +#define XCB_X_PRINT_PRINT_QUERY_SCREENS 22 + +/** + * @brief xcb_x_print_print_query_screens_request_t + **/ +typedef struct xcb_x_print_print_query_screens_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_x_print_print_query_screens_request_t; + +/** + * @brief xcb_x_print_print_query_screens_reply_t + **/ +typedef struct xcb_x_print_print_query_screens_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t listCount; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_x_print_print_query_screens_reply_t; + +/** + * @brief xcb_x_print_print_set_image_resolution_cookie_t + **/ +typedef struct xcb_x_print_print_set_image_resolution_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_set_image_resolution_cookie_t; + +/** Opcode for xcb_x_print_print_set_image_resolution. */ +#define XCB_X_PRINT_PRINT_SET_IMAGE_RESOLUTION 23 + +/** + * @brief xcb_x_print_print_set_image_resolution_request_t + **/ +typedef struct xcb_x_print_print_set_image_resolution_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_x_print_pcontext_t context; /**< */ + uint16_t image_resolution; /**< */ +} xcb_x_print_print_set_image_resolution_request_t; + +/** + * @brief xcb_x_print_print_set_image_resolution_reply_t + **/ +typedef struct xcb_x_print_print_set_image_resolution_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t previous_resolutions; /**< */ +} xcb_x_print_print_set_image_resolution_reply_t; + +/** + * @brief xcb_x_print_print_get_image_resolution_cookie_t + **/ +typedef struct xcb_x_print_print_get_image_resolution_cookie_t { + unsigned int sequence; /**< */ +} xcb_x_print_print_get_image_resolution_cookie_t; + +/** Opcode for xcb_x_print_print_get_image_resolution. */ +#define XCB_X_PRINT_PRINT_GET_IMAGE_RESOLUTION 24 + +/** + * @brief xcb_x_print_print_get_image_resolution_request_t + **/ +typedef struct xcb_x_print_print_get_image_resolution_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_x_print_pcontext_t context; /**< */ +} xcb_x_print_print_get_image_resolution_request_t; + +/** + * @brief xcb_x_print_print_get_image_resolution_reply_t + **/ +typedef struct xcb_x_print_print_get_image_resolution_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t image_resolution; /**< */ +} xcb_x_print_print_get_image_resolution_reply_t; + +/** Opcode for xcb_x_print_notify. */ +#define XCB_X_PRINT_NOTIFY 0 + +/** + * @brief xcb_x_print_notify_event_t + **/ +typedef struct xcb_x_print_notify_event_t { + uint8_t response_type; /**< */ + uint8_t detail; /**< */ + uint16_t sequence; /**< */ + xcb_x_print_pcontext_t context; /**< */ + uint8_t cancel; /**< */ +} xcb_x_print_notify_event_t; + +/** Opcode for xcb_x_print_attribut_notify. */ +#define XCB_X_PRINT_ATTRIBUT_NOTIFY 1 + +/** + * @brief xcb_x_print_attribut_notify_event_t + **/ +typedef struct xcb_x_print_attribut_notify_event_t { + uint8_t response_type; /**< */ + uint8_t detail; /**< */ + uint16_t sequence; /**< */ + xcb_x_print_pcontext_t context; /**< */ +} xcb_x_print_attribut_notify_event_t; + +/** Opcode for xcb_x_print_bad_context. */ +#define XCB_X_PRINT_BAD_CONTEXT 0 + +/** + * @brief xcb_x_print_bad_context_error_t + **/ +typedef struct xcb_x_print_bad_context_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_x_print_bad_context_error_t; + +/** Opcode for xcb_x_print_bad_sequence. */ +#define XCB_X_PRINT_BAD_SEQUENCE 1 + +/** + * @brief xcb_x_print_bad_sequence_error_t + **/ +typedef struct xcb_x_print_bad_sequence_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_x_print_bad_sequence_error_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_x_print_string8_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_x_print_string8_t) + */ + +/***************************************************************************** + ** + ** void xcb_x_print_string8_next + ** + ** @param xcb_x_print_string8_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_x_print_string8_next (xcb_x_print_string8_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_x_print_string8_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_string8_end + ** + ** @param xcb_x_print_string8_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_string8_end (xcb_x_print_string8_iterator_t i /**< */); + +int +xcb_x_print_printer_serialize (void **_buffer /**< */, + const xcb_x_print_printer_t *_aux /**< */, + const xcb_x_print_string8_t *name /**< */, + const xcb_x_print_string8_t *description /**< */); + +int +xcb_x_print_printer_unserialize (const void *_buffer /**< */, + xcb_x_print_printer_t **_aux /**< */); + +int +xcb_x_print_printer_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_x_print_string8_t * xcb_x_print_printer_name + ** + ** @param const xcb_x_print_printer_t *R + ** @returns xcb_x_print_string8_t * + ** + *****************************************************************************/ + +xcb_x_print_string8_t * +xcb_x_print_printer_name (const xcb_x_print_printer_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_x_print_printer_name_length + ** + ** @param const xcb_x_print_printer_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_printer_name_length (const xcb_x_print_printer_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_printer_name_end + ** + ** @param const xcb_x_print_printer_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_printer_name_end (const xcb_x_print_printer_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_x_print_string8_t * xcb_x_print_printer_description + ** + ** @param const xcb_x_print_printer_t *R + ** @returns xcb_x_print_string8_t * + ** + *****************************************************************************/ + +xcb_x_print_string8_t * +xcb_x_print_printer_description (const xcb_x_print_printer_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_x_print_printer_description_length + ** + ** @param const xcb_x_print_printer_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_printer_description_length (const xcb_x_print_printer_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_printer_description_end + ** + ** @param const xcb_x_print_printer_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_printer_description_end (const xcb_x_print_printer_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_x_print_printer_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_x_print_printer_t) + */ + +/***************************************************************************** + ** + ** void xcb_x_print_printer_next + ** + ** @param xcb_x_print_printer_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_x_print_printer_next (xcb_x_print_printer_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_x_print_printer_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_printer_end + ** + ** @param xcb_x_print_printer_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_printer_end (xcb_x_print_printer_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_x_print_pcontext_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_x_print_pcontext_t) + */ + +/***************************************************************************** + ** + ** void xcb_x_print_pcontext_next + ** + ** @param xcb_x_print_pcontext_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_x_print_pcontext_next (xcb_x_print_pcontext_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_x_print_pcontext_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_pcontext_end + ** + ** @param xcb_x_print_pcontext_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_pcontext_end (xcb_x_print_pcontext_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_query_version_cookie_t xcb_x_print_print_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_query_version_cookie_t +xcb_x_print_print_query_version (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_query_version_cookie_t xcb_x_print_print_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_query_version_cookie_t +xcb_x_print_print_query_version_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_query_version_reply_t * xcb_x_print_print_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_query_version_reply_t * +xcb_x_print_print_query_version_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_x_print_print_get_printer_list_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_printer_list_cookie_t xcb_x_print_print_get_printer_list + ** + ** @param xcb_connection_t *c + ** @param uint32_t printerNameLen + ** @param uint32_t localeLen + ** @param const xcb_x_print_string8_t *printer_name + ** @param const xcb_x_print_string8_t *locale + ** @returns xcb_x_print_print_get_printer_list_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_printer_list_cookie_t +xcb_x_print_print_get_printer_list (xcb_connection_t *c /**< */, + uint32_t printerNameLen /**< */, + uint32_t localeLen /**< */, + const xcb_x_print_string8_t *printer_name /**< */, + const xcb_x_print_string8_t *locale /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_printer_list_cookie_t xcb_x_print_print_get_printer_list_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t printerNameLen + ** @param uint32_t localeLen + ** @param const xcb_x_print_string8_t *printer_name + ** @param const xcb_x_print_string8_t *locale + ** @returns xcb_x_print_print_get_printer_list_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_printer_list_cookie_t +xcb_x_print_print_get_printer_list_unchecked (xcb_connection_t *c /**< */, + uint32_t printerNameLen /**< */, + uint32_t localeLen /**< */, + const xcb_x_print_string8_t *printer_name /**< */, + const xcb_x_print_string8_t *locale /**< */); + + +/***************************************************************************** + ** + ** int xcb_x_print_print_get_printer_list_printers_length + ** + ** @param const xcb_x_print_print_get_printer_list_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_get_printer_list_printers_length (const xcb_x_print_print_get_printer_list_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_x_print_printer_iterator_t xcb_x_print_print_get_printer_list_printers_iterator + ** + ** @param const xcb_x_print_print_get_printer_list_reply_t *R + ** @returns xcb_x_print_printer_iterator_t + ** + *****************************************************************************/ + +xcb_x_print_printer_iterator_t +xcb_x_print_print_get_printer_list_printers_iterator (const xcb_x_print_print_get_printer_list_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_get_printer_list_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_printer_list_reply_t * xcb_x_print_print_get_printer_list_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_printer_list_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_printer_list_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_printer_list_reply_t * +xcb_x_print_print_get_printer_list_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_printer_list_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_rehash_printer_list_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_rehash_printer_list_checked (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_rehash_printer_list + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_rehash_printer_list (xcb_connection_t *c /**< */); + +int +xcb_x_print_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_id + ** @param uint32_t printerNameLen + ** @param uint32_t localeLen + ** @param const xcb_x_print_string8_t *printerName + ** @param const xcb_x_print_string8_t *locale + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_id /**< */, + uint32_t printerNameLen /**< */, + uint32_t localeLen /**< */, + const xcb_x_print_string8_t *printerName /**< */, + const xcb_x_print_string8_t *locale /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_id + ** @param uint32_t printerNameLen + ** @param uint32_t localeLen + ** @param const xcb_x_print_string8_t *printerName + ** @param const xcb_x_print_string8_t *locale + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_create_context (xcb_connection_t *c /**< */, + uint32_t context_id /**< */, + uint32_t printerNameLen /**< */, + uint32_t localeLen /**< */, + const xcb_x_print_string8_t *printerName /**< */, + const xcb_x_print_string8_t *locale /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_set_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_set_context_checked (xcb_connection_t *c /**< */, + uint32_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_set_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_set_context (xcb_connection_t *c /**< */, + uint32_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_context_cookie_t xcb_x_print_print_get_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_get_context_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_context_cookie_t +xcb_x_print_print_get_context (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_context_cookie_t xcb_x_print_print_get_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_get_context_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_context_cookie_t +xcb_x_print_print_get_context_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_get_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_context_reply_t * xcb_x_print_print_get_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_context_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_context_reply_t * +xcb_x_print_print_get_context_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_destroy_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_destroy_context_checked (xcb_connection_t *c /**< */, + uint32_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_destroy_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_destroy_context (xcb_connection_t *c /**< */, + uint32_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_screen_of_context_cookie_t xcb_x_print_print_get_screen_of_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_get_screen_of_context_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_screen_of_context_cookie_t +xcb_x_print_print_get_screen_of_context (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_screen_of_context_cookie_t xcb_x_print_print_get_screen_of_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_get_screen_of_context_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_screen_of_context_cookie_t +xcb_x_print_print_get_screen_of_context_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_get_screen_of_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_screen_of_context_reply_t * xcb_x_print_print_get_screen_of_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_screen_of_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_screen_of_context_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_screen_of_context_reply_t * +xcb_x_print_print_get_screen_of_context_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_screen_of_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_job_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t output_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_job_checked (xcb_connection_t *c /**< */, + uint8_t output_mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_job + ** + ** @param xcb_connection_t *c + ** @param uint8_t output_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_job (xcb_connection_t *c /**< */, + uint8_t output_mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_job_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_job_checked (xcb_connection_t *c /**< */, + uint8_t cancel /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_job + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_job (xcb_connection_t *c /**< */, + uint8_t cancel /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_doc_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t driver_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_doc_checked (xcb_connection_t *c /**< */, + uint8_t driver_mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_doc + ** + ** @param xcb_connection_t *c + ** @param uint8_t driver_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_doc (xcb_connection_t *c /**< */, + uint8_t driver_mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_doc_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_doc_checked (xcb_connection_t *c /**< */, + uint8_t cancel /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_doc + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_doc (xcb_connection_t *c /**< */, + uint8_t cancel /**< */); + +int +xcb_x_print_print_put_document_data_sizeof (const void *_buffer /**< */, + uint32_t doc_format_len /**< */, + uint32_t options_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_put_document_data_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t len_data + ** @param uint16_t len_fmt + ** @param uint16_t len_options + ** @param const uint8_t *data + ** @param uint32_t doc_format_len + ** @param const xcb_x_print_string8_t *doc_format + ** @param uint32_t options_len + ** @param const xcb_x_print_string8_t *options + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_put_document_data_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t len_data /**< */, + uint16_t len_fmt /**< */, + uint16_t len_options /**< */, + const uint8_t *data /**< */, + uint32_t doc_format_len /**< */, + const xcb_x_print_string8_t *doc_format /**< */, + uint32_t options_len /**< */, + const xcb_x_print_string8_t *options /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_put_document_data + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint32_t len_data + ** @param uint16_t len_fmt + ** @param uint16_t len_options + ** @param const uint8_t *data + ** @param uint32_t doc_format_len + ** @param const xcb_x_print_string8_t *doc_format + ** @param uint32_t options_len + ** @param const xcb_x_print_string8_t *options + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_put_document_data (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint32_t len_data /**< */, + uint16_t len_fmt /**< */, + uint16_t len_options /**< */, + const uint8_t *data /**< */, + uint32_t doc_format_len /**< */, + const xcb_x_print_string8_t *doc_format /**< */, + uint32_t options_len /**< */, + const xcb_x_print_string8_t *options /**< */); + +int +xcb_x_print_print_get_document_data_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_document_data_cookie_t xcb_x_print_print_get_document_data + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t max_bytes + ** @returns xcb_x_print_print_get_document_data_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_document_data_cookie_t +xcb_x_print_print_get_document_data (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t max_bytes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_document_data_cookie_t xcb_x_print_print_get_document_data_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t max_bytes + ** @returns xcb_x_print_print_get_document_data_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_document_data_cookie_t +xcb_x_print_print_get_document_data_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t max_bytes /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_x_print_print_get_document_data_data + ** + ** @param const xcb_x_print_print_get_document_data_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_x_print_print_get_document_data_data (const xcb_x_print_print_get_document_data_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_x_print_print_get_document_data_data_length + ** + ** @param const xcb_x_print_print_get_document_data_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_get_document_data_data_length (const xcb_x_print_print_get_document_data_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_get_document_data_data_end + ** + ** @param const xcb_x_print_print_get_document_data_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_get_document_data_data_end (const xcb_x_print_print_get_document_data_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_get_document_data_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_document_data_reply_t * xcb_x_print_print_get_document_data_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_document_data_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_document_data_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_document_data_reply_t * +xcb_x_print_print_get_document_data_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_document_data_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_page_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_page_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_start_page + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_start_page (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_page_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_page_checked (xcb_connection_t *c /**< */, + uint8_t cancel /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_end_page + ** + ** @param xcb_connection_t *c + ** @param uint8_t cancel + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_end_page (xcb_connection_t *c /**< */, + uint8_t cancel /**< */); + +int +xcb_x_print_print_select_input_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_select_input_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t event_mask + ** @param const uint32_t *event_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_select_input_checked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t event_mask /**< */, + const uint32_t *event_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_select_input + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t event_mask + ** @param const uint32_t *event_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_select_input (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t event_mask /**< */, + const uint32_t *event_list /**< */); + +int +xcb_x_print_print_input_selected_serialize (void **_buffer /**< */, + const xcb_x_print_print_input_selected_reply_t *_aux /**< */, + const uint32_t *event_list /**< */, + const uint32_t *all_events_list /**< */); + +int +xcb_x_print_print_input_selected_unserialize (const void *_buffer /**< */, + xcb_x_print_print_input_selected_reply_t **_aux /**< */); + +int +xcb_x_print_print_input_selected_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_input_selected_cookie_t xcb_x_print_print_input_selected + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_input_selected_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_input_selected_cookie_t +xcb_x_print_print_input_selected (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_input_selected_cookie_t xcb_x_print_print_input_selected_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_input_selected_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_input_selected_cookie_t +xcb_x_print_print_input_selected_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_x_print_print_input_selected_event_list + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_x_print_print_input_selected_event_list (const xcb_x_print_print_input_selected_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_x_print_print_input_selected_event_list_length + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_input_selected_event_list_length (const xcb_x_print_print_input_selected_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_input_selected_event_list_end + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_input_selected_event_list_end (const xcb_x_print_print_input_selected_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_x_print_print_input_selected_all_events_list + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_x_print_print_input_selected_all_events_list (const xcb_x_print_print_input_selected_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_x_print_print_input_selected_all_events_list_length + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_input_selected_all_events_list_length (const xcb_x_print_print_input_selected_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_input_selected_all_events_list_end + ** + ** @param const xcb_x_print_print_input_selected_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_input_selected_all_events_list_end (const xcb_x_print_print_input_selected_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_input_selected_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_input_selected_reply_t * xcb_x_print_print_input_selected_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_input_selected_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_input_selected_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_input_selected_reply_t * +xcb_x_print_print_input_selected_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_input_selected_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_attributes_cookie_t xcb_x_print_print_get_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint8_t pool + ** @returns xcb_x_print_print_get_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_attributes_cookie_t +xcb_x_print_print_get_attributes (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint8_t pool /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_attributes_cookie_t xcb_x_print_print_get_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint8_t pool + ** @returns xcb_x_print_print_get_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_attributes_cookie_t +xcb_x_print_print_get_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint8_t pool /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_get_attributes_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_attributes_reply_t * xcb_x_print_print_get_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_attributes_reply_t * +xcb_x_print_print_get_attributes_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_x_print_print_get_one_attributes_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_one_attributes_cookie_t xcb_x_print_print_get_one_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t nameLen + ** @param uint8_t pool + ** @param const xcb_x_print_string8_t *name + ** @returns xcb_x_print_print_get_one_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_one_attributes_cookie_t +xcb_x_print_print_get_one_attributes (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t nameLen /**< */, + uint8_t pool /**< */, + const xcb_x_print_string8_t *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_one_attributes_cookie_t xcb_x_print_print_get_one_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t nameLen + ** @param uint8_t pool + ** @param const xcb_x_print_string8_t *name + ** @returns xcb_x_print_print_get_one_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_one_attributes_cookie_t +xcb_x_print_print_get_one_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t nameLen /**< */, + uint8_t pool /**< */, + const xcb_x_print_string8_t *name /**< */); + + +/***************************************************************************** + ** + ** xcb_x_print_string8_t * xcb_x_print_print_get_one_attributes_value + ** + ** @param const xcb_x_print_print_get_one_attributes_reply_t *R + ** @returns xcb_x_print_string8_t * + ** + *****************************************************************************/ + +xcb_x_print_string8_t * +xcb_x_print_print_get_one_attributes_value (const xcb_x_print_print_get_one_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_x_print_print_get_one_attributes_value_length + ** + ** @param const xcb_x_print_print_get_one_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_get_one_attributes_value_length (const xcb_x_print_print_get_one_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_get_one_attributes_value_end + ** + ** @param const xcb_x_print_print_get_one_attributes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_get_one_attributes_value_end (const xcb_x_print_print_get_one_attributes_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_get_one_attributes_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_one_attributes_reply_t * xcb_x_print_print_get_one_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_one_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_one_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_one_attributes_reply_t * +xcb_x_print_print_get_one_attributes_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_one_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_x_print_print_set_attributes_sizeof (const void *_buffer /**< */, + uint32_t attributes_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_set_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t stringLen + ** @param uint8_t pool + ** @param uint8_t rule + ** @param uint32_t attributes_len + ** @param const xcb_x_print_string8_t *attributes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_set_attributes_checked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t stringLen /**< */, + uint8_t pool /**< */, + uint8_t rule /**< */, + uint32_t attributes_len /**< */, + const xcb_x_print_string8_t *attributes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_x_print_print_set_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint32_t stringLen + ** @param uint8_t pool + ** @param uint8_t rule + ** @param uint32_t attributes_len + ** @param const xcb_x_print_string8_t *attributes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_x_print_print_set_attributes (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint32_t stringLen /**< */, + uint8_t pool /**< */, + uint8_t rule /**< */, + uint32_t attributes_len /**< */, + const xcb_x_print_string8_t *attributes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_page_dimensions_cookie_t xcb_x_print_print_get_page_dimensions + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_get_page_dimensions_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_page_dimensions_cookie_t +xcb_x_print_print_get_page_dimensions (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_page_dimensions_cookie_t xcb_x_print_print_get_page_dimensions_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_get_page_dimensions_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_page_dimensions_cookie_t +xcb_x_print_print_get_page_dimensions_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_get_page_dimensions_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_page_dimensions_reply_t * xcb_x_print_print_get_page_dimensions_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_page_dimensions_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_page_dimensions_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_page_dimensions_reply_t * +xcb_x_print_print_get_page_dimensions_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_page_dimensions_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_x_print_print_query_screens_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_query_screens_cookie_t xcb_x_print_print_query_screens + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_query_screens_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_query_screens_cookie_t +xcb_x_print_print_query_screens (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_query_screens_cookie_t xcb_x_print_print_query_screens_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_x_print_print_query_screens_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_query_screens_cookie_t +xcb_x_print_print_query_screens_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** xcb_window_t * xcb_x_print_print_query_screens_roots + ** + ** @param const xcb_x_print_print_query_screens_reply_t *R + ** @returns xcb_window_t * + ** + *****************************************************************************/ + +xcb_window_t * +xcb_x_print_print_query_screens_roots (const xcb_x_print_print_query_screens_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_x_print_print_query_screens_roots_length + ** + ** @param const xcb_x_print_print_query_screens_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_x_print_print_query_screens_roots_length (const xcb_x_print_print_query_screens_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_x_print_print_query_screens_roots_end + ** + ** @param const xcb_x_print_print_query_screens_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_x_print_print_query_screens_roots_end (const xcb_x_print_print_query_screens_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_query_screens_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_query_screens_reply_t * xcb_x_print_print_query_screens_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_query_screens_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_query_screens_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_query_screens_reply_t * +xcb_x_print_print_query_screens_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_query_screens_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_set_image_resolution_cookie_t xcb_x_print_print_set_image_resolution + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint16_t image_resolution + ** @returns xcb_x_print_print_set_image_resolution_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_set_image_resolution_cookie_t +xcb_x_print_print_set_image_resolution (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint16_t image_resolution /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_set_image_resolution_cookie_t xcb_x_print_print_set_image_resolution_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @param uint16_t image_resolution + ** @returns xcb_x_print_print_set_image_resolution_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_set_image_resolution_cookie_t +xcb_x_print_print_set_image_resolution_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */, + uint16_t image_resolution /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_set_image_resolution_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_set_image_resolution_reply_t * xcb_x_print_print_set_image_resolution_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_set_image_resolution_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_set_image_resolution_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_set_image_resolution_reply_t * +xcb_x_print_print_set_image_resolution_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_set_image_resolution_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_image_resolution_cookie_t xcb_x_print_print_get_image_resolution + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_get_image_resolution_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_image_resolution_cookie_t +xcb_x_print_print_get_image_resolution (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_image_resolution_cookie_t xcb_x_print_print_get_image_resolution_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_pcontext_t context + ** @returns xcb_x_print_print_get_image_resolution_cookie_t + ** + *****************************************************************************/ + +xcb_x_print_print_get_image_resolution_cookie_t +xcb_x_print_print_get_image_resolution_unchecked (xcb_connection_t *c /**< */, + xcb_x_print_pcontext_t context /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_x_print_print_get_image_resolution_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_x_print_print_get_image_resolution_reply_t * xcb_x_print_print_get_image_resolution_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_x_print_print_get_image_resolution_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_x_print_print_get_image_resolution_reply_t * + ** + *****************************************************************************/ + +xcb_x_print_print_get_image_resolution_reply_t * +xcb_x_print_print_get_image_resolution_reply (xcb_connection_t *c /**< */, + xcb_x_print_print_get_image_resolution_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xproto.c b/external/mit/xorg/lib/libxcb/files/xproto.c new file mode 100644 index 000000000..499f8c7c5 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xproto.c @@ -0,0 +1,16770 @@ +/* + * This file generated automatically from xproto.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xproto.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) + + +/***************************************************************************** + ** + ** void xcb_char2b_next + ** + ** @param xcb_char2b_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_char2b_next (xcb_char2b_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_char2b_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_char2b_end + ** + ** @param xcb_char2b_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_char2b_end (xcb_char2b_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_window_next + ** + ** @param xcb_window_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_window_next (xcb_window_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_window_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_window_end + ** + ** @param xcb_window_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_window_end (xcb_window_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_pixmap_next + ** + ** @param xcb_pixmap_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_pixmap_next (xcb_pixmap_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_pixmap_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_pixmap_end + ** + ** @param xcb_pixmap_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_pixmap_end (xcb_pixmap_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_cursor_next + ** + ** @param xcb_cursor_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_cursor_next (xcb_cursor_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_cursor_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_cursor_end + ** + ** @param xcb_cursor_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_cursor_end (xcb_cursor_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_font_next + ** + ** @param xcb_font_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_font_next (xcb_font_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_font_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_font_end + ** + ** @param xcb_font_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_font_end (xcb_font_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_gcontext_next + ** + ** @param xcb_gcontext_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_gcontext_next (xcb_gcontext_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_gcontext_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_gcontext_end + ** + ** @param xcb_gcontext_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_gcontext_end (xcb_gcontext_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_colormap_next + ** + ** @param xcb_colormap_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_colormap_next (xcb_colormap_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_colormap_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_colormap_end + ** + ** @param xcb_colormap_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_colormap_end (xcb_colormap_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_atom_next + ** + ** @param xcb_atom_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_atom_next (xcb_atom_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_atom_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_atom_end + ** + ** @param xcb_atom_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_atom_end (xcb_atom_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_drawable_next + ** + ** @param xcb_drawable_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_drawable_next (xcb_drawable_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_drawable_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_drawable_end + ** + ** @param xcb_drawable_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_drawable_end (xcb_drawable_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_fontable_next + ** + ** @param xcb_fontable_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_fontable_next (xcb_fontable_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_fontable_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_fontable_end + ** + ** @param xcb_fontable_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_fontable_end (xcb_fontable_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_visualid_next + ** + ** @param xcb_visualid_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_visualid_next (xcb_visualid_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_visualid_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_visualid_end + ** + ** @param xcb_visualid_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_visualid_end (xcb_visualid_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_timestamp_next + ** + ** @param xcb_timestamp_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_timestamp_next (xcb_timestamp_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_timestamp_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_timestamp_end + ** + ** @param xcb_timestamp_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_timestamp_end (xcb_timestamp_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_keysym_next + ** + ** @param xcb_keysym_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_keysym_next (xcb_keysym_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_keysym_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_keysym_end + ** + ** @param xcb_keysym_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_keysym_end (xcb_keysym_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_keycode_next + ** + ** @param xcb_keycode_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_keycode_next (xcb_keycode_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_keycode_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_keycode_end + ** + ** @param xcb_keycode_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_keycode_end (xcb_keycode_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_button_next + ** + ** @param xcb_button_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_button_next (xcb_button_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_button_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_button_end + ** + ** @param xcb_button_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_button_end (xcb_button_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_point_next + ** + ** @param xcb_point_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_point_next (xcb_point_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_point_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_point_end + ** + ** @param xcb_point_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_point_end (xcb_point_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_rectangle_next + ** + ** @param xcb_rectangle_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_rectangle_next (xcb_rectangle_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_rectangle_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_rectangle_end + ** + ** @param xcb_rectangle_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_rectangle_end (xcb_rectangle_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_arc_next + ** + ** @param xcb_arc_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_arc_next (xcb_arc_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_arc_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_arc_end + ** + ** @param xcb_arc_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_arc_end (xcb_arc_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_format_next + ** + ** @param xcb_format_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_format_next (xcb_format_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_format_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_format_end + ** + ** @param xcb_format_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_format_end (xcb_format_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_visualtype_next + ** + ** @param xcb_visualtype_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_visualtype_next (xcb_visualtype_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_visualtype_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_visualtype_end + ** + ** @param xcb_visualtype_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_visualtype_end (xcb_visualtype_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_depth_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_depth_t *_aux = (xcb_depth_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_depth_t); + xcb_tmp += xcb_block_len; + /* visuals */ + xcb_block_len += _aux->visuals_len * sizeof(xcb_visualtype_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_visualtype_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_visualtype_t * xcb_depth_visuals + ** + ** @param const xcb_depth_t *R + ** @returns xcb_visualtype_t * + ** + *****************************************************************************/ + +xcb_visualtype_t * +xcb_depth_visuals (const xcb_depth_t *R /**< */) +{ + return (xcb_visualtype_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_depth_visuals_length + ** + ** @param const xcb_depth_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_depth_visuals_length (const xcb_depth_t *R /**< */) +{ + return R->visuals_len; +} + + +/***************************************************************************** + ** + ** xcb_visualtype_iterator_t xcb_depth_visuals_iterator + ** + ** @param const xcb_depth_t *R + ** @returns xcb_visualtype_iterator_t + ** + *****************************************************************************/ + +xcb_visualtype_iterator_t +xcb_depth_visuals_iterator (const xcb_depth_t *R /**< */) +{ + xcb_visualtype_iterator_t i; + i.data = (xcb_visualtype_t *) (R + 1); + i.rem = R->visuals_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_depth_next + ** + ** @param xcb_depth_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_depth_next (xcb_depth_iterator_t *i /**< */) +{ + xcb_depth_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_depth_t *)(((char *)R) + xcb_depth_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_depth_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_depth_end + ** + ** @param xcb_depth_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_depth_end (xcb_depth_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_depth_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_screen_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_screen_t *_aux = (xcb_screen_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_screen_t); + xcb_tmp += xcb_block_len; + /* allowed_depths */ + for(i=0; i<_aux->allowed_depths_len; i++) { + xcb_tmp_len = xcb_depth_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_depth_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** int xcb_screen_allowed_depths_length + ** + ** @param const xcb_screen_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_screen_allowed_depths_length (const xcb_screen_t *R /**< */) +{ + return R->allowed_depths_len; +} + + +/***************************************************************************** + ** + ** xcb_depth_iterator_t xcb_screen_allowed_depths_iterator + ** + ** @param const xcb_screen_t *R + ** @returns xcb_depth_iterator_t + ** + *****************************************************************************/ + +xcb_depth_iterator_t +xcb_screen_allowed_depths_iterator (const xcb_screen_t *R /**< */) +{ + xcb_depth_iterator_t i; + i.data = (xcb_depth_t *) (R + 1); + i.rem = R->allowed_depths_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_screen_next + ** + ** @param xcb_screen_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_screen_next (xcb_screen_iterator_t *i /**< */) +{ + xcb_screen_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_screen_t *)(((char *)R) + xcb_screen_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_screen_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_screen_end + ** + ** @param xcb_screen_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_screen_end (xcb_screen_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_screen_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_setup_request_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_setup_request_t *_aux = (xcb_setup_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_setup_request_t); + xcb_tmp += xcb_block_len; + /* authorization_protocol_name */ + xcb_block_len += _aux->authorization_protocol_name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* authorization_protocol_data */ + xcb_block_len += _aux->authorization_protocol_data_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_setup_request_authorization_protocol_name + ** + ** @param const xcb_setup_request_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_request_authorization_protocol_name (const xcb_setup_request_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_setup_request_authorization_protocol_name_length + ** + ** @param const xcb_setup_request_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_request_authorization_protocol_name_length (const xcb_setup_request_t *R /**< */) +{ + return R->authorization_protocol_name_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_request_authorization_protocol_name_end + ** + ** @param const xcb_setup_request_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_request_authorization_protocol_name_end (const xcb_setup_request_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->authorization_protocol_name_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** char * xcb_setup_request_authorization_protocol_data + ** + ** @param const xcb_setup_request_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_request_authorization_protocol_data (const xcb_setup_request_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_setup_request_authorization_protocol_name_end(R); + return (char *) ((char *) prev.data + XCB_TYPE_PAD(char, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_setup_request_authorization_protocol_data_length + ** + ** @param const xcb_setup_request_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_request_authorization_protocol_data_length (const xcb_setup_request_t *R /**< */) +{ + return R->authorization_protocol_data_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_request_authorization_protocol_data_end + ** + ** @param const xcb_setup_request_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_request_authorization_protocol_data_end (const xcb_setup_request_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_setup_request_authorization_protocol_name_end(R); + i.data = ((char *) child.data) + (R->authorization_protocol_data_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_setup_request_next + ** + ** @param xcb_setup_request_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_setup_request_next (xcb_setup_request_iterator_t *i /**< */) +{ + xcb_setup_request_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_setup_request_t *)(((char *)R) + xcb_setup_request_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_setup_request_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_request_end + ** + ** @param xcb_setup_request_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_request_end (xcb_setup_request_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_setup_request_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_setup_failed_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_setup_failed_t *_aux = (xcb_setup_failed_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_setup_failed_t); + xcb_tmp += xcb_block_len; + /* reason */ + xcb_block_len += _aux->reason_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_setup_failed_reason + ** + ** @param const xcb_setup_failed_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_failed_reason (const xcb_setup_failed_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_setup_failed_reason_length + ** + ** @param const xcb_setup_failed_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_failed_reason_length (const xcb_setup_failed_t *R /**< */) +{ + return R->reason_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_failed_reason_end + ** + ** @param const xcb_setup_failed_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_failed_reason_end (const xcb_setup_failed_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->reason_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_setup_failed_next + ** + ** @param xcb_setup_failed_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_setup_failed_next (xcb_setup_failed_iterator_t *i /**< */) +{ + xcb_setup_failed_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_setup_failed_t *)(((char *)R) + xcb_setup_failed_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_setup_failed_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_failed_end + ** + ** @param xcb_setup_failed_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_failed_end (xcb_setup_failed_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_setup_failed_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_setup_authenticate_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_setup_authenticate_t *_aux = (xcb_setup_authenticate_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_setup_authenticate_t); + xcb_tmp += xcb_block_len; + /* reason */ + xcb_block_len += (_aux->length * 4) * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_setup_authenticate_reason + ** + ** @param const xcb_setup_authenticate_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_authenticate_reason (const xcb_setup_authenticate_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_setup_authenticate_reason_length + ** + ** @param const xcb_setup_authenticate_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_authenticate_reason_length (const xcb_setup_authenticate_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_authenticate_reason_end + ** + ** @param const xcb_setup_authenticate_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_authenticate_reason_end (const xcb_setup_authenticate_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_setup_authenticate_next + ** + ** @param xcb_setup_authenticate_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_setup_authenticate_next (xcb_setup_authenticate_iterator_t *i /**< */) +{ + xcb_setup_authenticate_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_setup_authenticate_t *)(((char *)R) + xcb_setup_authenticate_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_setup_authenticate_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_authenticate_end + ** + ** @param xcb_setup_authenticate_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_authenticate_end (xcb_setup_authenticate_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_setup_authenticate_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_setup_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_setup_t *_aux = (xcb_setup_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_setup_t); + xcb_tmp += xcb_block_len; + /* vendor */ + xcb_block_len += _aux->vendor_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* pixmap_formats */ + xcb_block_len += _aux->pixmap_formats_len * sizeof(xcb_format_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_format_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* roots */ + for(i=0; i<_aux->roots_len; i++) { + xcb_tmp_len = xcb_screen_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_screen_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_setup_vendor + ** + ** @param const xcb_setup_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_vendor (const xcb_setup_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_setup_vendor_length + ** + ** @param const xcb_setup_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_vendor_length (const xcb_setup_t *R /**< */) +{ + return R->vendor_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_vendor_end + ** + ** @param const xcb_setup_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_vendor_end (const xcb_setup_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->vendor_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_format_t * xcb_setup_pixmap_formats + ** + ** @param const xcb_setup_t *R + ** @returns xcb_format_t * + ** + *****************************************************************************/ + +xcb_format_t * +xcb_setup_pixmap_formats (const xcb_setup_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_setup_vendor_end(R); + return (xcb_format_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_format_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_setup_pixmap_formats_length + ** + ** @param const xcb_setup_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_pixmap_formats_length (const xcb_setup_t *R /**< */) +{ + return R->pixmap_formats_len; +} + + +/***************************************************************************** + ** + ** xcb_format_iterator_t xcb_setup_pixmap_formats_iterator + ** + ** @param const xcb_setup_t *R + ** @returns xcb_format_iterator_t + ** + *****************************************************************************/ + +xcb_format_iterator_t +xcb_setup_pixmap_formats_iterator (const xcb_setup_t *R /**< */) +{ + xcb_format_iterator_t i; + xcb_generic_iterator_t prev = xcb_setup_vendor_end(R); + i.data = (xcb_format_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_format_t, prev.index)); + i.rem = R->pixmap_formats_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** int xcb_setup_roots_length + ** + ** @param const xcb_setup_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_roots_length (const xcb_setup_t *R /**< */) +{ + return R->roots_len; +} + + +/***************************************************************************** + ** + ** xcb_screen_iterator_t xcb_setup_roots_iterator + ** + ** @param const xcb_setup_t *R + ** @returns xcb_screen_iterator_t + ** + *****************************************************************************/ + +xcb_screen_iterator_t +xcb_setup_roots_iterator (const xcb_setup_t *R /**< */) +{ + xcb_screen_iterator_t i; + xcb_generic_iterator_t prev = xcb_format_end(xcb_setup_pixmap_formats_iterator(R)); + i.data = (xcb_screen_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_screen_t, prev.index)); + i.rem = R->roots_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_setup_next + ** + ** @param xcb_setup_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_setup_next (xcb_setup_iterator_t *i /**< */) +{ + xcb_setup_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_setup_t *)(((char *)R) + xcb_setup_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_setup_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_end + ** + ** @param xcb_setup_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_end (xcb_setup_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_setup_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_client_message_data_next + ** + ** @param xcb_client_message_data_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_client_message_data_next (xcb_client_message_data_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_client_message_data_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_client_message_data_end + ** + ** @param xcb_client_message_data_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_client_message_data_end (xcb_client_message_data_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_create_window_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_create_window_request_t *_aux = (xcb_create_window_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_create_window_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_window_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t depth + ** @param xcb_window_t wid + ** @param xcb_window_t parent + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t border_width + ** @param uint16_t _class + ** @param xcb_visualid_t visual + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_window_checked (xcb_connection_t *c /**< */, + uint8_t depth /**< */, + xcb_window_t wid /**< */, + xcb_window_t parent /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t border_width /**< */, + uint16_t _class /**< */, + xcb_visualid_t visual /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CREATE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_create_window_request_t xcb_out; + + xcb_out.depth = depth; + xcb_out.wid = wid; + xcb_out.parent = parent; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.border_width = border_width; + xcb_out._class = _class; + xcb_out.visual = visual; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_window + ** + ** @param xcb_connection_t *c + ** @param uint8_t depth + ** @param xcb_window_t wid + ** @param xcb_window_t parent + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t border_width + ** @param uint16_t _class + ** @param xcb_visualid_t visual + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_window (xcb_connection_t *c /**< */, + uint8_t depth /**< */, + xcb_window_t wid /**< */, + xcb_window_t parent /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t border_width /**< */, + uint16_t _class /**< */, + xcb_visualid_t visual /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CREATE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_create_window_request_t xcb_out; + + xcb_out.depth = depth; + xcb_out.wid = wid; + xcb_out.parent = parent; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.border_width = border_width; + xcb_out._class = _class; + xcb_out.visual = visual; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_change_window_attributes_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_change_window_attributes_request_t *_aux = (xcb_change_window_attributes_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_change_window_attributes_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_window_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_window_attributes_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_WINDOW_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_window_attributes_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_window_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_window_attributes (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_WINDOW_ATTRIBUTES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_window_attributes_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_window_attributes_cookie_t xcb_get_window_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_get_window_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_get_window_attributes_cookie_t +xcb_get_window_attributes (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_WINDOW_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_window_attributes_cookie_t xcb_ret; + xcb_get_window_attributes_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_window_attributes_cookie_t xcb_get_window_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_get_window_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_get_window_attributes_cookie_t +xcb_get_window_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_WINDOW_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_window_attributes_cookie_t xcb_ret; + xcb_get_window_attributes_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_window_attributes_reply_t * xcb_get_window_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_window_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_window_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_get_window_attributes_reply_t * +xcb_get_window_attributes_reply (xcb_connection_t *c /**< */, + xcb_get_window_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_window_attributes_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_destroy_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_destroy_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_DESTROY_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_destroy_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_destroy_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_destroy_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_DESTROY_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_destroy_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_destroy_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_destroy_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_DESTROY_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_destroy_subwindows_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_destroy_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_destroy_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_DESTROY_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_destroy_subwindows_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_save_set_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_save_set_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CHANGE_SAVE_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_change_save_set_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_save_set + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_save_set (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CHANGE_SAVE_SET, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_change_save_set_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_reparent_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_window_t parent + ** @param int16_t x + ** @param int16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_reparent_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_window_t parent /**< */, + int16_t x /**< */, + int16_t y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_REPARENT_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_reparent_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.parent = parent; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_reparent_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_window_t parent + ** @param int16_t x + ** @param int16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_reparent_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_window_t parent /**< */, + int16_t x /**< */, + int16_t y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_REPARENT_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_reparent_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.parent = parent; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_map_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_map_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_MAP_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_map_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_map_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_map_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_MAP_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_map_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_map_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_map_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_MAP_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_map_subwindows_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_map_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_map_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_MAP_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_map_subwindows_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_unmap_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_unmap_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNMAP_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_unmap_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_unmap_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_unmap_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNMAP_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_unmap_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_unmap_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_unmap_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNMAP_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_unmap_subwindows_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_unmap_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_unmap_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNMAP_SUBWINDOWS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_unmap_subwindows_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_configure_window_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_configure_window_request_t *_aux = (xcb_configure_window_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_configure_window_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_configure_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_configure_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CONFIGURE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_configure_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.value_mask = value_mask; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_configure_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_configure_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CONFIGURE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_configure_window_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.value_mask = value_mask; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_circulate_window_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t direction + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_circulate_window_checked (xcb_connection_t *c /**< */, + uint8_t direction /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CIRCULATE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_circulate_window_request_t xcb_out; + + xcb_out.direction = direction; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_circulate_window + ** + ** @param xcb_connection_t *c + ** @param uint8_t direction + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_circulate_window (xcb_connection_t *c /**< */, + uint8_t direction /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CIRCULATE_WINDOW, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_circulate_window_request_t xcb_out; + + xcb_out.direction = direction; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_geometry_cookie_t xcb_get_geometry + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_get_geometry_cookie_t + ** + *****************************************************************************/ + +xcb_get_geometry_cookie_t +xcb_get_geometry (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_GEOMETRY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_geometry_cookie_t xcb_ret; + xcb_get_geometry_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_geometry_cookie_t xcb_get_geometry_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_get_geometry_cookie_t + ** + *****************************************************************************/ + +xcb_get_geometry_cookie_t +xcb_get_geometry_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_GEOMETRY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_geometry_cookie_t xcb_ret; + xcb_get_geometry_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_geometry_reply_t * xcb_get_geometry_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_geometry_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_geometry_reply_t * + ** + *****************************************************************************/ + +xcb_get_geometry_reply_t * +xcb_get_geometry_reply (xcb_connection_t *c /**< */, + xcb_get_geometry_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_geometry_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_query_tree_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_query_tree_reply_t *_aux = (xcb_query_tree_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_query_tree_reply_t); + xcb_tmp += xcb_block_len; + /* children */ + xcb_block_len += _aux->children_len * sizeof(xcb_window_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_window_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_query_tree_cookie_t xcb_query_tree + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_query_tree_cookie_t + ** + *****************************************************************************/ + +xcb_query_tree_cookie_t +xcb_query_tree (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_TREE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_tree_cookie_t xcb_ret; + xcb_query_tree_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_tree_cookie_t xcb_query_tree_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_query_tree_cookie_t + ** + *****************************************************************************/ + +xcb_query_tree_cookie_t +xcb_query_tree_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_TREE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_tree_cookie_t xcb_ret; + xcb_query_tree_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_window_t * xcb_query_tree_children + ** + ** @param const xcb_query_tree_reply_t *R + ** @returns xcb_window_t * + ** + *****************************************************************************/ + +xcb_window_t * +xcb_query_tree_children (const xcb_query_tree_reply_t *R /**< */) +{ + return (xcb_window_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_query_tree_children_length + ** + ** @param const xcb_query_tree_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_query_tree_children_length (const xcb_query_tree_reply_t *R /**< */) +{ + return R->children_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_query_tree_children_end + ** + ** @param const xcb_query_tree_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_query_tree_children_end (const xcb_query_tree_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_window_t *) (R + 1)) + (R->children_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_query_tree_reply_t * xcb_query_tree_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_tree_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_tree_reply_t * + ** + *****************************************************************************/ + +xcb_query_tree_reply_t * +xcb_query_tree_reply (xcb_connection_t *c /**< */, + xcb_query_tree_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_query_tree_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_intern_atom_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_intern_atom_request_t *_aux = (xcb_intern_atom_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_intern_atom_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_intern_atom_cookie_t xcb_intern_atom + ** + ** @param xcb_connection_t *c + ** @param uint8_t only_if_exists + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_intern_atom_cookie_t + ** + *****************************************************************************/ + +xcb_intern_atom_cookie_t +xcb_intern_atom (xcb_connection_t *c /**< */, + uint8_t only_if_exists /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_INTERN_ATOM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_intern_atom_cookie_t xcb_ret; + xcb_intern_atom_request_t xcb_out; + + xcb_out.only_if_exists = only_if_exists; + xcb_out.name_len = name_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_intern_atom_cookie_t xcb_intern_atom_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t only_if_exists + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_intern_atom_cookie_t + ** + *****************************************************************************/ + +xcb_intern_atom_cookie_t +xcb_intern_atom_unchecked (xcb_connection_t *c /**< */, + uint8_t only_if_exists /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_INTERN_ATOM, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_intern_atom_cookie_t xcb_ret; + xcb_intern_atom_request_t xcb_out; + + xcb_out.only_if_exists = only_if_exists; + xcb_out.name_len = name_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_intern_atom_reply_t * xcb_intern_atom_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_intern_atom_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_intern_atom_reply_t * + ** + *****************************************************************************/ + +xcb_intern_atom_reply_t * +xcb_intern_atom_reply (xcb_connection_t *c /**< */, + xcb_intern_atom_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_intern_atom_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_get_atom_name_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_get_atom_name_reply_t *_aux = (xcb_get_atom_name_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_get_atom_name_reply_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_get_atom_name_cookie_t xcb_get_atom_name + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t atom + ** @returns xcb_get_atom_name_cookie_t + ** + *****************************************************************************/ + +xcb_get_atom_name_cookie_t +xcb_get_atom_name (xcb_connection_t *c /**< */, + xcb_atom_t atom /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_ATOM_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_atom_name_cookie_t xcb_ret; + xcb_get_atom_name_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.atom = atom; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_atom_name_cookie_t xcb_get_atom_name_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t atom + ** @returns xcb_get_atom_name_cookie_t + ** + *****************************************************************************/ + +xcb_get_atom_name_cookie_t +xcb_get_atom_name_unchecked (xcb_connection_t *c /**< */, + xcb_atom_t atom /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_ATOM_NAME, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_atom_name_cookie_t xcb_ret; + xcb_get_atom_name_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.atom = atom; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_get_atom_name_name + ** + ** @param const xcb_get_atom_name_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_get_atom_name_name (const xcb_get_atom_name_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_get_atom_name_name_length + ** + ** @param const xcb_get_atom_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_atom_name_name_length (const xcb_get_atom_name_reply_t *R /**< */) +{ + return R->name_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_atom_name_name_end + ** + ** @param const xcb_get_atom_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_atom_name_name_end (const xcb_get_atom_name_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->name_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_get_atom_name_reply_t * xcb_get_atom_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_atom_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_atom_name_reply_t * + ** + *****************************************************************************/ + +xcb_get_atom_name_reply_t * +xcb_get_atom_name_reply (xcb_connection_t *c /**< */, + xcb_get_atom_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_atom_name_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_change_property_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_change_property_request_t *_aux = (xcb_change_property_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_change_property_request_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += ((_aux->data_len * _aux->format) / 8) * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_property_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint8_t format + ** @param uint32_t data_len + ** @param const void *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_property_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint8_t format /**< */, + uint32_t data_len /**< */, + const void *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_property_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.window = window; + xcb_out.property = property; + xcb_out.type = type; + xcb_out.format = format; + memset(xcb_out.pad0, 0, 3); + xcb_out.data_len = data_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* void data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = ((data_len * format) / 8) * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_property + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint8_t format + ** @param uint32_t data_len + ** @param const void *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_property (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint8_t format /**< */, + uint32_t data_len /**< */, + const void *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_property_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.window = window; + xcb_out.property = property; + xcb_out.type = type; + xcb_out.format = format; + memset(xcb_out.pad0, 0, 3); + xcb_out.data_len = data_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* void data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = ((data_len * format) / 8) * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_delete_property_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_delete_property_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_DELETE_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_delete_property_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_delete_property + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_delete_property (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_DELETE_PROPERTY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_delete_property_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_get_property_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_get_property_reply_t *_aux = (xcb_get_property_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_get_property_reply_t); + xcb_tmp += xcb_block_len; + /* value */ + xcb_block_len += (_aux->value_len * (_aux->format / 8)) * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_get_property_cookie_t xcb_get_property + ** + ** @param xcb_connection_t *c + ** @param uint8_t _delete + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint32_t long_offset + ** @param uint32_t long_length + ** @returns xcb_get_property_cookie_t + ** + *****************************************************************************/ + +xcb_get_property_cookie_t +xcb_get_property (xcb_connection_t *c /**< */, + uint8_t _delete /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint32_t long_offset /**< */, + uint32_t long_length /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_PROPERTY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_property_cookie_t xcb_ret; + xcb_get_property_request_t xcb_out; + + xcb_out._delete = _delete; + xcb_out.window = window; + xcb_out.property = property; + xcb_out.type = type; + xcb_out.long_offset = long_offset; + xcb_out.long_length = long_length; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_property_cookie_t xcb_get_property_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t _delete + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint32_t long_offset + ** @param uint32_t long_length + ** @returns xcb_get_property_cookie_t + ** + *****************************************************************************/ + +xcb_get_property_cookie_t +xcb_get_property_unchecked (xcb_connection_t *c /**< */, + uint8_t _delete /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint32_t long_offset /**< */, + uint32_t long_length /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_PROPERTY, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_property_cookie_t xcb_ret; + xcb_get_property_request_t xcb_out; + + xcb_out._delete = _delete; + xcb_out.window = window; + xcb_out.property = property; + xcb_out.type = type; + xcb_out.long_offset = long_offset; + xcb_out.long_length = long_length; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** void * xcb_get_property_value + ** + ** @param const xcb_get_property_reply_t *R + ** @returns void * + ** + *****************************************************************************/ + +void * +xcb_get_property_value (const xcb_get_property_reply_t *R /**< */) +{ + return (void *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_get_property_value_length + ** + ** @param const xcb_get_property_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_property_value_length (const xcb_get_property_reply_t *R /**< */) +{ + return (R->value_len * (R->format / 8)); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_property_value_end + ** + ** @param const xcb_get_property_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_property_value_end (const xcb_get_property_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + ((R->value_len * (R->format / 8))); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_get_property_reply_t * xcb_get_property_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_property_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_property_reply_t * + ** + *****************************************************************************/ + +xcb_get_property_reply_t * +xcb_get_property_reply (xcb_connection_t *c /**< */, + xcb_get_property_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_property_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_list_properties_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_list_properties_reply_t *_aux = (xcb_list_properties_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_list_properties_reply_t); + xcb_tmp += xcb_block_len; + /* atoms */ + xcb_block_len += _aux->atoms_len * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_list_properties_cookie_t xcb_list_properties + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_list_properties_cookie_t + ** + *****************************************************************************/ + +xcb_list_properties_cookie_t +xcb_list_properties (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_LIST_PROPERTIES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_list_properties_cookie_t xcb_ret; + xcb_list_properties_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_list_properties_cookie_t xcb_list_properties_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_list_properties_cookie_t + ** + *****************************************************************************/ + +xcb_list_properties_cookie_t +xcb_list_properties_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_LIST_PROPERTIES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_list_properties_cookie_t xcb_ret; + xcb_list_properties_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_list_properties_atoms + ** + ** @param const xcb_list_properties_reply_t *R + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_list_properties_atoms (const xcb_list_properties_reply_t *R /**< */) +{ + return (xcb_atom_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_list_properties_atoms_length + ** + ** @param const xcb_list_properties_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_properties_atoms_length (const xcb_list_properties_reply_t *R /**< */) +{ + return R->atoms_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_list_properties_atoms_end + ** + ** @param const xcb_list_properties_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_list_properties_atoms_end (const xcb_list_properties_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_atom_t *) (R + 1)) + (R->atoms_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_list_properties_reply_t * xcb_list_properties_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_properties_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_properties_reply_t * + ** + *****************************************************************************/ + +xcb_list_properties_reply_t * +xcb_list_properties_reply (xcb_connection_t *c /**< */, + xcb_list_properties_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_list_properties_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_selection_owner_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t owner + ** @param xcb_atom_t selection + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_selection_owner_checked (xcb_connection_t *c /**< */, + xcb_window_t owner /**< */, + xcb_atom_t selection /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_SELECTION_OWNER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_selection_owner_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.owner = owner; + xcb_out.selection = selection; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_selection_owner + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t owner + ** @param xcb_atom_t selection + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_selection_owner (xcb_connection_t *c /**< */, + xcb_window_t owner /**< */, + xcb_atom_t selection /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_SELECTION_OWNER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_selection_owner_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.owner = owner; + xcb_out.selection = selection; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_selection_owner_cookie_t xcb_get_selection_owner + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_get_selection_owner_cookie_t + ** + *****************************************************************************/ + +xcb_get_selection_owner_cookie_t +xcb_get_selection_owner (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_SELECTION_OWNER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_selection_owner_cookie_t xcb_ret; + xcb_get_selection_owner_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.selection = selection; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_selection_owner_cookie_t xcb_get_selection_owner_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_get_selection_owner_cookie_t + ** + *****************************************************************************/ + +xcb_get_selection_owner_cookie_t +xcb_get_selection_owner_unchecked (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_SELECTION_OWNER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_selection_owner_cookie_t xcb_ret; + xcb_get_selection_owner_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.selection = selection; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_selection_owner_reply_t * xcb_get_selection_owner_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_selection_owner_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_selection_owner_reply_t * + ** + *****************************************************************************/ + +xcb_get_selection_owner_reply_t * +xcb_get_selection_owner_reply (xcb_connection_t *c /**< */, + xcb_get_selection_owner_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_selection_owner_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_convert_selection_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t requestor + ** @param xcb_atom_t selection + ** @param xcb_atom_t target + ** @param xcb_atom_t property + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_convert_selection_checked (xcb_connection_t *c /**< */, + xcb_window_t requestor /**< */, + xcb_atom_t selection /**< */, + xcb_atom_t target /**< */, + xcb_atom_t property /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CONVERT_SELECTION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_convert_selection_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.requestor = requestor; + xcb_out.selection = selection; + xcb_out.target = target; + xcb_out.property = property; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_convert_selection + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t requestor + ** @param xcb_atom_t selection + ** @param xcb_atom_t target + ** @param xcb_atom_t property + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_convert_selection (xcb_connection_t *c /**< */, + xcb_window_t requestor /**< */, + xcb_atom_t selection /**< */, + xcb_atom_t target /**< */, + xcb_atom_t property /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CONVERT_SELECTION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_convert_selection_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.requestor = requestor; + xcb_out.selection = selection; + xcb_out.target = target; + xcb_out.property = property; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_send_event_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t propagate + ** @param xcb_window_t destination + ** @param uint32_t event_mask + ** @param const char *event + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_send_event_checked (xcb_connection_t *c /**< */, + uint8_t propagate /**< */, + xcb_window_t destination /**< */, + uint32_t event_mask /**< */, + const char *event /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SEND_EVENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_send_event_request_t xcb_out; + + xcb_out.propagate = propagate; + xcb_out.destination = destination; + xcb_out.event_mask = event_mask; + memcpy(xcb_out.event, event, 32); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_send_event + ** + ** @param xcb_connection_t *c + ** @param uint8_t propagate + ** @param xcb_window_t destination + ** @param uint32_t event_mask + ** @param const char *event + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_send_event (xcb_connection_t *c /**< */, + uint8_t propagate /**< */, + xcb_window_t destination /**< */, + uint32_t event_mask /**< */, + const char *event /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SEND_EVENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_send_event_request_t xcb_out; + + xcb_out.propagate = propagate; + xcb_out.destination = destination; + xcb_out.event_mask = event_mask; + memcpy(xcb_out.event, event, 32); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_grab_pointer_cookie_t xcb_grab_pointer + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t event_mask + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @param xcb_window_t confine_to + ** @param xcb_cursor_t cursor + ** @param xcb_timestamp_t time + ** @returns xcb_grab_pointer_cookie_t + ** + *****************************************************************************/ + +xcb_grab_pointer_cookie_t +xcb_grab_pointer (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t event_mask /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */, + xcb_window_t confine_to /**< */, + xcb_cursor_t cursor /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_POINTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_grab_pointer_cookie_t xcb_ret; + xcb_grab_pointer_request_t xcb_out; + + xcb_out.owner_events = owner_events; + xcb_out.grab_window = grab_window; + xcb_out.event_mask = event_mask; + xcb_out.pointer_mode = pointer_mode; + xcb_out.keyboard_mode = keyboard_mode; + xcb_out.confine_to = confine_to; + xcb_out.cursor = cursor; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_grab_pointer_cookie_t xcb_grab_pointer_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t event_mask + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @param xcb_window_t confine_to + ** @param xcb_cursor_t cursor + ** @param xcb_timestamp_t time + ** @returns xcb_grab_pointer_cookie_t + ** + *****************************************************************************/ + +xcb_grab_pointer_cookie_t +xcb_grab_pointer_unchecked (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t event_mask /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */, + xcb_window_t confine_to /**< */, + xcb_cursor_t cursor /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_POINTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_grab_pointer_cookie_t xcb_ret; + xcb_grab_pointer_request_t xcb_out; + + xcb_out.owner_events = owner_events; + xcb_out.grab_window = grab_window; + xcb_out.event_mask = event_mask; + xcb_out.pointer_mode = pointer_mode; + xcb_out.keyboard_mode = keyboard_mode; + xcb_out.confine_to = confine_to; + xcb_out.cursor = cursor; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_grab_pointer_reply_t * xcb_grab_pointer_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_grab_pointer_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_grab_pointer_reply_t * + ** + *****************************************************************************/ + +xcb_grab_pointer_reply_t * +xcb_grab_pointer_reply (xcb_connection_t *c /**< */, + xcb_grab_pointer_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_grab_pointer_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_pointer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_pointer_checked (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_POINTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_pointer_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_pointer + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_pointer (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_POINTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_pointer_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_button_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t event_mask + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @param xcb_window_t confine_to + ** @param xcb_cursor_t cursor + ** @param uint8_t button + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_button_checked (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t event_mask /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */, + xcb_window_t confine_to /**< */, + xcb_cursor_t cursor /**< */, + uint8_t button /**< */, + uint16_t modifiers /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_BUTTON, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_grab_button_request_t xcb_out; + + xcb_out.owner_events = owner_events; + xcb_out.grab_window = grab_window; + xcb_out.event_mask = event_mask; + xcb_out.pointer_mode = pointer_mode; + xcb_out.keyboard_mode = keyboard_mode; + xcb_out.confine_to = confine_to; + xcb_out.cursor = cursor; + xcb_out.button = button; + xcb_out.pad0 = 0; + xcb_out.modifiers = modifiers; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_button + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t event_mask + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @param xcb_window_t confine_to + ** @param xcb_cursor_t cursor + ** @param uint8_t button + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_button (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t event_mask /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */, + xcb_window_t confine_to /**< */, + xcb_cursor_t cursor /**< */, + uint8_t button /**< */, + uint16_t modifiers /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_BUTTON, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_grab_button_request_t xcb_out; + + xcb_out.owner_events = owner_events; + xcb_out.grab_window = grab_window; + xcb_out.event_mask = event_mask; + xcb_out.pointer_mode = pointer_mode; + xcb_out.keyboard_mode = keyboard_mode; + xcb_out.confine_to = confine_to; + xcb_out.cursor = cursor; + xcb_out.button = button; + xcb_out.pad0 = 0; + xcb_out.modifiers = modifiers; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_button_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t button + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_button_checked (xcb_connection_t *c /**< */, + uint8_t button /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_BUTTON, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_button_request_t xcb_out; + + xcb_out.button = button; + xcb_out.grab_window = grab_window; + xcb_out.modifiers = modifiers; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_button + ** + ** @param xcb_connection_t *c + ** @param uint8_t button + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_button (xcb_connection_t *c /**< */, + uint8_t button /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_BUTTON, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_button_request_t xcb_out; + + xcb_out.button = button; + xcb_out.grab_window = grab_window; + xcb_out.modifiers = modifiers; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_active_pointer_grab_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param xcb_timestamp_t time + ** @param uint16_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_active_pointer_grab_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + xcb_timestamp_t time /**< */, + uint16_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CHANGE_ACTIVE_POINTER_GRAB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_change_active_pointer_grab_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cursor = cursor; + xcb_out.time = time; + xcb_out.event_mask = event_mask; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_active_pointer_grab + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param xcb_timestamp_t time + ** @param uint16_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_active_pointer_grab (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + xcb_timestamp_t time /**< */, + uint16_t event_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CHANGE_ACTIVE_POINTER_GRAB, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_change_active_pointer_grab_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cursor = cursor; + xcb_out.time = time; + xcb_out.event_mask = event_mask; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_grab_keyboard_cookie_t xcb_grab_keyboard + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param xcb_timestamp_t time + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @returns xcb_grab_keyboard_cookie_t + ** + *****************************************************************************/ + +xcb_grab_keyboard_cookie_t +xcb_grab_keyboard (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + xcb_timestamp_t time /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_KEYBOARD, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_grab_keyboard_cookie_t xcb_ret; + xcb_grab_keyboard_request_t xcb_out; + + xcb_out.owner_events = owner_events; + xcb_out.grab_window = grab_window; + xcb_out.time = time; + xcb_out.pointer_mode = pointer_mode; + xcb_out.keyboard_mode = keyboard_mode; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_grab_keyboard_cookie_t xcb_grab_keyboard_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param xcb_timestamp_t time + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @returns xcb_grab_keyboard_cookie_t + ** + *****************************************************************************/ + +xcb_grab_keyboard_cookie_t +xcb_grab_keyboard_unchecked (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + xcb_timestamp_t time /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_KEYBOARD, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_grab_keyboard_cookie_t xcb_ret; + xcb_grab_keyboard_request_t xcb_out; + + xcb_out.owner_events = owner_events; + xcb_out.grab_window = grab_window; + xcb_out.time = time; + xcb_out.pointer_mode = pointer_mode; + xcb_out.keyboard_mode = keyboard_mode; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_grab_keyboard_reply_t * xcb_grab_keyboard_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_grab_keyboard_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_grab_keyboard_reply_t * + ** + *****************************************************************************/ + +xcb_grab_keyboard_reply_t * +xcb_grab_keyboard_reply (xcb_connection_t *c /**< */, + xcb_grab_keyboard_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_grab_keyboard_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_keyboard_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_keyboard_checked (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_KEYBOARD, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_keyboard_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_keyboard + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_keyboard (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_KEYBOARD, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_keyboard_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_key_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @param xcb_keycode_t key + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_key_checked (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */, + xcb_keycode_t key /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_KEY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_grab_key_request_t xcb_out; + + xcb_out.owner_events = owner_events; + xcb_out.grab_window = grab_window; + xcb_out.modifiers = modifiers; + xcb_out.key = key; + xcb_out.pointer_mode = pointer_mode; + xcb_out.keyboard_mode = keyboard_mode; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_key + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @param xcb_keycode_t key + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_key (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */, + xcb_keycode_t key /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_KEY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_grab_key_request_t xcb_out; + + xcb_out.owner_events = owner_events; + xcb_out.grab_window = grab_window; + xcb_out.modifiers = modifiers; + xcb_out.key = key; + xcb_out.pointer_mode = pointer_mode; + xcb_out.keyboard_mode = keyboard_mode; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_key_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_keycode_t key + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_key_checked (xcb_connection_t *c /**< */, + xcb_keycode_t key /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_KEY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_key_request_t xcb_out; + + xcb_out.key = key; + xcb_out.grab_window = grab_window; + xcb_out.modifiers = modifiers; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_key + ** + ** @param xcb_connection_t *c + ** @param xcb_keycode_t key + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_key (xcb_connection_t *c /**< */, + xcb_keycode_t key /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_KEY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_key_request_t xcb_out; + + xcb_out.key = key; + xcb_out.grab_window = grab_window; + xcb_out.modifiers = modifiers; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_allow_events_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_allow_events_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_ALLOW_EVENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_allow_events_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_allow_events + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_allow_events (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_ALLOW_EVENTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_allow_events_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_server_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_server_checked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_SERVER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_grab_server_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_server + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_server (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GRAB_SERVER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_grab_server_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_server_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_server_checked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_SERVER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_server_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_server + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_server (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNGRAB_SERVER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_ungrab_server_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_pointer_cookie_t xcb_query_pointer + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_query_pointer_cookie_t + ** + *****************************************************************************/ + +xcb_query_pointer_cookie_t +xcb_query_pointer (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_POINTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_pointer_cookie_t xcb_ret; + xcb_query_pointer_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_pointer_cookie_t xcb_query_pointer_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_query_pointer_cookie_t + ** + *****************************************************************************/ + +xcb_query_pointer_cookie_t +xcb_query_pointer_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_POINTER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_pointer_cookie_t xcb_ret; + xcb_query_pointer_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_pointer_reply_t * xcb_query_pointer_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_pointer_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_pointer_reply_t * + ** + *****************************************************************************/ + +xcb_query_pointer_reply_t * +xcb_query_pointer_reply (xcb_connection_t *c /**< */, + xcb_query_pointer_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_query_pointer_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** void xcb_timecoord_next + ** + ** @param xcb_timecoord_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_timecoord_next (xcb_timecoord_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_timecoord_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_timecoord_end + ** + ** @param xcb_timecoord_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_timecoord_end (xcb_timecoord_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_get_motion_events_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_get_motion_events_reply_t *_aux = (xcb_get_motion_events_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_get_motion_events_reply_t); + xcb_tmp += xcb_block_len; + /* events */ + xcb_block_len += _aux->events_len * sizeof(xcb_timecoord_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_timecoord_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_get_motion_events_cookie_t xcb_get_motion_events + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_timestamp_t start + ** @param xcb_timestamp_t stop + ** @returns xcb_get_motion_events_cookie_t + ** + *****************************************************************************/ + +xcb_get_motion_events_cookie_t +xcb_get_motion_events (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_timestamp_t start /**< */, + xcb_timestamp_t stop /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_MOTION_EVENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_motion_events_cookie_t xcb_ret; + xcb_get_motion_events_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.start = start; + xcb_out.stop = stop; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_motion_events_cookie_t xcb_get_motion_events_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_timestamp_t start + ** @param xcb_timestamp_t stop + ** @returns xcb_get_motion_events_cookie_t + ** + *****************************************************************************/ + +xcb_get_motion_events_cookie_t +xcb_get_motion_events_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_timestamp_t start /**< */, + xcb_timestamp_t stop /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_MOTION_EVENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_motion_events_cookie_t xcb_ret; + xcb_get_motion_events_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.start = start; + xcb_out.stop = stop; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_timecoord_t * xcb_get_motion_events_events + ** + ** @param const xcb_get_motion_events_reply_t *R + ** @returns xcb_timecoord_t * + ** + *****************************************************************************/ + +xcb_timecoord_t * +xcb_get_motion_events_events (const xcb_get_motion_events_reply_t *R /**< */) +{ + return (xcb_timecoord_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_get_motion_events_events_length + ** + ** @param const xcb_get_motion_events_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_motion_events_events_length (const xcb_get_motion_events_reply_t *R /**< */) +{ + return R->events_len; +} + + +/***************************************************************************** + ** + ** xcb_timecoord_iterator_t xcb_get_motion_events_events_iterator + ** + ** @param const xcb_get_motion_events_reply_t *R + ** @returns xcb_timecoord_iterator_t + ** + *****************************************************************************/ + +xcb_timecoord_iterator_t +xcb_get_motion_events_events_iterator (const xcb_get_motion_events_reply_t *R /**< */) +{ + xcb_timecoord_iterator_t i; + i.data = (xcb_timecoord_t *) (R + 1); + i.rem = R->events_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_get_motion_events_reply_t * xcb_get_motion_events_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_motion_events_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_motion_events_reply_t * + ** + *****************************************************************************/ + +xcb_get_motion_events_reply_t * +xcb_get_motion_events_reply (xcb_connection_t *c /**< */, + xcb_get_motion_events_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_motion_events_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_translate_coordinates_cookie_t xcb_translate_coordinates + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t src_window + ** @param xcb_window_t dst_window + ** @param int16_t src_x + ** @param int16_t src_y + ** @returns xcb_translate_coordinates_cookie_t + ** + *****************************************************************************/ + +xcb_translate_coordinates_cookie_t +xcb_translate_coordinates (xcb_connection_t *c /**< */, + xcb_window_t src_window /**< */, + xcb_window_t dst_window /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_TRANSLATE_COORDINATES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_translate_coordinates_cookie_t xcb_ret; + xcb_translate_coordinates_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_window = src_window; + xcb_out.dst_window = dst_window; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_translate_coordinates_cookie_t xcb_translate_coordinates_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t src_window + ** @param xcb_window_t dst_window + ** @param int16_t src_x + ** @param int16_t src_y + ** @returns xcb_translate_coordinates_cookie_t + ** + *****************************************************************************/ + +xcb_translate_coordinates_cookie_t +xcb_translate_coordinates_unchecked (xcb_connection_t *c /**< */, + xcb_window_t src_window /**< */, + xcb_window_t dst_window /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_TRANSLATE_COORDINATES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_translate_coordinates_cookie_t xcb_ret; + xcb_translate_coordinates_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_window = src_window; + xcb_out.dst_window = dst_window; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_translate_coordinates_reply_t * xcb_translate_coordinates_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_translate_coordinates_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_translate_coordinates_reply_t * + ** + *****************************************************************************/ + +xcb_translate_coordinates_reply_t * +xcb_translate_coordinates_reply (xcb_connection_t *c /**< */, + xcb_translate_coordinates_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_translate_coordinates_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_warp_pointer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t src_window + ** @param xcb_window_t dst_window + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_width + ** @param uint16_t src_height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_warp_pointer_checked (xcb_connection_t *c /**< */, + xcb_window_t src_window /**< */, + xcb_window_t dst_window /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_width /**< */, + uint16_t src_height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_WARP_POINTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_warp_pointer_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_window = src_window; + xcb_out.dst_window = dst_window; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.src_width = src_width; + xcb_out.src_height = src_height; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_warp_pointer + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t src_window + ** @param xcb_window_t dst_window + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_width + ** @param uint16_t src_height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_warp_pointer (xcb_connection_t *c /**< */, + xcb_window_t src_window /**< */, + xcb_window_t dst_window /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_width /**< */, + uint16_t src_height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_WARP_POINTER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_warp_pointer_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_window = src_window; + xcb_out.dst_window = dst_window; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.src_width = src_width; + xcb_out.src_height = src_height; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_input_focus_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t revert_to + ** @param xcb_window_t focus + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_input_focus_checked (xcb_connection_t *c /**< */, + uint8_t revert_to /**< */, + xcb_window_t focus /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_INPUT_FOCUS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_input_focus_request_t xcb_out; + + xcb_out.revert_to = revert_to; + xcb_out.focus = focus; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_input_focus + ** + ** @param xcb_connection_t *c + ** @param uint8_t revert_to + ** @param xcb_window_t focus + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_input_focus (xcb_connection_t *c /**< */, + uint8_t revert_to /**< */, + xcb_window_t focus /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_INPUT_FOCUS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_input_focus_request_t xcb_out; + + xcb_out.revert_to = revert_to; + xcb_out.focus = focus; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_input_focus_cookie_t xcb_get_input_focus + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_input_focus_cookie_t + ** + *****************************************************************************/ + +xcb_get_input_focus_cookie_t +xcb_get_input_focus (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_INPUT_FOCUS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_input_focus_cookie_t xcb_ret; + xcb_get_input_focus_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_input_focus_cookie_t xcb_get_input_focus_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_input_focus_cookie_t + ** + *****************************************************************************/ + +xcb_get_input_focus_cookie_t +xcb_get_input_focus_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_INPUT_FOCUS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_input_focus_cookie_t xcb_ret; + xcb_get_input_focus_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_input_focus_reply_t * xcb_get_input_focus_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_input_focus_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_input_focus_reply_t * + ** + *****************************************************************************/ + +xcb_get_input_focus_reply_t * +xcb_get_input_focus_reply (xcb_connection_t *c /**< */, + xcb_get_input_focus_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_input_focus_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_query_keymap_cookie_t xcb_query_keymap + ** + ** @param xcb_connection_t *c + ** @returns xcb_query_keymap_cookie_t + ** + *****************************************************************************/ + +xcb_query_keymap_cookie_t +xcb_query_keymap (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_KEYMAP, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_keymap_cookie_t xcb_ret; + xcb_query_keymap_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_keymap_cookie_t xcb_query_keymap_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_query_keymap_cookie_t + ** + *****************************************************************************/ + +xcb_query_keymap_cookie_t +xcb_query_keymap_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_KEYMAP, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_keymap_cookie_t xcb_ret; + xcb_query_keymap_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_keymap_reply_t * xcb_query_keymap_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_keymap_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_keymap_reply_t * + ** + *****************************************************************************/ + +xcb_query_keymap_reply_t * +xcb_query_keymap_reply (xcb_connection_t *c /**< */, + xcb_query_keymap_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_query_keymap_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_open_font_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_open_font_request_t *_aux = (xcb_open_font_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_open_font_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_open_font_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_font_t fid + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_open_font_checked (xcb_connection_t *c /**< */, + xcb_font_t fid /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_OPEN_FONT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_open_font_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.fid = fid; + xcb_out.name_len = name_len; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_open_font + ** + ** @param xcb_connection_t *c + ** @param xcb_font_t fid + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_open_font (xcb_connection_t *c /**< */, + xcb_font_t fid /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_OPEN_FONT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_open_font_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.fid = fid; + xcb_out.name_len = name_len; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_close_font_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_font_t font + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_close_font_checked (xcb_connection_t *c /**< */, + xcb_font_t font /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CLOSE_FONT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_close_font_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.font = font; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_close_font + ** + ** @param xcb_connection_t *c + ** @param xcb_font_t font + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_close_font (xcb_connection_t *c /**< */, + xcb_font_t font /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CLOSE_FONT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_close_font_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.font = font; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** void xcb_fontprop_next + ** + ** @param xcb_fontprop_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_fontprop_next (xcb_fontprop_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_fontprop_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_fontprop_end + ** + ** @param xcb_fontprop_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_fontprop_end (xcb_fontprop_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_charinfo_next + ** + ** @param xcb_charinfo_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_charinfo_next (xcb_charinfo_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_charinfo_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_charinfo_end + ** + ** @param xcb_charinfo_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_charinfo_end (xcb_charinfo_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_query_font_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_query_font_reply_t *_aux = (xcb_query_font_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_query_font_reply_t); + xcb_tmp += xcb_block_len; + /* properties */ + xcb_block_len += _aux->properties_len * sizeof(xcb_fontprop_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_fontprop_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* char_infos */ + xcb_block_len += _aux->char_infos_len * sizeof(xcb_charinfo_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_charinfo_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_query_font_cookie_t xcb_query_font + ** + ** @param xcb_connection_t *c + ** @param xcb_fontable_t font + ** @returns xcb_query_font_cookie_t + ** + *****************************************************************************/ + +xcb_query_font_cookie_t +xcb_query_font (xcb_connection_t *c /**< */, + xcb_fontable_t font /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_FONT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_font_cookie_t xcb_ret; + xcb_query_font_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.font = font; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_font_cookie_t xcb_query_font_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_fontable_t font + ** @returns xcb_query_font_cookie_t + ** + *****************************************************************************/ + +xcb_query_font_cookie_t +xcb_query_font_unchecked (xcb_connection_t *c /**< */, + xcb_fontable_t font /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_FONT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_font_cookie_t xcb_ret; + xcb_query_font_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.font = font; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_fontprop_t * xcb_query_font_properties + ** + ** @param const xcb_query_font_reply_t *R + ** @returns xcb_fontprop_t * + ** + *****************************************************************************/ + +xcb_fontprop_t * +xcb_query_font_properties (const xcb_query_font_reply_t *R /**< */) +{ + return (xcb_fontprop_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_query_font_properties_length + ** + ** @param const xcb_query_font_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_query_font_properties_length (const xcb_query_font_reply_t *R /**< */) +{ + return R->properties_len; +} + + +/***************************************************************************** + ** + ** xcb_fontprop_iterator_t xcb_query_font_properties_iterator + ** + ** @param const xcb_query_font_reply_t *R + ** @returns xcb_fontprop_iterator_t + ** + *****************************************************************************/ + +xcb_fontprop_iterator_t +xcb_query_font_properties_iterator (const xcb_query_font_reply_t *R /**< */) +{ + xcb_fontprop_iterator_t i; + i.data = (xcb_fontprop_t *) (R + 1); + i.rem = R->properties_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_charinfo_t * xcb_query_font_char_infos + ** + ** @param const xcb_query_font_reply_t *R + ** @returns xcb_charinfo_t * + ** + *****************************************************************************/ + +xcb_charinfo_t * +xcb_query_font_char_infos (const xcb_query_font_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_fontprop_end(xcb_query_font_properties_iterator(R)); + return (xcb_charinfo_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_charinfo_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_query_font_char_infos_length + ** + ** @param const xcb_query_font_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_query_font_char_infos_length (const xcb_query_font_reply_t *R /**< */) +{ + return R->char_infos_len; +} + + +/***************************************************************************** + ** + ** xcb_charinfo_iterator_t xcb_query_font_char_infos_iterator + ** + ** @param const xcb_query_font_reply_t *R + ** @returns xcb_charinfo_iterator_t + ** + *****************************************************************************/ + +xcb_charinfo_iterator_t +xcb_query_font_char_infos_iterator (const xcb_query_font_reply_t *R /**< */) +{ + xcb_charinfo_iterator_t i; + xcb_generic_iterator_t prev = xcb_fontprop_end(xcb_query_font_properties_iterator(R)); + i.data = (xcb_charinfo_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_charinfo_t, prev.index)); + i.rem = R->char_infos_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_query_font_reply_t * xcb_query_font_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_font_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_font_reply_t * + ** + *****************************************************************************/ + +xcb_query_font_reply_t * +xcb_query_font_reply (xcb_connection_t *c /**< */, + xcb_query_font_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_query_font_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_query_text_extents_sizeof (const void *_buffer /**< */, + uint32_t string_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_query_text_extents_request_t); + xcb_tmp += xcb_block_len; + /* string */ + xcb_block_len += string_len * sizeof(xcb_char2b_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_char2b_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_query_text_extents_cookie_t xcb_query_text_extents + ** + ** @param xcb_connection_t *c + ** @param xcb_fontable_t font + ** @param uint32_t string_len + ** @param const xcb_char2b_t *string + ** @returns xcb_query_text_extents_cookie_t + ** + *****************************************************************************/ + +xcb_query_text_extents_cookie_t +xcb_query_text_extents (xcb_connection_t *c /**< */, + xcb_fontable_t font /**< */, + uint32_t string_len /**< */, + const xcb_char2b_t *string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_QUERY_TEXT_EXTENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_query_text_extents_cookie_t xcb_ret; + xcb_query_text_extents_request_t xcb_out; + + xcb_out.odd_length = (string_len & 1); + xcb_out.font = font; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_char2b_t string */ + xcb_parts[4].iov_base = (char *) string; + xcb_parts[4].iov_len = string_len * sizeof(xcb_char2b_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_text_extents_cookie_t xcb_query_text_extents_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_fontable_t font + ** @param uint32_t string_len + ** @param const xcb_char2b_t *string + ** @returns xcb_query_text_extents_cookie_t + ** + *****************************************************************************/ + +xcb_query_text_extents_cookie_t +xcb_query_text_extents_unchecked (xcb_connection_t *c /**< */, + xcb_fontable_t font /**< */, + uint32_t string_len /**< */, + const xcb_char2b_t *string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_QUERY_TEXT_EXTENTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_query_text_extents_cookie_t xcb_ret; + xcb_query_text_extents_request_t xcb_out; + + xcb_out.odd_length = (string_len & 1); + xcb_out.font = font; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_char2b_t string */ + xcb_parts[4].iov_base = (char *) string; + xcb_parts[4].iov_len = string_len * sizeof(xcb_char2b_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_text_extents_reply_t * xcb_query_text_extents_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_text_extents_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_text_extents_reply_t * + ** + *****************************************************************************/ + +xcb_query_text_extents_reply_t * +xcb_query_text_extents_reply (xcb_connection_t *c /**< */, + xcb_query_text_extents_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_query_text_extents_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_str_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_str_t *_aux = (xcb_str_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_str_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_str_name + ** + ** @param const xcb_str_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_str_name (const xcb_str_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_str_name_length + ** + ** @param const xcb_str_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_str_name_length (const xcb_str_t *R /**< */) +{ + return R->name_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_str_name_end + ** + ** @param const xcb_str_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_str_name_end (const xcb_str_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->name_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_str_next + ** + ** @param xcb_str_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_str_next (xcb_str_iterator_t *i /**< */) +{ + xcb_str_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_str_t *)(((char *)R) + xcb_str_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_str_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_str_end + ** + ** @param xcb_str_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_str_end (xcb_str_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_str_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_list_fonts_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_list_fonts_request_t *_aux = (xcb_list_fonts_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_list_fonts_request_t); + xcb_tmp += xcb_block_len; + /* pattern */ + xcb_block_len += _aux->pattern_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_list_fonts_cookie_t xcb_list_fonts + ** + ** @param xcb_connection_t *c + ** @param uint16_t max_names + ** @param uint16_t pattern_len + ** @param const char *pattern + ** @returns xcb_list_fonts_cookie_t + ** + *****************************************************************************/ + +xcb_list_fonts_cookie_t +xcb_list_fonts (xcb_connection_t *c /**< */, + uint16_t max_names /**< */, + uint16_t pattern_len /**< */, + const char *pattern /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_LIST_FONTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_list_fonts_cookie_t xcb_ret; + xcb_list_fonts_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.max_names = max_names; + xcb_out.pattern_len = pattern_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char pattern */ + xcb_parts[4].iov_base = (char *) pattern; + xcb_parts[4].iov_len = pattern_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_list_fonts_cookie_t xcb_list_fonts_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t max_names + ** @param uint16_t pattern_len + ** @param const char *pattern + ** @returns xcb_list_fonts_cookie_t + ** + *****************************************************************************/ + +xcb_list_fonts_cookie_t +xcb_list_fonts_unchecked (xcb_connection_t *c /**< */, + uint16_t max_names /**< */, + uint16_t pattern_len /**< */, + const char *pattern /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_LIST_FONTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_list_fonts_cookie_t xcb_ret; + xcb_list_fonts_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.max_names = max_names; + xcb_out.pattern_len = pattern_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char pattern */ + xcb_parts[4].iov_base = (char *) pattern; + xcb_parts[4].iov_len = pattern_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_list_fonts_names_length + ** + ** @param const xcb_list_fonts_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_fonts_names_length (const xcb_list_fonts_reply_t *R /**< */) +{ + return R->names_len; +} + + +/***************************************************************************** + ** + ** xcb_str_iterator_t xcb_list_fonts_names_iterator + ** + ** @param const xcb_list_fonts_reply_t *R + ** @returns xcb_str_iterator_t + ** + *****************************************************************************/ + +xcb_str_iterator_t +xcb_list_fonts_names_iterator (const xcb_list_fonts_reply_t *R /**< */) +{ + xcb_str_iterator_t i; + i.data = (xcb_str_t *) (R + 1); + i.rem = R->names_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_list_fonts_reply_t * xcb_list_fonts_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_fonts_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_fonts_reply_t * + ** + *****************************************************************************/ + +xcb_list_fonts_reply_t * +xcb_list_fonts_reply (xcb_connection_t *c /**< */, + xcb_list_fonts_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_list_fonts_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_list_fonts_with_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_list_fonts_with_info_request_t *_aux = (xcb_list_fonts_with_info_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_list_fonts_with_info_request_t); + xcb_tmp += xcb_block_len; + /* pattern */ + xcb_block_len += _aux->pattern_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_list_fonts_with_info_cookie_t xcb_list_fonts_with_info + ** + ** @param xcb_connection_t *c + ** @param uint16_t max_names + ** @param uint16_t pattern_len + ** @param const char *pattern + ** @returns xcb_list_fonts_with_info_cookie_t + ** + *****************************************************************************/ + +xcb_list_fonts_with_info_cookie_t +xcb_list_fonts_with_info (xcb_connection_t *c /**< */, + uint16_t max_names /**< */, + uint16_t pattern_len /**< */, + const char *pattern /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_LIST_FONTS_WITH_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_list_fonts_with_info_cookie_t xcb_ret; + xcb_list_fonts_with_info_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.max_names = max_names; + xcb_out.pattern_len = pattern_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char pattern */ + xcb_parts[4].iov_base = (char *) pattern; + xcb_parts[4].iov_len = pattern_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_list_fonts_with_info_cookie_t xcb_list_fonts_with_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t max_names + ** @param uint16_t pattern_len + ** @param const char *pattern + ** @returns xcb_list_fonts_with_info_cookie_t + ** + *****************************************************************************/ + +xcb_list_fonts_with_info_cookie_t +xcb_list_fonts_with_info_unchecked (xcb_connection_t *c /**< */, + uint16_t max_names /**< */, + uint16_t pattern_len /**< */, + const char *pattern /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_LIST_FONTS_WITH_INFO, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_list_fonts_with_info_cookie_t xcb_ret; + xcb_list_fonts_with_info_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.max_names = max_names; + xcb_out.pattern_len = pattern_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char pattern */ + xcb_parts[4].iov_base = (char *) pattern; + xcb_parts[4].iov_len = pattern_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_fontprop_t * xcb_list_fonts_with_info_properties + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns xcb_fontprop_t * + ** + *****************************************************************************/ + +xcb_fontprop_t * +xcb_list_fonts_with_info_properties (const xcb_list_fonts_with_info_reply_t *R /**< */) +{ + return (xcb_fontprop_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_list_fonts_with_info_properties_length + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_fonts_with_info_properties_length (const xcb_list_fonts_with_info_reply_t *R /**< */) +{ + return R->properties_len; +} + + +/***************************************************************************** + ** + ** xcb_fontprop_iterator_t xcb_list_fonts_with_info_properties_iterator + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns xcb_fontprop_iterator_t + ** + *****************************************************************************/ + +xcb_fontprop_iterator_t +xcb_list_fonts_with_info_properties_iterator (const xcb_list_fonts_with_info_reply_t *R /**< */) +{ + xcb_fontprop_iterator_t i; + i.data = (xcb_fontprop_t *) (R + 1); + i.rem = R->properties_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** char * xcb_list_fonts_with_info_name + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_list_fonts_with_info_name (const xcb_list_fonts_with_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_fontprop_end(xcb_list_fonts_with_info_properties_iterator(R)); + return (char *) ((char *) prev.data + XCB_TYPE_PAD(char, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_list_fonts_with_info_name_length + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_fonts_with_info_name_length (const xcb_list_fonts_with_info_reply_t *R /**< */) +{ + return R->name_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_list_fonts_with_info_name_end + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_list_fonts_with_info_name_end (const xcb_list_fonts_with_info_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_fontprop_end(xcb_list_fonts_with_info_properties_iterator(R)); + i.data = ((char *) child.data) + (R->name_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_list_fonts_with_info_reply_t * xcb_list_fonts_with_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_fonts_with_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_fonts_with_info_reply_t * + ** + *****************************************************************************/ + +xcb_list_fonts_with_info_reply_t * +xcb_list_fonts_with_info_reply (xcb_connection_t *c /**< */, + xcb_list_fonts_with_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_list_fonts_with_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_set_font_path_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_set_font_path_request_t *_aux = (xcb_set_font_path_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_set_font_path_request_t); + xcb_tmp += xcb_block_len; + /* font */ + for(i=0; i<_aux->font_qty; i++) { + xcb_tmp_len = xcb_str_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_str_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_font_path_checked + ** + ** @param xcb_connection_t *c + ** @param uint16_t font_qty + ** @param const xcb_str_t *font + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_font_path_checked (xcb_connection_t *c /**< */, + uint16_t font_qty /**< */, + const xcb_str_t *font /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_SET_FONT_PATH, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_set_font_path_request_t xcb_out; + unsigned int i; + unsigned int xcb_tmp_len; + char *xcb_tmp; + + xcb_out.pad0 = 0; + xcb_out.font_qty = font_qty; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_str_t font */ + xcb_parts[4].iov_base = (char *) font; + xcb_parts[4].iov_len = 0; + xcb_tmp = (char *)font; + for(i=0; ipath_len; i++) { + xcb_tmp_len = xcb_str_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_str_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_get_font_path_cookie_t xcb_get_font_path + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_font_path_cookie_t + ** + *****************************************************************************/ + +xcb_get_font_path_cookie_t +xcb_get_font_path (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_FONT_PATH, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_font_path_cookie_t xcb_ret; + xcb_get_font_path_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_font_path_cookie_t xcb_get_font_path_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_font_path_cookie_t + ** + *****************************************************************************/ + +xcb_get_font_path_cookie_t +xcb_get_font_path_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_FONT_PATH, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_font_path_cookie_t xcb_ret; + xcb_get_font_path_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_get_font_path_path_length + ** + ** @param const xcb_get_font_path_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_font_path_path_length (const xcb_get_font_path_reply_t *R /**< */) +{ + return R->path_len; +} + + +/***************************************************************************** + ** + ** xcb_str_iterator_t xcb_get_font_path_path_iterator + ** + ** @param const xcb_get_font_path_reply_t *R + ** @returns xcb_str_iterator_t + ** + *****************************************************************************/ + +xcb_str_iterator_t +xcb_get_font_path_path_iterator (const xcb_get_font_path_reply_t *R /**< */) +{ + xcb_str_iterator_t i; + i.data = (xcb_str_t *) (R + 1); + i.rem = R->path_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_get_font_path_reply_t * xcb_get_font_path_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_font_path_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_font_path_reply_t * + ** + *****************************************************************************/ + +xcb_get_font_path_reply_t * +xcb_get_font_path_reply (xcb_connection_t *c /**< */, + xcb_get_font_path_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_font_path_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t depth + ** @param xcb_pixmap_t pid + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_pixmap_checked (xcb_connection_t *c /**< */, + uint8_t depth /**< */, + xcb_pixmap_t pid /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CREATE_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_create_pixmap_request_t xcb_out; + + xcb_out.depth = depth; + xcb_out.pid = pid; + xcb_out.drawable = drawable; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_pixmap + ** + ** @param xcb_connection_t *c + ** @param uint8_t depth + ** @param xcb_pixmap_t pid + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_pixmap (xcb_connection_t *c /**< */, + uint8_t depth /**< */, + xcb_pixmap_t pid /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CREATE_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_create_pixmap_request_t xcb_out; + + xcb_out.depth = depth; + xcb_out.pid = pid; + xcb_out.drawable = drawable; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_pixmap_t pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_pixmap_checked (xcb_connection_t *c /**< */, + xcb_pixmap_t pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FREE_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_free_pixmap_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.pixmap = pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_pixmap_t pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_pixmap (xcb_connection_t *c /**< */, + xcb_pixmap_t pixmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FREE_PIXMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_free_pixmap_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.pixmap = pixmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_create_gc_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_create_gc_request_t *_aux = (xcb_create_gc_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_create_gc_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t cid + ** @param xcb_drawable_t drawable + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_gc_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t cid /**< */, + xcb_drawable_t drawable /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CREATE_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_create_gc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cid = cid; + xcb_out.drawable = drawable; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t cid + ** @param xcb_drawable_t drawable + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_gc (xcb_connection_t *c /**< */, + xcb_gcontext_t cid /**< */, + xcb_drawable_t drawable /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CREATE_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_create_gc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cid = cid; + xcb_out.drawable = drawable; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_change_gc_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_change_gc_request_t *_aux = (xcb_change_gc_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_change_gc_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_gc_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_gc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.gc = gc; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_gc (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_gc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.gc = gc; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t src_gc + ** @param xcb_gcontext_t dst_gc + ** @param uint32_t value_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_gc_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t src_gc /**< */, + xcb_gcontext_t dst_gc /**< */, + uint32_t value_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_COPY_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_copy_gc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_gc = src_gc; + xcb_out.dst_gc = dst_gc; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t src_gc + ** @param xcb_gcontext_t dst_gc + ** @param uint32_t value_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_gc (xcb_connection_t *c /**< */, + xcb_gcontext_t src_gc /**< */, + xcb_gcontext_t dst_gc /**< */, + uint32_t value_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_COPY_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_copy_gc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_gc = src_gc; + xcb_out.dst_gc = dst_gc; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_set_dashes_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_set_dashes_request_t *_aux = (xcb_set_dashes_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_set_dashes_request_t); + xcb_tmp += xcb_block_len; + /* dashes */ + xcb_block_len += _aux->dashes_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_dashes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param uint16_t dash_offset + ** @param uint16_t dashes_len + ** @param const uint8_t *dashes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_dashes_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + uint16_t dash_offset /**< */, + uint16_t dashes_len /**< */, + const uint8_t *dashes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_SET_DASHES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_set_dashes_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.gc = gc; + xcb_out.dash_offset = dash_offset; + xcb_out.dashes_len = dashes_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t dashes */ + xcb_parts[4].iov_base = (char *) dashes; + xcb_parts[4].iov_len = dashes_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_dashes + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param uint16_t dash_offset + ** @param uint16_t dashes_len + ** @param const uint8_t *dashes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_dashes (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + uint16_t dash_offset /**< */, + uint16_t dashes_len /**< */, + const uint8_t *dashes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_SET_DASHES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_set_dashes_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.gc = gc; + xcb_out.dash_offset = dash_offset; + xcb_out.dashes_len = dashes_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t dashes */ + xcb_parts[4].iov_base = (char *) dashes; + xcb_parts[4].iov_len = dashes_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_set_clip_rectangles_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_set_clip_rectangles_request_t); + xcb_tmp += xcb_block_len; + /* rectangles */ + xcb_block_len += rectangles_len * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_clip_rectangles_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t ordering + ** @param xcb_gcontext_t gc + ** @param int16_t clip_x_origin + ** @param int16_t clip_y_origin + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_clip_rectangles_checked (xcb_connection_t *c /**< */, + uint8_t ordering /**< */, + xcb_gcontext_t gc /**< */, + int16_t clip_x_origin /**< */, + int16_t clip_y_origin /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_SET_CLIP_RECTANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_set_clip_rectangles_request_t xcb_out; + + xcb_out.ordering = ordering; + xcb_out.gc = gc; + xcb_out.clip_x_origin = clip_x_origin; + xcb_out.clip_y_origin = clip_y_origin; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_clip_rectangles + ** + ** @param xcb_connection_t *c + ** @param uint8_t ordering + ** @param xcb_gcontext_t gc + ** @param int16_t clip_x_origin + ** @param int16_t clip_y_origin + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_clip_rectangles (xcb_connection_t *c /**< */, + uint8_t ordering /**< */, + xcb_gcontext_t gc /**< */, + int16_t clip_x_origin /**< */, + int16_t clip_y_origin /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_SET_CLIP_RECTANGLES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_set_clip_rectangles_request_t xcb_out; + + xcb_out.ordering = ordering; + xcb_out.gc = gc; + xcb_out.clip_x_origin = clip_x_origin; + xcb_out.clip_y_origin = clip_y_origin; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_gc_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FREE_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_free_gc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_gc (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FREE_GC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_free_gc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_clear_area_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t exposures + ** @param xcb_window_t window + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_clear_area_checked (xcb_connection_t *c /**< */, + uint8_t exposures /**< */, + xcb_window_t window /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CLEAR_AREA, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_clear_area_request_t xcb_out; + + xcb_out.exposures = exposures; + xcb_out.window = window; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_clear_area + ** + ** @param xcb_connection_t *c + ** @param uint8_t exposures + ** @param xcb_window_t window + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_clear_area (xcb_connection_t *c /**< */, + uint8_t exposures /**< */, + xcb_window_t window /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CLEAR_AREA, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_clear_area_request_t xcb_out; + + xcb_out.exposures = exposures; + xcb_out.window = window; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_area_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t src_drawable + ** @param xcb_drawable_t dst_drawable + ** @param xcb_gcontext_t gc + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_area_checked (xcb_connection_t *c /**< */, + xcb_drawable_t src_drawable /**< */, + xcb_drawable_t dst_drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_COPY_AREA, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_copy_area_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_drawable = src_drawable; + xcb_out.dst_drawable = dst_drawable; + xcb_out.gc = gc; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_area + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t src_drawable + ** @param xcb_drawable_t dst_drawable + ** @param xcb_gcontext_t gc + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_area (xcb_connection_t *c /**< */, + xcb_drawable_t src_drawable /**< */, + xcb_drawable_t dst_drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_COPY_AREA, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_copy_area_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_drawable = src_drawable; + xcb_out.dst_drawable = dst_drawable; + xcb_out.gc = gc; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_plane_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t src_drawable + ** @param xcb_drawable_t dst_drawable + ** @param xcb_gcontext_t gc + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t bit_plane + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_plane_checked (xcb_connection_t *c /**< */, + xcb_drawable_t src_drawable /**< */, + xcb_drawable_t dst_drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t bit_plane /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_COPY_PLANE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_copy_plane_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_drawable = src_drawable; + xcb_out.dst_drawable = dst_drawable; + xcb_out.gc = gc; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.bit_plane = bit_plane; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_plane + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t src_drawable + ** @param xcb_drawable_t dst_drawable + ** @param xcb_gcontext_t gc + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t bit_plane + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_plane (xcb_connection_t *c /**< */, + xcb_drawable_t src_drawable /**< */, + xcb_drawable_t dst_drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t bit_plane /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_COPY_PLANE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_copy_plane_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.src_drawable = src_drawable; + xcb_out.dst_drawable = dst_drawable; + xcb_out.gc = gc; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.bit_plane = bit_plane; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_poly_point_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_poly_point_request_t); + xcb_tmp += xcb_block_len; + /* points */ + xcb_block_len += points_len * sizeof(xcb_point_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_point_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_point_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t coordinate_mode + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_point_checked (xcb_connection_t *c /**< */, + uint8_t coordinate_mode /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_POINT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_point_request_t xcb_out; + + xcb_out.coordinate_mode = coordinate_mode; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_point_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_point_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_point + ** + ** @param xcb_connection_t *c + ** @param uint8_t coordinate_mode + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_point (xcb_connection_t *c /**< */, + uint8_t coordinate_mode /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_POINT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_point_request_t xcb_out; + + xcb_out.coordinate_mode = coordinate_mode; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_point_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_point_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_poly_line_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_poly_line_request_t); + xcb_tmp += xcb_block_len; + /* points */ + xcb_block_len += points_len * sizeof(xcb_point_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_point_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_line_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t coordinate_mode + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_line_checked (xcb_connection_t *c /**< */, + uint8_t coordinate_mode /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_LINE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_line_request_t xcb_out; + + xcb_out.coordinate_mode = coordinate_mode; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_point_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_point_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_line + ** + ** @param xcb_connection_t *c + ** @param uint8_t coordinate_mode + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_line (xcb_connection_t *c /**< */, + uint8_t coordinate_mode /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_LINE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_line_request_t xcb_out; + + xcb_out.coordinate_mode = coordinate_mode; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_point_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_point_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** void xcb_segment_next + ** + ** @param xcb_segment_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_segment_next (xcb_segment_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_segment_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_segment_end + ** + ** @param xcb_segment_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_segment_end (xcb_segment_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_poly_segment_sizeof (const void *_buffer /**< */, + uint32_t segments_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_poly_segment_request_t); + xcb_tmp += xcb_block_len; + /* segments */ + xcb_block_len += segments_len * sizeof(xcb_segment_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_segment_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_segment_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t segments_len + ** @param const xcb_segment_t *segments + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_segment_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t segments_len /**< */, + const xcb_segment_t *segments /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_SEGMENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_segment_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_segment_t segments */ + xcb_parts[4].iov_base = (char *) segments; + xcb_parts[4].iov_len = segments_len * sizeof(xcb_segment_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_segment + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t segments_len + ** @param const xcb_segment_t *segments + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_segment (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t segments_len /**< */, + const xcb_segment_t *segments /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_SEGMENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_segment_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_segment_t segments */ + xcb_parts[4].iov_base = (char *) segments; + xcb_parts[4].iov_len = segments_len * sizeof(xcb_segment_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_poly_rectangle_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_poly_rectangle_request_t); + xcb_tmp += xcb_block_len; + /* rectangles */ + xcb_block_len += rectangles_len * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_rectangle_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_rectangle_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_RECTANGLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_rectangle_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_rectangle + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_rectangle (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_RECTANGLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_rectangle_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_poly_arc_sizeof (const void *_buffer /**< */, + uint32_t arcs_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_poly_arc_request_t); + xcb_tmp += xcb_block_len; + /* arcs */ + xcb_block_len += arcs_len * sizeof(xcb_arc_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_arc_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_arc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t arcs_len + ** @param const xcb_arc_t *arcs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_arc_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t arcs_len /**< */, + const xcb_arc_t *arcs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_ARC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_arc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_arc_t arcs */ + xcb_parts[4].iov_base = (char *) arcs; + xcb_parts[4].iov_len = arcs_len * sizeof(xcb_arc_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_arc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t arcs_len + ** @param const xcb_arc_t *arcs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_arc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t arcs_len /**< */, + const xcb_arc_t *arcs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_ARC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_arc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_arc_t arcs */ + xcb_parts[4].iov_base = (char *) arcs; + xcb_parts[4].iov_len = arcs_len * sizeof(xcb_arc_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_fill_poly_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_fill_poly_request_t); + xcb_tmp += xcb_block_len; + /* points */ + xcb_block_len += points_len * sizeof(xcb_point_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_point_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_fill_poly_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint8_t shape + ** @param uint8_t coordinate_mode + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_fill_poly_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint8_t shape /**< */, + uint8_t coordinate_mode /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_FILL_POLY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_fill_poly_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.shape = shape; + xcb_out.coordinate_mode = coordinate_mode; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_point_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_point_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_fill_poly + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint8_t shape + ** @param uint8_t coordinate_mode + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_fill_poly (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint8_t shape /**< */, + uint8_t coordinate_mode /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_FILL_POLY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_fill_poly_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.shape = shape; + xcb_out.coordinate_mode = coordinate_mode; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_point_t points */ + xcb_parts[4].iov_base = (char *) points; + xcb_parts[4].iov_len = points_len * sizeof(xcb_point_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_poly_fill_rectangle_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_poly_fill_rectangle_request_t); + xcb_tmp += xcb_block_len; + /* rectangles */ + xcb_block_len += rectangles_len * sizeof(xcb_rectangle_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_rectangle_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_fill_rectangle_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_fill_rectangle_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_FILL_RECTANGLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_fill_rectangle_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_fill_rectangle + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_fill_rectangle (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_FILL_RECTANGLE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_fill_rectangle_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_rectangle_t rectangles */ + xcb_parts[4].iov_base = (char *) rectangles; + xcb_parts[4].iov_len = rectangles_len * sizeof(xcb_rectangle_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_poly_fill_arc_sizeof (const void *_buffer /**< */, + uint32_t arcs_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_poly_fill_arc_request_t); + xcb_tmp += xcb_block_len; + /* arcs */ + xcb_block_len += arcs_len * sizeof(xcb_arc_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_arc_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_fill_arc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t arcs_len + ** @param const xcb_arc_t *arcs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_fill_arc_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t arcs_len /**< */, + const xcb_arc_t *arcs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_FILL_ARC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_fill_arc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_arc_t arcs */ + xcb_parts[4].iov_base = (char *) arcs; + xcb_parts[4].iov_len = arcs_len * sizeof(xcb_arc_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_fill_arc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t arcs_len + ** @param const xcb_arc_t *arcs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_fill_arc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t arcs_len /**< */, + const xcb_arc_t *arcs /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_FILL_ARC, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_fill_arc_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_arc_t arcs */ + xcb_parts[4].iov_base = (char *) arcs; + xcb_parts[4].iov_len = arcs_len * sizeof(xcb_arc_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_put_image_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_put_image_request_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += data_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_put_image_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t format + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint16_t width + ** @param uint16_t height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint8_t left_pad + ** @param uint8_t depth + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_put_image_checked (xcb_connection_t *c /**< */, + uint8_t format /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint8_t left_pad /**< */, + uint8_t depth /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_PUT_IMAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_put_image_request_t xcb_out; + + xcb_out.format = format; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.left_pad = left_pad; + xcb_out.depth = depth; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_put_image + ** + ** @param xcb_connection_t *c + ** @param uint8_t format + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint16_t width + ** @param uint16_t height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint8_t left_pad + ** @param uint8_t depth + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_put_image (xcb_connection_t *c /**< */, + uint8_t format /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint8_t left_pad /**< */, + uint8_t depth /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_PUT_IMAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_put_image_request_t xcb_out; + + xcb_out.format = format; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.dst_x = dst_x; + xcb_out.dst_y = dst_y; + xcb_out.left_pad = left_pad; + xcb_out.depth = depth; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_get_image_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_get_image_reply_t *_aux = (xcb_get_image_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_get_image_reply_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += (_aux->length * 4) * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_get_image_cookie_t xcb_get_image + ** + ** @param xcb_connection_t *c + ** @param uint8_t format + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t plane_mask + ** @returns xcb_get_image_cookie_t + ** + *****************************************************************************/ + +xcb_get_image_cookie_t +xcb_get_image (xcb_connection_t *c /**< */, + uint8_t format /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t plane_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_IMAGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_image_cookie_t xcb_ret; + xcb_get_image_request_t xcb_out; + + xcb_out.format = format; + xcb_out.drawable = drawable; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.plane_mask = plane_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_image_cookie_t xcb_get_image_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t format + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t plane_mask + ** @returns xcb_get_image_cookie_t + ** + *****************************************************************************/ + +xcb_get_image_cookie_t +xcb_get_image_unchecked (xcb_connection_t *c /**< */, + uint8_t format /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t plane_mask /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_IMAGE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_image_cookie_t xcb_ret; + xcb_get_image_request_t xcb_out; + + xcb_out.format = format; + xcb_out.drawable = drawable; + xcb_out.x = x; + xcb_out.y = y; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.plane_mask = plane_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_get_image_data + ** + ** @param const xcb_get_image_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_get_image_data (const xcb_get_image_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_get_image_data_length + ** + ** @param const xcb_get_image_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_image_data_length (const xcb_get_image_reply_t *R /**< */) +{ + return (R->length * 4); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_image_data_end + ** + ** @param const xcb_get_image_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_image_data_end (const xcb_get_image_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + ((R->length * 4)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_get_image_reply_t * xcb_get_image_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_image_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_image_reply_t * + ** + *****************************************************************************/ + +xcb_get_image_reply_t * +xcb_get_image_reply (xcb_connection_t *c /**< */, + xcb_get_image_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_image_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_poly_text_8_sizeof (const void *_buffer /**< */, + uint32_t items_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_poly_text_8_request_t); + xcb_tmp += xcb_block_len; + /* items */ + xcb_block_len += items_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_text_8_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param uint32_t items_len + ** @param const uint8_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_text_8_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint32_t items_len /**< */, + const uint8_t *items /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_TEXT_8, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_text_8_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t items */ + xcb_parts[4].iov_base = (char *) items; + xcb_parts[4].iov_len = items_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_text_8 + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param uint32_t items_len + ** @param const uint8_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_text_8 (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint32_t items_len /**< */, + const uint8_t *items /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_TEXT_8, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_text_8_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t items */ + xcb_parts[4].iov_base = (char *) items; + xcb_parts[4].iov_len = items_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_poly_text_16_sizeof (const void *_buffer /**< */, + uint32_t items_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_poly_text_16_request_t); + xcb_tmp += xcb_block_len; + /* items */ + xcb_block_len += items_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_text_16_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param uint32_t items_len + ** @param const uint8_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_text_16_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint32_t items_len /**< */, + const uint8_t *items /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_TEXT_16, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_text_16_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t items */ + xcb_parts[4].iov_base = (char *) items; + xcb_parts[4].iov_len = items_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_text_16 + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param uint32_t items_len + ** @param const uint8_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_text_16 (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint32_t items_len /**< */, + const uint8_t *items /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_POLY_TEXT_16, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_poly_text_16_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t items */ + xcb_parts[4].iov_base = (char *) items; + xcb_parts[4].iov_len = items_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_image_text_8_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_image_text_8_request_t *_aux = (xcb_image_text_8_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_image_text_8_request_t); + xcb_tmp += xcb_block_len; + /* string */ + xcb_block_len += _aux->string_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_image_text_8_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t string_len + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param const char *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_image_text_8_checked (xcb_connection_t *c /**< */, + uint8_t string_len /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + const char *string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_IMAGE_TEXT_8, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_image_text_8_request_t xcb_out; + + xcb_out.string_len = string_len; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char string */ + xcb_parts[4].iov_base = (char *) string; + xcb_parts[4].iov_len = string_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_image_text_8 + ** + ** @param xcb_connection_t *c + ** @param uint8_t string_len + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param const char *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_image_text_8 (xcb_connection_t *c /**< */, + uint8_t string_len /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + const char *string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_IMAGE_TEXT_8, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_image_text_8_request_t xcb_out; + + xcb_out.string_len = string_len; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char string */ + xcb_parts[4].iov_base = (char *) string; + xcb_parts[4].iov_len = string_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_image_text_16_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_image_text_16_request_t *_aux = (xcb_image_text_16_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_image_text_16_request_t); + xcb_tmp += xcb_block_len; + /* string */ + xcb_block_len += _aux->string_len * sizeof(xcb_char2b_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_char2b_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_image_text_16_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t string_len + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param const xcb_char2b_t *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_image_text_16_checked (xcb_connection_t *c /**< */, + uint8_t string_len /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + const xcb_char2b_t *string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_IMAGE_TEXT_16, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_image_text_16_request_t xcb_out; + + xcb_out.string_len = string_len; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_char2b_t string */ + xcb_parts[4].iov_base = (char *) string; + xcb_parts[4].iov_len = string_len * sizeof(xcb_char2b_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_image_text_16 + ** + ** @param xcb_connection_t *c + ** @param uint8_t string_len + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param const xcb_char2b_t *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_image_text_16 (xcb_connection_t *c /**< */, + uint8_t string_len /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + const xcb_char2b_t *string /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_IMAGE_TEXT_16, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_image_text_16_request_t xcb_out; + + xcb_out.string_len = string_len; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_char2b_t string */ + xcb_parts[4].iov_base = (char *) string; + xcb_parts[4].iov_len = string_len * sizeof(xcb_char2b_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_colormap_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t alloc + ** @param xcb_colormap_t mid + ** @param xcb_window_t window + ** @param xcb_visualid_t visual + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_colormap_checked (xcb_connection_t *c /**< */, + uint8_t alloc /**< */, + xcb_colormap_t mid /**< */, + xcb_window_t window /**< */, + xcb_visualid_t visual /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CREATE_COLORMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_create_colormap_request_t xcb_out; + + xcb_out.alloc = alloc; + xcb_out.mid = mid; + xcb_out.window = window; + xcb_out.visual = visual; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_colormap + ** + ** @param xcb_connection_t *c + ** @param uint8_t alloc + ** @param xcb_colormap_t mid + ** @param xcb_window_t window + ** @param xcb_visualid_t visual + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_colormap (xcb_connection_t *c /**< */, + uint8_t alloc /**< */, + xcb_colormap_t mid /**< */, + xcb_window_t window /**< */, + xcb_visualid_t visual /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CREATE_COLORMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_create_colormap_request_t xcb_out; + + xcb_out.alloc = alloc; + xcb_out.mid = mid; + xcb_out.window = window; + xcb_out.visual = visual; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_colormap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_colormap_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FREE_COLORMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_free_colormap_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_colormap + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_colormap (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FREE_COLORMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_free_colormap_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_colormap_and_free_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t mid + ** @param xcb_colormap_t src_cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_colormap_and_free_checked (xcb_connection_t *c /**< */, + xcb_colormap_t mid /**< */, + xcb_colormap_t src_cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_COPY_COLORMAP_AND_FREE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_copy_colormap_and_free_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.mid = mid; + xcb_out.src_cmap = src_cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_colormap_and_free + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t mid + ** @param xcb_colormap_t src_cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_colormap_and_free (xcb_connection_t *c /**< */, + xcb_colormap_t mid /**< */, + xcb_colormap_t src_cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_COPY_COLORMAP_AND_FREE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_copy_colormap_and_free_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.mid = mid; + xcb_out.src_cmap = src_cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_install_colormap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_install_colormap_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_INSTALL_COLORMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_install_colormap_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_install_colormap + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_install_colormap (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_INSTALL_COLORMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_install_colormap_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_uninstall_colormap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_uninstall_colormap_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNINSTALL_COLORMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_uninstall_colormap_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_uninstall_colormap + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_uninstall_colormap (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_UNINSTALL_COLORMAP, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_uninstall_colormap_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_list_installed_colormaps_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_list_installed_colormaps_reply_t *_aux = (xcb_list_installed_colormaps_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_list_installed_colormaps_reply_t); + xcb_tmp += xcb_block_len; + /* cmaps */ + xcb_block_len += _aux->cmaps_len * sizeof(xcb_colormap_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_colormap_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_list_installed_colormaps_cookie_t xcb_list_installed_colormaps + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_list_installed_colormaps_cookie_t + ** + *****************************************************************************/ + +xcb_list_installed_colormaps_cookie_t +xcb_list_installed_colormaps (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_LIST_INSTALLED_COLORMAPS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_list_installed_colormaps_cookie_t xcb_ret; + xcb_list_installed_colormaps_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_list_installed_colormaps_cookie_t xcb_list_installed_colormaps_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_list_installed_colormaps_cookie_t + ** + *****************************************************************************/ + +xcb_list_installed_colormaps_cookie_t +xcb_list_installed_colormaps_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_LIST_INSTALLED_COLORMAPS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_list_installed_colormaps_cookie_t xcb_ret; + xcb_list_installed_colormaps_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_colormap_t * xcb_list_installed_colormaps_cmaps + ** + ** @param const xcb_list_installed_colormaps_reply_t *R + ** @returns xcb_colormap_t * + ** + *****************************************************************************/ + +xcb_colormap_t * +xcb_list_installed_colormaps_cmaps (const xcb_list_installed_colormaps_reply_t *R /**< */) +{ + return (xcb_colormap_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_list_installed_colormaps_cmaps_length + ** + ** @param const xcb_list_installed_colormaps_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_installed_colormaps_cmaps_length (const xcb_list_installed_colormaps_reply_t *R /**< */) +{ + return R->cmaps_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_list_installed_colormaps_cmaps_end + ** + ** @param const xcb_list_installed_colormaps_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_list_installed_colormaps_cmaps_end (const xcb_list_installed_colormaps_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_colormap_t *) (R + 1)) + (R->cmaps_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_list_installed_colormaps_reply_t * xcb_list_installed_colormaps_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_installed_colormaps_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_installed_colormaps_reply_t * + ** + *****************************************************************************/ + +xcb_list_installed_colormaps_reply_t * +xcb_list_installed_colormaps_reply (xcb_connection_t *c /**< */, + xcb_list_installed_colormaps_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_list_installed_colormaps_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_alloc_color_cookie_t xcb_alloc_color + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t red + ** @param uint16_t green + ** @param uint16_t blue + ** @returns xcb_alloc_color_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_cookie_t +xcb_alloc_color (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t red /**< */, + uint16_t green /**< */, + uint16_t blue /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_ALLOC_COLOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_alloc_color_cookie_t xcb_ret; + xcb_alloc_color_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + xcb_out.red = red; + xcb_out.green = green; + xcb_out.blue = blue; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_alloc_color_cookie_t xcb_alloc_color_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t red + ** @param uint16_t green + ** @param uint16_t blue + ** @returns xcb_alloc_color_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_cookie_t +xcb_alloc_color_unchecked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t red /**< */, + uint16_t green /**< */, + uint16_t blue /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_ALLOC_COLOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_alloc_color_cookie_t xcb_ret; + xcb_alloc_color_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + xcb_out.red = red; + xcb_out.green = green; + xcb_out.blue = blue; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_alloc_color_reply_t * xcb_alloc_color_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_alloc_color_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_alloc_color_reply_t * + ** + *****************************************************************************/ + +xcb_alloc_color_reply_t * +xcb_alloc_color_reply (xcb_connection_t *c /**< */, + xcb_alloc_color_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_alloc_color_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_alloc_named_color_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_alloc_named_color_request_t *_aux = (xcb_alloc_named_color_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_alloc_named_color_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_alloc_named_color_cookie_t xcb_alloc_named_color + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_alloc_named_color_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_named_color_cookie_t +xcb_alloc_named_color (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_ALLOC_NAMED_COLOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_alloc_named_color_cookie_t xcb_ret; + xcb_alloc_named_color_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + xcb_out.name_len = name_len; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_alloc_named_color_cookie_t xcb_alloc_named_color_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_alloc_named_color_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_named_color_cookie_t +xcb_alloc_named_color_unchecked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_ALLOC_NAMED_COLOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_alloc_named_color_cookie_t xcb_ret; + xcb_alloc_named_color_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + xcb_out.name_len = name_len; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_alloc_named_color_reply_t * xcb_alloc_named_color_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_alloc_named_color_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_alloc_named_color_reply_t * + ** + *****************************************************************************/ + +xcb_alloc_named_color_reply_t * +xcb_alloc_named_color_reply (xcb_connection_t *c /**< */, + xcb_alloc_named_color_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_alloc_named_color_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_alloc_color_cells_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_alloc_color_cells_reply_t *_aux = (xcb_alloc_color_cells_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_alloc_color_cells_reply_t); + xcb_tmp += xcb_block_len; + /* pixels */ + xcb_block_len += _aux->pixels_len * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* masks */ + xcb_block_len += _aux->masks_len * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_alloc_color_cells_cookie_t xcb_alloc_color_cells + ** + ** @param xcb_connection_t *c + ** @param uint8_t contiguous + ** @param xcb_colormap_t cmap + ** @param uint16_t colors + ** @param uint16_t planes + ** @returns xcb_alloc_color_cells_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_cells_cookie_t +xcb_alloc_color_cells (xcb_connection_t *c /**< */, + uint8_t contiguous /**< */, + xcb_colormap_t cmap /**< */, + uint16_t colors /**< */, + uint16_t planes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_ALLOC_COLOR_CELLS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_alloc_color_cells_cookie_t xcb_ret; + xcb_alloc_color_cells_request_t xcb_out; + + xcb_out.contiguous = contiguous; + xcb_out.cmap = cmap; + xcb_out.colors = colors; + xcb_out.planes = planes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_alloc_color_cells_cookie_t xcb_alloc_color_cells_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t contiguous + ** @param xcb_colormap_t cmap + ** @param uint16_t colors + ** @param uint16_t planes + ** @returns xcb_alloc_color_cells_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_cells_cookie_t +xcb_alloc_color_cells_unchecked (xcb_connection_t *c /**< */, + uint8_t contiguous /**< */, + xcb_colormap_t cmap /**< */, + uint16_t colors /**< */, + uint16_t planes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_ALLOC_COLOR_CELLS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_alloc_color_cells_cookie_t xcb_ret; + xcb_alloc_color_cells_request_t xcb_out; + + xcb_out.contiguous = contiguous; + xcb_out.cmap = cmap; + xcb_out.colors = colors; + xcb_out.planes = planes; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_alloc_color_cells_pixels + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_alloc_color_cells_pixels (const xcb_alloc_color_cells_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_alloc_color_cells_pixels_length + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_alloc_color_cells_pixels_length (const xcb_alloc_color_cells_reply_t *R /**< */) +{ + return R->pixels_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_alloc_color_cells_pixels_end + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_alloc_color_cells_pixels_end (const xcb_alloc_color_cells_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->pixels_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_alloc_color_cells_masks + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_alloc_color_cells_masks (const xcb_alloc_color_cells_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_alloc_color_cells_pixels_end(R); + return (uint32_t *) ((char *) prev.data + XCB_TYPE_PAD(uint32_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_alloc_color_cells_masks_length + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_alloc_color_cells_masks_length (const xcb_alloc_color_cells_reply_t *R /**< */) +{ + return R->masks_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_alloc_color_cells_masks_end + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_alloc_color_cells_masks_end (const xcb_alloc_color_cells_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_alloc_color_cells_pixels_end(R); + i.data = ((uint32_t *) child.data) + (R->masks_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_alloc_color_cells_reply_t * xcb_alloc_color_cells_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_alloc_color_cells_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_alloc_color_cells_reply_t * + ** + *****************************************************************************/ + +xcb_alloc_color_cells_reply_t * +xcb_alloc_color_cells_reply (xcb_connection_t *c /**< */, + xcb_alloc_color_cells_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_alloc_color_cells_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_alloc_color_planes_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_alloc_color_planes_reply_t *_aux = (xcb_alloc_color_planes_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_alloc_color_planes_reply_t); + xcb_tmp += xcb_block_len; + /* pixels */ + xcb_block_len += _aux->pixels_len * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_alloc_color_planes_cookie_t xcb_alloc_color_planes + ** + ** @param xcb_connection_t *c + ** @param uint8_t contiguous + ** @param xcb_colormap_t cmap + ** @param uint16_t colors + ** @param uint16_t reds + ** @param uint16_t greens + ** @param uint16_t blues + ** @returns xcb_alloc_color_planes_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_planes_cookie_t +xcb_alloc_color_planes (xcb_connection_t *c /**< */, + uint8_t contiguous /**< */, + xcb_colormap_t cmap /**< */, + uint16_t colors /**< */, + uint16_t reds /**< */, + uint16_t greens /**< */, + uint16_t blues /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_ALLOC_COLOR_PLANES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_alloc_color_planes_cookie_t xcb_ret; + xcb_alloc_color_planes_request_t xcb_out; + + xcb_out.contiguous = contiguous; + xcb_out.cmap = cmap; + xcb_out.colors = colors; + xcb_out.reds = reds; + xcb_out.greens = greens; + xcb_out.blues = blues; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_alloc_color_planes_cookie_t xcb_alloc_color_planes_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t contiguous + ** @param xcb_colormap_t cmap + ** @param uint16_t colors + ** @param uint16_t reds + ** @param uint16_t greens + ** @param uint16_t blues + ** @returns xcb_alloc_color_planes_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_planes_cookie_t +xcb_alloc_color_planes_unchecked (xcb_connection_t *c /**< */, + uint8_t contiguous /**< */, + xcb_colormap_t cmap /**< */, + uint16_t colors /**< */, + uint16_t reds /**< */, + uint16_t greens /**< */, + uint16_t blues /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_ALLOC_COLOR_PLANES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_alloc_color_planes_cookie_t xcb_ret; + xcb_alloc_color_planes_request_t xcb_out; + + xcb_out.contiguous = contiguous; + xcb_out.cmap = cmap; + xcb_out.colors = colors; + xcb_out.reds = reds; + xcb_out.greens = greens; + xcb_out.blues = blues; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_alloc_color_planes_pixels + ** + ** @param const xcb_alloc_color_planes_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_alloc_color_planes_pixels (const xcb_alloc_color_planes_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_alloc_color_planes_pixels_length + ** + ** @param const xcb_alloc_color_planes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_alloc_color_planes_pixels_length (const xcb_alloc_color_planes_reply_t *R /**< */) +{ + return R->pixels_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_alloc_color_planes_pixels_end + ** + ** @param const xcb_alloc_color_planes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_alloc_color_planes_pixels_end (const xcb_alloc_color_planes_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->pixels_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_alloc_color_planes_reply_t * xcb_alloc_color_planes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_alloc_color_planes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_alloc_color_planes_reply_t * + ** + *****************************************************************************/ + +xcb_alloc_color_planes_reply_t * +xcb_alloc_color_planes_reply (xcb_connection_t *c /**< */, + xcb_alloc_color_planes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_alloc_color_planes_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_free_colors_sizeof (const void *_buffer /**< */, + uint32_t pixels_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_free_colors_request_t); + xcb_tmp += xcb_block_len; + /* pixels */ + xcb_block_len += pixels_len * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_colors_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t plane_mask + ** @param uint32_t pixels_len + ** @param const uint32_t *pixels + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_colors_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t plane_mask /**< */, + uint32_t pixels_len /**< */, + const uint32_t *pixels /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_FREE_COLORS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_free_colors_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + xcb_out.plane_mask = plane_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t pixels */ + xcb_parts[4].iov_base = (char *) pixels; + xcb_parts[4].iov_len = pixels_len * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_colors + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t plane_mask + ** @param uint32_t pixels_len + ** @param const uint32_t *pixels + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_colors (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t plane_mask /**< */, + uint32_t pixels_len /**< */, + const uint32_t *pixels /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_FREE_COLORS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_free_colors_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + xcb_out.plane_mask = plane_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t pixels */ + xcb_parts[4].iov_base = (char *) pixels; + xcb_parts[4].iov_len = pixels_len * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** void xcb_coloritem_next + ** + ** @param xcb_coloritem_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_coloritem_next (xcb_coloritem_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_coloritem_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_coloritem_end + ** + ** @param xcb_coloritem_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_coloritem_end (xcb_coloritem_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_store_colors_sizeof (const void *_buffer /**< */, + uint32_t items_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_store_colors_request_t); + xcb_tmp += xcb_block_len; + /* items */ + xcb_block_len += items_len * sizeof(xcb_coloritem_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_coloritem_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_store_colors_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t items_len + ** @param const xcb_coloritem_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_store_colors_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t items_len /**< */, + const xcb_coloritem_t *items /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_STORE_COLORS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_store_colors_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_coloritem_t items */ + xcb_parts[4].iov_base = (char *) items; + xcb_parts[4].iov_len = items_len * sizeof(xcb_coloritem_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_store_colors + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t items_len + ** @param const xcb_coloritem_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_store_colors (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t items_len /**< */, + const xcb_coloritem_t *items /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_STORE_COLORS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_store_colors_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_coloritem_t items */ + xcb_parts[4].iov_base = (char *) items; + xcb_parts[4].iov_len = items_len * sizeof(xcb_coloritem_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_store_named_color_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_store_named_color_request_t *_aux = (xcb_store_named_color_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_store_named_color_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_store_named_color_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t flags + ** @param xcb_colormap_t cmap + ** @param uint32_t pixel + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_store_named_color_checked (xcb_connection_t *c /**< */, + uint8_t flags /**< */, + xcb_colormap_t cmap /**< */, + uint32_t pixel /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_STORE_NAMED_COLOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_store_named_color_request_t xcb_out; + + xcb_out.flags = flags; + xcb_out.cmap = cmap; + xcb_out.pixel = pixel; + xcb_out.name_len = name_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_store_named_color + ** + ** @param xcb_connection_t *c + ** @param uint8_t flags + ** @param xcb_colormap_t cmap + ** @param uint32_t pixel + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_store_named_color (xcb_connection_t *c /**< */, + uint8_t flags /**< */, + xcb_colormap_t cmap /**< */, + uint32_t pixel /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_STORE_NAMED_COLOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_store_named_color_request_t xcb_out; + + xcb_out.flags = flags; + xcb_out.cmap = cmap; + xcb_out.pixel = pixel; + xcb_out.name_len = name_len; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** void xcb_rgb_next + ** + ** @param xcb_rgb_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_rgb_next (xcb_rgb_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_rgb_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_rgb_end + ** + ** @param xcb_rgb_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_rgb_end (xcb_rgb_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_query_colors_sizeof (const void *_buffer /**< */, + uint32_t pixels_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_query_colors_request_t); + xcb_tmp += xcb_block_len; + /* pixels */ + xcb_block_len += pixels_len * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_query_colors_cookie_t xcb_query_colors + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t pixels_len + ** @param const uint32_t *pixels + ** @returns xcb_query_colors_cookie_t + ** + *****************************************************************************/ + +xcb_query_colors_cookie_t +xcb_query_colors (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t pixels_len /**< */, + const uint32_t *pixels /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_QUERY_COLORS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_query_colors_cookie_t xcb_ret; + xcb_query_colors_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t pixels */ + xcb_parts[4].iov_base = (char *) pixels; + xcb_parts[4].iov_len = pixels_len * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_colors_cookie_t xcb_query_colors_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t pixels_len + ** @param const uint32_t *pixels + ** @returns xcb_query_colors_cookie_t + ** + *****************************************************************************/ + +xcb_query_colors_cookie_t +xcb_query_colors_unchecked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t pixels_len /**< */, + const uint32_t *pixels /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_QUERY_COLORS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_query_colors_cookie_t xcb_ret; + xcb_query_colors_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t pixels */ + xcb_parts[4].iov_base = (char *) pixels; + xcb_parts[4].iov_len = pixels_len * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_rgb_t * xcb_query_colors_colors + ** + ** @param const xcb_query_colors_reply_t *R + ** @returns xcb_rgb_t * + ** + *****************************************************************************/ + +xcb_rgb_t * +xcb_query_colors_colors (const xcb_query_colors_reply_t *R /**< */) +{ + return (xcb_rgb_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_query_colors_colors_length + ** + ** @param const xcb_query_colors_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_query_colors_colors_length (const xcb_query_colors_reply_t *R /**< */) +{ + return R->colors_len; +} + + +/***************************************************************************** + ** + ** xcb_rgb_iterator_t xcb_query_colors_colors_iterator + ** + ** @param const xcb_query_colors_reply_t *R + ** @returns xcb_rgb_iterator_t + ** + *****************************************************************************/ + +xcb_rgb_iterator_t +xcb_query_colors_colors_iterator (const xcb_query_colors_reply_t *R /**< */) +{ + xcb_rgb_iterator_t i; + i.data = (xcb_rgb_t *) (R + 1); + i.rem = R->colors_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_query_colors_reply_t * xcb_query_colors_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_colors_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_colors_reply_t * + ** + *****************************************************************************/ + +xcb_query_colors_reply_t * +xcb_query_colors_reply (xcb_connection_t *c /**< */, + xcb_query_colors_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_query_colors_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_lookup_color_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_lookup_color_request_t *_aux = (xcb_lookup_color_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_lookup_color_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_lookup_color_cookie_t xcb_lookup_color + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_lookup_color_cookie_t + ** + *****************************************************************************/ + +xcb_lookup_color_cookie_t +xcb_lookup_color (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_LOOKUP_COLOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_lookup_color_cookie_t xcb_ret; + xcb_lookup_color_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + xcb_out.name_len = name_len; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_lookup_color_cookie_t xcb_lookup_color_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_lookup_color_cookie_t + ** + *****************************************************************************/ + +xcb_lookup_color_cookie_t +xcb_lookup_color_unchecked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_LOOKUP_COLOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_lookup_color_cookie_t xcb_ret; + xcb_lookup_color_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cmap = cmap; + xcb_out.name_len = name_len; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_lookup_color_reply_t * xcb_lookup_color_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_lookup_color_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_lookup_color_reply_t * + ** + *****************************************************************************/ + +xcb_lookup_color_reply_t * +xcb_lookup_color_reply (xcb_connection_t *c /**< */, + xcb_lookup_color_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_lookup_color_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_pixmap_t source + ** @param xcb_pixmap_t mask + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @param uint16_t x + ** @param uint16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_pixmap_t source /**< */, + xcb_pixmap_t mask /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */, + uint16_t x /**< */, + uint16_t y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CREATE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_create_cursor_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cid = cid; + xcb_out.source = source; + xcb_out.mask = mask; + xcb_out.fore_red = fore_red; + xcb_out.fore_green = fore_green; + xcb_out.fore_blue = fore_blue; + xcb_out.back_red = back_red; + xcb_out.back_green = back_green; + xcb_out.back_blue = back_blue; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_pixmap_t source + ** @param xcb_pixmap_t mask + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @param uint16_t x + ** @param uint16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_pixmap_t source /**< */, + xcb_pixmap_t mask /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */, + uint16_t x /**< */, + uint16_t y /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CREATE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_create_cursor_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cid = cid; + xcb_out.source = source; + xcb_out.mask = mask; + xcb_out.fore_red = fore_red; + xcb_out.fore_green = fore_green; + xcb_out.fore_blue = fore_blue; + xcb_out.back_red = back_red; + xcb_out.back_green = back_green; + xcb_out.back_blue = back_blue; + xcb_out.x = x; + xcb_out.y = y; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_glyph_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_font_t source_font + ** @param xcb_font_t mask_font + ** @param uint16_t source_char + ** @param uint16_t mask_char + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_glyph_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_font_t source_font /**< */, + xcb_font_t mask_font /**< */, + uint16_t source_char /**< */, + uint16_t mask_char /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CREATE_GLYPH_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_create_glyph_cursor_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cid = cid; + xcb_out.source_font = source_font; + xcb_out.mask_font = mask_font; + xcb_out.source_char = source_char; + xcb_out.mask_char = mask_char; + xcb_out.fore_red = fore_red; + xcb_out.fore_green = fore_green; + xcb_out.fore_blue = fore_blue; + xcb_out.back_red = back_red; + xcb_out.back_green = back_green; + xcb_out.back_blue = back_blue; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_glyph_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_font_t source_font + ** @param xcb_font_t mask_font + ** @param uint16_t source_char + ** @param uint16_t mask_char + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_glyph_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_font_t source_font /**< */, + xcb_font_t mask_font /**< */, + uint16_t source_char /**< */, + uint16_t mask_char /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CREATE_GLYPH_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_create_glyph_cursor_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cid = cid; + xcb_out.source_font = source_font; + xcb_out.mask_font = mask_font; + xcb_out.source_char = source_char; + xcb_out.mask_char = mask_char; + xcb_out.fore_red = fore_red; + xcb_out.fore_green = fore_green; + xcb_out.fore_blue = fore_blue; + xcb_out.back_red = back_red; + xcb_out.back_green = back_green; + xcb_out.back_blue = back_blue; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FREE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_free_cursor_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cursor = cursor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FREE_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_free_cursor_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cursor = cursor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_recolor_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_recolor_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_RECOLOR_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_recolor_cursor_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cursor = cursor; + xcb_out.fore_red = fore_red; + xcb_out.fore_green = fore_green; + xcb_out.fore_blue = fore_blue; + xcb_out.back_red = back_red; + xcb_out.back_green = back_green; + xcb_out.back_blue = back_blue; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_recolor_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_recolor_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_RECOLOR_CURSOR, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_recolor_cursor_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.cursor = cursor; + xcb_out.fore_red = fore_red; + xcb_out.fore_green = fore_green; + xcb_out.fore_blue = fore_blue; + xcb_out.back_red = back_red; + xcb_out.back_green = back_green; + xcb_out.back_blue = back_blue; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_best_size_cookie_t xcb_query_best_size + ** + ** @param xcb_connection_t *c + ** @param uint8_t _class + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_query_best_size_cookie_t + ** + *****************************************************************************/ + +xcb_query_best_size_cookie_t +xcb_query_best_size (xcb_connection_t *c /**< */, + uint8_t _class /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_BEST_SIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_best_size_cookie_t xcb_ret; + xcb_query_best_size_request_t xcb_out; + + xcb_out._class = _class; + xcb_out.drawable = drawable; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_best_size_cookie_t xcb_query_best_size_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t _class + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_query_best_size_cookie_t + ** + *****************************************************************************/ + +xcb_query_best_size_cookie_t +xcb_query_best_size_unchecked (xcb_connection_t *c /**< */, + uint8_t _class /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_QUERY_BEST_SIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_query_best_size_cookie_t xcb_ret; + xcb_query_best_size_request_t xcb_out; + + xcb_out._class = _class; + xcb_out.drawable = drawable; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_best_size_reply_t * xcb_query_best_size_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_best_size_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_best_size_reply_t * + ** + *****************************************************************************/ + +xcb_query_best_size_reply_t * +xcb_query_best_size_reply (xcb_connection_t *c /**< */, + xcb_query_best_size_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_query_best_size_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_query_extension_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_query_extension_request_t *_aux = (xcb_query_extension_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_query_extension_request_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_query_extension_cookie_t xcb_query_extension + ** + ** @param xcb_connection_t *c + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_query_extension_cookie_t + ** + *****************************************************************************/ + +xcb_query_extension_cookie_t +xcb_query_extension (xcb_connection_t *c /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_QUERY_EXTENSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_query_extension_cookie_t xcb_ret; + xcb_query_extension_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.name_len = name_len; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_extension_cookie_t xcb_query_extension_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_query_extension_cookie_t + ** + *****************************************************************************/ + +xcb_query_extension_cookie_t +xcb_query_extension_unchecked (xcb_connection_t *c /**< */, + uint16_t name_len /**< */, + const char *name /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_QUERY_EXTENSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_query_extension_cookie_t xcb_ret; + xcb_query_extension_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.name_len = name_len; + memset(xcb_out.pad1, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char name */ + xcb_parts[4].iov_base = (char *) name; + xcb_parts[4].iov_len = name_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_query_extension_reply_t * xcb_query_extension_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_extension_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_extension_reply_t * + ** + *****************************************************************************/ + +xcb_query_extension_reply_t * +xcb_query_extension_reply (xcb_connection_t *c /**< */, + xcb_query_extension_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_query_extension_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_list_extensions_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_list_extensions_reply_t *_aux = (xcb_list_extensions_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_list_extensions_reply_t); + xcb_tmp += xcb_block_len; + /* names */ + for(i=0; i<_aux->names_len; i++) { + xcb_tmp_len = xcb_str_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_str_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_list_extensions_cookie_t xcb_list_extensions + ** + ** @param xcb_connection_t *c + ** @returns xcb_list_extensions_cookie_t + ** + *****************************************************************************/ + +xcb_list_extensions_cookie_t +xcb_list_extensions (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_LIST_EXTENSIONS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_list_extensions_cookie_t xcb_ret; + xcb_list_extensions_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_list_extensions_cookie_t xcb_list_extensions_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_list_extensions_cookie_t + ** + *****************************************************************************/ + +xcb_list_extensions_cookie_t +xcb_list_extensions_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_LIST_EXTENSIONS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_list_extensions_cookie_t xcb_ret; + xcb_list_extensions_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_list_extensions_names_length + ** + ** @param const xcb_list_extensions_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_extensions_names_length (const xcb_list_extensions_reply_t *R /**< */) +{ + return R->names_len; +} + + +/***************************************************************************** + ** + ** xcb_str_iterator_t xcb_list_extensions_names_iterator + ** + ** @param const xcb_list_extensions_reply_t *R + ** @returns xcb_str_iterator_t + ** + *****************************************************************************/ + +xcb_str_iterator_t +xcb_list_extensions_names_iterator (const xcb_list_extensions_reply_t *R /**< */) +{ + xcb_str_iterator_t i; + i.data = (xcb_str_t *) (R + 1); + i.rem = R->names_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_list_extensions_reply_t * xcb_list_extensions_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_extensions_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_extensions_reply_t * + ** + *****************************************************************************/ + +xcb_list_extensions_reply_t * +xcb_list_extensions_reply (xcb_connection_t *c /**< */, + xcb_list_extensions_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_list_extensions_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_change_keyboard_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_change_keyboard_mapping_request_t *_aux = (xcb_change_keyboard_mapping_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_change_keyboard_mapping_request_t); + xcb_tmp += xcb_block_len; + /* keysyms */ + xcb_block_len += (_aux->keycode_count * _aux->keysyms_per_keycode) * sizeof(xcb_keysym_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_keysym_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_keyboard_mapping_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t keycode_count + ** @param xcb_keycode_t first_keycode + ** @param uint8_t keysyms_per_keycode + ** @param const xcb_keysym_t *keysyms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_keyboard_mapping_checked (xcb_connection_t *c /**< */, + uint8_t keycode_count /**< */, + xcb_keycode_t first_keycode /**< */, + uint8_t keysyms_per_keycode /**< */, + const xcb_keysym_t *keysyms /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_KEYBOARD_MAPPING, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_keyboard_mapping_request_t xcb_out; + + xcb_out.keycode_count = keycode_count; + xcb_out.first_keycode = first_keycode; + xcb_out.keysyms_per_keycode = keysyms_per_keycode; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_keysym_t keysyms */ + xcb_parts[4].iov_base = (char *) keysyms; + xcb_parts[4].iov_len = (keycode_count * keysyms_per_keycode) * sizeof(xcb_keysym_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_keyboard_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t keycode_count + ** @param xcb_keycode_t first_keycode + ** @param uint8_t keysyms_per_keycode + ** @param const xcb_keysym_t *keysyms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_keyboard_mapping (xcb_connection_t *c /**< */, + uint8_t keycode_count /**< */, + xcb_keycode_t first_keycode /**< */, + uint8_t keysyms_per_keycode /**< */, + const xcb_keysym_t *keysyms /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_KEYBOARD_MAPPING, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_keyboard_mapping_request_t xcb_out; + + xcb_out.keycode_count = keycode_count; + xcb_out.first_keycode = first_keycode; + xcb_out.keysyms_per_keycode = keysyms_per_keycode; + memset(xcb_out.pad0, 0, 2); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_keysym_t keysyms */ + xcb_parts[4].iov_base = (char *) keysyms; + xcb_parts[4].iov_len = (keycode_count * keysyms_per_keycode) * sizeof(xcb_keysym_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_get_keyboard_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_get_keyboard_mapping_reply_t *_aux = (xcb_get_keyboard_mapping_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_get_keyboard_mapping_reply_t); + xcb_tmp += xcb_block_len; + /* keysyms */ + xcb_block_len += _aux->length * sizeof(xcb_keysym_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_keysym_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_get_keyboard_mapping_cookie_t xcb_get_keyboard_mapping + ** + ** @param xcb_connection_t *c + ** @param xcb_keycode_t first_keycode + ** @param uint8_t count + ** @returns xcb_get_keyboard_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_keyboard_mapping_cookie_t +xcb_get_keyboard_mapping (xcb_connection_t *c /**< */, + xcb_keycode_t first_keycode /**< */, + uint8_t count /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_KEYBOARD_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_keyboard_mapping_cookie_t xcb_ret; + xcb_get_keyboard_mapping_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.first_keycode = first_keycode; + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_keyboard_mapping_cookie_t xcb_get_keyboard_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_keycode_t first_keycode + ** @param uint8_t count + ** @returns xcb_get_keyboard_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_keyboard_mapping_cookie_t +xcb_get_keyboard_mapping_unchecked (xcb_connection_t *c /**< */, + xcb_keycode_t first_keycode /**< */, + uint8_t count /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_KEYBOARD_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_keyboard_mapping_cookie_t xcb_ret; + xcb_get_keyboard_mapping_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.first_keycode = first_keycode; + xcb_out.count = count; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_get_keyboard_mapping_keysyms + ** + ** @param const xcb_get_keyboard_mapping_reply_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_get_keyboard_mapping_keysyms (const xcb_get_keyboard_mapping_reply_t *R /**< */) +{ + return (xcb_keysym_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_get_keyboard_mapping_keysyms_length + ** + ** @param const xcb_get_keyboard_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_keyboard_mapping_keysyms_length (const xcb_get_keyboard_mapping_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_keyboard_mapping_keysyms_end + ** + ** @param const xcb_get_keyboard_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_keyboard_mapping_keysyms_end (const xcb_get_keyboard_mapping_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_keysym_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_get_keyboard_mapping_reply_t * xcb_get_keyboard_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_keyboard_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_keyboard_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_get_keyboard_mapping_reply_t * +xcb_get_keyboard_mapping_reply (xcb_connection_t *c /**< */, + xcb_get_keyboard_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_keyboard_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_change_keyboard_control_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_change_keyboard_control_request_t *_aux = (xcb_change_keyboard_control_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_change_keyboard_control_request_t); + xcb_tmp += xcb_block_len; + /* value_list */ + xcb_block_len += xcb_popcount(_aux->value_mask) * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_keyboard_control_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_keyboard_control_checked (xcb_connection_t *c /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_KEYBOARD_CONTROL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_keyboard_control_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_keyboard_control + ** + ** @param xcb_connection_t *c + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_keyboard_control (xcb_connection_t *c /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_KEYBOARD_CONTROL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_keyboard_control_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.value_mask = value_mask; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint32_t value_list */ + xcb_parts[4].iov_base = (char *) value_list; + xcb_parts[4].iov_len = xcb_popcount(value_mask) * sizeof(uint32_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_keyboard_control_cookie_t xcb_get_keyboard_control + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_keyboard_control_cookie_t + ** + *****************************************************************************/ + +xcb_get_keyboard_control_cookie_t +xcb_get_keyboard_control (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_KEYBOARD_CONTROL, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_keyboard_control_cookie_t xcb_ret; + xcb_get_keyboard_control_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_keyboard_control_cookie_t xcb_get_keyboard_control_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_keyboard_control_cookie_t + ** + *****************************************************************************/ + +xcb_get_keyboard_control_cookie_t +xcb_get_keyboard_control_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_KEYBOARD_CONTROL, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_keyboard_control_cookie_t xcb_ret; + xcb_get_keyboard_control_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_keyboard_control_reply_t * xcb_get_keyboard_control_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_keyboard_control_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_keyboard_control_reply_t * + ** + *****************************************************************************/ + +xcb_get_keyboard_control_reply_t * +xcb_get_keyboard_control_reply (xcb_connection_t *c /**< */, + xcb_get_keyboard_control_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_keyboard_control_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_bell_checked + ** + ** @param xcb_connection_t *c + ** @param int8_t percent + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_bell_checked (xcb_connection_t *c /**< */, + int8_t percent /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_BELL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_bell_request_t xcb_out; + + xcb_out.percent = percent; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_bell + ** + ** @param xcb_connection_t *c + ** @param int8_t percent + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_bell (xcb_connection_t *c /**< */, + int8_t percent /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_BELL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_bell_request_t xcb_out; + + xcb_out.percent = percent; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_pointer_control_checked + ** + ** @param xcb_connection_t *c + ** @param int16_t acceleration_numerator + ** @param int16_t acceleration_denominator + ** @param int16_t threshold + ** @param uint8_t do_acceleration + ** @param uint8_t do_threshold + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_pointer_control_checked (xcb_connection_t *c /**< */, + int16_t acceleration_numerator /**< */, + int16_t acceleration_denominator /**< */, + int16_t threshold /**< */, + uint8_t do_acceleration /**< */, + uint8_t do_threshold /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CHANGE_POINTER_CONTROL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_change_pointer_control_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.acceleration_numerator = acceleration_numerator; + xcb_out.acceleration_denominator = acceleration_denominator; + xcb_out.threshold = threshold; + xcb_out.do_acceleration = do_acceleration; + xcb_out.do_threshold = do_threshold; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_pointer_control + ** + ** @param xcb_connection_t *c + ** @param int16_t acceleration_numerator + ** @param int16_t acceleration_denominator + ** @param int16_t threshold + ** @param uint8_t do_acceleration + ** @param uint8_t do_threshold + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_pointer_control (xcb_connection_t *c /**< */, + int16_t acceleration_numerator /**< */, + int16_t acceleration_denominator /**< */, + int16_t threshold /**< */, + uint8_t do_acceleration /**< */, + uint8_t do_threshold /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_CHANGE_POINTER_CONTROL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_change_pointer_control_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.acceleration_numerator = acceleration_numerator; + xcb_out.acceleration_denominator = acceleration_denominator; + xcb_out.threshold = threshold; + xcb_out.do_acceleration = do_acceleration; + xcb_out.do_threshold = do_threshold; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_pointer_control_cookie_t xcb_get_pointer_control + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_pointer_control_cookie_t + ** + *****************************************************************************/ + +xcb_get_pointer_control_cookie_t +xcb_get_pointer_control (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_POINTER_CONTROL, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_pointer_control_cookie_t xcb_ret; + xcb_get_pointer_control_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_pointer_control_cookie_t xcb_get_pointer_control_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_pointer_control_cookie_t + ** + *****************************************************************************/ + +xcb_get_pointer_control_cookie_t +xcb_get_pointer_control_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_POINTER_CONTROL, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_pointer_control_cookie_t xcb_ret; + xcb_get_pointer_control_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_pointer_control_reply_t * xcb_get_pointer_control_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_pointer_control_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_pointer_control_reply_t * + ** + *****************************************************************************/ + +xcb_get_pointer_control_reply_t * +xcb_get_pointer_control_reply (xcb_connection_t *c /**< */, + xcb_get_pointer_control_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_pointer_control_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_screen_saver_checked + ** + ** @param xcb_connection_t *c + ** @param int16_t timeout + ** @param int16_t interval + ** @param uint8_t prefer_blanking + ** @param uint8_t allow_exposures + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_screen_saver_checked (xcb_connection_t *c /**< */, + int16_t timeout /**< */, + int16_t interval /**< */, + uint8_t prefer_blanking /**< */, + uint8_t allow_exposures /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_SCREEN_SAVER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_screen_saver_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.timeout = timeout; + xcb_out.interval = interval; + xcb_out.prefer_blanking = prefer_blanking; + xcb_out.allow_exposures = allow_exposures; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_screen_saver + ** + ** @param xcb_connection_t *c + ** @param int16_t timeout + ** @param int16_t interval + ** @param uint8_t prefer_blanking + ** @param uint8_t allow_exposures + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_screen_saver (xcb_connection_t *c /**< */, + int16_t timeout /**< */, + int16_t interval /**< */, + uint8_t prefer_blanking /**< */, + uint8_t allow_exposures /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_SCREEN_SAVER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_screen_saver_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.timeout = timeout; + xcb_out.interval = interval; + xcb_out.prefer_blanking = prefer_blanking; + xcb_out.allow_exposures = allow_exposures; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_screen_saver_cookie_t xcb_get_screen_saver + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_screen_saver_cookie_t + ** + *****************************************************************************/ + +xcb_get_screen_saver_cookie_t +xcb_get_screen_saver (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_SCREEN_SAVER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_screen_saver_cookie_t xcb_ret; + xcb_get_screen_saver_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_screen_saver_cookie_t xcb_get_screen_saver_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_screen_saver_cookie_t + ** + *****************************************************************************/ + +xcb_get_screen_saver_cookie_t +xcb_get_screen_saver_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_SCREEN_SAVER, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_screen_saver_cookie_t xcb_ret; + xcb_get_screen_saver_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_screen_saver_reply_t * xcb_get_screen_saver_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_screen_saver_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_screen_saver_reply_t * + ** + *****************************************************************************/ + +xcb_get_screen_saver_reply_t * +xcb_get_screen_saver_reply (xcb_connection_t *c /**< */, + xcb_get_screen_saver_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_screen_saver_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_change_hosts_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_change_hosts_request_t *_aux = (xcb_change_hosts_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_change_hosts_request_t); + xcb_tmp += xcb_block_len; + /* address */ + xcb_block_len += _aux->address_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_hosts_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param uint8_t family + ** @param uint16_t address_len + ** @param const uint8_t *address + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_hosts_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + uint8_t family /**< */, + uint16_t address_len /**< */, + const uint8_t *address /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_HOSTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_hosts_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.family = family; + xcb_out.pad0 = 0; + xcb_out.address_len = address_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t address */ + xcb_parts[4].iov_base = (char *) address; + xcb_parts[4].iov_len = address_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_hosts + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param uint8_t family + ** @param uint16_t address_len + ** @param const uint8_t *address + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_hosts (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + uint8_t family /**< */, + uint16_t address_len /**< */, + const uint8_t *address /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_CHANGE_HOSTS, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_change_hosts_request_t xcb_out; + + xcb_out.mode = mode; + xcb_out.family = family; + xcb_out.pad0 = 0; + xcb_out.address_len = address_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t address */ + xcb_parts[4].iov_base = (char *) address; + xcb_parts[4].iov_len = address_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_host_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_host_t *_aux = (xcb_host_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_host_t); + xcb_tmp += xcb_block_len; + /* address */ + xcb_block_len += _aux->address_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_host_address + ** + ** @param const xcb_host_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_host_address (const xcb_host_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_host_address_length + ** + ** @param const xcb_host_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_host_address_length (const xcb_host_t *R /**< */) +{ + return R->address_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_host_address_end + ** + ** @param const xcb_host_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_host_address_end (const xcb_host_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + (R->address_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_host_next + ** + ** @param xcb_host_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_host_next (xcb_host_iterator_t *i /**< */) +{ + xcb_host_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_host_t *)(((char *)R) + xcb_host_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_host_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_host_end + ** + ** @param xcb_host_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_host_end (xcb_host_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_host_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_list_hosts_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_list_hosts_reply_t *_aux = (xcb_list_hosts_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_list_hosts_reply_t); + xcb_tmp += xcb_block_len; + /* hosts */ + for(i=0; i<_aux->hosts_len; i++) { + xcb_tmp_len = xcb_host_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_host_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_list_hosts_cookie_t xcb_list_hosts + ** + ** @param xcb_connection_t *c + ** @returns xcb_list_hosts_cookie_t + ** + *****************************************************************************/ + +xcb_list_hosts_cookie_t +xcb_list_hosts (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_LIST_HOSTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_list_hosts_cookie_t xcb_ret; + xcb_list_hosts_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_list_hosts_cookie_t xcb_list_hosts_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_list_hosts_cookie_t + ** + *****************************************************************************/ + +xcb_list_hosts_cookie_t +xcb_list_hosts_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_LIST_HOSTS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_list_hosts_cookie_t xcb_ret; + xcb_list_hosts_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_list_hosts_hosts_length + ** + ** @param const xcb_list_hosts_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_hosts_hosts_length (const xcb_list_hosts_reply_t *R /**< */) +{ + return R->hosts_len; +} + + +/***************************************************************************** + ** + ** xcb_host_iterator_t xcb_list_hosts_hosts_iterator + ** + ** @param const xcb_list_hosts_reply_t *R + ** @returns xcb_host_iterator_t + ** + *****************************************************************************/ + +xcb_host_iterator_t +xcb_list_hosts_hosts_iterator (const xcb_list_hosts_reply_t *R /**< */) +{ + xcb_host_iterator_t i; + i.data = (xcb_host_t *) (R + 1); + i.rem = R->hosts_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_list_hosts_reply_t * xcb_list_hosts_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_hosts_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_hosts_reply_t * + ** + *****************************************************************************/ + +xcb_list_hosts_reply_t * +xcb_list_hosts_reply (xcb_connection_t *c /**< */, + xcb_list_hosts_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_list_hosts_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_access_control_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_access_control_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_ACCESS_CONTROL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_access_control_request_t xcb_out; + + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_access_control + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_access_control (xcb_connection_t *c /**< */, + uint8_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_ACCESS_CONTROL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_access_control_request_t xcb_out; + + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_close_down_mode_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_close_down_mode_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_CLOSE_DOWN_MODE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_close_down_mode_request_t xcb_out; + + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_close_down_mode + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_close_down_mode (xcb_connection_t *c /**< */, + uint8_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_SET_CLOSE_DOWN_MODE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_set_close_down_mode_request_t xcb_out; + + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_kill_client_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t resource + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_kill_client_checked (xcb_connection_t *c /**< */, + uint32_t resource /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_KILL_CLIENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_kill_client_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.resource = resource; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_kill_client + ** + ** @param xcb_connection_t *c + ** @param uint32_t resource + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_kill_client (xcb_connection_t *c /**< */, + uint32_t resource /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_KILL_CLIENT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_kill_client_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.resource = resource; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_rotate_properties_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_rotate_properties_request_t *_aux = (xcb_rotate_properties_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_rotate_properties_request_t); + xcb_tmp += xcb_block_len; + /* atoms */ + xcb_block_len += _aux->atoms_len * sizeof(xcb_atom_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_atom_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_rotate_properties_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t atoms_len + ** @param int16_t delta + ** @param const xcb_atom_t *atoms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_rotate_properties_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t atoms_len /**< */, + int16_t delta /**< */, + const xcb_atom_t *atoms /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_ROTATE_PROPERTIES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_rotate_properties_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.atoms_len = atoms_len; + xcb_out.delta = delta; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_atom_t atoms */ + xcb_parts[4].iov_base = (char *) atoms; + xcb_parts[4].iov_len = atoms_len * sizeof(xcb_atom_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_rotate_properties + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t atoms_len + ** @param int16_t delta + ** @param const xcb_atom_t *atoms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_rotate_properties (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t atoms_len /**< */, + int16_t delta /**< */, + const xcb_atom_t *atoms /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_ROTATE_PROPERTIES, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_rotate_properties_request_t xcb_out; + + xcb_out.pad0 = 0; + xcb_out.window = window; + xcb_out.atoms_len = atoms_len; + xcb_out.delta = delta; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_atom_t atoms */ + xcb_parts[4].iov_base = (char *) atoms; + xcb_parts[4].iov_len = atoms_len * sizeof(xcb_atom_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_force_screen_saver_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_force_screen_saver_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FORCE_SCREEN_SAVER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_force_screen_saver_request_t xcb_out; + + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_force_screen_saver + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_force_screen_saver (xcb_connection_t *c /**< */, + uint8_t mode /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_FORCE_SCREEN_SAVER, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_force_screen_saver_request_t xcb_out; + + xcb_out.mode = mode; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_set_pointer_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_set_pointer_mapping_request_t *_aux = (xcb_set_pointer_mapping_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_set_pointer_mapping_request_t); + xcb_tmp += xcb_block_len; + /* map */ + xcb_block_len += _aux->map_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_set_pointer_mapping_cookie_t xcb_set_pointer_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t map_len + ** @param const uint8_t *map + ** @returns xcb_set_pointer_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_set_pointer_mapping_cookie_t +xcb_set_pointer_mapping (xcb_connection_t *c /**< */, + uint8_t map_len /**< */, + const uint8_t *map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_SET_POINTER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_set_pointer_mapping_cookie_t xcb_ret; + xcb_set_pointer_mapping_request_t xcb_out; + + xcb_out.map_len = map_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t map */ + xcb_parts[4].iov_base = (char *) map; + xcb_parts[4].iov_len = map_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_set_pointer_mapping_cookie_t xcb_set_pointer_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t map_len + ** @param const uint8_t *map + ** @returns xcb_set_pointer_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_set_pointer_mapping_cookie_t +xcb_set_pointer_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t map_len /**< */, + const uint8_t *map /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_SET_POINTER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_set_pointer_mapping_cookie_t xcb_ret; + xcb_set_pointer_mapping_request_t xcb_out; + + xcb_out.map_len = map_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t map */ + xcb_parts[4].iov_base = (char *) map; + xcb_parts[4].iov_len = map_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_set_pointer_mapping_reply_t * xcb_set_pointer_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_set_pointer_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_set_pointer_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_set_pointer_mapping_reply_t * +xcb_set_pointer_mapping_reply (xcb_connection_t *c /**< */, + xcb_set_pointer_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_set_pointer_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_get_pointer_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_get_pointer_mapping_reply_t *_aux = (xcb_get_pointer_mapping_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_get_pointer_mapping_reply_t); + xcb_tmp += xcb_block_len; + /* map */ + xcb_block_len += _aux->map_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_get_pointer_mapping_cookie_t xcb_get_pointer_mapping + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_pointer_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_pointer_mapping_cookie_t +xcb_get_pointer_mapping (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_POINTER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_pointer_mapping_cookie_t xcb_ret; + xcb_get_pointer_mapping_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_pointer_mapping_cookie_t xcb_get_pointer_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_pointer_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_pointer_mapping_cookie_t +xcb_get_pointer_mapping_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_POINTER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_pointer_mapping_cookie_t xcb_ret; + xcb_get_pointer_mapping_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_get_pointer_mapping_map + ** + ** @param const xcb_get_pointer_mapping_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_get_pointer_mapping_map (const xcb_get_pointer_mapping_reply_t *R /**< */) +{ + return (uint8_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_get_pointer_mapping_map_length + ** + ** @param const xcb_get_pointer_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_pointer_mapping_map_length (const xcb_get_pointer_mapping_reply_t *R /**< */) +{ + return R->map_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_pointer_mapping_map_end + ** + ** @param const xcb_get_pointer_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_pointer_mapping_map_end (const xcb_get_pointer_mapping_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint8_t *) (R + 1)) + (R->map_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_get_pointer_mapping_reply_t * xcb_get_pointer_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_pointer_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_pointer_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_get_pointer_mapping_reply_t * +xcb_get_pointer_mapping_reply (xcb_connection_t *c /**< */, + xcb_get_pointer_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_pointer_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_set_modifier_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_set_modifier_mapping_request_t *_aux = (xcb_set_modifier_mapping_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_set_modifier_mapping_request_t); + xcb_tmp += xcb_block_len; + /* keycodes */ + xcb_block_len += (_aux->keycodes_per_modifier * 8) * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_set_modifier_mapping_cookie_t xcb_set_modifier_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t keycodes_per_modifier + ** @param const xcb_keycode_t *keycodes + ** @returns xcb_set_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_set_modifier_mapping_cookie_t +xcb_set_modifier_mapping (xcb_connection_t *c /**< */, + uint8_t keycodes_per_modifier /**< */, + const xcb_keycode_t *keycodes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_SET_MODIFIER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_set_modifier_mapping_cookie_t xcb_ret; + xcb_set_modifier_mapping_request_t xcb_out; + + xcb_out.keycodes_per_modifier = keycodes_per_modifier; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_keycode_t keycodes */ + xcb_parts[4].iov_base = (char *) keycodes; + xcb_parts[4].iov_len = (keycodes_per_modifier * 8) * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_set_modifier_mapping_cookie_t xcb_set_modifier_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t keycodes_per_modifier + ** @param const xcb_keycode_t *keycodes + ** @returns xcb_set_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_set_modifier_mapping_cookie_t +xcb_set_modifier_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t keycodes_per_modifier /**< */, + const xcb_keycode_t *keycodes /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ 0, + /* opcode */ XCB_SET_MODIFIER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[6]; + xcb_set_modifier_mapping_cookie_t xcb_ret; + xcb_set_modifier_mapping_request_t xcb_out; + + xcb_out.keycodes_per_modifier = keycodes_per_modifier; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* xcb_keycode_t keycodes */ + xcb_parts[4].iov_base = (char *) keycodes; + xcb_parts[4].iov_len = (keycodes_per_modifier * 8) * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_set_modifier_mapping_reply_t * xcb_set_modifier_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_set_modifier_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_set_modifier_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_set_modifier_mapping_reply_t * +xcb_set_modifier_mapping_reply (xcb_connection_t *c /**< */, + xcb_set_modifier_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_set_modifier_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_get_modifier_mapping_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_get_modifier_mapping_reply_t *_aux = (xcb_get_modifier_mapping_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_get_modifier_mapping_reply_t); + xcb_tmp += xcb_block_len; + /* keycodes */ + xcb_block_len += (_aux->keycodes_per_modifier * 8) * sizeof(xcb_keycode_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_keycode_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_get_modifier_mapping_cookie_t xcb_get_modifier_mapping + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_modifier_mapping_cookie_t +xcb_get_modifier_mapping (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_MODIFIER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_modifier_mapping_cookie_t xcb_ret; + xcb_get_modifier_mapping_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_get_modifier_mapping_cookie_t xcb_get_modifier_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_modifier_mapping_cookie_t +xcb_get_modifier_mapping_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_GET_MODIFIER_MAPPING, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_get_modifier_mapping_cookie_t xcb_ret; + xcb_get_modifier_mapping_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_keycode_t * xcb_get_modifier_mapping_keycodes + ** + ** @param const xcb_get_modifier_mapping_reply_t *R + ** @returns xcb_keycode_t * + ** + *****************************************************************************/ + +xcb_keycode_t * +xcb_get_modifier_mapping_keycodes (const xcb_get_modifier_mapping_reply_t *R /**< */) +{ + return (xcb_keycode_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_get_modifier_mapping_keycodes_length + ** + ** @param const xcb_get_modifier_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_modifier_mapping_keycodes_length (const xcb_get_modifier_mapping_reply_t *R /**< */) +{ + return (R->keycodes_per_modifier * 8); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_modifier_mapping_keycodes_end + ** + ** @param const xcb_get_modifier_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_modifier_mapping_keycodes_end (const xcb_get_modifier_mapping_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((xcb_keycode_t *) (R + 1)) + ((R->keycodes_per_modifier * 8)); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_get_modifier_mapping_reply_t * xcb_get_modifier_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_modifier_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_modifier_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_get_modifier_mapping_reply_t * +xcb_get_modifier_mapping_reply (xcb_connection_t *c /**< */, + xcb_get_modifier_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_get_modifier_mapping_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_no_operation_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_no_operation_checked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_NO_OPERATION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_no_operation_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_no_operation + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_no_operation (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ 0, + /* opcode */ XCB_NO_OPERATION, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_no_operation_request_t xcb_out; + + xcb_out.pad0 = 0; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/xproto.h b/external/mit/xorg/lib/libxcb/files/xproto.h new file mode 100644 index 000000000..1729ec3b1 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xproto.h @@ -0,0 +1,17136 @@ +/* + * This file generated automatically from xproto.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB__API XCB API + * @brief XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XPROTO_H +#define __XPROTO_H + +#include "xcb.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @brief xcb_char2b_t + **/ +typedef struct xcb_char2b_t { + uint8_t byte1; /**< */ + uint8_t byte2; /**< */ +} xcb_char2b_t; + +/** + * @brief xcb_char2b_iterator_t + **/ +typedef struct xcb_char2b_iterator_t { + xcb_char2b_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_char2b_iterator_t; + +typedef uint32_t xcb_window_t; + +/** + * @brief xcb_window_iterator_t + **/ +typedef struct xcb_window_iterator_t { + xcb_window_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_window_iterator_t; + +typedef uint32_t xcb_pixmap_t; + +/** + * @brief xcb_pixmap_iterator_t + **/ +typedef struct xcb_pixmap_iterator_t { + xcb_pixmap_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_pixmap_iterator_t; + +typedef uint32_t xcb_cursor_t; + +/** + * @brief xcb_cursor_iterator_t + **/ +typedef struct xcb_cursor_iterator_t { + xcb_cursor_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_cursor_iterator_t; + +typedef uint32_t xcb_font_t; + +/** + * @brief xcb_font_iterator_t + **/ +typedef struct xcb_font_iterator_t { + xcb_font_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_font_iterator_t; + +typedef uint32_t xcb_gcontext_t; + +/** + * @brief xcb_gcontext_iterator_t + **/ +typedef struct xcb_gcontext_iterator_t { + xcb_gcontext_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_gcontext_iterator_t; + +typedef uint32_t xcb_colormap_t; + +/** + * @brief xcb_colormap_iterator_t + **/ +typedef struct xcb_colormap_iterator_t { + xcb_colormap_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_colormap_iterator_t; + +typedef uint32_t xcb_atom_t; + +/** + * @brief xcb_atom_iterator_t + **/ +typedef struct xcb_atom_iterator_t { + xcb_atom_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_atom_iterator_t; + +typedef uint32_t xcb_drawable_t; + +/** + * @brief xcb_drawable_iterator_t + **/ +typedef struct xcb_drawable_iterator_t { + xcb_drawable_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_drawable_iterator_t; + +typedef uint32_t xcb_fontable_t; + +/** + * @brief xcb_fontable_iterator_t + **/ +typedef struct xcb_fontable_iterator_t { + xcb_fontable_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_fontable_iterator_t; + +typedef uint32_t xcb_visualid_t; + +/** + * @brief xcb_visualid_iterator_t + **/ +typedef struct xcb_visualid_iterator_t { + xcb_visualid_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_visualid_iterator_t; + +typedef uint32_t xcb_timestamp_t; + +/** + * @brief xcb_timestamp_iterator_t + **/ +typedef struct xcb_timestamp_iterator_t { + xcb_timestamp_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_timestamp_iterator_t; + +typedef uint32_t xcb_keysym_t; + +/** + * @brief xcb_keysym_iterator_t + **/ +typedef struct xcb_keysym_iterator_t { + xcb_keysym_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_keysym_iterator_t; + +typedef uint8_t xcb_keycode_t; + +/** + * @brief xcb_keycode_iterator_t + **/ +typedef struct xcb_keycode_iterator_t { + xcb_keycode_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_keycode_iterator_t; + +typedef uint8_t xcb_button_t; + +/** + * @brief xcb_button_iterator_t + **/ +typedef struct xcb_button_iterator_t { + xcb_button_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_button_iterator_t; + +/** + * @brief xcb_point_t + **/ +typedef struct xcb_point_t { + int16_t x; /**< */ + int16_t y; /**< */ +} xcb_point_t; + +/** + * @brief xcb_point_iterator_t + **/ +typedef struct xcb_point_iterator_t { + xcb_point_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_point_iterator_t; + +/** + * @brief xcb_rectangle_t + **/ +typedef struct xcb_rectangle_t { + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_rectangle_t; + +/** + * @brief xcb_rectangle_iterator_t + **/ +typedef struct xcb_rectangle_iterator_t { + xcb_rectangle_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_rectangle_iterator_t; + +/** + * @brief xcb_arc_t + **/ +typedef struct xcb_arc_t { + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + int16_t angle1; /**< */ + int16_t angle2; /**< */ +} xcb_arc_t; + +/** + * @brief xcb_arc_iterator_t + **/ +typedef struct xcb_arc_iterator_t { + xcb_arc_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_arc_iterator_t; + +/** + * @brief xcb_format_t + **/ +typedef struct xcb_format_t { + uint8_t depth; /**< */ + uint8_t bits_per_pixel; /**< */ + uint8_t scanline_pad; /**< */ + uint8_t pad0[5]; /**< */ +} xcb_format_t; + +/** + * @brief xcb_format_iterator_t + **/ +typedef struct xcb_format_iterator_t { + xcb_format_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_format_iterator_t; + +typedef enum xcb_visual_class_t { + XCB_VISUAL_CLASS_STATIC_GRAY = 0, + XCB_VISUAL_CLASS_GRAY_SCALE = 1, + XCB_VISUAL_CLASS_STATIC_COLOR = 2, + XCB_VISUAL_CLASS_PSEUDO_COLOR = 3, + XCB_VISUAL_CLASS_TRUE_COLOR = 4, + XCB_VISUAL_CLASS_DIRECT_COLOR = 5 +} xcb_visual_class_t; + +/** + * @brief xcb_visualtype_t + **/ +typedef struct xcb_visualtype_t { + xcb_visualid_t visual_id; /**< */ + uint8_t _class; /**< */ + uint8_t bits_per_rgb_value; /**< */ + uint16_t colormap_entries; /**< */ + uint32_t red_mask; /**< */ + uint32_t green_mask; /**< */ + uint32_t blue_mask; /**< */ + uint8_t pad0[4]; /**< */ +} xcb_visualtype_t; + +/** + * @brief xcb_visualtype_iterator_t + **/ +typedef struct xcb_visualtype_iterator_t { + xcb_visualtype_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_visualtype_iterator_t; + +/** + * @brief xcb_depth_t + **/ +typedef struct xcb_depth_t { + uint8_t depth; /**< */ + uint8_t pad0; /**< */ + uint16_t visuals_len; /**< */ + uint8_t pad1[4]; /**< */ +} xcb_depth_t; + +/** + * @brief xcb_depth_iterator_t + **/ +typedef struct xcb_depth_iterator_t { + xcb_depth_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_depth_iterator_t; + +typedef enum xcb_event_mask_t { + XCB_EVENT_MASK_NO_EVENT = 0, + XCB_EVENT_MASK_KEY_PRESS = 1, + XCB_EVENT_MASK_KEY_RELEASE = 2, + XCB_EVENT_MASK_BUTTON_PRESS = 4, + XCB_EVENT_MASK_BUTTON_RELEASE = 8, + XCB_EVENT_MASK_ENTER_WINDOW = 16, + XCB_EVENT_MASK_LEAVE_WINDOW = 32, + XCB_EVENT_MASK_POINTER_MOTION = 64, + XCB_EVENT_MASK_POINTER_MOTION_HINT = 128, + XCB_EVENT_MASK_BUTTON_1_MOTION = 256, + XCB_EVENT_MASK_BUTTON_2_MOTION = 512, + XCB_EVENT_MASK_BUTTON_3_MOTION = 1024, + XCB_EVENT_MASK_BUTTON_4_MOTION = 2048, + XCB_EVENT_MASK_BUTTON_5_MOTION = 4096, + XCB_EVENT_MASK_BUTTON_MOTION = 8192, + XCB_EVENT_MASK_KEYMAP_STATE = 16384, + XCB_EVENT_MASK_EXPOSURE = 32768, + XCB_EVENT_MASK_VISIBILITY_CHANGE = 65536, + XCB_EVENT_MASK_STRUCTURE_NOTIFY = 131072, + XCB_EVENT_MASK_RESIZE_REDIRECT = 262144, + XCB_EVENT_MASK_SUBSTRUCTURE_NOTIFY = 524288, + XCB_EVENT_MASK_SUBSTRUCTURE_REDIRECT = 1048576, + XCB_EVENT_MASK_FOCUS_CHANGE = 2097152, + XCB_EVENT_MASK_PROPERTY_CHANGE = 4194304, + XCB_EVENT_MASK_COLOR_MAP_CHANGE = 8388608, + XCB_EVENT_MASK_OWNER_GRAB_BUTTON = 16777216 +} xcb_event_mask_t; + +typedef enum xcb_backing_store_t { + XCB_BACKING_STORE_NOT_USEFUL = 0, + XCB_BACKING_STORE_WHEN_MAPPED = 1, + XCB_BACKING_STORE_ALWAYS = 2 +} xcb_backing_store_t; + +/** + * @brief xcb_screen_t + **/ +typedef struct xcb_screen_t { + xcb_window_t root; /**< */ + xcb_colormap_t default_colormap; /**< */ + uint32_t white_pixel; /**< */ + uint32_t black_pixel; /**< */ + uint32_t current_input_masks; /**< */ + uint16_t width_in_pixels; /**< */ + uint16_t height_in_pixels; /**< */ + uint16_t width_in_millimeters; /**< */ + uint16_t height_in_millimeters; /**< */ + uint16_t min_installed_maps; /**< */ + uint16_t max_installed_maps; /**< */ + xcb_visualid_t root_visual; /**< */ + uint8_t backing_stores; /**< */ + uint8_t save_unders; /**< */ + uint8_t root_depth; /**< */ + uint8_t allowed_depths_len; /**< */ +} xcb_screen_t; + +/** + * @brief xcb_screen_iterator_t + **/ +typedef struct xcb_screen_iterator_t { + xcb_screen_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_screen_iterator_t; + +/** + * @brief xcb_setup_request_t + **/ +typedef struct xcb_setup_request_t { + uint8_t byte_order; /**< */ + uint8_t pad0; /**< */ + uint16_t protocol_major_version; /**< */ + uint16_t protocol_minor_version; /**< */ + uint16_t authorization_protocol_name_len; /**< */ + uint16_t authorization_protocol_data_len; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_setup_request_t; + +/** + * @brief xcb_setup_request_iterator_t + **/ +typedef struct xcb_setup_request_iterator_t { + xcb_setup_request_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_setup_request_iterator_t; + +/** + * @brief xcb_setup_failed_t + **/ +typedef struct xcb_setup_failed_t { + uint8_t status; /**< */ + uint8_t reason_len; /**< */ + uint16_t protocol_major_version; /**< */ + uint16_t protocol_minor_version; /**< */ + uint16_t length; /**< */ +} xcb_setup_failed_t; + +/** + * @brief xcb_setup_failed_iterator_t + **/ +typedef struct xcb_setup_failed_iterator_t { + xcb_setup_failed_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_setup_failed_iterator_t; + +/** + * @brief xcb_setup_authenticate_t + **/ +typedef struct xcb_setup_authenticate_t { + uint8_t status; /**< */ + uint8_t pad0[5]; /**< */ + uint16_t length; /**< */ +} xcb_setup_authenticate_t; + +/** + * @brief xcb_setup_authenticate_iterator_t + **/ +typedef struct xcb_setup_authenticate_iterator_t { + xcb_setup_authenticate_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_setup_authenticate_iterator_t; + +typedef enum xcb_image_order_t { + XCB_IMAGE_ORDER_LSB_FIRST = 0, + XCB_IMAGE_ORDER_MSB_FIRST = 1 +} xcb_image_order_t; + +/** + * @brief xcb_setup_t + **/ +typedef struct xcb_setup_t { + uint8_t status; /**< */ + uint8_t pad0; /**< */ + uint16_t protocol_major_version; /**< */ + uint16_t protocol_minor_version; /**< */ + uint16_t length; /**< */ + uint32_t release_number; /**< */ + uint32_t resource_id_base; /**< */ + uint32_t resource_id_mask; /**< */ + uint32_t motion_buffer_size; /**< */ + uint16_t vendor_len; /**< */ + uint16_t maximum_request_length; /**< */ + uint8_t roots_len; /**< */ + uint8_t pixmap_formats_len; /**< */ + uint8_t image_byte_order; /**< */ + uint8_t bitmap_format_bit_order; /**< */ + uint8_t bitmap_format_scanline_unit; /**< */ + uint8_t bitmap_format_scanline_pad; /**< */ + xcb_keycode_t min_keycode; /**< */ + xcb_keycode_t max_keycode; /**< */ + uint8_t pad1[4]; /**< */ +} xcb_setup_t; + +/** + * @brief xcb_setup_iterator_t + **/ +typedef struct xcb_setup_iterator_t { + xcb_setup_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_setup_iterator_t; + +typedef enum xcb_mod_mask_t { + XCB_MOD_MASK_SHIFT = 1, + XCB_MOD_MASK_LOCK = 2, + XCB_MOD_MASK_CONTROL = 4, + XCB_MOD_MASK_1 = 8, + XCB_MOD_MASK_2 = 16, + XCB_MOD_MASK_3 = 32, + XCB_MOD_MASK_4 = 64, + XCB_MOD_MASK_5 = 128, + XCB_MOD_MASK_ANY = 32768 +} xcb_mod_mask_t; + +typedef enum xcb_key_but_mask_t { + XCB_KEY_BUT_MASK_SHIFT = 1, + XCB_KEY_BUT_MASK_LOCK = 2, + XCB_KEY_BUT_MASK_CONTROL = 4, + XCB_KEY_BUT_MASK_MOD_1 = 8, + XCB_KEY_BUT_MASK_MOD_2 = 16, + XCB_KEY_BUT_MASK_MOD_3 = 32, + XCB_KEY_BUT_MASK_MOD_4 = 64, + XCB_KEY_BUT_MASK_MOD_5 = 128, + XCB_KEY_BUT_MASK_BUTTON_1 = 256, + XCB_KEY_BUT_MASK_BUTTON_2 = 512, + XCB_KEY_BUT_MASK_BUTTON_3 = 1024, + XCB_KEY_BUT_MASK_BUTTON_4 = 2048, + XCB_KEY_BUT_MASK_BUTTON_5 = 4096 +} xcb_key_but_mask_t; + +typedef enum xcb_window_enum_t { + XCB_WINDOW_NONE = 0 +} xcb_window_enum_t; + +/** Opcode for xcb_key_press. */ +#define XCB_KEY_PRESS 2 + +/** + * @brief xcb_key_press_event_t + **/ +typedef struct xcb_key_press_event_t { + uint8_t response_type; /**< */ + xcb_keycode_t detail; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t root; /**< */ + xcb_window_t event; /**< */ + xcb_window_t child; /**< */ + int16_t root_x; /**< */ + int16_t root_y; /**< */ + int16_t event_x; /**< */ + int16_t event_y; /**< */ + uint16_t state; /**< */ + uint8_t same_screen; /**< */ + uint8_t pad0; /**< */ +} xcb_key_press_event_t; + +/** Opcode for xcb_key_release. */ +#define XCB_KEY_RELEASE 3 + +typedef xcb_key_press_event_t xcb_key_release_event_t; + +typedef enum xcb_button_mask_t { + XCB_BUTTON_MASK_1 = 256, + XCB_BUTTON_MASK_2 = 512, + XCB_BUTTON_MASK_3 = 1024, + XCB_BUTTON_MASK_4 = 2048, + XCB_BUTTON_MASK_5 = 4096, + XCB_BUTTON_MASK_ANY = 32768 +} xcb_button_mask_t; + +/** Opcode for xcb_button_press. */ +#define XCB_BUTTON_PRESS 4 + +/** + * @brief xcb_button_press_event_t + **/ +typedef struct xcb_button_press_event_t { + uint8_t response_type; /**< */ + xcb_button_t detail; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t root; /**< */ + xcb_window_t event; /**< */ + xcb_window_t child; /**< */ + int16_t root_x; /**< */ + int16_t root_y; /**< */ + int16_t event_x; /**< */ + int16_t event_y; /**< */ + uint16_t state; /**< */ + uint8_t same_screen; /**< */ + uint8_t pad0; /**< */ +} xcb_button_press_event_t; + +/** Opcode for xcb_button_release. */ +#define XCB_BUTTON_RELEASE 5 + +typedef xcb_button_press_event_t xcb_button_release_event_t; + +typedef enum xcb_motion_t { + XCB_MOTION_NORMAL = 0, + XCB_MOTION_HINT = 1 +} xcb_motion_t; + +/** Opcode for xcb_motion_notify. */ +#define XCB_MOTION_NOTIFY 6 + +/** + * @brief xcb_motion_notify_event_t + **/ +typedef struct xcb_motion_notify_event_t { + uint8_t response_type; /**< */ + uint8_t detail; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t root; /**< */ + xcb_window_t event; /**< */ + xcb_window_t child; /**< */ + int16_t root_x; /**< */ + int16_t root_y; /**< */ + int16_t event_x; /**< */ + int16_t event_y; /**< */ + uint16_t state; /**< */ + uint8_t same_screen; /**< */ + uint8_t pad0; /**< */ +} xcb_motion_notify_event_t; + +typedef enum xcb_notify_detail_t { + XCB_NOTIFY_DETAIL_ANCESTOR = 0, + XCB_NOTIFY_DETAIL_VIRTUAL = 1, + XCB_NOTIFY_DETAIL_INFERIOR = 2, + XCB_NOTIFY_DETAIL_NONLINEAR = 3, + XCB_NOTIFY_DETAIL_NONLINEAR_VIRTUAL = 4, + XCB_NOTIFY_DETAIL_POINTER = 5, + XCB_NOTIFY_DETAIL_POINTER_ROOT = 6, + XCB_NOTIFY_DETAIL_NONE = 7 +} xcb_notify_detail_t; + +typedef enum xcb_notify_mode_t { + XCB_NOTIFY_MODE_NORMAL = 0, + XCB_NOTIFY_MODE_GRAB = 1, + XCB_NOTIFY_MODE_UNGRAB = 2, + XCB_NOTIFY_MODE_WHILE_GRABBED = 3 +} xcb_notify_mode_t; + +/** Opcode for xcb_enter_notify. */ +#define XCB_ENTER_NOTIFY 7 + +/** + * @brief xcb_enter_notify_event_t + **/ +typedef struct xcb_enter_notify_event_t { + uint8_t response_type; /**< */ + uint8_t detail; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t root; /**< */ + xcb_window_t event; /**< */ + xcb_window_t child; /**< */ + int16_t root_x; /**< */ + int16_t root_y; /**< */ + int16_t event_x; /**< */ + int16_t event_y; /**< */ + uint16_t state; /**< */ + uint8_t mode; /**< */ + uint8_t same_screen_focus; /**< */ +} xcb_enter_notify_event_t; + +/** Opcode for xcb_leave_notify. */ +#define XCB_LEAVE_NOTIFY 8 + +typedef xcb_enter_notify_event_t xcb_leave_notify_event_t; + +/** Opcode for xcb_focus_in. */ +#define XCB_FOCUS_IN 9 + +/** + * @brief xcb_focus_in_event_t + **/ +typedef struct xcb_focus_in_event_t { + uint8_t response_type; /**< */ + uint8_t detail; /**< */ + uint16_t sequence; /**< */ + xcb_window_t event; /**< */ + uint8_t mode; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_focus_in_event_t; + +/** Opcode for xcb_focus_out. */ +#define XCB_FOCUS_OUT 10 + +typedef xcb_focus_in_event_t xcb_focus_out_event_t; + +/** Opcode for xcb_keymap_notify. */ +#define XCB_KEYMAP_NOTIFY 11 + +/** + * @brief xcb_keymap_notify_event_t + **/ +typedef struct xcb_keymap_notify_event_t { + uint8_t response_type; /**< */ + uint8_t keys[31]; /**< */ +} xcb_keymap_notify_event_t; + +/** Opcode for xcb_expose. */ +#define XCB_EXPOSE 12 + +/** + * @brief xcb_expose_event_t + **/ +typedef struct xcb_expose_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t window; /**< */ + uint16_t x; /**< */ + uint16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t count; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_expose_event_t; + +/** Opcode for xcb_graphics_exposure. */ +#define XCB_GRAPHICS_EXPOSURE 13 + +/** + * @brief xcb_graphics_exposure_event_t + **/ +typedef struct xcb_graphics_exposure_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_drawable_t drawable; /**< */ + uint16_t x; /**< */ + uint16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t minor_opcode; /**< */ + uint16_t count; /**< */ + uint8_t major_opcode; /**< */ + uint8_t pad1[3]; /**< */ +} xcb_graphics_exposure_event_t; + +/** Opcode for xcb_no_exposure. */ +#define XCB_NO_EXPOSURE 14 + +/** + * @brief xcb_no_exposure_event_t + **/ +typedef struct xcb_no_exposure_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_drawable_t drawable; /**< */ + uint16_t minor_opcode; /**< */ + uint8_t major_opcode; /**< */ + uint8_t pad1; /**< */ +} xcb_no_exposure_event_t; + +typedef enum xcb_visibility_t { + XCB_VISIBILITY_UNOBSCURED = 0, + XCB_VISIBILITY_PARTIALLY_OBSCURED = 1, + XCB_VISIBILITY_FULLY_OBSCURED = 2 +} xcb_visibility_t; + +/** Opcode for xcb_visibility_notify. */ +#define XCB_VISIBILITY_NOTIFY 15 + +/** + * @brief xcb_visibility_notify_event_t + **/ +typedef struct xcb_visibility_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t window; /**< */ + uint8_t state; /**< */ + uint8_t pad1[3]; /**< */ +} xcb_visibility_notify_event_t; + +/** Opcode for xcb_create_notify. */ +#define XCB_CREATE_NOTIFY 16 + +/** + * @brief xcb_create_notify_event_t + **/ +typedef struct xcb_create_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t parent; /**< */ + xcb_window_t window; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t border_width; /**< */ + uint8_t override_redirect; /**< */ + uint8_t pad1; /**< */ +} xcb_create_notify_event_t; + +/** Opcode for xcb_destroy_notify. */ +#define XCB_DESTROY_NOTIFY 17 + +/** + * @brief xcb_destroy_notify_event_t + **/ +typedef struct xcb_destroy_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t event; /**< */ + xcb_window_t window; /**< */ +} xcb_destroy_notify_event_t; + +/** Opcode for xcb_unmap_notify. */ +#define XCB_UNMAP_NOTIFY 18 + +/** + * @brief xcb_unmap_notify_event_t + **/ +typedef struct xcb_unmap_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t event; /**< */ + xcb_window_t window; /**< */ + uint8_t from_configure; /**< */ + uint8_t pad1[3]; /**< */ +} xcb_unmap_notify_event_t; + +/** Opcode for xcb_map_notify. */ +#define XCB_MAP_NOTIFY 19 + +/** + * @brief xcb_map_notify_event_t + **/ +typedef struct xcb_map_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t event; /**< */ + xcb_window_t window; /**< */ + uint8_t override_redirect; /**< */ + uint8_t pad1[3]; /**< */ +} xcb_map_notify_event_t; + +/** Opcode for xcb_map_request. */ +#define XCB_MAP_REQUEST 20 + +/** + * @brief xcb_map_request_event_t + **/ +typedef struct xcb_map_request_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t parent; /**< */ + xcb_window_t window; /**< */ +} xcb_map_request_event_t; + +/** Opcode for xcb_reparent_notify. */ +#define XCB_REPARENT_NOTIFY 21 + +/** + * @brief xcb_reparent_notify_event_t + **/ +typedef struct xcb_reparent_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t event; /**< */ + xcb_window_t window; /**< */ + xcb_window_t parent; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint8_t override_redirect; /**< */ + uint8_t pad1[3]; /**< */ +} xcb_reparent_notify_event_t; + +/** Opcode for xcb_configure_notify. */ +#define XCB_CONFIGURE_NOTIFY 22 + +/** + * @brief xcb_configure_notify_event_t + **/ +typedef struct xcb_configure_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t event; /**< */ + xcb_window_t window; /**< */ + xcb_window_t above_sibling; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t border_width; /**< */ + uint8_t override_redirect; /**< */ + uint8_t pad1; /**< */ +} xcb_configure_notify_event_t; + +/** Opcode for xcb_configure_request. */ +#define XCB_CONFIGURE_REQUEST 23 + +/** + * @brief xcb_configure_request_event_t + **/ +typedef struct xcb_configure_request_event_t { + uint8_t response_type; /**< */ + uint8_t stack_mode; /**< */ + uint16_t sequence; /**< */ + xcb_window_t parent; /**< */ + xcb_window_t window; /**< */ + xcb_window_t sibling; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t border_width; /**< */ + uint16_t value_mask; /**< */ +} xcb_configure_request_event_t; + +/** Opcode for xcb_gravity_notify. */ +#define XCB_GRAVITY_NOTIFY 24 + +/** + * @brief xcb_gravity_notify_event_t + **/ +typedef struct xcb_gravity_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t event; /**< */ + xcb_window_t window; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ +} xcb_gravity_notify_event_t; + +/** Opcode for xcb_resize_request. */ +#define XCB_RESIZE_REQUEST 25 + +/** + * @brief xcb_resize_request_event_t + **/ +typedef struct xcb_resize_request_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t window; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_resize_request_event_t; + +typedef enum xcb_place_t { + XCB_PLACE_ON_TOP = 0, +/**< The window is now on top of all siblings. */ + + XCB_PLACE_ON_BOTTOM = 1 +/**< The window is now below all siblings. */ + +} xcb_place_t; + +/** Opcode for xcb_circulate_notify. */ +#define XCB_CIRCULATE_NOTIFY 26 + +/** + * @brief xcb_circulate_notify_event_t + **/ +typedef struct xcb_circulate_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t event; /**< */ + xcb_window_t window; /**< */ + uint8_t pad1[4]; /**< */ + uint8_t place; /**< */ + uint8_t pad2[3]; /**< */ +} xcb_circulate_notify_event_t; + +/** Opcode for xcb_circulate_request. */ +#define XCB_CIRCULATE_REQUEST 27 + +typedef xcb_circulate_notify_event_t xcb_circulate_request_event_t; + +typedef enum xcb_property_t { + XCB_PROPERTY_NEW_VALUE = 0, + XCB_PROPERTY_DELETE = 1 +} xcb_property_t; + +/** Opcode for xcb_property_notify. */ +#define XCB_PROPERTY_NOTIFY 28 + +/** + * @brief xcb_property_notify_event_t + **/ +typedef struct xcb_property_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t window; /**< */ + xcb_atom_t atom; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t state; /**< */ + uint8_t pad1[3]; /**< */ +} xcb_property_notify_event_t; + +/** Opcode for xcb_selection_clear. */ +#define XCB_SELECTION_CLEAR 29 + +/** + * @brief xcb_selection_clear_event_t + **/ +typedef struct xcb_selection_clear_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t owner; /**< */ + xcb_atom_t selection; /**< */ +} xcb_selection_clear_event_t; + +typedef enum xcb_time_t { + XCB_TIME_CURRENT_TIME = 0 +} xcb_time_t; + +typedef enum xcb_atom_enum_t { + XCB_ATOM_NONE = 0, + XCB_ATOM_ANY = 0, + XCB_ATOM_PRIMARY, + XCB_ATOM_SECONDARY, + XCB_ATOM_ARC, + XCB_ATOM_ATOM, + XCB_ATOM_BITMAP, + XCB_ATOM_CARDINAL, + XCB_ATOM_COLORMAP, + XCB_ATOM_CURSOR, + XCB_ATOM_CUT_BUFFER0, + XCB_ATOM_CUT_BUFFER1, + XCB_ATOM_CUT_BUFFER2, + XCB_ATOM_CUT_BUFFER3, + XCB_ATOM_CUT_BUFFER4, + XCB_ATOM_CUT_BUFFER5, + XCB_ATOM_CUT_BUFFER6, + XCB_ATOM_CUT_BUFFER7, + XCB_ATOM_DRAWABLE, + XCB_ATOM_FONT, + XCB_ATOM_INTEGER, + XCB_ATOM_PIXMAP, + XCB_ATOM_POINT, + XCB_ATOM_RECTANGLE, + XCB_ATOM_RESOURCE_MANAGER, + XCB_ATOM_RGB_COLOR_MAP, + XCB_ATOM_RGB_BEST_MAP, + XCB_ATOM_RGB_BLUE_MAP, + XCB_ATOM_RGB_DEFAULT_MAP, + XCB_ATOM_RGB_GRAY_MAP, + XCB_ATOM_RGB_GREEN_MAP, + XCB_ATOM_RGB_RED_MAP, + XCB_ATOM_STRING, + XCB_ATOM_VISUALID, + XCB_ATOM_WINDOW, + XCB_ATOM_WM_COMMAND, + XCB_ATOM_WM_HINTS, + XCB_ATOM_WM_CLIENT_MACHINE, + XCB_ATOM_WM_ICON_NAME, + XCB_ATOM_WM_ICON_SIZE, + XCB_ATOM_WM_NAME, + XCB_ATOM_WM_NORMAL_HINTS, + XCB_ATOM_WM_SIZE_HINTS, + XCB_ATOM_WM_ZOOM_HINTS, + XCB_ATOM_MIN_SPACE, + XCB_ATOM_NORM_SPACE, + XCB_ATOM_MAX_SPACE, + XCB_ATOM_END_SPACE, + XCB_ATOM_SUPERSCRIPT_X, + XCB_ATOM_SUPERSCRIPT_Y, + XCB_ATOM_SUBSCRIPT_X, + XCB_ATOM_SUBSCRIPT_Y, + XCB_ATOM_UNDERLINE_POSITION, + XCB_ATOM_UNDERLINE_THICKNESS, + XCB_ATOM_STRIKEOUT_ASCENT, + XCB_ATOM_STRIKEOUT_DESCENT, + XCB_ATOM_ITALIC_ANGLE, + XCB_ATOM_X_HEIGHT, + XCB_ATOM_QUAD_WIDTH, + XCB_ATOM_WEIGHT, + XCB_ATOM_POINT_SIZE, + XCB_ATOM_RESOLUTION, + XCB_ATOM_COPYRIGHT, + XCB_ATOM_NOTICE, + XCB_ATOM_FONT_NAME, + XCB_ATOM_FAMILY_NAME, + XCB_ATOM_FULL_NAME, + XCB_ATOM_CAP_HEIGHT, + XCB_ATOM_WM_CLASS, + XCB_ATOM_WM_TRANSIENT_FOR +} xcb_atom_enum_t; + +/** Opcode for xcb_selection_request. */ +#define XCB_SELECTION_REQUEST 30 + +/** + * @brief xcb_selection_request_event_t + **/ +typedef struct xcb_selection_request_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t owner; /**< */ + xcb_window_t requestor; /**< */ + xcb_atom_t selection; /**< */ + xcb_atom_t target; /**< */ + xcb_atom_t property; /**< */ +} xcb_selection_request_event_t; + +/** Opcode for xcb_selection_notify. */ +#define XCB_SELECTION_NOTIFY 31 + +/** + * @brief xcb_selection_notify_event_t + **/ +typedef struct xcb_selection_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_window_t requestor; /**< */ + xcb_atom_t selection; /**< */ + xcb_atom_t target; /**< */ + xcb_atom_t property; /**< */ +} xcb_selection_notify_event_t; + +typedef enum xcb_colormap_state_t { + XCB_COLORMAP_STATE_UNINSTALLED = 0, +/**< The colormap was uninstalled. */ + + XCB_COLORMAP_STATE_INSTALLED = 1 +/**< The colormap was installed. */ + +} xcb_colormap_state_t; + +typedef enum xcb_colormap_enum_t { + XCB_COLORMAP_NONE = 0 +} xcb_colormap_enum_t; + +/** Opcode for xcb_colormap_notify. */ +#define XCB_COLORMAP_NOTIFY 32 + +/** + * @brief xcb_colormap_notify_event_t + **/ +typedef struct xcb_colormap_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_window_t window; /**< */ + xcb_colormap_t colormap; /**< */ + uint8_t _new; /**< */ + uint8_t state; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_colormap_notify_event_t; + +/** + * @brief xcb_client_message_data_t + **/ +typedef union xcb_client_message_data_t { + uint8_t data8[20]; /**< */ + uint16_t data16[10]; /**< */ + uint32_t data32[5]; /**< */ +} xcb_client_message_data_t; + +/** + * @brief xcb_client_message_data_iterator_t + **/ +typedef struct xcb_client_message_data_iterator_t { + xcb_client_message_data_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_client_message_data_iterator_t; + +/** Opcode for xcb_client_message. */ +#define XCB_CLIENT_MESSAGE 33 + +/** + * @brief xcb_client_message_event_t + **/ +typedef struct xcb_client_message_event_t { + uint8_t response_type; /**< */ + uint8_t format; /**< */ + uint16_t sequence; /**< */ + xcb_window_t window; /**< */ + xcb_atom_t type; /**< */ + xcb_client_message_data_t data; /**< */ +} xcb_client_message_event_t; + +typedef enum xcb_mapping_t { + XCB_MAPPING_MODIFIER = 0, + XCB_MAPPING_KEYBOARD = 1, + XCB_MAPPING_POINTER = 2 +} xcb_mapping_t; + +/** Opcode for xcb_mapping_notify. */ +#define XCB_MAPPING_NOTIFY 34 + +/** + * @brief xcb_mapping_notify_event_t + **/ +typedef struct xcb_mapping_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint8_t request; /**< */ + xcb_keycode_t first_keycode; /**< */ + uint8_t count; /**< */ + uint8_t pad1; /**< */ +} xcb_mapping_notify_event_t; + +/** Opcode for xcb_request. */ +#define XCB_REQUEST 1 + +/** + * @brief xcb_request_error_t + **/ +typedef struct xcb_request_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ + uint32_t bad_value; /**< */ + uint16_t minor_opcode; /**< */ + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ +} xcb_request_error_t; + +/** Opcode for xcb_value. */ +#define XCB_VALUE 2 + +/** + * @brief xcb_value_error_t + **/ +typedef struct xcb_value_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ + uint32_t bad_value; /**< */ + uint16_t minor_opcode; /**< */ + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ +} xcb_value_error_t; + +/** Opcode for xcb_window. */ +#define XCB_WINDOW 3 + +typedef xcb_value_error_t xcb_window_error_t; + +/** Opcode for xcb_pixmap. */ +#define XCB_PIXMAP 4 + +typedef xcb_value_error_t xcb_pixmap_error_t; + +/** Opcode for xcb_atom. */ +#define XCB_ATOM 5 + +typedef xcb_value_error_t xcb_atom_error_t; + +/** Opcode for xcb_cursor. */ +#define XCB_CURSOR 6 + +typedef xcb_value_error_t xcb_cursor_error_t; + +/** Opcode for xcb_font. */ +#define XCB_FONT 7 + +typedef xcb_value_error_t xcb_font_error_t; + +/** Opcode for xcb_match. */ +#define XCB_MATCH 8 + +typedef xcb_request_error_t xcb_match_error_t; + +/** Opcode for xcb_drawable. */ +#define XCB_DRAWABLE 9 + +typedef xcb_value_error_t xcb_drawable_error_t; + +/** Opcode for xcb_access. */ +#define XCB_ACCESS 10 + +typedef xcb_request_error_t xcb_access_error_t; + +/** Opcode for xcb_alloc. */ +#define XCB_ALLOC 11 + +typedef xcb_request_error_t xcb_alloc_error_t; + +/** Opcode for xcb_colormap. */ +#define XCB_COLORMAP 12 + +typedef xcb_value_error_t xcb_colormap_error_t; + +/** Opcode for xcb_g_context. */ +#define XCB_G_CONTEXT 13 + +typedef xcb_value_error_t xcb_g_context_error_t; + +/** Opcode for xcb_id_choice. */ +#define XCB_ID_CHOICE 14 + +typedef xcb_value_error_t xcb_id_choice_error_t; + +/** Opcode for xcb_name. */ +#define XCB_NAME 15 + +typedef xcb_request_error_t xcb_name_error_t; + +/** Opcode for xcb_length. */ +#define XCB_LENGTH 16 + +typedef xcb_request_error_t xcb_length_error_t; + +/** Opcode for xcb_implementation. */ +#define XCB_IMPLEMENTATION 17 + +typedef xcb_request_error_t xcb_implementation_error_t; + +typedef enum xcb_window_class_t { + XCB_WINDOW_CLASS_COPY_FROM_PARENT = 0, + XCB_WINDOW_CLASS_INPUT_OUTPUT = 1, + XCB_WINDOW_CLASS_INPUT_ONLY = 2 +} xcb_window_class_t; + +typedef enum xcb_cw_t { + XCB_CW_BACK_PIXMAP = 1, +/**< Overrides the default background-pixmap. The background pixmap and window must +have the same root and same depth. Any size pixmap can be used, although some +sizes may be faster than others. + +If `XCB_BACK_PIXMAP_NONE` is specified, the window has no defined background. +The server may fill the contents with the previous screen contents or with +contents of its own choosing. + +If `XCB_BACK_PIXMAP_PARENT_RELATIVE` is specified, the parent's background is +used, but the window must have the same depth as the parent (or a Match error +results). The parent's background is tracked, and the current version is +used each time the window background is required. */ + + XCB_CW_BACK_PIXEL = 2, +/**< Overrides `BackPixmap`. A pixmap of undefined size filled with the specified +background pixel is used for the background. Range-checking is not performed, +the background pixel is truncated to the appropriate number of bits. */ + + XCB_CW_BORDER_PIXMAP = 4, +/**< Overrides the default border-pixmap. The border pixmap and window must have the +same root and the same depth. Any size pixmap can be used, although some sizes +may be faster than others. + +The special value `XCB_COPY_FROM_PARENT` means the parent's border pixmap is +copied (subsequent changes to the parent's border attribute do not affect the +child), but the window must have the same depth as the parent. */ + + XCB_CW_BORDER_PIXEL = 8, +/**< Overrides `BorderPixmap`. A pixmap of undefined size filled with the specified +border pixel is used for the border. Range checking is not performed on the +border-pixel value, it is truncated to the appropriate number of bits. */ + + XCB_CW_BIT_GRAVITY = 16, +/**< Defines which region of the window should be retained if the window is resized. */ + + XCB_CW_WIN_GRAVITY = 32, +/**< Defines how the window should be repositioned if the parent is resized (see +`ConfigureWindow`). */ + + XCB_CW_BACKING_STORE = 64, +/**< A backing-store of `WhenMapped` advises the server that maintaining contents of +obscured regions when the window is mapped would be beneficial. A backing-store +of `Always` advises the server that maintaining contents even when the window +is unmapped would be beneficial. In this case, the server may generate an +exposure event when the window is created. A value of `NotUseful` advises the +server that maintaining contents is unnecessary, although a server may still +choose to maintain contents while the window is mapped. Note that if the server +maintains contents, then the server should maintain complete contents not just +the region within the parent boundaries, even if the window is larger than its +parent. While the server maintains contents, exposure events will not normally +be generated, but the server may stop maintaining contents at any time. */ + + XCB_CW_BACKING_PLANES = 128, +/**< The backing-planes indicates (with bits set to 1) which bit planes of the +window hold dynamic data that must be preserved in backing-stores and during +save-unders. */ + + XCB_CW_BACKING_PIXEL = 256, +/**< The backing-pixel specifies what value to use in planes not covered by +backing-planes. The server is free to save only the specified bit planes in the +backing-store or save-under and regenerate the remaining planes with the +specified pixel value. Any bits beyond the specified depth of the window in +these values are simply ignored. */ + + XCB_CW_OVERRIDE_REDIRECT = 512, +/**< The override-redirect specifies whether map and configure requests on this +window should override a SubstructureRedirect on the parent, typically to +inform a window manager not to tamper with the window. */ + + XCB_CW_SAVE_UNDER = 1024, +/**< If 1, the server is advised that when this window is mapped, saving the +contents of windows it obscures would be beneficial. */ + + XCB_CW_EVENT_MASK = 2048, +/**< The event-mask defines which events the client is interested in for this window +(or for some event types, inferiors of the window). */ + + XCB_CW_DONT_PROPAGATE = 4096, +/**< The do-not-propagate-mask defines which events should not be propagated to +ancestor windows when no client has the event type selected in this window. */ + + XCB_CW_COLORMAP = 8192, +/**< The colormap specifies the colormap that best reflects the true colors of the window. Servers +capable of supporting multiple hardware colormaps may use this information, and window man- +agers may use it for InstallColormap requests. The colormap must have the same visual type +and root as the window (or a Match error results). If CopyFromParent is specified, the parent's +colormap is copied (subsequent changes to the parent's colormap attribute do not affect the child). +However, the window must have the same visual type as the parent (or a Match error results), +and the parent must not have a colormap of None (or a Match error results). For an explanation +of None, see FreeColormap request. The colormap is copied by sharing the colormap object +between the child and the parent, not by making a complete copy of the colormap contents. */ + + XCB_CW_CURSOR = 16384 +/**< If a cursor is specified, it will be used whenever the pointer is in the window. If None is speci- +fied, the parent's cursor will be used when the pointer is in the window, and any change in the +parent's cursor will cause an immediate change in the displayed cursor. */ + +} xcb_cw_t; + +typedef enum xcb_back_pixmap_t { + XCB_BACK_PIXMAP_NONE = 0, + XCB_BACK_PIXMAP_PARENT_RELATIVE = 1 +} xcb_back_pixmap_t; + +typedef enum xcb_gravity_t { + XCB_GRAVITY_BIT_FORGET = 0, + XCB_GRAVITY_WIN_UNMAP = 0, + XCB_GRAVITY_NORTH_WEST = 1, + XCB_GRAVITY_NORTH = 2, + XCB_GRAVITY_NORTH_EAST = 3, + XCB_GRAVITY_WEST = 4, + XCB_GRAVITY_CENTER = 5, + XCB_GRAVITY_EAST = 6, + XCB_GRAVITY_SOUTH_WEST = 7, + XCB_GRAVITY_SOUTH = 8, + XCB_GRAVITY_SOUTH_EAST = 9, + XCB_GRAVITY_STATIC = 10 +} xcb_gravity_t; + +/** Opcode for xcb_create_window. */ +#define XCB_CREATE_WINDOW 1 + +/** + * @brief xcb_create_window_request_t + **/ +typedef struct xcb_create_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t depth; /**< */ + uint16_t length; /**< */ + xcb_window_t wid; /**< */ + xcb_window_t parent; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t border_width; /**< */ + uint16_t _class; /**< */ + xcb_visualid_t visual; /**< */ + uint32_t value_mask; /**< */ +} xcb_create_window_request_t; + +/** Opcode for xcb_change_window_attributes. */ +#define XCB_CHANGE_WINDOW_ATTRIBUTES 2 + +/** + * @brief xcb_change_window_attributes_request_t + **/ +typedef struct xcb_change_window_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint32_t value_mask; /**< */ +} xcb_change_window_attributes_request_t; + +typedef enum xcb_map_state_t { + XCB_MAP_STATE_UNMAPPED = 0, + XCB_MAP_STATE_UNVIEWABLE = 1, + XCB_MAP_STATE_VIEWABLE = 2 +} xcb_map_state_t; + +/** + * @brief xcb_get_window_attributes_cookie_t + **/ +typedef struct xcb_get_window_attributes_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_window_attributes_cookie_t; + +/** Opcode for xcb_get_window_attributes. */ +#define XCB_GET_WINDOW_ATTRIBUTES 3 + +/** + * @brief xcb_get_window_attributes_request_t + **/ +typedef struct xcb_get_window_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_get_window_attributes_request_t; + +/** + * @brief xcb_get_window_attributes_reply_t + **/ +typedef struct xcb_get_window_attributes_reply_t { + uint8_t response_type; /**< */ + uint8_t backing_store; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_visualid_t visual; /**< */ + uint16_t _class; /**< */ + uint8_t bit_gravity; /**< */ + uint8_t win_gravity; /**< */ + uint32_t backing_planes; /**< */ + uint32_t backing_pixel; /**< */ + uint8_t save_under; /**< */ + uint8_t map_is_installed; /**< */ + uint8_t map_state; /**< */ + uint8_t override_redirect; /**< */ + xcb_colormap_t colormap; /**< */ + uint32_t all_event_masks; /**< */ + uint32_t your_event_mask; /**< */ + uint16_t do_not_propagate_mask; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_get_window_attributes_reply_t; + +/** Opcode for xcb_destroy_window. */ +#define XCB_DESTROY_WINDOW 4 + +/** + * @brief xcb_destroy_window_request_t + **/ +typedef struct xcb_destroy_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_destroy_window_request_t; + +/** Opcode for xcb_destroy_subwindows. */ +#define XCB_DESTROY_SUBWINDOWS 5 + +/** + * @brief xcb_destroy_subwindows_request_t + **/ +typedef struct xcb_destroy_subwindows_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_destroy_subwindows_request_t; + +typedef enum xcb_set_mode_t { + XCB_SET_MODE_INSERT = 0, + XCB_SET_MODE_DELETE = 1 +} xcb_set_mode_t; + +/** Opcode for xcb_change_save_set. */ +#define XCB_CHANGE_SAVE_SET 6 + +/** + * @brief xcb_change_save_set_request_t + **/ +typedef struct xcb_change_save_set_request_t { + uint8_t major_opcode; /**< */ + uint8_t mode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_change_save_set_request_t; + +/** Opcode for xcb_reparent_window. */ +#define XCB_REPARENT_WINDOW 7 + +/** + * @brief xcb_reparent_window_request_t + **/ +typedef struct xcb_reparent_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_window_t parent; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ +} xcb_reparent_window_request_t; + +/** Opcode for xcb_map_window. */ +#define XCB_MAP_WINDOW 8 + +/** + * @brief xcb_map_window_request_t + **/ +typedef struct xcb_map_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_map_window_request_t; + +/** Opcode for xcb_map_subwindows. */ +#define XCB_MAP_SUBWINDOWS 9 + +/** + * @brief xcb_map_subwindows_request_t + **/ +typedef struct xcb_map_subwindows_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_map_subwindows_request_t; + +/** Opcode for xcb_unmap_window. */ +#define XCB_UNMAP_WINDOW 10 + +/** + * @brief xcb_unmap_window_request_t + **/ +typedef struct xcb_unmap_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_unmap_window_request_t; + +/** Opcode for xcb_unmap_subwindows. */ +#define XCB_UNMAP_SUBWINDOWS 11 + +/** + * @brief xcb_unmap_subwindows_request_t + **/ +typedef struct xcb_unmap_subwindows_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_unmap_subwindows_request_t; + +typedef enum xcb_config_window_t { + XCB_CONFIG_WINDOW_X = 1, + XCB_CONFIG_WINDOW_Y = 2, + XCB_CONFIG_WINDOW_WIDTH = 4, + XCB_CONFIG_WINDOW_HEIGHT = 8, + XCB_CONFIG_WINDOW_BORDER_WIDTH = 16, + XCB_CONFIG_WINDOW_SIBLING = 32, + XCB_CONFIG_WINDOW_STACK_MODE = 64 +} xcb_config_window_t; + +typedef enum xcb_stack_mode_t { + XCB_STACK_MODE_ABOVE = 0, + XCB_STACK_MODE_BELOW = 1, + XCB_STACK_MODE_TOP_IF = 2, + XCB_STACK_MODE_BOTTOM_IF = 3, + XCB_STACK_MODE_OPPOSITE = 4 +} xcb_stack_mode_t; + +/** Opcode for xcb_configure_window. */ +#define XCB_CONFIGURE_WINDOW 12 + +/** + * @brief xcb_configure_window_request_t + **/ +typedef struct xcb_configure_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint16_t value_mask; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_configure_window_request_t; + +typedef enum xcb_circulate_t { + XCB_CIRCULATE_RAISE_LOWEST = 0, + XCB_CIRCULATE_LOWER_HIGHEST = 1 +} xcb_circulate_t; + +/** Opcode for xcb_circulate_window. */ +#define XCB_CIRCULATE_WINDOW 13 + +/** + * @brief xcb_circulate_window_request_t + **/ +typedef struct xcb_circulate_window_request_t { + uint8_t major_opcode; /**< */ + uint8_t direction; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_circulate_window_request_t; + +/** + * @brief xcb_get_geometry_cookie_t + **/ +typedef struct xcb_get_geometry_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_geometry_cookie_t; + +/** Opcode for xcb_get_geometry. */ +#define XCB_GET_GEOMETRY 14 + +/** + * @brief xcb_get_geometry_request_t + **/ +typedef struct xcb_get_geometry_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ +} xcb_get_geometry_request_t; + +/** + * @brief xcb_get_geometry_reply_t + **/ +typedef struct xcb_get_geometry_reply_t { + uint8_t response_type; /**< */ + uint8_t depth; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t root; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint16_t border_width; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_get_geometry_reply_t; + +/** + * @brief xcb_query_tree_cookie_t + **/ +typedef struct xcb_query_tree_cookie_t { + unsigned int sequence; /**< */ +} xcb_query_tree_cookie_t; + +/** Opcode for xcb_query_tree. */ +#define XCB_QUERY_TREE 15 + +/** + * @brief xcb_query_tree_request_t + **/ +typedef struct xcb_query_tree_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_query_tree_request_t; + +/** + * @brief xcb_query_tree_reply_t + **/ +typedef struct xcb_query_tree_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t root; /**< */ + xcb_window_t parent; /**< */ + uint16_t children_len; /**< */ + uint8_t pad1[14]; /**< */ +} xcb_query_tree_reply_t; + +/** + * @brief xcb_intern_atom_cookie_t + **/ +typedef struct xcb_intern_atom_cookie_t { + unsigned int sequence; /**< */ +} xcb_intern_atom_cookie_t; + +/** Opcode for xcb_intern_atom. */ +#define XCB_INTERN_ATOM 16 + +/** + * @brief xcb_intern_atom_request_t + **/ +typedef struct xcb_intern_atom_request_t { + uint8_t major_opcode; /**< */ + uint8_t only_if_exists; /**< */ + uint16_t length; /**< */ + uint16_t name_len; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_intern_atom_request_t; + +/** + * @brief xcb_intern_atom_reply_t + **/ +typedef struct xcb_intern_atom_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_atom_t atom; /**< */ +} xcb_intern_atom_reply_t; + +/** + * @brief xcb_get_atom_name_cookie_t + **/ +typedef struct xcb_get_atom_name_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_atom_name_cookie_t; + +/** Opcode for xcb_get_atom_name. */ +#define XCB_GET_ATOM_NAME 17 + +/** + * @brief xcb_get_atom_name_request_t + **/ +typedef struct xcb_get_atom_name_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_atom_t atom; /**< */ +} xcb_get_atom_name_request_t; + +/** + * @brief xcb_get_atom_name_reply_t + **/ +typedef struct xcb_get_atom_name_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t name_len; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_get_atom_name_reply_t; + +typedef enum xcb_prop_mode_t { + XCB_PROP_MODE_REPLACE = 0, +/**< Discard the previous property value and store the new data. */ + + XCB_PROP_MODE_PREPEND = 1, +/**< Insert the new data before the beginning of existing data. The `format` must +match existing property value. If the property is undefined, it is treated as +defined with the correct type and format with zero-length data. */ + + XCB_PROP_MODE_APPEND = 2 +/**< Insert the new data after the beginning of existing data. The `format` must +match existing property value. If the property is undefined, it is treated as +defined with the correct type and format with zero-length data. */ + +} xcb_prop_mode_t; + +/** Opcode for xcb_change_property. */ +#define XCB_CHANGE_PROPERTY 18 + +/** + * @brief xcb_change_property_request_t + **/ +typedef struct xcb_change_property_request_t { + uint8_t major_opcode; /**< */ + uint8_t mode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_atom_t property; /**< */ + xcb_atom_t type; /**< */ + uint8_t format; /**< */ + uint8_t pad0[3]; /**< */ + uint32_t data_len; /**< */ +} xcb_change_property_request_t; + +/** Opcode for xcb_delete_property. */ +#define XCB_DELETE_PROPERTY 19 + +/** + * @brief xcb_delete_property_request_t + **/ +typedef struct xcb_delete_property_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_atom_t property; /**< */ +} xcb_delete_property_request_t; + +typedef enum xcb_get_property_type_t { + XCB_GET_PROPERTY_TYPE_ANY = 0 +} xcb_get_property_type_t; + +/** + * @brief xcb_get_property_cookie_t + **/ +typedef struct xcb_get_property_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_property_cookie_t; + +/** Opcode for xcb_get_property. */ +#define XCB_GET_PROPERTY 20 + +/** + * @brief xcb_get_property_request_t + **/ +typedef struct xcb_get_property_request_t { + uint8_t major_opcode; /**< */ + uint8_t _delete; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_atom_t property; /**< */ + xcb_atom_t type; /**< */ + uint32_t long_offset; /**< */ + uint32_t long_length; /**< */ +} xcb_get_property_request_t; + +/** + * @brief xcb_get_property_reply_t + **/ +typedef struct xcb_get_property_reply_t { + uint8_t response_type; /**< */ + uint8_t format; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_atom_t type; /**< */ + uint32_t bytes_after; /**< */ + uint32_t value_len; /**< */ + uint8_t pad0[12]; /**< */ +} xcb_get_property_reply_t; + +/** + * @brief xcb_list_properties_cookie_t + **/ +typedef struct xcb_list_properties_cookie_t { + unsigned int sequence; /**< */ +} xcb_list_properties_cookie_t; + +/** Opcode for xcb_list_properties. */ +#define XCB_LIST_PROPERTIES 21 + +/** + * @brief xcb_list_properties_request_t + **/ +typedef struct xcb_list_properties_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_list_properties_request_t; + +/** + * @brief xcb_list_properties_reply_t + **/ +typedef struct xcb_list_properties_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t atoms_len; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_list_properties_reply_t; + +/** Opcode for xcb_set_selection_owner. */ +#define XCB_SET_SELECTION_OWNER 22 + +/** + * @brief xcb_set_selection_owner_request_t + **/ +typedef struct xcb_set_selection_owner_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t owner; /**< */ + xcb_atom_t selection; /**< */ + xcb_timestamp_t time; /**< */ +} xcb_set_selection_owner_request_t; + +/** + * @brief xcb_get_selection_owner_cookie_t + **/ +typedef struct xcb_get_selection_owner_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_selection_owner_cookie_t; + +/** Opcode for xcb_get_selection_owner. */ +#define XCB_GET_SELECTION_OWNER 23 + +/** + * @brief xcb_get_selection_owner_request_t + **/ +typedef struct xcb_get_selection_owner_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_atom_t selection; /**< */ +} xcb_get_selection_owner_request_t; + +/** + * @brief xcb_get_selection_owner_reply_t + **/ +typedef struct xcb_get_selection_owner_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t owner; /**< */ +} xcb_get_selection_owner_reply_t; + +/** Opcode for xcb_convert_selection. */ +#define XCB_CONVERT_SELECTION 24 + +/** + * @brief xcb_convert_selection_request_t + **/ +typedef struct xcb_convert_selection_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t requestor; /**< */ + xcb_atom_t selection; /**< */ + xcb_atom_t target; /**< */ + xcb_atom_t property; /**< */ + xcb_timestamp_t time; /**< */ +} xcb_convert_selection_request_t; + +typedef enum xcb_send_event_dest_t { + XCB_SEND_EVENT_DEST_POINTER_WINDOW = 0, + XCB_SEND_EVENT_DEST_ITEM_FOCUS = 1 +} xcb_send_event_dest_t; + +/** Opcode for xcb_send_event. */ +#define XCB_SEND_EVENT 25 + +/** + * @brief xcb_send_event_request_t + **/ +typedef struct xcb_send_event_request_t { + uint8_t major_opcode; /**< */ + uint8_t propagate; /**< */ + uint16_t length; /**< */ + xcb_window_t destination; /**< */ + uint32_t event_mask; /**< */ + char event[32]; /**< */ +} xcb_send_event_request_t; + +typedef enum xcb_grab_mode_t { + XCB_GRAB_MODE_SYNC = 0, +/**< The state of the keyboard appears to freeze: No further keyboard events are +generated by the server until the grabbing client issues a releasing +`AllowEvents` request or until the keyboard grab is released. */ + + XCB_GRAB_MODE_ASYNC = 1 +/**< Keyboard event processing continues normally. */ + +} xcb_grab_mode_t; + +typedef enum xcb_grab_status_t { + XCB_GRAB_STATUS_SUCCESS = 0, + XCB_GRAB_STATUS_ALREADY_GRABBED = 1, + XCB_GRAB_STATUS_INVALID_TIME = 2, + XCB_GRAB_STATUS_NOT_VIEWABLE = 3, + XCB_GRAB_STATUS_FROZEN = 4 +} xcb_grab_status_t; + +typedef enum xcb_cursor_enum_t { + XCB_CURSOR_NONE = 0 +} xcb_cursor_enum_t; + +/** + * @brief xcb_grab_pointer_cookie_t + **/ +typedef struct xcb_grab_pointer_cookie_t { + unsigned int sequence; /**< */ +} xcb_grab_pointer_cookie_t; + +/** Opcode for xcb_grab_pointer. */ +#define XCB_GRAB_POINTER 26 + +/** + * @brief xcb_grab_pointer_request_t + **/ +typedef struct xcb_grab_pointer_request_t { + uint8_t major_opcode; /**< */ + uint8_t owner_events; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + uint16_t event_mask; /**< */ + uint8_t pointer_mode; /**< */ + uint8_t keyboard_mode; /**< */ + xcb_window_t confine_to; /**< */ + xcb_cursor_t cursor; /**< */ + xcb_timestamp_t time; /**< */ +} xcb_grab_pointer_request_t; + +/** + * @brief xcb_grab_pointer_reply_t + **/ +typedef struct xcb_grab_pointer_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ +} xcb_grab_pointer_reply_t; + +/** Opcode for xcb_ungrab_pointer. */ +#define XCB_UNGRAB_POINTER 27 + +/** + * @brief xcb_ungrab_pointer_request_t + **/ +typedef struct xcb_ungrab_pointer_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_timestamp_t time; /**< */ +} xcb_ungrab_pointer_request_t; + +typedef enum xcb_button_index_t { + XCB_BUTTON_INDEX_ANY = 0, +/**< Any of the following (or none): */ + + XCB_BUTTON_INDEX_1 = 1, +/**< The left mouse button. */ + + XCB_BUTTON_INDEX_2 = 2, +/**< The right mouse button. */ + + XCB_BUTTON_INDEX_3 = 3, +/**< The middle mouse button. */ + + XCB_BUTTON_INDEX_4 = 4, +/**< Scroll wheel. TODO: direction? */ + + XCB_BUTTON_INDEX_5 = 5 +/**< Scroll wheel. TODO: direction? */ + +} xcb_button_index_t; + +/** Opcode for xcb_grab_button. */ +#define XCB_GRAB_BUTTON 28 + +/** + * @brief xcb_grab_button_request_t + **/ +typedef struct xcb_grab_button_request_t { + uint8_t major_opcode; /**< */ + uint8_t owner_events; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + uint16_t event_mask; /**< */ + uint8_t pointer_mode; /**< */ + uint8_t keyboard_mode; /**< */ + xcb_window_t confine_to; /**< */ + xcb_cursor_t cursor; /**< */ + uint8_t button; /**< */ + uint8_t pad0; /**< */ + uint16_t modifiers; /**< */ +} xcb_grab_button_request_t; + +/** Opcode for xcb_ungrab_button. */ +#define XCB_UNGRAB_BUTTON 29 + +/** + * @brief xcb_ungrab_button_request_t + **/ +typedef struct xcb_ungrab_button_request_t { + uint8_t major_opcode; /**< */ + uint8_t button; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + uint16_t modifiers; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_ungrab_button_request_t; + +/** Opcode for xcb_change_active_pointer_grab. */ +#define XCB_CHANGE_ACTIVE_POINTER_GRAB 30 + +/** + * @brief xcb_change_active_pointer_grab_request_t + **/ +typedef struct xcb_change_active_pointer_grab_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_cursor_t cursor; /**< */ + xcb_timestamp_t time; /**< */ + uint16_t event_mask; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_change_active_pointer_grab_request_t; + +/** + * @brief xcb_grab_keyboard_cookie_t + **/ +typedef struct xcb_grab_keyboard_cookie_t { + unsigned int sequence; /**< */ +} xcb_grab_keyboard_cookie_t; + +/** Opcode for xcb_grab_keyboard. */ +#define XCB_GRAB_KEYBOARD 31 + +/** + * @brief xcb_grab_keyboard_request_t + **/ +typedef struct xcb_grab_keyboard_request_t { + uint8_t major_opcode; /**< */ + uint8_t owner_events; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + xcb_timestamp_t time; /**< */ + uint8_t pointer_mode; /**< */ + uint8_t keyboard_mode; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_grab_keyboard_request_t; + +/** + * @brief xcb_grab_keyboard_reply_t + **/ +typedef struct xcb_grab_keyboard_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ +} xcb_grab_keyboard_reply_t; + +/** Opcode for xcb_ungrab_keyboard. */ +#define XCB_UNGRAB_KEYBOARD 32 + +/** + * @brief xcb_ungrab_keyboard_request_t + **/ +typedef struct xcb_ungrab_keyboard_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_timestamp_t time; /**< */ +} xcb_ungrab_keyboard_request_t; + +typedef enum xcb_grab_t { + XCB_GRAB_ANY = 0 +} xcb_grab_t; + +/** Opcode for xcb_grab_key. */ +#define XCB_GRAB_KEY 33 + +/** + * @brief xcb_grab_key_request_t + **/ +typedef struct xcb_grab_key_request_t { + uint8_t major_opcode; /**< */ + uint8_t owner_events; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + uint16_t modifiers; /**< */ + xcb_keycode_t key; /**< */ + uint8_t pointer_mode; /**< */ + uint8_t keyboard_mode; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_grab_key_request_t; + +/** Opcode for xcb_ungrab_key. */ +#define XCB_UNGRAB_KEY 34 + +/** + * @brief xcb_ungrab_key_request_t + **/ +typedef struct xcb_ungrab_key_request_t { + uint8_t major_opcode; /**< */ + xcb_keycode_t key; /**< */ + uint16_t length; /**< */ + xcb_window_t grab_window; /**< */ + uint16_t modifiers; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_ungrab_key_request_t; + +typedef enum xcb_allow_t { + XCB_ALLOW_ASYNC_POINTER = 0, +/**< For AsyncPointer, if the pointer is frozen by the client, pointer event +processing continues normally. If the pointer is frozen twice by the client on +behalf of two separate grabs, AsyncPointer thaws for both. AsyncPointer has no +effect if the pointer is not frozen by the client, but the pointer need not be +grabbed by the client. + +TODO: rewrite this in more understandable terms. */ + + XCB_ALLOW_SYNC_POINTER = 1, +/**< For SyncPointer, if the pointer is frozen and actively grabbed by the client, +pointer event processing continues normally until the next ButtonPress or +ButtonRelease event is reported to the client, at which time the pointer again +appears to freeze. However, if the reported event causes the pointer grab to be +released, then the pointer does not freeze. SyncPointer has no effect if the +pointer is not frozen by the client or if the pointer is not grabbed by the +client. */ + + XCB_ALLOW_REPLAY_POINTER = 2, +/**< For ReplayPointer, if the pointer is actively grabbed by the client and is +frozen as the result of an event having been sent to the client (either from +the activation of a GrabButton or from a previous AllowEvents with mode +SyncPointer but not from a GrabPointer), then the pointer grab is released and +that event is completely reprocessed, this time ignoring any passive grabs at +or above (towards the root) the grab-window of the grab just released. The +request has no effect if the pointer is not grabbed by the client or if the +pointer is not frozen as the result of an event. */ + + XCB_ALLOW_ASYNC_KEYBOARD = 3, +/**< For AsyncKeyboard, if the keyboard is frozen by the client, keyboard event +processing continues normally. If the keyboard is frozen twice by the client on +behalf of two separate grabs, AsyncKeyboard thaws for both. AsyncKeyboard has +no effect if the keyboard is not frozen by the client, but the keyboard need +not be grabbed by the client. */ + + XCB_ALLOW_SYNC_KEYBOARD = 4, +/**< For SyncKeyboard, if the keyboard is frozen and actively grabbed by the client, +keyboard event processing continues normally until the next KeyPress or +KeyRelease event is reported to the client, at which time the keyboard again +appears to freeze. However, if the reported event causes the keyboard grab to +be released, then the keyboard does not freeze. SyncKeyboard has no effect if +the keyboard is not frozen by the client or if the keyboard is not grabbed by +the client. */ + + XCB_ALLOW_REPLAY_KEYBOARD = 5, +/**< For ReplayKeyboard, if the keyboard is actively grabbed by the client and is +frozen as the result of an event having been sent to the client (either from +the activation of a GrabKey or from a previous AllowEvents with mode +SyncKeyboard but not from a GrabKeyboard), then the keyboard grab is released +and that event is completely reprocessed, this time ignoring any passive grabs +at or above (towards the root) the grab-window of the grab just released. The +request has no effect if the keyboard is not grabbed by the client or if the +keyboard is not frozen as the result of an event. */ + + XCB_ALLOW_ASYNC_BOTH = 6, +/**< For AsyncBoth, if the pointer and the keyboard are frozen by the client, event +processing for both devices continues normally. If a device is frozen twice by +the client on behalf of two separate grabs, AsyncBoth thaws for both. AsyncBoth +has no effect unless both pointer and keyboard are frozen by the client. */ + + XCB_ALLOW_SYNC_BOTH = 7 +/**< For SyncBoth, if both pointer and keyboard are frozen by the client, event +processing (for both devices) continues normally until the next ButtonPress, +ButtonRelease, KeyPress, or KeyRelease event is reported to the client for a +grabbed device (button event for the pointer, key event for the keyboard), at +which time the devices again appear to freeze. However, if the reported event +causes the grab to be released, then the devices do not freeze (but if the +other device is still grabbed, then a subsequent event for it will still cause +both devices to freeze). SyncBoth has no effect unless both pointer and +keyboard are frozen by the client. If the pointer or keyboard is frozen twice +by the client on behalf of two separate grabs, SyncBoth thaws for both (but a +subsequent freeze for SyncBoth will only freeze each device once). */ + +} xcb_allow_t; + +/** Opcode for xcb_allow_events. */ +#define XCB_ALLOW_EVENTS 35 + +/** + * @brief xcb_allow_events_request_t + **/ +typedef struct xcb_allow_events_request_t { + uint8_t major_opcode; /**< */ + uint8_t mode; /**< */ + uint16_t length; /**< */ + xcb_timestamp_t time; /**< */ +} xcb_allow_events_request_t; + +/** Opcode for xcb_grab_server. */ +#define XCB_GRAB_SERVER 36 + +/** + * @brief xcb_grab_server_request_t + **/ +typedef struct xcb_grab_server_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_grab_server_request_t; + +/** Opcode for xcb_ungrab_server. */ +#define XCB_UNGRAB_SERVER 37 + +/** + * @brief xcb_ungrab_server_request_t + **/ +typedef struct xcb_ungrab_server_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_ungrab_server_request_t; + +/** + * @brief xcb_query_pointer_cookie_t + **/ +typedef struct xcb_query_pointer_cookie_t { + unsigned int sequence; /**< */ +} xcb_query_pointer_cookie_t; + +/** Opcode for xcb_query_pointer. */ +#define XCB_QUERY_POINTER 38 + +/** + * @brief xcb_query_pointer_request_t + **/ +typedef struct xcb_query_pointer_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_query_pointer_request_t; + +/** + * @brief xcb_query_pointer_reply_t + **/ +typedef struct xcb_query_pointer_reply_t { + uint8_t response_type; /**< */ + uint8_t same_screen; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t root; /**< */ + xcb_window_t child; /**< */ + int16_t root_x; /**< */ + int16_t root_y; /**< */ + int16_t win_x; /**< */ + int16_t win_y; /**< */ + uint16_t mask; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_query_pointer_reply_t; + +/** + * @brief xcb_timecoord_t + **/ +typedef struct xcb_timecoord_t { + xcb_timestamp_t time; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ +} xcb_timecoord_t; + +/** + * @brief xcb_timecoord_iterator_t + **/ +typedef struct xcb_timecoord_iterator_t { + xcb_timecoord_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_timecoord_iterator_t; + +/** + * @brief xcb_get_motion_events_cookie_t + **/ +typedef struct xcb_get_motion_events_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_motion_events_cookie_t; + +/** Opcode for xcb_get_motion_events. */ +#define XCB_GET_MOTION_EVENTS 39 + +/** + * @brief xcb_get_motion_events_request_t + **/ +typedef struct xcb_get_motion_events_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_timestamp_t start; /**< */ + xcb_timestamp_t stop; /**< */ +} xcb_get_motion_events_request_t; + +/** + * @brief xcb_get_motion_events_reply_t + **/ +typedef struct xcb_get_motion_events_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t events_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_get_motion_events_reply_t; + +/** + * @brief xcb_translate_coordinates_cookie_t + **/ +typedef struct xcb_translate_coordinates_cookie_t { + unsigned int sequence; /**< */ +} xcb_translate_coordinates_cookie_t; + +/** Opcode for xcb_translate_coordinates. */ +#define XCB_TRANSLATE_COORDINATES 40 + +/** + * @brief xcb_translate_coordinates_request_t + **/ +typedef struct xcb_translate_coordinates_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t src_window; /**< */ + xcb_window_t dst_window; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ +} xcb_translate_coordinates_request_t; + +/** + * @brief xcb_translate_coordinates_reply_t + **/ +typedef struct xcb_translate_coordinates_reply_t { + uint8_t response_type; /**< */ + uint8_t same_screen; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t child; /**< */ + int16_t dst_x; /**< */ + int16_t dst_y; /**< */ +} xcb_translate_coordinates_reply_t; + +/** Opcode for xcb_warp_pointer. */ +#define XCB_WARP_POINTER 41 + +/** + * @brief xcb_warp_pointer_request_t + **/ +typedef struct xcb_warp_pointer_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t src_window; /**< */ + xcb_window_t dst_window; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ + uint16_t src_width; /**< */ + uint16_t src_height; /**< */ + int16_t dst_x; /**< */ + int16_t dst_y; /**< */ +} xcb_warp_pointer_request_t; + +typedef enum xcb_input_focus_t { + XCB_INPUT_FOCUS_NONE = 0, +/**< The focus reverts to `XCB_NONE`, so no window will have the input focus. */ + + XCB_INPUT_FOCUS_POINTER_ROOT = 1, +/**< The focus reverts to `XCB_POINTER_ROOT` respectively. When the focus reverts, +FocusIn and FocusOut events are generated, but the last-focus-change time is +not changed. */ + + XCB_INPUT_FOCUS_PARENT = 2, +/**< The focus reverts to the parent (or closest viewable ancestor) and the new +revert_to value is `XCB_INPUT_FOCUS_NONE`. */ + + XCB_INPUT_FOCUS_FOLLOW_KEYBOARD = 3 +/**< NOT YET DOCUMENTED. Only relevant for the xinput extension. */ + +} xcb_input_focus_t; + +/** Opcode for xcb_set_input_focus. */ +#define XCB_SET_INPUT_FOCUS 42 + +/** + * @brief xcb_set_input_focus_request_t + **/ +typedef struct xcb_set_input_focus_request_t { + uint8_t major_opcode; /**< */ + uint8_t revert_to; /**< */ + uint16_t length; /**< */ + xcb_window_t focus; /**< */ + xcb_timestamp_t time; /**< */ +} xcb_set_input_focus_request_t; + +/** + * @brief xcb_get_input_focus_cookie_t + **/ +typedef struct xcb_get_input_focus_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_input_focus_cookie_t; + +/** Opcode for xcb_get_input_focus. */ +#define XCB_GET_INPUT_FOCUS 43 + +/** + * @brief xcb_get_input_focus_request_t + **/ +typedef struct xcb_get_input_focus_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_get_input_focus_request_t; + +/** + * @brief xcb_get_input_focus_reply_t + **/ +typedef struct xcb_get_input_focus_reply_t { + uint8_t response_type; /**< */ + uint8_t revert_to; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_window_t focus; /**< */ +} xcb_get_input_focus_reply_t; + +/** + * @brief xcb_query_keymap_cookie_t + **/ +typedef struct xcb_query_keymap_cookie_t { + unsigned int sequence; /**< */ +} xcb_query_keymap_cookie_t; + +/** Opcode for xcb_query_keymap. */ +#define XCB_QUERY_KEYMAP 44 + +/** + * @brief xcb_query_keymap_request_t + **/ +typedef struct xcb_query_keymap_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_query_keymap_request_t; + +/** + * @brief xcb_query_keymap_reply_t + **/ +typedef struct xcb_query_keymap_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t keys[32]; /**< */ +} xcb_query_keymap_reply_t; + +/** Opcode for xcb_open_font. */ +#define XCB_OPEN_FONT 45 + +/** + * @brief xcb_open_font_request_t + **/ +typedef struct xcb_open_font_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_font_t fid; /**< */ + uint16_t name_len; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_open_font_request_t; + +/** Opcode for xcb_close_font. */ +#define XCB_CLOSE_FONT 46 + +/** + * @brief xcb_close_font_request_t + **/ +typedef struct xcb_close_font_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_font_t font; /**< */ +} xcb_close_font_request_t; + +typedef enum xcb_font_draw_t { + XCB_FONT_DRAW_LEFT_TO_RIGHT = 0, + XCB_FONT_DRAW_RIGHT_TO_LEFT = 1 +} xcb_font_draw_t; + +/** + * @brief xcb_fontprop_t + **/ +typedef struct xcb_fontprop_t { + xcb_atom_t name; /**< */ + uint32_t value; /**< */ +} xcb_fontprop_t; + +/** + * @brief xcb_fontprop_iterator_t + **/ +typedef struct xcb_fontprop_iterator_t { + xcb_fontprop_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_fontprop_iterator_t; + +/** + * @brief xcb_charinfo_t + **/ +typedef struct xcb_charinfo_t { + int16_t left_side_bearing; /**< */ + int16_t right_side_bearing; /**< */ + int16_t character_width; /**< */ + int16_t ascent; /**< */ + int16_t descent; /**< */ + uint16_t attributes; /**< */ +} xcb_charinfo_t; + +/** + * @brief xcb_charinfo_iterator_t + **/ +typedef struct xcb_charinfo_iterator_t { + xcb_charinfo_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_charinfo_iterator_t; + +/** + * @brief xcb_query_font_cookie_t + **/ +typedef struct xcb_query_font_cookie_t { + unsigned int sequence; /**< */ +} xcb_query_font_cookie_t; + +/** Opcode for xcb_query_font. */ +#define XCB_QUERY_FONT 47 + +/** + * @brief xcb_query_font_request_t + **/ +typedef struct xcb_query_font_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_fontable_t font; /**< */ +} xcb_query_font_request_t; + +/** + * @brief xcb_query_font_reply_t + **/ +typedef struct xcb_query_font_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_charinfo_t min_bounds; /**< */ + uint8_t pad1[4]; /**< */ + xcb_charinfo_t max_bounds; /**< */ + uint8_t pad2[4]; /**< */ + uint16_t min_char_or_byte2; /**< */ + uint16_t max_char_or_byte2; /**< */ + uint16_t default_char; /**< */ + uint16_t properties_len; /**< */ + uint8_t draw_direction; /**< */ + uint8_t min_byte1; /**< */ + uint8_t max_byte1; /**< */ + uint8_t all_chars_exist; /**< */ + int16_t font_ascent; /**< */ + int16_t font_descent; /**< */ + uint32_t char_infos_len; /**< */ +} xcb_query_font_reply_t; + +/** + * @brief xcb_query_text_extents_cookie_t + **/ +typedef struct xcb_query_text_extents_cookie_t { + unsigned int sequence; /**< */ +} xcb_query_text_extents_cookie_t; + +/** Opcode for xcb_query_text_extents. */ +#define XCB_QUERY_TEXT_EXTENTS 48 + +/** + * @brief xcb_query_text_extents_request_t + **/ +typedef struct xcb_query_text_extents_request_t { + uint8_t major_opcode; /**< */ + uint8_t odd_length; /**< */ + uint16_t length; /**< */ + xcb_fontable_t font; /**< */ +} xcb_query_text_extents_request_t; + +/** + * @brief xcb_query_text_extents_reply_t + **/ +typedef struct xcb_query_text_extents_reply_t { + uint8_t response_type; /**< */ + uint8_t draw_direction; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + int16_t font_ascent; /**< */ + int16_t font_descent; /**< */ + int16_t overall_ascent; /**< */ + int16_t overall_descent; /**< */ + int32_t overall_width; /**< */ + int32_t overall_left; /**< */ + int32_t overall_right; /**< */ +} xcb_query_text_extents_reply_t; + +/** + * @brief xcb_str_t + **/ +typedef struct xcb_str_t { + uint8_t name_len; /**< */ +} xcb_str_t; + +/** + * @brief xcb_str_iterator_t + **/ +typedef struct xcb_str_iterator_t { + xcb_str_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_str_iterator_t; + +/** + * @brief xcb_list_fonts_cookie_t + **/ +typedef struct xcb_list_fonts_cookie_t { + unsigned int sequence; /**< */ +} xcb_list_fonts_cookie_t; + +/** Opcode for xcb_list_fonts. */ +#define XCB_LIST_FONTS 49 + +/** + * @brief xcb_list_fonts_request_t + **/ +typedef struct xcb_list_fonts_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + uint16_t max_names; /**< */ + uint16_t pattern_len; /**< */ +} xcb_list_fonts_request_t; + +/** + * @brief xcb_list_fonts_reply_t + **/ +typedef struct xcb_list_fonts_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t names_len; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_list_fonts_reply_t; + +/** + * @brief xcb_list_fonts_with_info_cookie_t + **/ +typedef struct xcb_list_fonts_with_info_cookie_t { + unsigned int sequence; /**< */ +} xcb_list_fonts_with_info_cookie_t; + +/** Opcode for xcb_list_fonts_with_info. */ +#define XCB_LIST_FONTS_WITH_INFO 50 + +/** + * @brief xcb_list_fonts_with_info_request_t + **/ +typedef struct xcb_list_fonts_with_info_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + uint16_t max_names; /**< */ + uint16_t pattern_len; /**< */ +} xcb_list_fonts_with_info_request_t; + +/** + * @brief xcb_list_fonts_with_info_reply_t + **/ +typedef struct xcb_list_fonts_with_info_reply_t { + uint8_t response_type; /**< */ + uint8_t name_len; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_charinfo_t min_bounds; /**< */ + uint8_t pad0[4]; /**< */ + xcb_charinfo_t max_bounds; /**< */ + uint8_t pad1[4]; /**< */ + uint16_t min_char_or_byte2; /**< */ + uint16_t max_char_or_byte2; /**< */ + uint16_t default_char; /**< */ + uint16_t properties_len; /**< */ + uint8_t draw_direction; /**< */ + uint8_t min_byte1; /**< */ + uint8_t max_byte1; /**< */ + uint8_t all_chars_exist; /**< */ + int16_t font_ascent; /**< */ + int16_t font_descent; /**< */ + uint32_t replies_hint; /**< */ +} xcb_list_fonts_with_info_reply_t; + +/** Opcode for xcb_set_font_path. */ +#define XCB_SET_FONT_PATH 51 + +/** + * @brief xcb_set_font_path_request_t + **/ +typedef struct xcb_set_font_path_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + uint16_t font_qty; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_set_font_path_request_t; + +/** + * @brief xcb_get_font_path_cookie_t + **/ +typedef struct xcb_get_font_path_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_font_path_cookie_t; + +/** Opcode for xcb_get_font_path. */ +#define XCB_GET_FONT_PATH 52 + +/** + * @brief xcb_get_font_path_request_t + **/ +typedef struct xcb_get_font_path_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_get_font_path_request_t; + +/** + * @brief xcb_get_font_path_reply_t + **/ +typedef struct xcb_get_font_path_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t path_len; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_get_font_path_reply_t; + +/** Opcode for xcb_create_pixmap. */ +#define XCB_CREATE_PIXMAP 53 + +/** + * @brief xcb_create_pixmap_request_t + **/ +typedef struct xcb_create_pixmap_request_t { + uint8_t major_opcode; /**< */ + uint8_t depth; /**< */ + uint16_t length; /**< */ + xcb_pixmap_t pid; /**< */ + xcb_drawable_t drawable; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_create_pixmap_request_t; + +/** Opcode for xcb_free_pixmap. */ +#define XCB_FREE_PIXMAP 54 + +/** + * @brief xcb_free_pixmap_request_t + **/ +typedef struct xcb_free_pixmap_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_pixmap_t pixmap; /**< */ +} xcb_free_pixmap_request_t; + +typedef enum xcb_gc_t { + XCB_GC_FUNCTION = 1, +/**< TODO: Refer to GX */ + + XCB_GC_PLANE_MASK = 2, +/**< In graphics operations, given a source and destination pixel, the result is +computed bitwise on corresponding bits of the pixels; that is, a Boolean +operation is performed in each bit plane. The plane-mask restricts the +operation to a subset of planes, so the result is: + + ((src FUNC dst) AND plane-mask) OR (dst AND (NOT plane-mask)) */ + + XCB_GC_FOREGROUND = 4, +/**< Foreground colorpixel. */ + + XCB_GC_BACKGROUND = 8, +/**< Background colorpixel. */ + + XCB_GC_LINE_WIDTH = 16, +/**< The line-width is measured in pixels and can be greater than or equal to one, a wide line, or the +special value zero, a thin line. */ + + XCB_GC_LINE_STYLE = 32, +/**< The line-style defines which sections of a line are drawn: +Solid The full path of the line is drawn. +DoubleDash The full path of the line is drawn, but the even dashes are filled differently + than the odd dashes (see fill-style), with Butt cap-style used where even and + odd dashes meet. +OnOffDash Only the even dashes are drawn, and cap-style applies to all internal ends of + the individual dashes (except NotLast is treated as Butt). */ + + XCB_GC_CAP_STYLE = 64, +/**< The cap-style defines how the endpoints of a path are drawn: +NotLast The result is equivalent to Butt, except that for a line-width of zero the final + endpoint is not drawn. +Butt The result is square at the endpoint (perpendicular to the slope of the line) + with no projection beyond. +Round The result is a circular arc with its diameter equal to the line-width, centered + on the endpoint; it is equivalent to Butt for line-width zero. +Projecting The result is square at the end, but the path continues beyond the endpoint for + a distance equal to half the line-width; it is equivalent to Butt for line-width + zero. */ + + XCB_GC_JOIN_STYLE = 128, +/**< The join-style defines how corners are drawn for wide lines: +Miter The outer edges of the two lines extend to meet at an angle. However, if the + angle is less than 11 degrees, a Bevel join-style is used instead. +Round The result is a circular arc with a diameter equal to the line-width, centered + on the joinpoint. +Bevel The result is Butt endpoint styles, and then the triangular notch is filled. */ + + XCB_GC_FILL_STYLE = 256, +/**< The fill-style defines the contents of the source for line, text, and fill requests. For all text and fill +requests (for example, PolyText8, PolyText16, PolyFillRectangle, FillPoly, and PolyFillArc) +as well as for line requests with line-style Solid, (for example, PolyLine, PolySegment, +PolyRectangle, PolyArc) and for the even dashes for line requests with line-style OnOffDash +or DoubleDash: +Solid Foreground +Tiled Tile +OpaqueStippled A tile with the same width and height as stipple but with background + everywhere stipple has a zero and with foreground everywhere stipple + has a one +Stippled Foreground masked by stipple +For the odd dashes for line requests with line-style DoubleDash: +Solid Background +Tiled Same as for even dashes +OpaqueStippled Same as for even dashes +Stippled Background masked by stipple */ + + XCB_GC_FILL_RULE = 512, +/**< */ + + XCB_GC_TILE = 1024, +/**< The tile/stipple represents an infinite two-dimensional plane with the tile/stipple replicated in all +dimensions. When that plane is superimposed on the drawable for use in a graphics operation, +the upper-left corner of some instance of the tile/stipple is at the coordinates within the drawable +specified by the tile/stipple origin. The tile/stipple and clip origins are interpreted relative to the +origin of whatever destination drawable is specified in a graphics request. +The tile pixmap must have the same root and depth as the gcontext (or a Match error results). +The stipple pixmap must have depth one and must have the same root as the gcontext (or a +Match error results). For fill-style Stippled (but not fill-style +OpaqueStippled), the stipple pattern is tiled in a single plane and acts as an +additional clip mask to be ANDed with the clip-mask. +Any size pixmap can be used for tiling or stippling, although some sizes may be faster to use than +others. */ + + XCB_GC_STIPPLE = 2048, +/**< The tile/stipple represents an infinite two-dimensional plane with the tile/stipple replicated in all +dimensions. When that plane is superimposed on the drawable for use in a graphics operation, +the upper-left corner of some instance of the tile/stipple is at the coordinates within the drawable +specified by the tile/stipple origin. The tile/stipple and clip origins are interpreted relative to the +origin of whatever destination drawable is specified in a graphics request. +The tile pixmap must have the same root and depth as the gcontext (or a Match error results). +The stipple pixmap must have depth one and must have the same root as the gcontext (or a +Match error results). For fill-style Stippled (but not fill-style +OpaqueStippled), the stipple pattern is tiled in a single plane and acts as an +additional clip mask to be ANDed with the clip-mask. +Any size pixmap can be used for tiling or stippling, although some sizes may be faster to use than +others. */ + + XCB_GC_TILE_STIPPLE_ORIGIN_X = 4096, +/**< TODO */ + + XCB_GC_TILE_STIPPLE_ORIGIN_Y = 8192, +/**< TODO */ + + XCB_GC_FONT = 16384, +/**< Which font to use for the `ImageText8` and `ImageText16` requests. */ + + XCB_GC_SUBWINDOW_MODE = 32768, +/**< For ClipByChildren, both source and destination windows are additionally +clipped by all viewable InputOutput children. For IncludeInferiors, neither +source nor destination window is +clipped by inferiors. This will result in including subwindow contents in the source and drawing +through subwindow boundaries of the destination. The use of IncludeInferiors with a source or +destination window of one depth with mapped inferiors of differing depth is not illegal, but the +semantics is undefined by the core protocol. */ + + XCB_GC_GRAPHICS_EXPOSURES = 65536, +/**< Whether ExposureEvents should be generated (1) or not (0). + +The default is 1. */ + + XCB_GC_CLIP_ORIGIN_X = 131072, +/**< TODO */ + + XCB_GC_CLIP_ORIGIN_Y = 262144, +/**< TODO */ + + XCB_GC_CLIP_MASK = 524288, +/**< The clip-mask restricts writes to the destination drawable. Only pixels where the clip-mask has +bits set to 1 are drawn. Pixels are not drawn outside the area covered by the clip-mask or where +the clip-mask has bits set to 0. The clip-mask affects all graphics requests, but it does not clip +sources. The clip-mask origin is interpreted relative to the origin of whatever destination drawable is specified in a graphics request. If a pixmap is specified as the clip-mask, it must have +depth 1 and have the same root as the gcontext (or a Match error results). If clip-mask is None, +then pixels are always drawn, regardless of the clip origin. The clip-mask can also be set with the +SetClipRectangles request. */ + + XCB_GC_DASH_OFFSET = 1048576, +/**< TODO */ + + XCB_GC_DASH_LIST = 2097152, +/**< TODO */ + + XCB_GC_ARC_MODE = 4194304 +/**< TODO */ + +} xcb_gc_t; + +typedef enum xcb_gx_t { + XCB_GX_CLEAR = 0, + XCB_GX_AND = 1, + XCB_GX_AND_REVERSE = 2, + XCB_GX_COPY = 3, + XCB_GX_AND_INVERTED = 4, + XCB_GX_NOOP = 5, + XCB_GX_XOR = 6, + XCB_GX_OR = 7, + XCB_GX_NOR = 8, + XCB_GX_EQUIV = 9, + XCB_GX_INVERT = 10, + XCB_GX_OR_REVERSE = 11, + XCB_GX_COPY_INVERTED = 12, + XCB_GX_OR_INVERTED = 13, + XCB_GX_NAND = 14, + XCB_GX_SET = 15 +} xcb_gx_t; + +typedef enum xcb_line_style_t { + XCB_LINE_STYLE_SOLID = 0, + XCB_LINE_STYLE_ON_OFF_DASH = 1, + XCB_LINE_STYLE_DOUBLE_DASH = 2 +} xcb_line_style_t; + +typedef enum xcb_cap_style_t { + XCB_CAP_STYLE_NOT_LAST = 0, + XCB_CAP_STYLE_BUTT = 1, + XCB_CAP_STYLE_ROUND = 2, + XCB_CAP_STYLE_PROJECTING = 3 +} xcb_cap_style_t; + +typedef enum xcb_join_style_t { + XCB_JOIN_STYLE_MITER = 0, + XCB_JOIN_STYLE_ROUND = 1, + XCB_JOIN_STYLE_BEVEL = 2 +} xcb_join_style_t; + +typedef enum xcb_fill_style_t { + XCB_FILL_STYLE_SOLID = 0, + XCB_FILL_STYLE_TILED = 1, + XCB_FILL_STYLE_STIPPLED = 2, + XCB_FILL_STYLE_OPAQUE_STIPPLED = 3 +} xcb_fill_style_t; + +typedef enum xcb_fill_rule_t { + XCB_FILL_RULE_EVEN_ODD = 0, + XCB_FILL_RULE_WINDING = 1 +} xcb_fill_rule_t; + +typedef enum xcb_subwindow_mode_t { + XCB_SUBWINDOW_MODE_CLIP_BY_CHILDREN = 0, + XCB_SUBWINDOW_MODE_INCLUDE_INFERIORS = 1 +} xcb_subwindow_mode_t; + +typedef enum xcb_arc_mode_t { + XCB_ARC_MODE_CHORD = 0, + XCB_ARC_MODE_PIE_SLICE = 1 +} xcb_arc_mode_t; + +/** Opcode for xcb_create_gc. */ +#define XCB_CREATE_GC 55 + +/** + * @brief xcb_create_gc_request_t + **/ +typedef struct xcb_create_gc_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_gcontext_t cid; /**< */ + xcb_drawable_t drawable; /**< */ + uint32_t value_mask; /**< */ +} xcb_create_gc_request_t; + +/** Opcode for xcb_change_gc. */ +#define XCB_CHANGE_GC 56 + +/** + * @brief xcb_change_gc_request_t + **/ +typedef struct xcb_change_gc_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_gcontext_t gc; /**< */ + uint32_t value_mask; /**< */ +} xcb_change_gc_request_t; + +/** Opcode for xcb_copy_gc. */ +#define XCB_COPY_GC 57 + +/** + * @brief xcb_copy_gc_request_t + **/ +typedef struct xcb_copy_gc_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_gcontext_t src_gc; /**< */ + xcb_gcontext_t dst_gc; /**< */ + uint32_t value_mask; /**< */ +} xcb_copy_gc_request_t; + +/** Opcode for xcb_set_dashes. */ +#define XCB_SET_DASHES 58 + +/** + * @brief xcb_set_dashes_request_t + **/ +typedef struct xcb_set_dashes_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_gcontext_t gc; /**< */ + uint16_t dash_offset; /**< */ + uint16_t dashes_len; /**< */ +} xcb_set_dashes_request_t; + +typedef enum xcb_clip_ordering_t { + XCB_CLIP_ORDERING_UNSORTED = 0, + XCB_CLIP_ORDERING_Y_SORTED = 1, + XCB_CLIP_ORDERING_YX_SORTED = 2, + XCB_CLIP_ORDERING_YX_BANDED = 3 +} xcb_clip_ordering_t; + +/** Opcode for xcb_set_clip_rectangles. */ +#define XCB_SET_CLIP_RECTANGLES 59 + +/** + * @brief xcb_set_clip_rectangles_request_t + **/ +typedef struct xcb_set_clip_rectangles_request_t { + uint8_t major_opcode; /**< */ + uint8_t ordering; /**< */ + uint16_t length; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t clip_x_origin; /**< */ + int16_t clip_y_origin; /**< */ +} xcb_set_clip_rectangles_request_t; + +/** Opcode for xcb_free_gc. */ +#define XCB_FREE_GC 60 + +/** + * @brief xcb_free_gc_request_t + **/ +typedef struct xcb_free_gc_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_gcontext_t gc; /**< */ +} xcb_free_gc_request_t; + +/** Opcode for xcb_clear_area. */ +#define XCB_CLEAR_AREA 61 + +/** + * @brief xcb_clear_area_request_t + **/ +typedef struct xcb_clear_area_request_t { + uint8_t major_opcode; /**< */ + uint8_t exposures; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_clear_area_request_t; + +/** Opcode for xcb_copy_area. */ +#define XCB_COPY_AREA 62 + +/** + * @brief xcb_copy_area_request_t + **/ +typedef struct xcb_copy_area_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t src_drawable; /**< */ + xcb_drawable_t dst_drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ + int16_t dst_x; /**< */ + int16_t dst_y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_copy_area_request_t; + +/** Opcode for xcb_copy_plane. */ +#define XCB_COPY_PLANE 63 + +/** + * @brief xcb_copy_plane_request_t + **/ +typedef struct xcb_copy_plane_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t src_drawable; /**< */ + xcb_drawable_t dst_drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ + int16_t dst_x; /**< */ + int16_t dst_y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint32_t bit_plane; /**< */ +} xcb_copy_plane_request_t; + +typedef enum xcb_coord_mode_t { + XCB_COORD_MODE_ORIGIN = 0, +/**< Treats all coordinates as relative to the origin. */ + + XCB_COORD_MODE_PREVIOUS = 1 +/**< Treats all coordinates after the first as relative to the previous coordinate. */ + +} xcb_coord_mode_t; + +/** Opcode for xcb_poly_point. */ +#define XCB_POLY_POINT 64 + +/** + * @brief xcb_poly_point_request_t + **/ +typedef struct xcb_poly_point_request_t { + uint8_t major_opcode; /**< */ + uint8_t coordinate_mode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ +} xcb_poly_point_request_t; + +/** Opcode for xcb_poly_line. */ +#define XCB_POLY_LINE 65 + +/** + * @brief xcb_poly_line_request_t + **/ +typedef struct xcb_poly_line_request_t { + uint8_t major_opcode; /**< */ + uint8_t coordinate_mode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ +} xcb_poly_line_request_t; + +/** + * @brief xcb_segment_t + **/ +typedef struct xcb_segment_t { + int16_t x1; /**< */ + int16_t y1; /**< */ + int16_t x2; /**< */ + int16_t y2; /**< */ +} xcb_segment_t; + +/** + * @brief xcb_segment_iterator_t + **/ +typedef struct xcb_segment_iterator_t { + xcb_segment_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_segment_iterator_t; + +/** Opcode for xcb_poly_segment. */ +#define XCB_POLY_SEGMENT 66 + +/** + * @brief xcb_poly_segment_request_t + **/ +typedef struct xcb_poly_segment_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ +} xcb_poly_segment_request_t; + +/** Opcode for xcb_poly_rectangle. */ +#define XCB_POLY_RECTANGLE 67 + +/** + * @brief xcb_poly_rectangle_request_t + **/ +typedef struct xcb_poly_rectangle_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ +} xcb_poly_rectangle_request_t; + +/** Opcode for xcb_poly_arc. */ +#define XCB_POLY_ARC 68 + +/** + * @brief xcb_poly_arc_request_t + **/ +typedef struct xcb_poly_arc_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ +} xcb_poly_arc_request_t; + +typedef enum xcb_poly_shape_t { + XCB_POLY_SHAPE_COMPLEX = 0, + XCB_POLY_SHAPE_NONCONVEX = 1, + XCB_POLY_SHAPE_CONVEX = 2 +} xcb_poly_shape_t; + +/** Opcode for xcb_fill_poly. */ +#define XCB_FILL_POLY 69 + +/** + * @brief xcb_fill_poly_request_t + **/ +typedef struct xcb_fill_poly_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + uint8_t shape; /**< */ + uint8_t coordinate_mode; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_fill_poly_request_t; + +/** Opcode for xcb_poly_fill_rectangle. */ +#define XCB_POLY_FILL_RECTANGLE 70 + +/** + * @brief xcb_poly_fill_rectangle_request_t + **/ +typedef struct xcb_poly_fill_rectangle_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ +} xcb_poly_fill_rectangle_request_t; + +/** Opcode for xcb_poly_fill_arc. */ +#define XCB_POLY_FILL_ARC 71 + +/** + * @brief xcb_poly_fill_arc_request_t + **/ +typedef struct xcb_poly_fill_arc_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ +} xcb_poly_fill_arc_request_t; + +typedef enum xcb_image_format_t { + XCB_IMAGE_FORMAT_XY_BITMAP = 0, + XCB_IMAGE_FORMAT_XY_PIXMAP = 1, + XCB_IMAGE_FORMAT_Z_PIXMAP = 2 +} xcb_image_format_t; + +/** Opcode for xcb_put_image. */ +#define XCB_PUT_IMAGE 72 + +/** + * @brief xcb_put_image_request_t + **/ +typedef struct xcb_put_image_request_t { + uint8_t major_opcode; /**< */ + uint8_t format; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + int16_t dst_x; /**< */ + int16_t dst_y; /**< */ + uint8_t left_pad; /**< */ + uint8_t depth; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_put_image_request_t; + +/** + * @brief xcb_get_image_cookie_t + **/ +typedef struct xcb_get_image_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_image_cookie_t; + +/** Opcode for xcb_get_image. */ +#define XCB_GET_IMAGE 73 + +/** + * @brief xcb_get_image_request_t + **/ +typedef struct xcb_get_image_request_t { + uint8_t major_opcode; /**< */ + uint8_t format; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint32_t plane_mask; /**< */ +} xcb_get_image_request_t; + +/** + * @brief xcb_get_image_reply_t + **/ +typedef struct xcb_get_image_reply_t { + uint8_t response_type; /**< */ + uint8_t depth; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + xcb_visualid_t visual; /**< */ + uint8_t pad0[20]; /**< */ +} xcb_get_image_reply_t; + +/** Opcode for xcb_poly_text_8. */ +#define XCB_POLY_TEXT_8 74 + +/** + * @brief xcb_poly_text_8_request_t + **/ +typedef struct xcb_poly_text_8_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ +} xcb_poly_text_8_request_t; + +/** Opcode for xcb_poly_text_16. */ +#define XCB_POLY_TEXT_16 75 + +/** + * @brief xcb_poly_text_16_request_t + **/ +typedef struct xcb_poly_text_16_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ +} xcb_poly_text_16_request_t; + +/** Opcode for xcb_image_text_8. */ +#define XCB_IMAGE_TEXT_8 76 + +/** + * @brief xcb_image_text_8_request_t + **/ +typedef struct xcb_image_text_8_request_t { + uint8_t major_opcode; /**< */ + uint8_t string_len; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ +} xcb_image_text_8_request_t; + +/** Opcode for xcb_image_text_16. */ +#define XCB_IMAGE_TEXT_16 77 + +/** + * @brief xcb_image_text_16_request_t + **/ +typedef struct xcb_image_text_16_request_t { + uint8_t major_opcode; /**< */ + uint8_t string_len; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t x; /**< */ + int16_t y; /**< */ +} xcb_image_text_16_request_t; + +typedef enum xcb_colormap_alloc_t { + XCB_COLORMAP_ALLOC_NONE = 0, + XCB_COLORMAP_ALLOC_ALL = 1 +} xcb_colormap_alloc_t; + +/** Opcode for xcb_create_colormap. */ +#define XCB_CREATE_COLORMAP 78 + +/** + * @brief xcb_create_colormap_request_t + **/ +typedef struct xcb_create_colormap_request_t { + uint8_t major_opcode; /**< */ + uint8_t alloc; /**< */ + uint16_t length; /**< */ + xcb_colormap_t mid; /**< */ + xcb_window_t window; /**< */ + xcb_visualid_t visual; /**< */ +} xcb_create_colormap_request_t; + +/** Opcode for xcb_free_colormap. */ +#define XCB_FREE_COLORMAP 79 + +/** + * @brief xcb_free_colormap_request_t + **/ +typedef struct xcb_free_colormap_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ +} xcb_free_colormap_request_t; + +/** Opcode for xcb_copy_colormap_and_free. */ +#define XCB_COPY_COLORMAP_AND_FREE 80 + +/** + * @brief xcb_copy_colormap_and_free_request_t + **/ +typedef struct xcb_copy_colormap_and_free_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t mid; /**< */ + xcb_colormap_t src_cmap; /**< */ +} xcb_copy_colormap_and_free_request_t; + +/** Opcode for xcb_install_colormap. */ +#define XCB_INSTALL_COLORMAP 81 + +/** + * @brief xcb_install_colormap_request_t + **/ +typedef struct xcb_install_colormap_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ +} xcb_install_colormap_request_t; + +/** Opcode for xcb_uninstall_colormap. */ +#define XCB_UNINSTALL_COLORMAP 82 + +/** + * @brief xcb_uninstall_colormap_request_t + **/ +typedef struct xcb_uninstall_colormap_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ +} xcb_uninstall_colormap_request_t; + +/** + * @brief xcb_list_installed_colormaps_cookie_t + **/ +typedef struct xcb_list_installed_colormaps_cookie_t { + unsigned int sequence; /**< */ +} xcb_list_installed_colormaps_cookie_t; + +/** Opcode for xcb_list_installed_colormaps. */ +#define XCB_LIST_INSTALLED_COLORMAPS 83 + +/** + * @brief xcb_list_installed_colormaps_request_t + **/ +typedef struct xcb_list_installed_colormaps_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_list_installed_colormaps_request_t; + +/** + * @brief xcb_list_installed_colormaps_reply_t + **/ +typedef struct xcb_list_installed_colormaps_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t cmaps_len; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_list_installed_colormaps_reply_t; + +/** + * @brief xcb_alloc_color_cookie_t + **/ +typedef struct xcb_alloc_color_cookie_t { + unsigned int sequence; /**< */ +} xcb_alloc_color_cookie_t; + +/** Opcode for xcb_alloc_color. */ +#define XCB_ALLOC_COLOR 84 + +/** + * @brief xcb_alloc_color_request_t + **/ +typedef struct xcb_alloc_color_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ + uint16_t red; /**< */ + uint16_t green; /**< */ + uint16_t blue; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_alloc_color_request_t; + +/** + * @brief xcb_alloc_color_reply_t + **/ +typedef struct xcb_alloc_color_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t red; /**< */ + uint16_t green; /**< */ + uint16_t blue; /**< */ + uint8_t pad1[2]; /**< */ + uint32_t pixel; /**< */ +} xcb_alloc_color_reply_t; + +/** + * @brief xcb_alloc_named_color_cookie_t + **/ +typedef struct xcb_alloc_named_color_cookie_t { + unsigned int sequence; /**< */ +} xcb_alloc_named_color_cookie_t; + +/** Opcode for xcb_alloc_named_color. */ +#define XCB_ALLOC_NAMED_COLOR 85 + +/** + * @brief xcb_alloc_named_color_request_t + **/ +typedef struct xcb_alloc_named_color_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ + uint16_t name_len; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_alloc_named_color_request_t; + +/** + * @brief xcb_alloc_named_color_reply_t + **/ +typedef struct xcb_alloc_named_color_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t pixel; /**< */ + uint16_t exact_red; /**< */ + uint16_t exact_green; /**< */ + uint16_t exact_blue; /**< */ + uint16_t visual_red; /**< */ + uint16_t visual_green; /**< */ + uint16_t visual_blue; /**< */ +} xcb_alloc_named_color_reply_t; + +/** + * @brief xcb_alloc_color_cells_cookie_t + **/ +typedef struct xcb_alloc_color_cells_cookie_t { + unsigned int sequence; /**< */ +} xcb_alloc_color_cells_cookie_t; + +/** Opcode for xcb_alloc_color_cells. */ +#define XCB_ALLOC_COLOR_CELLS 86 + +/** + * @brief xcb_alloc_color_cells_request_t + **/ +typedef struct xcb_alloc_color_cells_request_t { + uint8_t major_opcode; /**< */ + uint8_t contiguous; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ + uint16_t colors; /**< */ + uint16_t planes; /**< */ +} xcb_alloc_color_cells_request_t; + +/** + * @brief xcb_alloc_color_cells_reply_t + **/ +typedef struct xcb_alloc_color_cells_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t pixels_len; /**< */ + uint16_t masks_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_alloc_color_cells_reply_t; + +/** + * @brief xcb_alloc_color_planes_cookie_t + **/ +typedef struct xcb_alloc_color_planes_cookie_t { + unsigned int sequence; /**< */ +} xcb_alloc_color_planes_cookie_t; + +/** Opcode for xcb_alloc_color_planes. */ +#define XCB_ALLOC_COLOR_PLANES 87 + +/** + * @brief xcb_alloc_color_planes_request_t + **/ +typedef struct xcb_alloc_color_planes_request_t { + uint8_t major_opcode; /**< */ + uint8_t contiguous; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ + uint16_t colors; /**< */ + uint16_t reds; /**< */ + uint16_t greens; /**< */ + uint16_t blues; /**< */ +} xcb_alloc_color_planes_request_t; + +/** + * @brief xcb_alloc_color_planes_reply_t + **/ +typedef struct xcb_alloc_color_planes_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t pixels_len; /**< */ + uint8_t pad1[2]; /**< */ + uint32_t red_mask; /**< */ + uint32_t green_mask; /**< */ + uint32_t blue_mask; /**< */ + uint8_t pad2[8]; /**< */ +} xcb_alloc_color_planes_reply_t; + +/** Opcode for xcb_free_colors. */ +#define XCB_FREE_COLORS 88 + +/** + * @brief xcb_free_colors_request_t + **/ +typedef struct xcb_free_colors_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ + uint32_t plane_mask; /**< */ +} xcb_free_colors_request_t; + +typedef enum xcb_color_flag_t { + XCB_COLOR_FLAG_RED = 1, + XCB_COLOR_FLAG_GREEN = 2, + XCB_COLOR_FLAG_BLUE = 4 +} xcb_color_flag_t; + +/** + * @brief xcb_coloritem_t + **/ +typedef struct xcb_coloritem_t { + uint32_t pixel; /**< */ + uint16_t red; /**< */ + uint16_t green; /**< */ + uint16_t blue; /**< */ + uint8_t flags; /**< */ + uint8_t pad0; /**< */ +} xcb_coloritem_t; + +/** + * @brief xcb_coloritem_iterator_t + **/ +typedef struct xcb_coloritem_iterator_t { + xcb_coloritem_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_coloritem_iterator_t; + +/** Opcode for xcb_store_colors. */ +#define XCB_STORE_COLORS 89 + +/** + * @brief xcb_store_colors_request_t + **/ +typedef struct xcb_store_colors_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ +} xcb_store_colors_request_t; + +/** Opcode for xcb_store_named_color. */ +#define XCB_STORE_NAMED_COLOR 90 + +/** + * @brief xcb_store_named_color_request_t + **/ +typedef struct xcb_store_named_color_request_t { + uint8_t major_opcode; /**< */ + uint8_t flags; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ + uint32_t pixel; /**< */ + uint16_t name_len; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_store_named_color_request_t; + +/** + * @brief xcb_rgb_t + **/ +typedef struct xcb_rgb_t { + uint16_t red; /**< */ + uint16_t green; /**< */ + uint16_t blue; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_rgb_t; + +/** + * @brief xcb_rgb_iterator_t + **/ +typedef struct xcb_rgb_iterator_t { + xcb_rgb_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_rgb_iterator_t; + +/** + * @brief xcb_query_colors_cookie_t + **/ +typedef struct xcb_query_colors_cookie_t { + unsigned int sequence; /**< */ +} xcb_query_colors_cookie_t; + +/** Opcode for xcb_query_colors. */ +#define XCB_QUERY_COLORS 91 + +/** + * @brief xcb_query_colors_request_t + **/ +typedef struct xcb_query_colors_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ +} xcb_query_colors_request_t; + +/** + * @brief xcb_query_colors_reply_t + **/ +typedef struct xcb_query_colors_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t colors_len; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_query_colors_reply_t; + +/** + * @brief xcb_lookup_color_cookie_t + **/ +typedef struct xcb_lookup_color_cookie_t { + unsigned int sequence; /**< */ +} xcb_lookup_color_cookie_t; + +/** Opcode for xcb_lookup_color. */ +#define XCB_LOOKUP_COLOR 92 + +/** + * @brief xcb_lookup_color_request_t + **/ +typedef struct xcb_lookup_color_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_colormap_t cmap; /**< */ + uint16_t name_len; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_lookup_color_request_t; + +/** + * @brief xcb_lookup_color_reply_t + **/ +typedef struct xcb_lookup_color_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t exact_red; /**< */ + uint16_t exact_green; /**< */ + uint16_t exact_blue; /**< */ + uint16_t visual_red; /**< */ + uint16_t visual_green; /**< */ + uint16_t visual_blue; /**< */ +} xcb_lookup_color_reply_t; + +typedef enum xcb_pixmap_enum_t { + XCB_PIXMAP_NONE = 0 +} xcb_pixmap_enum_t; + +/** Opcode for xcb_create_cursor. */ +#define XCB_CREATE_CURSOR 93 + +/** + * @brief xcb_create_cursor_request_t + **/ +typedef struct xcb_create_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_cursor_t cid; /**< */ + xcb_pixmap_t source; /**< */ + xcb_pixmap_t mask; /**< */ + uint16_t fore_red; /**< */ + uint16_t fore_green; /**< */ + uint16_t fore_blue; /**< */ + uint16_t back_red; /**< */ + uint16_t back_green; /**< */ + uint16_t back_blue; /**< */ + uint16_t x; /**< */ + uint16_t y; /**< */ +} xcb_create_cursor_request_t; + +typedef enum xcb_font_enum_t { + XCB_FONT_NONE = 0 +} xcb_font_enum_t; + +/** Opcode for xcb_create_glyph_cursor. */ +#define XCB_CREATE_GLYPH_CURSOR 94 + +/** + * @brief xcb_create_glyph_cursor_request_t + **/ +typedef struct xcb_create_glyph_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_cursor_t cid; /**< */ + xcb_font_t source_font; /**< */ + xcb_font_t mask_font; /**< */ + uint16_t source_char; /**< */ + uint16_t mask_char; /**< */ + uint16_t fore_red; /**< */ + uint16_t fore_green; /**< */ + uint16_t fore_blue; /**< */ + uint16_t back_red; /**< */ + uint16_t back_green; /**< */ + uint16_t back_blue; /**< */ +} xcb_create_glyph_cursor_request_t; + +/** Opcode for xcb_free_cursor. */ +#define XCB_FREE_CURSOR 95 + +/** + * @brief xcb_free_cursor_request_t + **/ +typedef struct xcb_free_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_cursor_t cursor; /**< */ +} xcb_free_cursor_request_t; + +/** Opcode for xcb_recolor_cursor. */ +#define XCB_RECOLOR_CURSOR 96 + +/** + * @brief xcb_recolor_cursor_request_t + **/ +typedef struct xcb_recolor_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_cursor_t cursor; /**< */ + uint16_t fore_red; /**< */ + uint16_t fore_green; /**< */ + uint16_t fore_blue; /**< */ + uint16_t back_red; /**< */ + uint16_t back_green; /**< */ + uint16_t back_blue; /**< */ +} xcb_recolor_cursor_request_t; + +typedef enum xcb_query_shape_of_t { + XCB_QUERY_SHAPE_OF_LARGEST_CURSOR = 0, + XCB_QUERY_SHAPE_OF_FASTEST_TILE = 1, + XCB_QUERY_SHAPE_OF_FASTEST_STIPPLE = 2 +} xcb_query_shape_of_t; + +/** + * @brief xcb_query_best_size_cookie_t + **/ +typedef struct xcb_query_best_size_cookie_t { + unsigned int sequence; /**< */ +} xcb_query_best_size_cookie_t; + +/** Opcode for xcb_query_best_size. */ +#define XCB_QUERY_BEST_SIZE 97 + +/** + * @brief xcb_query_best_size_request_t + **/ +typedef struct xcb_query_best_size_request_t { + uint8_t major_opcode; /**< */ + uint8_t _class; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_query_best_size_request_t; + +/** + * @brief xcb_query_best_size_reply_t + **/ +typedef struct xcb_query_best_size_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_query_best_size_reply_t; + +/** + * @brief xcb_query_extension_cookie_t + **/ +typedef struct xcb_query_extension_cookie_t { + unsigned int sequence; /**< */ +} xcb_query_extension_cookie_t; + +/** Opcode for xcb_query_extension. */ +#define XCB_QUERY_EXTENSION 98 + +/** + * @brief xcb_query_extension_request_t + **/ +typedef struct xcb_query_extension_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + uint16_t name_len; /**< */ + uint8_t pad1[2]; /**< */ +} xcb_query_extension_request_t; + +/** + * @brief xcb_query_extension_reply_t + **/ +typedef struct xcb_query_extension_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t present; /**< */ + uint8_t major_opcode; /**< */ + uint8_t first_event; /**< */ + uint8_t first_error; /**< */ +} xcb_query_extension_reply_t; + +/** + * @brief xcb_list_extensions_cookie_t + **/ +typedef struct xcb_list_extensions_cookie_t { + unsigned int sequence; /**< */ +} xcb_list_extensions_cookie_t; + +/** Opcode for xcb_list_extensions. */ +#define XCB_LIST_EXTENSIONS 99 + +/** + * @brief xcb_list_extensions_request_t + **/ +typedef struct xcb_list_extensions_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_list_extensions_request_t; + +/** + * @brief xcb_list_extensions_reply_t + **/ +typedef struct xcb_list_extensions_reply_t { + uint8_t response_type; /**< */ + uint8_t names_len; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad0[24]; /**< */ +} xcb_list_extensions_reply_t; + +/** Opcode for xcb_change_keyboard_mapping. */ +#define XCB_CHANGE_KEYBOARD_MAPPING 100 + +/** + * @brief xcb_change_keyboard_mapping_request_t + **/ +typedef struct xcb_change_keyboard_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t keycode_count; /**< */ + uint16_t length; /**< */ + xcb_keycode_t first_keycode; /**< */ + uint8_t keysyms_per_keycode; /**< */ + uint8_t pad0[2]; /**< */ +} xcb_change_keyboard_mapping_request_t; + +/** + * @brief xcb_get_keyboard_mapping_cookie_t + **/ +typedef struct xcb_get_keyboard_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_keyboard_mapping_cookie_t; + +/** Opcode for xcb_get_keyboard_mapping. */ +#define XCB_GET_KEYBOARD_MAPPING 101 + +/** + * @brief xcb_get_keyboard_mapping_request_t + **/ +typedef struct xcb_get_keyboard_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_keycode_t first_keycode; /**< */ + uint8_t count; /**< */ +} xcb_get_keyboard_mapping_request_t; + +/** + * @brief xcb_get_keyboard_mapping_reply_t + **/ +typedef struct xcb_get_keyboard_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t keysyms_per_keycode; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad0[24]; /**< */ +} xcb_get_keyboard_mapping_reply_t; + +typedef enum xcb_kb_t { + XCB_KB_KEY_CLICK_PERCENT = 1, + XCB_KB_BELL_PERCENT = 2, + XCB_KB_BELL_PITCH = 4, + XCB_KB_BELL_DURATION = 8, + XCB_KB_LED = 16, + XCB_KB_LED_MODE = 32, + XCB_KB_KEY = 64, + XCB_KB_AUTO_REPEAT_MODE = 128 +} xcb_kb_t; + +typedef enum xcb_led_mode_t { + XCB_LED_MODE_OFF = 0, + XCB_LED_MODE_ON = 1 +} xcb_led_mode_t; + +typedef enum xcb_auto_repeat_mode_t { + XCB_AUTO_REPEAT_MODE_OFF = 0, + XCB_AUTO_REPEAT_MODE_ON = 1, + XCB_AUTO_REPEAT_MODE_DEFAULT = 2 +} xcb_auto_repeat_mode_t; + +/** Opcode for xcb_change_keyboard_control. */ +#define XCB_CHANGE_KEYBOARD_CONTROL 102 + +/** + * @brief xcb_change_keyboard_control_request_t + **/ +typedef struct xcb_change_keyboard_control_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + uint32_t value_mask; /**< */ +} xcb_change_keyboard_control_request_t; + +/** + * @brief xcb_get_keyboard_control_cookie_t + **/ +typedef struct xcb_get_keyboard_control_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_keyboard_control_cookie_t; + +/** Opcode for xcb_get_keyboard_control. */ +#define XCB_GET_KEYBOARD_CONTROL 103 + +/** + * @brief xcb_get_keyboard_control_request_t + **/ +typedef struct xcb_get_keyboard_control_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_get_keyboard_control_request_t; + +/** + * @brief xcb_get_keyboard_control_reply_t + **/ +typedef struct xcb_get_keyboard_control_reply_t { + uint8_t response_type; /**< */ + uint8_t global_auto_repeat; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t led_mask; /**< */ + uint8_t key_click_percent; /**< */ + uint8_t bell_percent; /**< */ + uint16_t bell_pitch; /**< */ + uint16_t bell_duration; /**< */ + uint8_t pad0[2]; /**< */ + uint8_t auto_repeats[32]; /**< */ +} xcb_get_keyboard_control_reply_t; + +/** Opcode for xcb_bell. */ +#define XCB_BELL 104 + +/** + * @brief xcb_bell_request_t + **/ +typedef struct xcb_bell_request_t { + uint8_t major_opcode; /**< */ + int8_t percent; /**< */ + uint16_t length; /**< */ +} xcb_bell_request_t; + +/** Opcode for xcb_change_pointer_control. */ +#define XCB_CHANGE_POINTER_CONTROL 105 + +/** + * @brief xcb_change_pointer_control_request_t + **/ +typedef struct xcb_change_pointer_control_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + int16_t acceleration_numerator; /**< */ + int16_t acceleration_denominator; /**< */ + int16_t threshold; /**< */ + uint8_t do_acceleration; /**< */ + uint8_t do_threshold; /**< */ +} xcb_change_pointer_control_request_t; + +/** + * @brief xcb_get_pointer_control_cookie_t + **/ +typedef struct xcb_get_pointer_control_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_pointer_control_cookie_t; + +/** Opcode for xcb_get_pointer_control. */ +#define XCB_GET_POINTER_CONTROL 106 + +/** + * @brief xcb_get_pointer_control_request_t + **/ +typedef struct xcb_get_pointer_control_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_get_pointer_control_request_t; + +/** + * @brief xcb_get_pointer_control_reply_t + **/ +typedef struct xcb_get_pointer_control_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t acceleration_numerator; /**< */ + uint16_t acceleration_denominator; /**< */ + uint16_t threshold; /**< */ + uint8_t pad1[18]; /**< */ +} xcb_get_pointer_control_reply_t; + +typedef enum xcb_blanking_t { + XCB_BLANKING_NOT_PREFERRED = 0, + XCB_BLANKING_PREFERRED = 1, + XCB_BLANKING_DEFAULT = 2 +} xcb_blanking_t; + +typedef enum xcb_exposures_t { + XCB_EXPOSURES_NOT_ALLOWED = 0, + XCB_EXPOSURES_ALLOWED = 1, + XCB_EXPOSURES_DEFAULT = 2 +} xcb_exposures_t; + +/** Opcode for xcb_set_screen_saver. */ +#define XCB_SET_SCREEN_SAVER 107 + +/** + * @brief xcb_set_screen_saver_request_t + **/ +typedef struct xcb_set_screen_saver_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + int16_t timeout; /**< */ + int16_t interval; /**< */ + uint8_t prefer_blanking; /**< */ + uint8_t allow_exposures; /**< */ +} xcb_set_screen_saver_request_t; + +/** + * @brief xcb_get_screen_saver_cookie_t + **/ +typedef struct xcb_get_screen_saver_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_screen_saver_cookie_t; + +/** Opcode for xcb_get_screen_saver. */ +#define XCB_GET_SCREEN_SAVER 108 + +/** + * @brief xcb_get_screen_saver_request_t + **/ +typedef struct xcb_get_screen_saver_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_get_screen_saver_request_t; + +/** + * @brief xcb_get_screen_saver_reply_t + **/ +typedef struct xcb_get_screen_saver_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t timeout; /**< */ + uint16_t interval; /**< */ + uint8_t prefer_blanking; /**< */ + uint8_t allow_exposures; /**< */ + uint8_t pad1[18]; /**< */ +} xcb_get_screen_saver_reply_t; + +typedef enum xcb_host_mode_t { + XCB_HOST_MODE_INSERT = 0, + XCB_HOST_MODE_DELETE = 1 +} xcb_host_mode_t; + +typedef enum xcb_family_t { + XCB_FAMILY_INTERNET = 0, + XCB_FAMILY_DECNET = 1, + XCB_FAMILY_CHAOS = 2, + XCB_FAMILY_SERVER_INTERPRETED = 5, + XCB_FAMILY_INTERNET_6 = 6 +} xcb_family_t; + +/** Opcode for xcb_change_hosts. */ +#define XCB_CHANGE_HOSTS 109 + +/** + * @brief xcb_change_hosts_request_t + **/ +typedef struct xcb_change_hosts_request_t { + uint8_t major_opcode; /**< */ + uint8_t mode; /**< */ + uint16_t length; /**< */ + uint8_t family; /**< */ + uint8_t pad0; /**< */ + uint16_t address_len; /**< */ +} xcb_change_hosts_request_t; + +/** + * @brief xcb_host_t + **/ +typedef struct xcb_host_t { + uint8_t family; /**< */ + uint8_t pad0; /**< */ + uint16_t address_len; /**< */ +} xcb_host_t; + +/** + * @brief xcb_host_iterator_t + **/ +typedef struct xcb_host_iterator_t { + xcb_host_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_host_iterator_t; + +/** + * @brief xcb_list_hosts_cookie_t + **/ +typedef struct xcb_list_hosts_cookie_t { + unsigned int sequence; /**< */ +} xcb_list_hosts_cookie_t; + +/** Opcode for xcb_list_hosts. */ +#define XCB_LIST_HOSTS 110 + +/** + * @brief xcb_list_hosts_request_t + **/ +typedef struct xcb_list_hosts_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_list_hosts_request_t; + +/** + * @brief xcb_list_hosts_reply_t + **/ +typedef struct xcb_list_hosts_reply_t { + uint8_t response_type; /**< */ + uint8_t mode; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t hosts_len; /**< */ + uint8_t pad0[22]; /**< */ +} xcb_list_hosts_reply_t; + +typedef enum xcb_access_control_t { + XCB_ACCESS_CONTROL_DISABLE = 0, + XCB_ACCESS_CONTROL_ENABLE = 1 +} xcb_access_control_t; + +/** Opcode for xcb_set_access_control. */ +#define XCB_SET_ACCESS_CONTROL 111 + +/** + * @brief xcb_set_access_control_request_t + **/ +typedef struct xcb_set_access_control_request_t { + uint8_t major_opcode; /**< */ + uint8_t mode; /**< */ + uint16_t length; /**< */ +} xcb_set_access_control_request_t; + +typedef enum xcb_close_down_t { + XCB_CLOSE_DOWN_DESTROY_ALL = 0, + XCB_CLOSE_DOWN_RETAIN_PERMANENT = 1, + XCB_CLOSE_DOWN_RETAIN_TEMPORARY = 2 +} xcb_close_down_t; + +/** Opcode for xcb_set_close_down_mode. */ +#define XCB_SET_CLOSE_DOWN_MODE 112 + +/** + * @brief xcb_set_close_down_mode_request_t + **/ +typedef struct xcb_set_close_down_mode_request_t { + uint8_t major_opcode; /**< */ + uint8_t mode; /**< */ + uint16_t length; /**< */ +} xcb_set_close_down_mode_request_t; + +typedef enum xcb_kill_t { + XCB_KILL_ALL_TEMPORARY = 0 +} xcb_kill_t; + +/** Opcode for xcb_kill_client. */ +#define XCB_KILL_CLIENT 113 + +/** + * @brief xcb_kill_client_request_t + **/ +typedef struct xcb_kill_client_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + uint32_t resource; /**< */ +} xcb_kill_client_request_t; + +/** Opcode for xcb_rotate_properties. */ +#define XCB_ROTATE_PROPERTIES 114 + +/** + * @brief xcb_rotate_properties_request_t + **/ +typedef struct xcb_rotate_properties_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + uint16_t atoms_len; /**< */ + int16_t delta; /**< */ +} xcb_rotate_properties_request_t; + +typedef enum xcb_screen_saver_t { + XCB_SCREEN_SAVER_RESET = 0, + XCB_SCREEN_SAVER_ACTIVE = 1 +} xcb_screen_saver_t; + +/** Opcode for xcb_force_screen_saver. */ +#define XCB_FORCE_SCREEN_SAVER 115 + +/** + * @brief xcb_force_screen_saver_request_t + **/ +typedef struct xcb_force_screen_saver_request_t { + uint8_t major_opcode; /**< */ + uint8_t mode; /**< */ + uint16_t length; /**< */ +} xcb_force_screen_saver_request_t; + +typedef enum xcb_mapping_status_t { + XCB_MAPPING_STATUS_SUCCESS = 0, + XCB_MAPPING_STATUS_BUSY = 1, + XCB_MAPPING_STATUS_FAILURE = 2 +} xcb_mapping_status_t; + +/** + * @brief xcb_set_pointer_mapping_cookie_t + **/ +typedef struct xcb_set_pointer_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_set_pointer_mapping_cookie_t; + +/** Opcode for xcb_set_pointer_mapping. */ +#define XCB_SET_POINTER_MAPPING 116 + +/** + * @brief xcb_set_pointer_mapping_request_t + **/ +typedef struct xcb_set_pointer_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t map_len; /**< */ + uint16_t length; /**< */ +} xcb_set_pointer_mapping_request_t; + +/** + * @brief xcb_set_pointer_mapping_reply_t + **/ +typedef struct xcb_set_pointer_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ +} xcb_set_pointer_mapping_reply_t; + +/** + * @brief xcb_get_pointer_mapping_cookie_t + **/ +typedef struct xcb_get_pointer_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_pointer_mapping_cookie_t; + +/** Opcode for xcb_get_pointer_mapping. */ +#define XCB_GET_POINTER_MAPPING 117 + +/** + * @brief xcb_get_pointer_mapping_request_t + **/ +typedef struct xcb_get_pointer_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_get_pointer_mapping_request_t; + +/** + * @brief xcb_get_pointer_mapping_reply_t + **/ +typedef struct xcb_get_pointer_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t map_len; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad0[24]; /**< */ +} xcb_get_pointer_mapping_reply_t; + +typedef enum xcb_map_index_t { + XCB_MAP_INDEX_SHIFT = 0, + XCB_MAP_INDEX_LOCK = 1, + XCB_MAP_INDEX_CONTROL = 2, + XCB_MAP_INDEX_1 = 3, + XCB_MAP_INDEX_2 = 4, + XCB_MAP_INDEX_3 = 5, + XCB_MAP_INDEX_4 = 6, + XCB_MAP_INDEX_5 = 7 +} xcb_map_index_t; + +/** + * @brief xcb_set_modifier_mapping_cookie_t + **/ +typedef struct xcb_set_modifier_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_set_modifier_mapping_cookie_t; + +/** Opcode for xcb_set_modifier_mapping. */ +#define XCB_SET_MODIFIER_MAPPING 118 + +/** + * @brief xcb_set_modifier_mapping_request_t + **/ +typedef struct xcb_set_modifier_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t keycodes_per_modifier; /**< */ + uint16_t length; /**< */ +} xcb_set_modifier_mapping_request_t; + +/** + * @brief xcb_set_modifier_mapping_reply_t + **/ +typedef struct xcb_set_modifier_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t status; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ +} xcb_set_modifier_mapping_reply_t; + +/** + * @brief xcb_get_modifier_mapping_cookie_t + **/ +typedef struct xcb_get_modifier_mapping_cookie_t { + unsigned int sequence; /**< */ +} xcb_get_modifier_mapping_cookie_t; + +/** Opcode for xcb_get_modifier_mapping. */ +#define XCB_GET_MODIFIER_MAPPING 119 + +/** + * @brief xcb_get_modifier_mapping_request_t + **/ +typedef struct xcb_get_modifier_mapping_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_get_modifier_mapping_request_t; + +/** + * @brief xcb_get_modifier_mapping_reply_t + **/ +typedef struct xcb_get_modifier_mapping_reply_t { + uint8_t response_type; /**< */ + uint8_t keycodes_per_modifier; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad0[24]; /**< */ +} xcb_get_modifier_mapping_reply_t; + +/** Opcode for xcb_no_operation. */ +#define XCB_NO_OPERATION 127 + +/** + * @brief xcb_no_operation_request_t + **/ +typedef struct xcb_no_operation_request_t { + uint8_t major_opcode; /**< */ + uint8_t pad0; /**< */ + uint16_t length; /**< */ +} xcb_no_operation_request_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_char2b_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_char2b_t) + */ + +/***************************************************************************** + ** + ** void xcb_char2b_next + ** + ** @param xcb_char2b_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_char2b_next (xcb_char2b_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_char2b_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_char2b_end + ** + ** @param xcb_char2b_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_char2b_end (xcb_char2b_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_window_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_window_t) + */ + +/***************************************************************************** + ** + ** void xcb_window_next + ** + ** @param xcb_window_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_window_next (xcb_window_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_window_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_window_end + ** + ** @param xcb_window_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_window_end (xcb_window_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_pixmap_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_pixmap_t) + */ + +/***************************************************************************** + ** + ** void xcb_pixmap_next + ** + ** @param xcb_pixmap_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_pixmap_next (xcb_pixmap_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_pixmap_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_pixmap_end + ** + ** @param xcb_pixmap_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_pixmap_end (xcb_pixmap_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_cursor_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_cursor_t) + */ + +/***************************************************************************** + ** + ** void xcb_cursor_next + ** + ** @param xcb_cursor_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_cursor_next (xcb_cursor_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_cursor_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_cursor_end + ** + ** @param xcb_cursor_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_cursor_end (xcb_cursor_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_font_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_font_t) + */ + +/***************************************************************************** + ** + ** void xcb_font_next + ** + ** @param xcb_font_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_font_next (xcb_font_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_font_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_font_end + ** + ** @param xcb_font_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_font_end (xcb_font_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_gcontext_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_gcontext_t) + */ + +/***************************************************************************** + ** + ** void xcb_gcontext_next + ** + ** @param xcb_gcontext_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_gcontext_next (xcb_gcontext_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_gcontext_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_gcontext_end + ** + ** @param xcb_gcontext_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_gcontext_end (xcb_gcontext_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_colormap_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_colormap_t) + */ + +/***************************************************************************** + ** + ** void xcb_colormap_next + ** + ** @param xcb_colormap_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_colormap_next (xcb_colormap_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_colormap_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_colormap_end + ** + ** @param xcb_colormap_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_colormap_end (xcb_colormap_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_atom_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_atom_t) + */ + +/***************************************************************************** + ** + ** void xcb_atom_next + ** + ** @param xcb_atom_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_atom_next (xcb_atom_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_atom_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_atom_end + ** + ** @param xcb_atom_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_atom_end (xcb_atom_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_drawable_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_drawable_t) + */ + +/***************************************************************************** + ** + ** void xcb_drawable_next + ** + ** @param xcb_drawable_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_drawable_next (xcb_drawable_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_drawable_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_drawable_end + ** + ** @param xcb_drawable_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_drawable_end (xcb_drawable_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_fontable_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_fontable_t) + */ + +/***************************************************************************** + ** + ** void xcb_fontable_next + ** + ** @param xcb_fontable_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_fontable_next (xcb_fontable_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_fontable_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_fontable_end + ** + ** @param xcb_fontable_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_fontable_end (xcb_fontable_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_visualid_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_visualid_t) + */ + +/***************************************************************************** + ** + ** void xcb_visualid_next + ** + ** @param xcb_visualid_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_visualid_next (xcb_visualid_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_visualid_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_visualid_end + ** + ** @param xcb_visualid_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_visualid_end (xcb_visualid_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_timestamp_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_timestamp_t) + */ + +/***************************************************************************** + ** + ** void xcb_timestamp_next + ** + ** @param xcb_timestamp_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_timestamp_next (xcb_timestamp_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_timestamp_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_timestamp_end + ** + ** @param xcb_timestamp_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_timestamp_end (xcb_timestamp_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_keysym_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_keysym_t) + */ + +/***************************************************************************** + ** + ** void xcb_keysym_next + ** + ** @param xcb_keysym_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_keysym_next (xcb_keysym_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_keysym_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_keysym_end + ** + ** @param xcb_keysym_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_keysym_end (xcb_keysym_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_keycode_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_keycode_t) + */ + +/***************************************************************************** + ** + ** void xcb_keycode_next + ** + ** @param xcb_keycode_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_keycode_next (xcb_keycode_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_keycode_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_keycode_end + ** + ** @param xcb_keycode_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_keycode_end (xcb_keycode_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_button_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_button_t) + */ + +/***************************************************************************** + ** + ** void xcb_button_next + ** + ** @param xcb_button_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_button_next (xcb_button_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_button_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_button_end + ** + ** @param xcb_button_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_button_end (xcb_button_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_point_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_point_t) + */ + +/***************************************************************************** + ** + ** void xcb_point_next + ** + ** @param xcb_point_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_point_next (xcb_point_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_point_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_point_end + ** + ** @param xcb_point_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_point_end (xcb_point_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_rectangle_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_rectangle_t) + */ + +/***************************************************************************** + ** + ** void xcb_rectangle_next + ** + ** @param xcb_rectangle_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_rectangle_next (xcb_rectangle_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_rectangle_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_rectangle_end + ** + ** @param xcb_rectangle_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_rectangle_end (xcb_rectangle_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_arc_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_arc_t) + */ + +/***************************************************************************** + ** + ** void xcb_arc_next + ** + ** @param xcb_arc_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_arc_next (xcb_arc_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_arc_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_arc_end + ** + ** @param xcb_arc_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_arc_end (xcb_arc_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_format_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_format_t) + */ + +/***************************************************************************** + ** + ** void xcb_format_next + ** + ** @param xcb_format_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_format_next (xcb_format_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_format_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_format_end + ** + ** @param xcb_format_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_format_end (xcb_format_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_visualtype_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_visualtype_t) + */ + +/***************************************************************************** + ** + ** void xcb_visualtype_next + ** + ** @param xcb_visualtype_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_visualtype_next (xcb_visualtype_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_visualtype_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_visualtype_end + ** + ** @param xcb_visualtype_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_visualtype_end (xcb_visualtype_iterator_t i /**< */); + +int +xcb_depth_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** xcb_visualtype_t * xcb_depth_visuals + ** + ** @param const xcb_depth_t *R + ** @returns xcb_visualtype_t * + ** + *****************************************************************************/ + +xcb_visualtype_t * +xcb_depth_visuals (const xcb_depth_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_depth_visuals_length + ** + ** @param const xcb_depth_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_depth_visuals_length (const xcb_depth_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_visualtype_iterator_t xcb_depth_visuals_iterator + ** + ** @param const xcb_depth_t *R + ** @returns xcb_visualtype_iterator_t + ** + *****************************************************************************/ + +xcb_visualtype_iterator_t +xcb_depth_visuals_iterator (const xcb_depth_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_depth_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_depth_t) + */ + +/***************************************************************************** + ** + ** void xcb_depth_next + ** + ** @param xcb_depth_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_depth_next (xcb_depth_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_depth_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_depth_end + ** + ** @param xcb_depth_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_depth_end (xcb_depth_iterator_t i /**< */); + +int +xcb_screen_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** int xcb_screen_allowed_depths_length + ** + ** @param const xcb_screen_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_screen_allowed_depths_length (const xcb_screen_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_depth_iterator_t xcb_screen_allowed_depths_iterator + ** + ** @param const xcb_screen_t *R + ** @returns xcb_depth_iterator_t + ** + *****************************************************************************/ + +xcb_depth_iterator_t +xcb_screen_allowed_depths_iterator (const xcb_screen_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_screen_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_screen_t) + */ + +/***************************************************************************** + ** + ** void xcb_screen_next + ** + ** @param xcb_screen_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_screen_next (xcb_screen_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_screen_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_screen_end + ** + ** @param xcb_screen_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_screen_end (xcb_screen_iterator_t i /**< */); + +int +xcb_setup_request_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_setup_request_authorization_protocol_name + ** + ** @param const xcb_setup_request_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_request_authorization_protocol_name (const xcb_setup_request_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_setup_request_authorization_protocol_name_length + ** + ** @param const xcb_setup_request_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_request_authorization_protocol_name_length (const xcb_setup_request_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_request_authorization_protocol_name_end + ** + ** @param const xcb_setup_request_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_request_authorization_protocol_name_end (const xcb_setup_request_t *R /**< */); + + +/***************************************************************************** + ** + ** char * xcb_setup_request_authorization_protocol_data + ** + ** @param const xcb_setup_request_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_request_authorization_protocol_data (const xcb_setup_request_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_setup_request_authorization_protocol_data_length + ** + ** @param const xcb_setup_request_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_request_authorization_protocol_data_length (const xcb_setup_request_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_request_authorization_protocol_data_end + ** + ** @param const xcb_setup_request_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_request_authorization_protocol_data_end (const xcb_setup_request_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_setup_request_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_setup_request_t) + */ + +/***************************************************************************** + ** + ** void xcb_setup_request_next + ** + ** @param xcb_setup_request_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_setup_request_next (xcb_setup_request_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_setup_request_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_request_end + ** + ** @param xcb_setup_request_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_request_end (xcb_setup_request_iterator_t i /**< */); + +int +xcb_setup_failed_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_setup_failed_reason + ** + ** @param const xcb_setup_failed_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_failed_reason (const xcb_setup_failed_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_setup_failed_reason_length + ** + ** @param const xcb_setup_failed_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_failed_reason_length (const xcb_setup_failed_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_failed_reason_end + ** + ** @param const xcb_setup_failed_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_failed_reason_end (const xcb_setup_failed_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_setup_failed_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_setup_failed_t) + */ + +/***************************************************************************** + ** + ** void xcb_setup_failed_next + ** + ** @param xcb_setup_failed_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_setup_failed_next (xcb_setup_failed_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_setup_failed_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_failed_end + ** + ** @param xcb_setup_failed_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_failed_end (xcb_setup_failed_iterator_t i /**< */); + +int +xcb_setup_authenticate_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_setup_authenticate_reason + ** + ** @param const xcb_setup_authenticate_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_authenticate_reason (const xcb_setup_authenticate_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_setup_authenticate_reason_length + ** + ** @param const xcb_setup_authenticate_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_authenticate_reason_length (const xcb_setup_authenticate_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_authenticate_reason_end + ** + ** @param const xcb_setup_authenticate_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_authenticate_reason_end (const xcb_setup_authenticate_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_setup_authenticate_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_setup_authenticate_t) + */ + +/***************************************************************************** + ** + ** void xcb_setup_authenticate_next + ** + ** @param xcb_setup_authenticate_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_setup_authenticate_next (xcb_setup_authenticate_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_setup_authenticate_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_authenticate_end + ** + ** @param xcb_setup_authenticate_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_authenticate_end (xcb_setup_authenticate_iterator_t i /**< */); + +int +xcb_setup_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_setup_vendor + ** + ** @param const xcb_setup_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_setup_vendor (const xcb_setup_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_setup_vendor_length + ** + ** @param const xcb_setup_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_vendor_length (const xcb_setup_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_vendor_end + ** + ** @param const xcb_setup_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_vendor_end (const xcb_setup_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_format_t * xcb_setup_pixmap_formats + ** + ** @param const xcb_setup_t *R + ** @returns xcb_format_t * + ** + *****************************************************************************/ + +xcb_format_t * +xcb_setup_pixmap_formats (const xcb_setup_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_setup_pixmap_formats_length + ** + ** @param const xcb_setup_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_pixmap_formats_length (const xcb_setup_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_format_iterator_t xcb_setup_pixmap_formats_iterator + ** + ** @param const xcb_setup_t *R + ** @returns xcb_format_iterator_t + ** + *****************************************************************************/ + +xcb_format_iterator_t +xcb_setup_pixmap_formats_iterator (const xcb_setup_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_setup_roots_length + ** + ** @param const xcb_setup_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_setup_roots_length (const xcb_setup_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_screen_iterator_t xcb_setup_roots_iterator + ** + ** @param const xcb_setup_t *R + ** @returns xcb_screen_iterator_t + ** + *****************************************************************************/ + +xcb_screen_iterator_t +xcb_setup_roots_iterator (const xcb_setup_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_setup_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_setup_t) + */ + +/***************************************************************************** + ** + ** void xcb_setup_next + ** + ** @param xcb_setup_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_setup_next (xcb_setup_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_setup_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_setup_end + ** + ** @param xcb_setup_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_setup_end (xcb_setup_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_client_message_data_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_client_message_data_t) + */ + +/***************************************************************************** + ** + ** void xcb_client_message_data_next + ** + ** @param xcb_client_message_data_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_client_message_data_next (xcb_client_message_data_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_client_message_data_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_client_message_data_end + ** + ** @param xcb_client_message_data_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_client_message_data_end (xcb_client_message_data_iterator_t i /**< */); + +int +xcb_create_window_sizeof (const void *_buffer /**< */); + +/** + * @brief Creates a window + * + * @param c The connection + * @param depth Specifies the new window's depth (TODO: what unit?). + * \n + * The special value `XCB_COPY_FROM_PARENT` means the depth is taken from the + * \a parent window. + * @param wid The ID with which you will refer to the new window, created by + * `xcb_generate_id`. + * @param parent The parent window of the new window. + * @param x The X coordinate of the new window. + * @param y The Y coordinate of the new window. + * @param width The width of the new window. + * @param height The height of the new window. + * @param border_width TODO: + * \n + * Must be zero if the `class` is `InputOnly` or a `xcb_match_error_t` occurs. + * @param _class A bitmask of #xcb_window_class_t values. + * @param _class \n + * @param visual Specifies the id for the new window's visual. + * \n + * The special value `XCB_COPY_FROM_PARENT` means the visual is taken from the + * \a parent window. + * @param value_mask A bitmask of #xcb_cw_t values. + * @return A cookie + * + * Creates an unmapped window as child of the specified \a parent window. A + * CreateNotify event will be generated. The new window is placed on top in the + * stacking order with respect to siblings. + * + * The coordinate system has the X axis horizontal and the Y axis vertical with + * the origin [0, 0] at the upper-left corner. Coordinates are integral, in terms + * of pixels, and coincide with pixel centers. Each window and pixmap has its own + * coordinate system. For a window, the origin is inside the border at the inside, + * upper-left corner. + * + * The created window is not yet displayed (mapped), call `xcb_map_window` to + * display it. + * + * The created window will initially use the same cursor as its parent. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_window_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t depth + ** @param xcb_window_t wid + ** @param xcb_window_t parent + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t border_width + ** @param uint16_t _class + ** @param xcb_visualid_t visual + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_window_checked (xcb_connection_t *c /**< */, + uint8_t depth /**< */, + xcb_window_t wid /**< */, + xcb_window_t parent /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t border_width /**< */, + uint16_t _class /**< */, + xcb_visualid_t visual /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * @brief Creates a window + * + * @param c The connection + * @param depth Specifies the new window's depth (TODO: what unit?). + * \n + * The special value `XCB_COPY_FROM_PARENT` means the depth is taken from the + * \a parent window. + * @param wid The ID with which you will refer to the new window, created by + * `xcb_generate_id`. + * @param parent The parent window of the new window. + * @param x The X coordinate of the new window. + * @param y The Y coordinate of the new window. + * @param width The width of the new window. + * @param height The height of the new window. + * @param border_width TODO: + * \n + * Must be zero if the `class` is `InputOnly` or a `xcb_match_error_t` occurs. + * @param _class A bitmask of #xcb_window_class_t values. + * @param _class \n + * @param visual Specifies the id for the new window's visual. + * \n + * The special value `XCB_COPY_FROM_PARENT` means the visual is taken from the + * \a parent window. + * @param value_mask A bitmask of #xcb_cw_t values. + * @return A cookie + * + * Creates an unmapped window as child of the specified \a parent window. A + * CreateNotify event will be generated. The new window is placed on top in the + * stacking order with respect to siblings. + * + * The coordinate system has the X axis horizontal and the Y axis vertical with + * the origin [0, 0] at the upper-left corner. Coordinates are integral, in terms + * of pixels, and coincide with pixel centers. Each window and pixmap has its own + * coordinate system. For a window, the origin is inside the border at the inside, + * upper-left corner. + * + * The created window is not yet displayed (mapped), call `xcb_map_window` to + * display it. + * + * The created window will initially use the same cursor as its parent. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_window + ** + ** @param xcb_connection_t *c + ** @param uint8_t depth + ** @param xcb_window_t wid + ** @param xcb_window_t parent + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint16_t border_width + ** @param uint16_t _class + ** @param xcb_visualid_t visual + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_window (xcb_connection_t *c /**< */, + uint8_t depth /**< */, + xcb_window_t wid /**< */, + xcb_window_t parent /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint16_t border_width /**< */, + uint16_t _class /**< */, + xcb_visualid_t visual /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +int +xcb_change_window_attributes_sizeof (const void *_buffer /**< */); + +/** + * @brief change window attributes + * + * @param c The connection + * @param window The window to change. + * @param value_mask A bitmask of #xcb_cw_t values. + * @param value_mask \n + * @param value_list Values for each of the attributes specified in the bitmask \a value_mask. The + * order has to correspond to the order of possible \a value_mask bits. See the + * example. + * @return A cookie + * + * Changes the attributes specified by \a value_mask for the specified \a window. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_window_attributes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_window_attributes_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * @brief change window attributes + * + * @param c The connection + * @param window The window to change. + * @param value_mask A bitmask of #xcb_cw_t values. + * @param value_mask \n + * @param value_list Values for each of the attributes specified in the bitmask \a value_mask. The + * order has to correspond to the order of possible \a value_mask bits. See the + * example. + * @return A cookie + * + * Changes the attributes specified by \a value_mask for the specified \a window. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_window_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_window_attributes (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * @brief Gets window attributes + * + * @param c The connection + * @param window The window to get the attributes from. + * @return A cookie + * + * Gets the current attributes for the specified \a window. + * + */ + +/***************************************************************************** + ** + ** xcb_get_window_attributes_cookie_t xcb_get_window_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_get_window_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_get_window_attributes_cookie_t +xcb_get_window_attributes (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * @brief Gets window attributes + * + * @param c The connection + * @param window The window to get the attributes from. + * @return A cookie + * + * Gets the current attributes for the specified \a window. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_window_attributes_cookie_t xcb_get_window_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_get_window_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_get_window_attributes_cookie_t +xcb_get_window_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_window_attributes_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_window_attributes_reply_t * xcb_get_window_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_window_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_window_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_get_window_attributes_reply_t * +xcb_get_window_attributes_reply (xcb_connection_t *c /**< */, + xcb_get_window_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * @brief Destroys a window + * + * @param c The connection + * @param window The window to destroy. + * @return A cookie + * + * Destroys the specified window and all of its subwindows. A DestroyNotify event + * is generated for each destroyed window (a DestroyNotify event is first generated + * for any given window's inferiors). If the window was mapped, it will be + * automatically unmapped before destroying. + * + * Calling DestroyWindow on the root window will do nothing. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_destroy_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_destroy_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * @brief Destroys a window + * + * @param c The connection + * @param window The window to destroy. + * @return A cookie + * + * Destroys the specified window and all of its subwindows. A DestroyNotify event + * is generated for each destroyed window (a DestroyNotify event is first generated + * for any given window's inferiors). If the window was mapped, it will be + * automatically unmapped before destroying. + * + * Calling DestroyWindow on the root window will do nothing. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_destroy_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_destroy_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_destroy_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_destroy_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_destroy_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_destroy_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * @brief Changes a client's save set + * + * @param c The connection + * @param mode A bitmask of #xcb_set_mode_t values. + * @param mode Insert to add the specified window to the save set or Delete to delete it from the save set. + * @param window The window to add or delete to/from your save set. + * @return A cookie + * + * TODO: explain what the save set is for. + * + * This function either adds or removes the specified window to the client's (your + * application's) save set. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_save_set_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_save_set_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_window_t window /**< */); + +/** + * @brief Changes a client's save set + * + * @param c The connection + * @param mode A bitmask of #xcb_set_mode_t values. + * @param mode Insert to add the specified window to the save set or Delete to delete it from the save set. + * @param window The window to add or delete to/from your save set. + * @return A cookie + * + * TODO: explain what the save set is for. + * + * This function either adds or removes the specified window to the client's (your + * application's) save set. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_save_set + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_save_set (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_window_t window /**< */); + +/** + * @brief Reparents a window + * + * @param c The connection + * @param window The window to reparent. + * @param parent The new parent of the window. + * @param x The X position of the window within its new parent. + * @param y The Y position of the window within its new parent. + * @return A cookie + * + * Makes the specified window a child of the specified parent window. If the + * window is mapped, it will automatically be unmapped before reparenting and + * re-mapped after reparenting. The window is placed in the stacking order on top + * with respect to sibling windows. + * + * After reparenting, a ReparentNotify event is generated. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_reparent_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_window_t parent + ** @param int16_t x + ** @param int16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_reparent_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_window_t parent /**< */, + int16_t x /**< */, + int16_t y /**< */); + +/** + * @brief Reparents a window + * + * @param c The connection + * @param window The window to reparent. + * @param parent The new parent of the window. + * @param x The X position of the window within its new parent. + * @param y The Y position of the window within its new parent. + * @return A cookie + * + * Makes the specified window a child of the specified parent window. If the + * window is mapped, it will automatically be unmapped before reparenting and + * re-mapped after reparenting. The window is placed in the stacking order on top + * with respect to sibling windows. + * + * After reparenting, a ReparentNotify event is generated. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_reparent_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_window_t parent + ** @param int16_t x + ** @param int16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_reparent_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_window_t parent /**< */, + int16_t x /**< */, + int16_t y /**< */); + +/** + * @brief Makes a window visible + * + * @param c The connection + * @param window The window to make visible. + * @return A cookie + * + * Maps the specified window. This means making the window visible (as long as its + * parent is visible). + * + * This MapWindow request will be translated to a MapRequest request if a window + * manager is running. The window manager then decides to either map the window or + * not. Set the override-redirect window attribute to true if you want to bypass + * this mechanism. + * + * If the window manager decides to map the window (or if no window manager is + * running), a MapNotify event is generated. + * + * If the window becomes viewable and no earlier contents for it are remembered, + * the X server tiles the window with its background. If the window's background + * is undefined, the existing screen contents are not altered, and the X server + * generates zero or more Expose events. + * + * If the window type is InputOutput, an Expose event will be generated when the + * window becomes visible. The normal response to an Expose event should be to + * repaint the window. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_map_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_map_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * @brief Makes a window visible + * + * @param c The connection + * @param window The window to make visible. + * @return A cookie + * + * Maps the specified window. This means making the window visible (as long as its + * parent is visible). + * + * This MapWindow request will be translated to a MapRequest request if a window + * manager is running. The window manager then decides to either map the window or + * not. Set the override-redirect window attribute to true if you want to bypass + * this mechanism. + * + * If the window manager decides to map the window (or if no window manager is + * running), a MapNotify event is generated. + * + * If the window becomes viewable and no earlier contents for it are remembered, + * the X server tiles the window with its background. If the window's background + * is undefined, the existing screen contents are not altered, and the X server + * generates zero or more Expose events. + * + * If the window type is InputOutput, an Expose event will be generated when the + * window becomes visible. The normal response to an Expose event should be to + * repaint the window. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_map_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_map_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_map_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_map_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_map_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_map_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * @brief Makes a window invisible + * + * @param c The connection + * @param window The window to make invisible. + * @return A cookie + * + * Unmaps the specified window. This means making the window invisible (and all + * its child windows). + * + * Unmapping a window leads to the `UnmapNotify` event being generated. Also, + * `Expose` events are generated for formerly obscured windows. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_unmap_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_unmap_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * @brief Makes a window invisible + * + * @param c The connection + * @param window The window to make invisible. + * @return A cookie + * + * Unmaps the specified window. This means making the window invisible (and all + * its child windows). + * + * Unmapping a window leads to the `UnmapNotify` event being generated. Also, + * `Expose` events are generated for formerly obscured windows. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_unmap_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_unmap_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_unmap_subwindows_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_unmap_subwindows_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_unmap_subwindows + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_unmap_subwindows (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +int +xcb_configure_window_sizeof (const void *_buffer /**< */); + +/** + * @brief Configures window attributes + * + * @param c The connection + * @param window The window to configure. + * @param value_mask Bitmask of attributes to change. + * @param value_list New values, corresponding to the attributes in value_mask. The order has to + * correspond to the order of possible \a value_mask bits. See the example. + * @return A cookie + * + * Configures a window's size, position, border width and stacking order. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_configure_window_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_configure_window_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * @brief Configures window attributes + * + * @param c The connection + * @param window The window to configure. + * @param value_mask Bitmask of attributes to change. + * @param value_list New values, corresponding to the attributes in value_mask. The order has to + * correspond to the order of possible \a value_mask bits. See the example. + * @return A cookie + * + * Configures a window's size, position, border width and stacking order. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_configure_window + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_configure_window (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * @brief Change window stacking order + * + * @param c The connection + * @param direction A bitmask of #xcb_circulate_t values. + * @param direction \n + * @param window The window to raise/lower (depending on \a direction). + * @return A cookie + * + * If \a direction is `XCB_CIRCULATE_RAISE_LOWEST`, the lowest mapped child (if + * any) will be raised to the top of the stack. + * + * If \a direction is `XCB_CIRCULATE_LOWER_HIGHEST`, the highest mapped child will + * be lowered to the bottom of the stack. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_circulate_window_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t direction + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_circulate_window_checked (xcb_connection_t *c /**< */, + uint8_t direction /**< */, + xcb_window_t window /**< */); + +/** + * @brief Change window stacking order + * + * @param c The connection + * @param direction A bitmask of #xcb_circulate_t values. + * @param direction \n + * @param window The window to raise/lower (depending on \a direction). + * @return A cookie + * + * If \a direction is `XCB_CIRCULATE_RAISE_LOWEST`, the lowest mapped child (if + * any) will be raised to the top of the stack. + * + * If \a direction is `XCB_CIRCULATE_LOWER_HIGHEST`, the highest mapped child will + * be lowered to the bottom of the stack. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_circulate_window + ** + ** @param xcb_connection_t *c + ** @param uint8_t direction + ** @param xcb_window_t window + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_circulate_window (xcb_connection_t *c /**< */, + uint8_t direction /**< */, + xcb_window_t window /**< */); + +/** + * @brief Get current window geometry + * + * @param c The connection + * @param drawable The drawable (`Window` or `Pixmap`) of which the geometry will be received. + * @return A cookie + * + * Gets the current geometry of the specified drawable (either `Window` or `Pixmap`). + * + */ + +/***************************************************************************** + ** + ** xcb_get_geometry_cookie_t xcb_get_geometry + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_get_geometry_cookie_t + ** + *****************************************************************************/ + +xcb_get_geometry_cookie_t +xcb_get_geometry (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * @brief Get current window geometry + * + * @param c The connection + * @param drawable The drawable (`Window` or `Pixmap`) of which the geometry will be received. + * @return A cookie + * + * Gets the current geometry of the specified drawable (either `Window` or `Pixmap`). + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_geometry_cookie_t xcb_get_geometry_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @returns xcb_get_geometry_cookie_t + ** + *****************************************************************************/ + +xcb_get_geometry_cookie_t +xcb_get_geometry_unchecked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_geometry_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_geometry_reply_t * xcb_get_geometry_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_geometry_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_geometry_reply_t * + ** + *****************************************************************************/ + +xcb_get_geometry_reply_t * +xcb_get_geometry_reply (xcb_connection_t *c /**< */, + xcb_get_geometry_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_query_tree_sizeof (const void *_buffer /**< */); + +/** + * @brief query the window tree + * + * @param c The connection + * @param window The \a window to query. + * @return A cookie + * + * Gets the root window ID, parent window ID and list of children windows for the + * specified \a window. The children are listed in bottom-to-top stacking order. + * + */ + +/***************************************************************************** + ** + ** xcb_query_tree_cookie_t xcb_query_tree + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_query_tree_cookie_t + ** + *****************************************************************************/ + +xcb_query_tree_cookie_t +xcb_query_tree (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * @brief query the window tree + * + * @param c The connection + * @param window The \a window to query. + * @return A cookie + * + * Gets the root window ID, parent window ID and list of children windows for the + * specified \a window. The children are listed in bottom-to-top stacking order. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_query_tree_cookie_t xcb_query_tree_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_query_tree_cookie_t + ** + *****************************************************************************/ + +xcb_query_tree_cookie_t +xcb_query_tree_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** xcb_window_t * xcb_query_tree_children + ** + ** @param const xcb_query_tree_reply_t *R + ** @returns xcb_window_t * + ** + *****************************************************************************/ + +xcb_window_t * +xcb_query_tree_children (const xcb_query_tree_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_query_tree_children_length + ** + ** @param const xcb_query_tree_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_query_tree_children_length (const xcb_query_tree_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_query_tree_children_end + ** + ** @param const xcb_query_tree_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_query_tree_children_end (const xcb_query_tree_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_query_tree_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_query_tree_reply_t * xcb_query_tree_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_tree_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_tree_reply_t * + ** + *****************************************************************************/ + +xcb_query_tree_reply_t * +xcb_query_tree_reply (xcb_connection_t *c /**< */, + xcb_query_tree_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_intern_atom_sizeof (const void *_buffer /**< */); + +/** + * @brief Get atom identifier by name + * + * @param c The connection + * @param only_if_exists Return a valid atom id only if the atom already exists. + * @param name_len The length of the following \a name. + * @param name The name of the atom. + * @return A cookie + * + * Retrieves the identifier (xcb_atom_t TODO) for the atom with the specified + * name. Atoms are used in protocols like EWMH, for example to store window titles + * (`_NET_WM_NAME` atom) as property of a window. + * + * If \a only_if_exists is 0, the atom will be created if it does not already exist. + * If \a only_if_exists is 1, `XCB_ATOM_NONE` will be returned if the atom does + * not yet exist. + * + */ + +/***************************************************************************** + ** + ** xcb_intern_atom_cookie_t xcb_intern_atom + ** + ** @param xcb_connection_t *c + ** @param uint8_t only_if_exists + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_intern_atom_cookie_t + ** + *****************************************************************************/ + +xcb_intern_atom_cookie_t +xcb_intern_atom (xcb_connection_t *c /**< */, + uint8_t only_if_exists /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * @brief Get atom identifier by name + * + * @param c The connection + * @param only_if_exists Return a valid atom id only if the atom already exists. + * @param name_len The length of the following \a name. + * @param name The name of the atom. + * @return A cookie + * + * Retrieves the identifier (xcb_atom_t TODO) for the atom with the specified + * name. Atoms are used in protocols like EWMH, for example to store window titles + * (`_NET_WM_NAME` atom) as property of a window. + * + * If \a only_if_exists is 0, the atom will be created if it does not already exist. + * If \a only_if_exists is 1, `XCB_ATOM_NONE` will be returned if the atom does + * not yet exist. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_intern_atom_cookie_t xcb_intern_atom_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t only_if_exists + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_intern_atom_cookie_t + ** + *****************************************************************************/ + +xcb_intern_atom_cookie_t +xcb_intern_atom_unchecked (xcb_connection_t *c /**< */, + uint8_t only_if_exists /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_intern_atom_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_intern_atom_reply_t * xcb_intern_atom_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_intern_atom_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_intern_atom_reply_t * + ** + *****************************************************************************/ + +xcb_intern_atom_reply_t * +xcb_intern_atom_reply (xcb_connection_t *c /**< */, + xcb_intern_atom_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_get_atom_name_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_atom_name_cookie_t xcb_get_atom_name + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t atom + ** @returns xcb_get_atom_name_cookie_t + ** + *****************************************************************************/ + +xcb_get_atom_name_cookie_t +xcb_get_atom_name (xcb_connection_t *c /**< */, + xcb_atom_t atom /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_atom_name_cookie_t xcb_get_atom_name_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t atom + ** @returns xcb_get_atom_name_cookie_t + ** + *****************************************************************************/ + +xcb_get_atom_name_cookie_t +xcb_get_atom_name_unchecked (xcb_connection_t *c /**< */, + xcb_atom_t atom /**< */); + + +/***************************************************************************** + ** + ** char * xcb_get_atom_name_name + ** + ** @param const xcb_get_atom_name_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_get_atom_name_name (const xcb_get_atom_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_get_atom_name_name_length + ** + ** @param const xcb_get_atom_name_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_atom_name_name_length (const xcb_get_atom_name_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_atom_name_name_end + ** + ** @param const xcb_get_atom_name_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_atom_name_name_end (const xcb_get_atom_name_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_atom_name_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_atom_name_reply_t * xcb_get_atom_name_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_atom_name_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_atom_name_reply_t * + ** + *****************************************************************************/ + +xcb_get_atom_name_reply_t * +xcb_get_atom_name_reply (xcb_connection_t *c /**< */, + xcb_get_atom_name_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_change_property_sizeof (const void *_buffer /**< */); + +/** + * @brief Changes a window property + * + * @param c The connection + * @param mode A bitmask of #xcb_prop_mode_t values. + * @param mode \n + * @param window The window whose property you want to change. + * @param property The property you want to change (an atom). + * @param type The type of the property you want to change (an atom). + * @param format Specifies whether the data should be viewed as a list of 8-bit, 16-bit or + * 32-bit quantities. Possible values are 8, 16 and 32. This information allows + * the X server to correctly perform byte-swap operations as necessary. + * @param data_len Specifies the number of elements (see \a format). + * @param data The property data. + * @return A cookie + * + * Sets or updates a property on the specified \a window. Properties are for + * example the window title (`WM_NAME`) or its minimum size (`WM_NORMAL_HINTS`). + * Protocols such as EWMH also use properties - for example EWMH defines the + * window title, encoded as UTF-8 string, in the `_NET_WM_NAME` property. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_property_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint8_t format + ** @param uint32_t data_len + ** @param const void *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_property_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint8_t format /**< */, + uint32_t data_len /**< */, + const void *data /**< */); + +/** + * @brief Changes a window property + * + * @param c The connection + * @param mode A bitmask of #xcb_prop_mode_t values. + * @param mode \n + * @param window The window whose property you want to change. + * @param property The property you want to change (an atom). + * @param type The type of the property you want to change (an atom). + * @param format Specifies whether the data should be viewed as a list of 8-bit, 16-bit or + * 32-bit quantities. Possible values are 8, 16 and 32. This information allows + * the X server to correctly perform byte-swap operations as necessary. + * @param data_len Specifies the number of elements (see \a format). + * @param data The property data. + * @return A cookie + * + * Sets or updates a property on the specified \a window. Properties are for + * example the window title (`WM_NAME`) or its minimum size (`WM_NORMAL_HINTS`). + * Protocols such as EWMH also use properties - for example EWMH defines the + * window title, encoded as UTF-8 string, in the `_NET_WM_NAME` property. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_property + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint8_t format + ** @param uint32_t data_len + ** @param const void *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_property (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint8_t format /**< */, + uint32_t data_len /**< */, + const void *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_delete_property_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_delete_property_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_delete_property + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_delete_property (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */); + +int +xcb_get_property_sizeof (const void *_buffer /**< */); + +/** + * @brief Gets a window property + * + * @param c The connection + * @param _delete Whether the property should actually be deleted. For deleting a property, the + * specified \a type has to match the actual property type. + * @param window The window whose property you want to get. + * @param property The property you want to get (an atom). + * @param type The type of the property you want to get (an atom). + * @param long_offset Specifies the offset (in 32-bit multiples) in the specified property where the + * data is to be retrieved. + * @param long_length Specifies how many 32-bit multiples of data should be retrieved (e.g. if you + * set \a long_length to 4, you will receive 16 bytes of data). + * @return A cookie + * + * Gets the specified \a property from the specified \a window. Properties are for + * example the window title (`WM_NAME`) or its minimum size (`WM_NORMAL_HINTS`). + * Protocols such as EWMH also use properties - for example EWMH defines the + * window title, encoded as UTF-8 string, in the `_NET_WM_NAME` property. + * + * TODO: talk about \a type + * + * TODO: talk about `delete` + * + * TODO: talk about the offset/length thing. what's a valid use case? + * + */ + +/***************************************************************************** + ** + ** xcb_get_property_cookie_t xcb_get_property + ** + ** @param xcb_connection_t *c + ** @param uint8_t _delete + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint32_t long_offset + ** @param uint32_t long_length + ** @returns xcb_get_property_cookie_t + ** + *****************************************************************************/ + +xcb_get_property_cookie_t +xcb_get_property (xcb_connection_t *c /**< */, + uint8_t _delete /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint32_t long_offset /**< */, + uint32_t long_length /**< */); + +/** + * @brief Gets a window property + * + * @param c The connection + * @param _delete Whether the property should actually be deleted. For deleting a property, the + * specified \a type has to match the actual property type. + * @param window The window whose property you want to get. + * @param property The property you want to get (an atom). + * @param type The type of the property you want to get (an atom). + * @param long_offset Specifies the offset (in 32-bit multiples) in the specified property where the + * data is to be retrieved. + * @param long_length Specifies how many 32-bit multiples of data should be retrieved (e.g. if you + * set \a long_length to 4, you will receive 16 bytes of data). + * @return A cookie + * + * Gets the specified \a property from the specified \a window. Properties are for + * example the window title (`WM_NAME`) or its minimum size (`WM_NORMAL_HINTS`). + * Protocols such as EWMH also use properties - for example EWMH defines the + * window title, encoded as UTF-8 string, in the `_NET_WM_NAME` property. + * + * TODO: talk about \a type + * + * TODO: talk about `delete` + * + * TODO: talk about the offset/length thing. what's a valid use case? + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_property_cookie_t xcb_get_property_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t _delete + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @param xcb_atom_t type + ** @param uint32_t long_offset + ** @param uint32_t long_length + ** @returns xcb_get_property_cookie_t + ** + *****************************************************************************/ + +xcb_get_property_cookie_t +xcb_get_property_unchecked (xcb_connection_t *c /**< */, + uint8_t _delete /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */, + xcb_atom_t type /**< */, + uint32_t long_offset /**< */, + uint32_t long_length /**< */); + + +/***************************************************************************** + ** + ** void * xcb_get_property_value + ** + ** @param const xcb_get_property_reply_t *R + ** @returns void * + ** + *****************************************************************************/ + +void * +xcb_get_property_value (const xcb_get_property_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_get_property_value_length + ** + ** @param const xcb_get_property_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_property_value_length (const xcb_get_property_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_property_value_end + ** + ** @param const xcb_get_property_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_property_value_end (const xcb_get_property_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_property_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_property_reply_t * xcb_get_property_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_property_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_property_reply_t * + ** + *****************************************************************************/ + +xcb_get_property_reply_t * +xcb_get_property_reply (xcb_connection_t *c /**< */, + xcb_get_property_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_list_properties_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_list_properties_cookie_t xcb_list_properties + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_list_properties_cookie_t + ** + *****************************************************************************/ + +xcb_list_properties_cookie_t +xcb_list_properties (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_list_properties_cookie_t xcb_list_properties_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_list_properties_cookie_t + ** + *****************************************************************************/ + +xcb_list_properties_cookie_t +xcb_list_properties_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** xcb_atom_t * xcb_list_properties_atoms + ** + ** @param const xcb_list_properties_reply_t *R + ** @returns xcb_atom_t * + ** + *****************************************************************************/ + +xcb_atom_t * +xcb_list_properties_atoms (const xcb_list_properties_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_list_properties_atoms_length + ** + ** @param const xcb_list_properties_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_properties_atoms_length (const xcb_list_properties_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_list_properties_atoms_end + ** + ** @param const xcb_list_properties_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_list_properties_atoms_end (const xcb_list_properties_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_list_properties_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_list_properties_reply_t * xcb_list_properties_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_properties_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_properties_reply_t * + ** + *****************************************************************************/ + +xcb_list_properties_reply_t * +xcb_list_properties_reply (xcb_connection_t *c /**< */, + xcb_list_properties_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * @brief Sets the owner of a selection + * + * @param c The connection + * @param owner The new owner of the selection. + * \n + * The special value `XCB_NONE` means that the selection will have no owner. + * @param selection The selection. + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The selection will not be changed if \a time is earlier than the current + * last-change time of the \a selection or is later than the current X server time. + * Otherwise, the last-change time is set to the specified time. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @return A cookie + * + * Makes `window` the owner of the selection \a selection and updates the + * last-change time of the specified selection. + * + * TODO: briefly explain what a selection is. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_selection_owner_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t owner + ** @param xcb_atom_t selection + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_selection_owner_checked (xcb_connection_t *c /**< */, + xcb_window_t owner /**< */, + xcb_atom_t selection /**< */, + xcb_timestamp_t time /**< */); + +/** + * @brief Sets the owner of a selection + * + * @param c The connection + * @param owner The new owner of the selection. + * \n + * The special value `XCB_NONE` means that the selection will have no owner. + * @param selection The selection. + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The selection will not be changed if \a time is earlier than the current + * last-change time of the \a selection or is later than the current X server time. + * Otherwise, the last-change time is set to the specified time. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @return A cookie + * + * Makes `window` the owner of the selection \a selection and updates the + * last-change time of the specified selection. + * + * TODO: briefly explain what a selection is. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_selection_owner + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t owner + ** @param xcb_atom_t selection + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_selection_owner (xcb_connection_t *c /**< */, + xcb_window_t owner /**< */, + xcb_atom_t selection /**< */, + xcb_timestamp_t time /**< */); + +/** + * @brief Gets the owner of a selection + * + * @param c The connection + * @param selection The selection. + * @return A cookie + * + * Gets the owner of the specified selection. + * + * TODO: briefly explain what a selection is. + * + */ + +/***************************************************************************** + ** + ** xcb_get_selection_owner_cookie_t xcb_get_selection_owner + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_get_selection_owner_cookie_t + ** + *****************************************************************************/ + +xcb_get_selection_owner_cookie_t +xcb_get_selection_owner (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */); + +/** + * @brief Gets the owner of a selection + * + * @param c The connection + * @param selection The selection. + * @return A cookie + * + * Gets the owner of the specified selection. + * + * TODO: briefly explain what a selection is. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_selection_owner_cookie_t xcb_get_selection_owner_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_get_selection_owner_cookie_t + ** + *****************************************************************************/ + +xcb_get_selection_owner_cookie_t +xcb_get_selection_owner_unchecked (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_selection_owner_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_selection_owner_reply_t * xcb_get_selection_owner_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_selection_owner_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_selection_owner_reply_t * + ** + *****************************************************************************/ + +xcb_get_selection_owner_reply_t * +xcb_get_selection_owner_reply (xcb_connection_t *c /**< */, + xcb_get_selection_owner_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_convert_selection_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t requestor + ** @param xcb_atom_t selection + ** @param xcb_atom_t target + ** @param xcb_atom_t property + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_convert_selection_checked (xcb_connection_t *c /**< */, + xcb_window_t requestor /**< */, + xcb_atom_t selection /**< */, + xcb_atom_t target /**< */, + xcb_atom_t property /**< */, + xcb_timestamp_t time /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_convert_selection + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t requestor + ** @param xcb_atom_t selection + ** @param xcb_atom_t target + ** @param xcb_atom_t property + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_convert_selection (xcb_connection_t *c /**< */, + xcb_window_t requestor /**< */, + xcb_atom_t selection /**< */, + xcb_atom_t target /**< */, + xcb_atom_t property /**< */, + xcb_timestamp_t time /**< */); + +/** + * @brief send an event + * + * @param c The connection + * @param propagate If \a propagate is true and no clients have selected any event on \a destination, + * the destination is replaced with the closest ancestor of \a destination for + * which some client has selected a type in \a event_mask and for which no + * intervening window has that type in its do-not-propagate-mask. If no such + * window exists or if the window is an ancestor of the focus window and + * `InputFocus` was originally specified as the destination, the event is not sent + * to any clients. Otherwise, the event is reported to every client selecting on + * the final destination any of the types specified in \a event_mask. + * @param destination The window to send this event to. Every client which selects any event within + * \a event_mask on \a destination will get the event. + * \n + * The special value `XCB_SEND_EVENT_DEST_POINTER_WINDOW` refers to the window + * that contains the mouse pointer. + * \n + * The special value `XCB_SEND_EVENT_DEST_ITEM_FOCUS` refers to the window which + * has the keyboard focus. + * @param event_mask Event_mask for determining which clients should receive the specified event. + * See \a destination and \a propagate. + * @param event The event to send to the specified \a destination. + * @return A cookie + * + * Identifies the \a destination window, determines which clients should receive + * the specified event and ignores any active grabs. + * + * The \a event must be one of the core events or an event defined by an extension, + * so that the X server can correctly byte-swap the contents as necessary. The + * contents of \a event are otherwise unaltered and unchecked except for the + * `send_event` field which is forced to 'true'. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_send_event_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t propagate + ** @param xcb_window_t destination + ** @param uint32_t event_mask + ** @param const char *event + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_send_event_checked (xcb_connection_t *c /**< */, + uint8_t propagate /**< */, + xcb_window_t destination /**< */, + uint32_t event_mask /**< */, + const char *event /**< */); + +/** + * @brief send an event + * + * @param c The connection + * @param propagate If \a propagate is true and no clients have selected any event on \a destination, + * the destination is replaced with the closest ancestor of \a destination for + * which some client has selected a type in \a event_mask and for which no + * intervening window has that type in its do-not-propagate-mask. If no such + * window exists or if the window is an ancestor of the focus window and + * `InputFocus` was originally specified as the destination, the event is not sent + * to any clients. Otherwise, the event is reported to every client selecting on + * the final destination any of the types specified in \a event_mask. + * @param destination The window to send this event to. Every client which selects any event within + * \a event_mask on \a destination will get the event. + * \n + * The special value `XCB_SEND_EVENT_DEST_POINTER_WINDOW` refers to the window + * that contains the mouse pointer. + * \n + * The special value `XCB_SEND_EVENT_DEST_ITEM_FOCUS` refers to the window which + * has the keyboard focus. + * @param event_mask Event_mask for determining which clients should receive the specified event. + * See \a destination and \a propagate. + * @param event The event to send to the specified \a destination. + * @return A cookie + * + * Identifies the \a destination window, determines which clients should receive + * the specified event and ignores any active grabs. + * + * The \a event must be one of the core events or an event defined by an extension, + * so that the X server can correctly byte-swap the contents as necessary. The + * contents of \a event are otherwise unaltered and unchecked except for the + * `send_event` field which is forced to 'true'. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_send_event + ** + ** @param xcb_connection_t *c + ** @param uint8_t propagate + ** @param xcb_window_t destination + ** @param uint32_t event_mask + ** @param const char *event + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_send_event (xcb_connection_t *c /**< */, + uint8_t propagate /**< */, + xcb_window_t destination /**< */, + uint32_t event_mask /**< */, + const char *event /**< */); + +/** + * @brief Grab the pointer + * + * @param c The connection + * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not + * reported to the \a grab_window. + * @param grab_window Specifies the window on which the pointer should be grabbed. + * @param event_mask Specifies which pointer events are reported to the client. + * \n + * TODO: which values? + * @param pointer_mode A bitmask of #xcb_grab_mode_t values. + * @param pointer_mode \n + * @param keyboard_mode A bitmask of #xcb_grab_mode_t values. + * @param keyboard_mode \n + * @param confine_to Specifies the window to confine the pointer in (the user will not be able to + * move the pointer out of that window). + * \n + * The special value `XCB_NONE` means don't confine the pointer. + * @param cursor Specifies the cursor that should be displayed or `XCB_NONE` to not change the + * cursor. + * @param time The time argument allows you to avoid certain circumstances that come up if + * applications take a long time to respond or if there are long network delays. + * Consider a situation where you have two applications, both of which normally + * grab the pointer when clicked on. If both applications specify the timestamp + * from the event, the second application may wake up faster and successfully grab + * the pointer before the first application. The first application then will get + * an indication that the other application grabbed the pointer before its request + * was processed. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @return A cookie + * + * Actively grabs control of the pointer. Further pointer events are reported only to the grabbing client. Overrides any active pointer grab by this client. + * + */ + +/***************************************************************************** + ** + ** xcb_grab_pointer_cookie_t xcb_grab_pointer + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t event_mask + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @param xcb_window_t confine_to + ** @param xcb_cursor_t cursor + ** @param xcb_timestamp_t time + ** @returns xcb_grab_pointer_cookie_t + ** + *****************************************************************************/ + +xcb_grab_pointer_cookie_t +xcb_grab_pointer (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t event_mask /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */, + xcb_window_t confine_to /**< */, + xcb_cursor_t cursor /**< */, + xcb_timestamp_t time /**< */); + +/** + * @brief Grab the pointer + * + * @param c The connection + * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not + * reported to the \a grab_window. + * @param grab_window Specifies the window on which the pointer should be grabbed. + * @param event_mask Specifies which pointer events are reported to the client. + * \n + * TODO: which values? + * @param pointer_mode A bitmask of #xcb_grab_mode_t values. + * @param pointer_mode \n + * @param keyboard_mode A bitmask of #xcb_grab_mode_t values. + * @param keyboard_mode \n + * @param confine_to Specifies the window to confine the pointer in (the user will not be able to + * move the pointer out of that window). + * \n + * The special value `XCB_NONE` means don't confine the pointer. + * @param cursor Specifies the cursor that should be displayed or `XCB_NONE` to not change the + * cursor. + * @param time The time argument allows you to avoid certain circumstances that come up if + * applications take a long time to respond or if there are long network delays. + * Consider a situation where you have two applications, both of which normally + * grab the pointer when clicked on. If both applications specify the timestamp + * from the event, the second application may wake up faster and successfully grab + * the pointer before the first application. The first application then will get + * an indication that the other application grabbed the pointer before its request + * was processed. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @return A cookie + * + * Actively grabs control of the pointer. Further pointer events are reported only to the grabbing client. Overrides any active pointer grab by this client. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_grab_pointer_cookie_t xcb_grab_pointer_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t event_mask + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @param xcb_window_t confine_to + ** @param xcb_cursor_t cursor + ** @param xcb_timestamp_t time + ** @returns xcb_grab_pointer_cookie_t + ** + *****************************************************************************/ + +xcb_grab_pointer_cookie_t +xcb_grab_pointer_unchecked (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t event_mask /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */, + xcb_window_t confine_to /**< */, + xcb_cursor_t cursor /**< */, + xcb_timestamp_t time /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_grab_pointer_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_grab_pointer_reply_t * xcb_grab_pointer_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_grab_pointer_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_grab_pointer_reply_t * + ** + *****************************************************************************/ + +xcb_grab_pointer_reply_t * +xcb_grab_pointer_reply (xcb_connection_t *c /**< */, + xcb_grab_pointer_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * @brief release the pointer + * + * @param c The connection + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The pointer will not be released if \a time is earlier than the + * last-pointer-grab time or later than the current X server time. + * @return A cookie + * + * Releases the pointer and any queued events if you actively grabbed the pointer + * before using `xcb_grab_pointer`, `xcb_grab_button` or within a normal button + * press. + * + * EnterNotify and LeaveNotify events are generated. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_pointer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_pointer_checked (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */); + +/** + * @brief release the pointer + * + * @param c The connection + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The pointer will not be released if \a time is earlier than the + * last-pointer-grab time or later than the current X server time. + * @return A cookie + * + * Releases the pointer and any queued events if you actively grabbed the pointer + * before using `xcb_grab_pointer`, `xcb_grab_button` or within a normal button + * press. + * + * EnterNotify and LeaveNotify events are generated. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_pointer + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_pointer (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */); + +/** + * @brief Grab pointer button(s) + * + * @param c The connection + * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not + * reported to the \a grab_window. + * @param grab_window Specifies the window on which the pointer should be grabbed. + * @param event_mask Specifies which pointer events are reported to the client. + * \n + * TODO: which values? + * @param pointer_mode A bitmask of #xcb_grab_mode_t values. + * @param pointer_mode \n + * @param keyboard_mode A bitmask of #xcb_grab_mode_t values. + * @param keyboard_mode \n + * @param confine_to Specifies the window to confine the pointer in (the user will not be able to + * move the pointer out of that window). + * \n + * The special value `XCB_NONE` means don't confine the pointer. + * @param cursor Specifies the cursor that should be displayed or `XCB_NONE` to not change the + * cursor. + * @param button A bitmask of #xcb_button_index_t values. + * @param button \n + * @param modifiers The modifiers to grab. + * \n + * Using the special value `XCB_MOD_MASK_ANY` means grab the pointer with all + * possible modifier combinations. + * @return A cookie + * + * This request establishes a passive grab. The pointer is actively grabbed as + * described in GrabPointer, the last-pointer-grab time is set to the time at + * which the button was pressed (as transmitted in the ButtonPress event), and the + * ButtonPress event is reported if all of the following conditions are true: + * + * The pointer is not grabbed and the specified button is logically pressed when + * the specified modifier keys are logically down, and no other buttons or + * modifier keys are logically down. + * + * The grab-window contains the pointer. + * + * The confine-to window (if any) is viewable. + * + * A passive grab on the same button/key combination does not exist on any + * ancestor of grab-window. + * + * The interpretation of the remaining arguments is the same as for GrabPointer. + * The active grab is terminated automatically when the logical state of the + * pointer has all buttons released, independent of the logical state of modifier + * keys. Note that the logical state of a device (as seen by means of the + * protocol) may lag the physical state if device event processing is frozen. This + * request overrides all previous passive grabs by the same client on the same + * button/key combinations on the same window. A modifier of AnyModifier is + * equivalent to issuing the request for all possible modifier combinations + * (including the combination of no modifiers). It is not required that all + * specified modifiers have currently assigned keycodes. A button of AnyButton is + * equivalent to issuing the request for all possible buttons. Otherwise, it is + * not required that the button specified currently be assigned to a physical + * button. + * + * An Access error is generated if some other client has already issued a + * GrabButton request with the same button/key combination on the same window. + * When using AnyModifier or AnyButton, the request fails completely (no grabs are + * established), and an Access error is generated if there is a conflicting grab + * for any combination. The request has no effect on an active grab. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_button_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t event_mask + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @param xcb_window_t confine_to + ** @param xcb_cursor_t cursor + ** @param uint8_t button + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_button_checked (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t event_mask /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */, + xcb_window_t confine_to /**< */, + xcb_cursor_t cursor /**< */, + uint8_t button /**< */, + uint16_t modifiers /**< */); + +/** + * @brief Grab pointer button(s) + * + * @param c The connection + * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not + * reported to the \a grab_window. + * @param grab_window Specifies the window on which the pointer should be grabbed. + * @param event_mask Specifies which pointer events are reported to the client. + * \n + * TODO: which values? + * @param pointer_mode A bitmask of #xcb_grab_mode_t values. + * @param pointer_mode \n + * @param keyboard_mode A bitmask of #xcb_grab_mode_t values. + * @param keyboard_mode \n + * @param confine_to Specifies the window to confine the pointer in (the user will not be able to + * move the pointer out of that window). + * \n + * The special value `XCB_NONE` means don't confine the pointer. + * @param cursor Specifies the cursor that should be displayed or `XCB_NONE` to not change the + * cursor. + * @param button A bitmask of #xcb_button_index_t values. + * @param button \n + * @param modifiers The modifiers to grab. + * \n + * Using the special value `XCB_MOD_MASK_ANY` means grab the pointer with all + * possible modifier combinations. + * @return A cookie + * + * This request establishes a passive grab. The pointer is actively grabbed as + * described in GrabPointer, the last-pointer-grab time is set to the time at + * which the button was pressed (as transmitted in the ButtonPress event), and the + * ButtonPress event is reported if all of the following conditions are true: + * + * The pointer is not grabbed and the specified button is logically pressed when + * the specified modifier keys are logically down, and no other buttons or + * modifier keys are logically down. + * + * The grab-window contains the pointer. + * + * The confine-to window (if any) is viewable. + * + * A passive grab on the same button/key combination does not exist on any + * ancestor of grab-window. + * + * The interpretation of the remaining arguments is the same as for GrabPointer. + * The active grab is terminated automatically when the logical state of the + * pointer has all buttons released, independent of the logical state of modifier + * keys. Note that the logical state of a device (as seen by means of the + * protocol) may lag the physical state if device event processing is frozen. This + * request overrides all previous passive grabs by the same client on the same + * button/key combinations on the same window. A modifier of AnyModifier is + * equivalent to issuing the request for all possible modifier combinations + * (including the combination of no modifiers). It is not required that all + * specified modifiers have currently assigned keycodes. A button of AnyButton is + * equivalent to issuing the request for all possible buttons. Otherwise, it is + * not required that the button specified currently be assigned to a physical + * button. + * + * An Access error is generated if some other client has already issued a + * GrabButton request with the same button/key combination on the same window. + * When using AnyModifier or AnyButton, the request fails completely (no grabs are + * established), and an Access error is generated if there is a conflicting grab + * for any combination. The request has no effect on an active grab. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_button + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t event_mask + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @param xcb_window_t confine_to + ** @param xcb_cursor_t cursor + ** @param uint8_t button + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_button (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t event_mask /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */, + xcb_window_t confine_to /**< */, + xcb_cursor_t cursor /**< */, + uint8_t button /**< */, + uint16_t modifiers /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_button_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t button + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_button_checked (xcb_connection_t *c /**< */, + uint8_t button /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_button + ** + ** @param xcb_connection_t *c + ** @param uint8_t button + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_button (xcb_connection_t *c /**< */, + uint8_t button /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_active_pointer_grab_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param xcb_timestamp_t time + ** @param uint16_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_active_pointer_grab_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + xcb_timestamp_t time /**< */, + uint16_t event_mask /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_active_pointer_grab + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param xcb_timestamp_t time + ** @param uint16_t event_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_active_pointer_grab (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + xcb_timestamp_t time /**< */, + uint16_t event_mask /**< */); + +/** + * @brief Grab the keyboard + * + * @param c The connection + * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not + * reported to the \a grab_window. + * @param grab_window Specifies the window on which the pointer should be grabbed. + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @param pointer_mode A bitmask of #xcb_grab_mode_t values. + * @param pointer_mode \n + * @param keyboard_mode A bitmask of #xcb_grab_mode_t values. + * @param keyboard_mode \n + * @return A cookie + * + * Actively grabs control of the keyboard and generates FocusIn and FocusOut + * events. Further key events are reported only to the grabbing client. + * + * Any active keyboard grab by this client is overridden. If the keyboard is + * actively grabbed by some other client, `AlreadyGrabbed` is returned. If + * \a grab_window is not viewable, `GrabNotViewable` is returned. If the keyboard + * is frozen by an active grab of another client, `GrabFrozen` is returned. If the + * specified \a time is earlier than the last-keyboard-grab time or later than the + * current X server time, `GrabInvalidTime` is returned. Otherwise, the + * last-keyboard-grab time is set to the specified time. + * + */ + +/***************************************************************************** + ** + ** xcb_grab_keyboard_cookie_t xcb_grab_keyboard + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param xcb_timestamp_t time + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @returns xcb_grab_keyboard_cookie_t + ** + *****************************************************************************/ + +xcb_grab_keyboard_cookie_t +xcb_grab_keyboard (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + xcb_timestamp_t time /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */); + +/** + * @brief Grab the keyboard + * + * @param c The connection + * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not + * reported to the \a grab_window. + * @param grab_window Specifies the window on which the pointer should be grabbed. + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @param pointer_mode A bitmask of #xcb_grab_mode_t values. + * @param pointer_mode \n + * @param keyboard_mode A bitmask of #xcb_grab_mode_t values. + * @param keyboard_mode \n + * @return A cookie + * + * Actively grabs control of the keyboard and generates FocusIn and FocusOut + * events. Further key events are reported only to the grabbing client. + * + * Any active keyboard grab by this client is overridden. If the keyboard is + * actively grabbed by some other client, `AlreadyGrabbed` is returned. If + * \a grab_window is not viewable, `GrabNotViewable` is returned. If the keyboard + * is frozen by an active grab of another client, `GrabFrozen` is returned. If the + * specified \a time is earlier than the last-keyboard-grab time or later than the + * current X server time, `GrabInvalidTime` is returned. Otherwise, the + * last-keyboard-grab time is set to the specified time. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_grab_keyboard_cookie_t xcb_grab_keyboard_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param xcb_timestamp_t time + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @returns xcb_grab_keyboard_cookie_t + ** + *****************************************************************************/ + +xcb_grab_keyboard_cookie_t +xcb_grab_keyboard_unchecked (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + xcb_timestamp_t time /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_grab_keyboard_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_grab_keyboard_reply_t * xcb_grab_keyboard_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_grab_keyboard_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_grab_keyboard_reply_t * + ** + *****************************************************************************/ + +xcb_grab_keyboard_reply_t * +xcb_grab_keyboard_reply (xcb_connection_t *c /**< */, + xcb_grab_keyboard_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_keyboard_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_keyboard_checked (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_keyboard + ** + ** @param xcb_connection_t *c + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_keyboard (xcb_connection_t *c /**< */, + xcb_timestamp_t time /**< */); + +/** + * @brief Grab keyboard key(s) + * + * @param c The connection + * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not + * reported to the \a grab_window. + * @param grab_window Specifies the window on which the pointer should be grabbed. + * @param modifiers The modifiers to grab. + * \n + * Using the special value `XCB_MOD_MASK_ANY` means grab the pointer with all + * possible modifier combinations. + * @param key The keycode of the key to grab. + * \n + * The special value `XCB_GRAB_ANY` means grab any key. + * @param pointer_mode A bitmask of #xcb_grab_mode_t values. + * @param pointer_mode \n + * @param keyboard_mode A bitmask of #xcb_grab_mode_t values. + * @param keyboard_mode \n + * @return A cookie + * + * Establishes a passive grab on the keyboard. In the future, the keyboard is + * actively grabbed (as for `GrabKeyboard`), the last-keyboard-grab time is set to + * the time at which the key was pressed (as transmitted in the KeyPress event), + * and the KeyPress event is reported if all of the following conditions are true: + * + * The keyboard is not grabbed and the specified key (which can itself be a + * modifier key) is logically pressed when the specified modifier keys are + * logically down, and no other modifier keys are logically down. + * + * Either the grab_window is an ancestor of (or is) the focus window, or the + * grab_window is a descendant of the focus window and contains the pointer. + * + * A passive grab on the same key combination does not exist on any ancestor of + * grab_window. + * + * The interpretation of the remaining arguments is as for XGrabKeyboard. The active grab is terminated + * automatically when the logical state of the keyboard has the specified key released (independent of the + * logical state of the modifier keys), at which point a KeyRelease event is reported to the grabbing window. + * + * Note that the logical state of a device (as seen by client applications) may lag the physical state if + * device event processing is frozen. + * + * A modifiers argument of AnyModifier is equivalent to issuing the request for all possible modifier combinations (including the combination of no modifiers). It is not required that all modifiers specified + * have currently assigned KeyCodes. A keycode argument of AnyKey is equivalent to issuing the request for + * all possible KeyCodes. Otherwise, the specified keycode must be in the range specified by min_keycode + * and max_keycode in the connection setup, or a BadValue error results. + * + * If some other client has issued a XGrabKey with the same key combination on the same window, a BadAccess + * error results. When using AnyModifier or AnyKey, the request fails completely, and a BadAccess error + * results (no grabs are established) if there is a conflicting grab for any combination. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_key_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @param xcb_keycode_t key + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_key_checked (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */, + xcb_keycode_t key /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */); + +/** + * @brief Grab keyboard key(s) + * + * @param c The connection + * @param owner_events If 1, the \a grab_window will still get the pointer events. If 0, events are not + * reported to the \a grab_window. + * @param grab_window Specifies the window on which the pointer should be grabbed. + * @param modifiers The modifiers to grab. + * \n + * Using the special value `XCB_MOD_MASK_ANY` means grab the pointer with all + * possible modifier combinations. + * @param key The keycode of the key to grab. + * \n + * The special value `XCB_GRAB_ANY` means grab any key. + * @param pointer_mode A bitmask of #xcb_grab_mode_t values. + * @param pointer_mode \n + * @param keyboard_mode A bitmask of #xcb_grab_mode_t values. + * @param keyboard_mode \n + * @return A cookie + * + * Establishes a passive grab on the keyboard. In the future, the keyboard is + * actively grabbed (as for `GrabKeyboard`), the last-keyboard-grab time is set to + * the time at which the key was pressed (as transmitted in the KeyPress event), + * and the KeyPress event is reported if all of the following conditions are true: + * + * The keyboard is not grabbed and the specified key (which can itself be a + * modifier key) is logically pressed when the specified modifier keys are + * logically down, and no other modifier keys are logically down. + * + * Either the grab_window is an ancestor of (or is) the focus window, or the + * grab_window is a descendant of the focus window and contains the pointer. + * + * A passive grab on the same key combination does not exist on any ancestor of + * grab_window. + * + * The interpretation of the remaining arguments is as for XGrabKeyboard. The active grab is terminated + * automatically when the logical state of the keyboard has the specified key released (independent of the + * logical state of the modifier keys), at which point a KeyRelease event is reported to the grabbing window. + * + * Note that the logical state of a device (as seen by client applications) may lag the physical state if + * device event processing is frozen. + * + * A modifiers argument of AnyModifier is equivalent to issuing the request for all possible modifier combinations (including the combination of no modifiers). It is not required that all modifiers specified + * have currently assigned KeyCodes. A keycode argument of AnyKey is equivalent to issuing the request for + * all possible KeyCodes. Otherwise, the specified keycode must be in the range specified by min_keycode + * and max_keycode in the connection setup, or a BadValue error results. + * + * If some other client has issued a XGrabKey with the same key combination on the same window, a BadAccess + * error results. When using AnyModifier or AnyKey, the request fails completely, and a BadAccess error + * results (no grabs are established) if there is a conflicting grab for any combination. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_key + ** + ** @param xcb_connection_t *c + ** @param uint8_t owner_events + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @param xcb_keycode_t key + ** @param uint8_t pointer_mode + ** @param uint8_t keyboard_mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_key (xcb_connection_t *c /**< */, + uint8_t owner_events /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */, + xcb_keycode_t key /**< */, + uint8_t pointer_mode /**< */, + uint8_t keyboard_mode /**< */); + +/** + * @brief release a key combination + * + * @param c The connection + * @param key The keycode of the specified key combination. + * \n + * Using the special value `XCB_GRAB_ANY` means releasing all possible key codes. + * @param grab_window The window on which the grabbed key combination will be released. + * @param modifiers The modifiers of the specified key combination. + * \n + * Using the special value `XCB_MOD_MASK_ANY` means releasing the key combination + * with every possible modifier combination. + * @return A cookie + * + * Releases the key combination on \a grab_window if you grabbed it using + * `xcb_grab_key` before. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_key_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_keycode_t key + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_key_checked (xcb_connection_t *c /**< */, + xcb_keycode_t key /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */); + +/** + * @brief release a key combination + * + * @param c The connection + * @param key The keycode of the specified key combination. + * \n + * Using the special value `XCB_GRAB_ANY` means releasing all possible key codes. + * @param grab_window The window on which the grabbed key combination will be released. + * @param modifiers The modifiers of the specified key combination. + * \n + * Using the special value `XCB_MOD_MASK_ANY` means releasing the key combination + * with every possible modifier combination. + * @return A cookie + * + * Releases the key combination on \a grab_window if you grabbed it using + * `xcb_grab_key` before. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_key + ** + ** @param xcb_connection_t *c + ** @param xcb_keycode_t key + ** @param xcb_window_t grab_window + ** @param uint16_t modifiers + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_key (xcb_connection_t *c /**< */, + xcb_keycode_t key /**< */, + xcb_window_t grab_window /**< */, + uint16_t modifiers /**< */); + +/** + * @brief release queued events + * + * @param c The connection + * @param mode A bitmask of #xcb_allow_t values. + * @param mode \n + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @return A cookie + * + * Releases queued events if the client has caused a device (pointer/keyboard) to + * freeze due to grabbing it actively. This request has no effect if \a time is + * earlier than the last-grab time of the most recent active grab for this client + * or if \a time is later than the current X server time. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_allow_events_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_allow_events_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_timestamp_t time /**< */); + +/** + * @brief release queued events + * + * @param c The connection + * @param mode A bitmask of #xcb_allow_t values. + * @param mode \n + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @return A cookie + * + * Releases queued events if the client has caused a device (pointer/keyboard) to + * freeze due to grabbing it actively. This request has no effect if \a time is + * earlier than the last-grab time of the most recent active grab for this client + * or if \a time is later than the current X server time. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_allow_events + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_allow_events (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + xcb_timestamp_t time /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_server_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_server_checked (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_grab_server + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_grab_server (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_server_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_server_checked (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_ungrab_server + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_ungrab_server (xcb_connection_t *c /**< */); + +/** + * @brief get pointer coordinates + * + * @param c The connection + * @param window A window to check if the pointer is on the same screen as \a window (see the + * `same_screen` field in the reply). + * @return A cookie + * + * Gets the root window the pointer is logically on and the pointer coordinates + * relative to the root window's origin. + * + */ + +/***************************************************************************** + ** + ** xcb_query_pointer_cookie_t xcb_query_pointer + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_query_pointer_cookie_t + ** + *****************************************************************************/ + +xcb_query_pointer_cookie_t +xcb_query_pointer (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * @brief get pointer coordinates + * + * @param c The connection + * @param window A window to check if the pointer is on the same screen as \a window (see the + * `same_screen` field in the reply). + * @return A cookie + * + * Gets the root window the pointer is logically on and the pointer coordinates + * relative to the root window's origin. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_query_pointer_cookie_t xcb_query_pointer_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_query_pointer_cookie_t + ** + *****************************************************************************/ + +xcb_query_pointer_cookie_t +xcb_query_pointer_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_query_pointer_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_query_pointer_reply_t * xcb_query_pointer_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_pointer_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_pointer_reply_t * + ** + *****************************************************************************/ + +xcb_query_pointer_reply_t * +xcb_query_pointer_reply (xcb_connection_t *c /**< */, + xcb_query_pointer_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_timecoord_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_timecoord_t) + */ + +/***************************************************************************** + ** + ** void xcb_timecoord_next + ** + ** @param xcb_timecoord_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_timecoord_next (xcb_timecoord_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_timecoord_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_timecoord_end + ** + ** @param xcb_timecoord_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_timecoord_end (xcb_timecoord_iterator_t i /**< */); + +int +xcb_get_motion_events_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_motion_events_cookie_t xcb_get_motion_events + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_timestamp_t start + ** @param xcb_timestamp_t stop + ** @returns xcb_get_motion_events_cookie_t + ** + *****************************************************************************/ + +xcb_get_motion_events_cookie_t +xcb_get_motion_events (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_timestamp_t start /**< */, + xcb_timestamp_t stop /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_motion_events_cookie_t xcb_get_motion_events_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_timestamp_t start + ** @param xcb_timestamp_t stop + ** @returns xcb_get_motion_events_cookie_t + ** + *****************************************************************************/ + +xcb_get_motion_events_cookie_t +xcb_get_motion_events_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_timestamp_t start /**< */, + xcb_timestamp_t stop /**< */); + + +/***************************************************************************** + ** + ** xcb_timecoord_t * xcb_get_motion_events_events + ** + ** @param const xcb_get_motion_events_reply_t *R + ** @returns xcb_timecoord_t * + ** + *****************************************************************************/ + +xcb_timecoord_t * +xcb_get_motion_events_events (const xcb_get_motion_events_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_get_motion_events_events_length + ** + ** @param const xcb_get_motion_events_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_motion_events_events_length (const xcb_get_motion_events_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_timecoord_iterator_t xcb_get_motion_events_events_iterator + ** + ** @param const xcb_get_motion_events_reply_t *R + ** @returns xcb_timecoord_iterator_t + ** + *****************************************************************************/ + +xcb_timecoord_iterator_t +xcb_get_motion_events_events_iterator (const xcb_get_motion_events_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_motion_events_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_motion_events_reply_t * xcb_get_motion_events_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_motion_events_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_motion_events_reply_t * + ** + *****************************************************************************/ + +xcb_get_motion_events_reply_t * +xcb_get_motion_events_reply (xcb_connection_t *c /**< */, + xcb_get_motion_events_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_translate_coordinates_cookie_t xcb_translate_coordinates + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t src_window + ** @param xcb_window_t dst_window + ** @param int16_t src_x + ** @param int16_t src_y + ** @returns xcb_translate_coordinates_cookie_t + ** + *****************************************************************************/ + +xcb_translate_coordinates_cookie_t +xcb_translate_coordinates (xcb_connection_t *c /**< */, + xcb_window_t src_window /**< */, + xcb_window_t dst_window /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_translate_coordinates_cookie_t xcb_translate_coordinates_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t src_window + ** @param xcb_window_t dst_window + ** @param int16_t src_x + ** @param int16_t src_y + ** @returns xcb_translate_coordinates_cookie_t + ** + *****************************************************************************/ + +xcb_translate_coordinates_cookie_t +xcb_translate_coordinates_unchecked (xcb_connection_t *c /**< */, + xcb_window_t src_window /**< */, + xcb_window_t dst_window /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_translate_coordinates_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_translate_coordinates_reply_t * xcb_translate_coordinates_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_translate_coordinates_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_translate_coordinates_reply_t * + ** + *****************************************************************************/ + +xcb_translate_coordinates_reply_t * +xcb_translate_coordinates_reply (xcb_connection_t *c /**< */, + xcb_translate_coordinates_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * @brief move mouse pointer + * + * @param c The connection + * @param src_window If \a src_window is not `XCB_NONE` (TODO), the move will only take place if the + * pointer is inside \a src_window and within the rectangle specified by (\a src_x, + * \a src_y, \a src_width, \a src_height). The rectangle coordinates are relative to + * \a src_window. + * @param dst_window If \a dst_window is not `XCB_NONE` (TODO), the pointer will be moved to the + * offsets (\a dst_x, \a dst_y) relative to \a dst_window. If \a dst_window is + * `XCB_NONE` (TODO), the pointer will be moved by the offsets (\a dst_x, \a dst_y) + * relative to the current position of the pointer. + * @return A cookie + * + * Moves the mouse pointer to the specified position. + * + * If \a src_window is not `XCB_NONE` (TODO), the move will only take place if the + * pointer is inside \a src_window and within the rectangle specified by (\a src_x, + * \a src_y, \a src_width, \a src_height). The rectangle coordinates are relative to + * \a src_window. + * + * If \a dst_window is not `XCB_NONE` (TODO), the pointer will be moved to the + * offsets (\a dst_x, \a dst_y) relative to \a dst_window. If \a dst_window is + * `XCB_NONE` (TODO), the pointer will be moved by the offsets (\a dst_x, \a dst_y) + * relative to the current position of the pointer. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_warp_pointer_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t src_window + ** @param xcb_window_t dst_window + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_width + ** @param uint16_t src_height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_warp_pointer_checked (xcb_connection_t *c /**< */, + xcb_window_t src_window /**< */, + xcb_window_t dst_window /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_width /**< */, + uint16_t src_height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */); + +/** + * @brief move mouse pointer + * + * @param c The connection + * @param src_window If \a src_window is not `XCB_NONE` (TODO), the move will only take place if the + * pointer is inside \a src_window and within the rectangle specified by (\a src_x, + * \a src_y, \a src_width, \a src_height). The rectangle coordinates are relative to + * \a src_window. + * @param dst_window If \a dst_window is not `XCB_NONE` (TODO), the pointer will be moved to the + * offsets (\a dst_x, \a dst_y) relative to \a dst_window. If \a dst_window is + * `XCB_NONE` (TODO), the pointer will be moved by the offsets (\a dst_x, \a dst_y) + * relative to the current position of the pointer. + * @return A cookie + * + * Moves the mouse pointer to the specified position. + * + * If \a src_window is not `XCB_NONE` (TODO), the move will only take place if the + * pointer is inside \a src_window and within the rectangle specified by (\a src_x, + * \a src_y, \a src_width, \a src_height). The rectangle coordinates are relative to + * \a src_window. + * + * If \a dst_window is not `XCB_NONE` (TODO), the pointer will be moved to the + * offsets (\a dst_x, \a dst_y) relative to \a dst_window. If \a dst_window is + * `XCB_NONE` (TODO), the pointer will be moved by the offsets (\a dst_x, \a dst_y) + * relative to the current position of the pointer. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_warp_pointer + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t src_window + ** @param xcb_window_t dst_window + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_width + ** @param uint16_t src_height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_warp_pointer (xcb_connection_t *c /**< */, + xcb_window_t src_window /**< */, + xcb_window_t dst_window /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_width /**< */, + uint16_t src_height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */); + +/** + * @brief Sets input focus + * + * @param c The connection + * @param revert_to A bitmask of #xcb_input_focus_t values. + * @param revert_to Specifies what happens when the \a focus window becomes unviewable (if \a focus + * is neither `XCB_NONE` nor `XCB_POINTER_ROOT`). + * @param focus The window to focus. All keyboard events will be reported to this window. The + * window must be viewable (TODO), or a `xcb_match_error_t` occurs (TODO). + * \n + * If \a focus is `XCB_NONE` (TODO), all keyboard events are + * discarded until a new focus window is set. + * \n + * If \a focus is `XCB_POINTER_ROOT` (TODO), focus is on the root window of the + * screen on which the pointer is on currently. + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @return A cookie + * + * Changes the input focus and the last-focus-change time. If the specified \a time + * is earlier than the current last-focus-change time, the request is ignored (to + * avoid race conditions when running X over the network). + * + * A FocusIn and FocusOut event is generated when focus is changed. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_input_focus_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t revert_to + ** @param xcb_window_t focus + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_input_focus_checked (xcb_connection_t *c /**< */, + uint8_t revert_to /**< */, + xcb_window_t focus /**< */, + xcb_timestamp_t time /**< */); + +/** + * @brief Sets input focus + * + * @param c The connection + * @param revert_to A bitmask of #xcb_input_focus_t values. + * @param revert_to Specifies what happens when the \a focus window becomes unviewable (if \a focus + * is neither `XCB_NONE` nor `XCB_POINTER_ROOT`). + * @param focus The window to focus. All keyboard events will be reported to this window. The + * window must be viewable (TODO), or a `xcb_match_error_t` occurs (TODO). + * \n + * If \a focus is `XCB_NONE` (TODO), all keyboard events are + * discarded until a new focus window is set. + * \n + * If \a focus is `XCB_POINTER_ROOT` (TODO), focus is on the root window of the + * screen on which the pointer is on currently. + * @param time Timestamp to avoid race conditions when running X over the network. + * \n + * The special value `XCB_CURRENT_TIME` will be replaced with the current server + * time. + * @return A cookie + * + * Changes the input focus and the last-focus-change time. If the specified \a time + * is earlier than the current last-focus-change time, the request is ignored (to + * avoid race conditions when running X over the network). + * + * A FocusIn and FocusOut event is generated when focus is changed. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_input_focus + ** + ** @param xcb_connection_t *c + ** @param uint8_t revert_to + ** @param xcb_window_t focus + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_input_focus (xcb_connection_t *c /**< */, + uint8_t revert_to /**< */, + xcb_window_t focus /**< */, + xcb_timestamp_t time /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_input_focus_cookie_t xcb_get_input_focus + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_input_focus_cookie_t + ** + *****************************************************************************/ + +xcb_get_input_focus_cookie_t +xcb_get_input_focus (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_input_focus_cookie_t xcb_get_input_focus_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_input_focus_cookie_t + ** + *****************************************************************************/ + +xcb_get_input_focus_cookie_t +xcb_get_input_focus_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_input_focus_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_input_focus_reply_t * xcb_get_input_focus_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_input_focus_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_input_focus_reply_t * + ** + *****************************************************************************/ + +xcb_get_input_focus_reply_t * +xcb_get_input_focus_reply (xcb_connection_t *c /**< */, + xcb_get_input_focus_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_query_keymap_cookie_t xcb_query_keymap + ** + ** @param xcb_connection_t *c + ** @returns xcb_query_keymap_cookie_t + ** + *****************************************************************************/ + +xcb_query_keymap_cookie_t +xcb_query_keymap (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_query_keymap_cookie_t xcb_query_keymap_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_query_keymap_cookie_t + ** + *****************************************************************************/ + +xcb_query_keymap_cookie_t +xcb_query_keymap_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_query_keymap_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_query_keymap_reply_t * xcb_query_keymap_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_keymap_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_keymap_reply_t * + ** + *****************************************************************************/ + +xcb_query_keymap_reply_t * +xcb_query_keymap_reply (xcb_connection_t *c /**< */, + xcb_query_keymap_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_open_font_sizeof (const void *_buffer /**< */); + +/** + * @brief opens a font + * + * @param c The connection + * @param fid The ID with which you will refer to the font, created by `xcb_generate_id`. + * @param name_len Length (in bytes) of \a name. + * @param name A pattern describing an X core font. + * @return A cookie + * + * Opens any X core font matching the given \a name (for example "-misc-fixed-*"). + * + * Note that X core fonts are deprecated (but still supported) in favor of + * client-side rendering using Xft. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_open_font_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_font_t fid + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_open_font_checked (xcb_connection_t *c /**< */, + xcb_font_t fid /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * @brief opens a font + * + * @param c The connection + * @param fid The ID with which you will refer to the font, created by `xcb_generate_id`. + * @param name_len Length (in bytes) of \a name. + * @param name A pattern describing an X core font. + * @return A cookie + * + * Opens any X core font matching the given \a name (for example "-misc-fixed-*"). + * + * Note that X core fonts are deprecated (but still supported) in favor of + * client-side rendering using Xft. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_open_font + ** + ** @param xcb_connection_t *c + ** @param xcb_font_t fid + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_open_font (xcb_connection_t *c /**< */, + xcb_font_t fid /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_close_font_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_font_t font + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_close_font_checked (xcb_connection_t *c /**< */, + xcb_font_t font /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_close_font + ** + ** @param xcb_connection_t *c + ** @param xcb_font_t font + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_close_font (xcb_connection_t *c /**< */, + xcb_font_t font /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_fontprop_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_fontprop_t) + */ + +/***************************************************************************** + ** + ** void xcb_fontprop_next + ** + ** @param xcb_fontprop_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_fontprop_next (xcb_fontprop_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_fontprop_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_fontprop_end + ** + ** @param xcb_fontprop_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_fontprop_end (xcb_fontprop_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_charinfo_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_charinfo_t) + */ + +/***************************************************************************** + ** + ** void xcb_charinfo_next + ** + ** @param xcb_charinfo_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_charinfo_next (xcb_charinfo_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_charinfo_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_charinfo_end + ** + ** @param xcb_charinfo_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_charinfo_end (xcb_charinfo_iterator_t i /**< */); + +int +xcb_query_font_sizeof (const void *_buffer /**< */); + +/** + * @brief query font metrics + * + * @param c The connection + * @param font The fontable (Font or Graphics Context) to query. + * @return A cookie + * + * Queries information associated with the font. + * + */ + +/***************************************************************************** + ** + ** xcb_query_font_cookie_t xcb_query_font + ** + ** @param xcb_connection_t *c + ** @param xcb_fontable_t font + ** @returns xcb_query_font_cookie_t + ** + *****************************************************************************/ + +xcb_query_font_cookie_t +xcb_query_font (xcb_connection_t *c /**< */, + xcb_fontable_t font /**< */); + +/** + * @brief query font metrics + * + * @param c The connection + * @param font The fontable (Font or Graphics Context) to query. + * @return A cookie + * + * Queries information associated with the font. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_query_font_cookie_t xcb_query_font_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_fontable_t font + ** @returns xcb_query_font_cookie_t + ** + *****************************************************************************/ + +xcb_query_font_cookie_t +xcb_query_font_unchecked (xcb_connection_t *c /**< */, + xcb_fontable_t font /**< */); + + +/***************************************************************************** + ** + ** xcb_fontprop_t * xcb_query_font_properties + ** + ** @param const xcb_query_font_reply_t *R + ** @returns xcb_fontprop_t * + ** + *****************************************************************************/ + +xcb_fontprop_t * +xcb_query_font_properties (const xcb_query_font_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_query_font_properties_length + ** + ** @param const xcb_query_font_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_query_font_properties_length (const xcb_query_font_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_fontprop_iterator_t xcb_query_font_properties_iterator + ** + ** @param const xcb_query_font_reply_t *R + ** @returns xcb_fontprop_iterator_t + ** + *****************************************************************************/ + +xcb_fontprop_iterator_t +xcb_query_font_properties_iterator (const xcb_query_font_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_charinfo_t * xcb_query_font_char_infos + ** + ** @param const xcb_query_font_reply_t *R + ** @returns xcb_charinfo_t * + ** + *****************************************************************************/ + +xcb_charinfo_t * +xcb_query_font_char_infos (const xcb_query_font_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_query_font_char_infos_length + ** + ** @param const xcb_query_font_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_query_font_char_infos_length (const xcb_query_font_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_charinfo_iterator_t xcb_query_font_char_infos_iterator + ** + ** @param const xcb_query_font_reply_t *R + ** @returns xcb_charinfo_iterator_t + ** + *****************************************************************************/ + +xcb_charinfo_iterator_t +xcb_query_font_char_infos_iterator (const xcb_query_font_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_query_font_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_query_font_reply_t * xcb_query_font_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_font_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_font_reply_t * + ** + *****************************************************************************/ + +xcb_query_font_reply_t * +xcb_query_font_reply (xcb_connection_t *c /**< */, + xcb_query_font_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_query_text_extents_sizeof (const void *_buffer /**< */, + uint32_t string_len /**< */); + +/** + * @brief get text extents + * + * @param c The connection + * @param font The \a font to calculate text extents in. You can also pass a graphics context. + * @param string_len The number of characters in \a string. + * @param string The text to get text extents for. + * @return A cookie + * + * Query text extents from the X11 server. This request returns the bounding box + * of the specified 16-bit character string in the specified \a font or the font + * contained in the specified graphics context. + * + * `font_ascent` is set to the maximum of the ascent metrics of all characters in + * the string. `font_descent` is set to the maximum of the descent metrics. + * `overall_width` is set to the sum of the character-width metrics of all + * characters in the string. For each character in the string, let W be the sum of + * the character-width metrics of all characters preceding it in the string. Let L + * be the left-side-bearing metric of the character plus W. Let R be the + * right-side-bearing metric of the character plus W. The lbearing member is set + * to the minimum L of all characters in the string. The rbearing member is set to + * the maximum R. + * + * For fonts defined with linear indexing rather than 2-byte matrix indexing, each + * `xcb_char2b_t` structure is interpreted as a 16-bit number with byte1 as the + * most significant byte. If the font has no defined default character, undefined + * characters in the string are taken to have all zero metrics. + * + * Characters with all zero metrics are ignored. If the font has no defined + * default_char, the undefined characters in the string are also ignored. + * + */ + +/***************************************************************************** + ** + ** xcb_query_text_extents_cookie_t xcb_query_text_extents + ** + ** @param xcb_connection_t *c + ** @param xcb_fontable_t font + ** @param uint32_t string_len + ** @param const xcb_char2b_t *string + ** @returns xcb_query_text_extents_cookie_t + ** + *****************************************************************************/ + +xcb_query_text_extents_cookie_t +xcb_query_text_extents (xcb_connection_t *c /**< */, + xcb_fontable_t font /**< */, + uint32_t string_len /**< */, + const xcb_char2b_t *string /**< */); + +/** + * @brief get text extents + * + * @param c The connection + * @param font The \a font to calculate text extents in. You can also pass a graphics context. + * @param string_len The number of characters in \a string. + * @param string The text to get text extents for. + * @return A cookie + * + * Query text extents from the X11 server. This request returns the bounding box + * of the specified 16-bit character string in the specified \a font or the font + * contained in the specified graphics context. + * + * `font_ascent` is set to the maximum of the ascent metrics of all characters in + * the string. `font_descent` is set to the maximum of the descent metrics. + * `overall_width` is set to the sum of the character-width metrics of all + * characters in the string. For each character in the string, let W be the sum of + * the character-width metrics of all characters preceding it in the string. Let L + * be the left-side-bearing metric of the character plus W. Let R be the + * right-side-bearing metric of the character plus W. The lbearing member is set + * to the minimum L of all characters in the string. The rbearing member is set to + * the maximum R. + * + * For fonts defined with linear indexing rather than 2-byte matrix indexing, each + * `xcb_char2b_t` structure is interpreted as a 16-bit number with byte1 as the + * most significant byte. If the font has no defined default character, undefined + * characters in the string are taken to have all zero metrics. + * + * Characters with all zero metrics are ignored. If the font has no defined + * default_char, the undefined characters in the string are also ignored. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_query_text_extents_cookie_t xcb_query_text_extents_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_fontable_t font + ** @param uint32_t string_len + ** @param const xcb_char2b_t *string + ** @returns xcb_query_text_extents_cookie_t + ** + *****************************************************************************/ + +xcb_query_text_extents_cookie_t +xcb_query_text_extents_unchecked (xcb_connection_t *c /**< */, + xcb_fontable_t font /**< */, + uint32_t string_len /**< */, + const xcb_char2b_t *string /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_query_text_extents_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_query_text_extents_reply_t * xcb_query_text_extents_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_text_extents_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_text_extents_reply_t * + ** + *****************************************************************************/ + +xcb_query_text_extents_reply_t * +xcb_query_text_extents_reply (xcb_connection_t *c /**< */, + xcb_query_text_extents_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_str_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_str_name + ** + ** @param const xcb_str_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_str_name (const xcb_str_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_str_name_length + ** + ** @param const xcb_str_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_str_name_length (const xcb_str_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_str_name_end + ** + ** @param const xcb_str_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_str_name_end (const xcb_str_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_str_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_str_t) + */ + +/***************************************************************************** + ** + ** void xcb_str_next + ** + ** @param xcb_str_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_str_next (xcb_str_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_str_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_str_end + ** + ** @param xcb_str_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_str_end (xcb_str_iterator_t i /**< */); + +int +xcb_list_fonts_sizeof (const void *_buffer /**< */); + +/** + * @brief get matching font names + * + * @param c The connection + * @param max_names The maximum number of fonts to be returned. + * @param pattern_len The length (in bytes) of \a pattern. + * @param pattern A font pattern, for example "-misc-fixed-*". + * \n + * The asterisk (*) is a wildcard for any number of characters. The question mark + * (?) is a wildcard for a single character. Use of uppercase or lowercase does + * not matter. + * @return A cookie + * + * Gets a list of available font names which match the given \a pattern. + * + */ + +/***************************************************************************** + ** + ** xcb_list_fonts_cookie_t xcb_list_fonts + ** + ** @param xcb_connection_t *c + ** @param uint16_t max_names + ** @param uint16_t pattern_len + ** @param const char *pattern + ** @returns xcb_list_fonts_cookie_t + ** + *****************************************************************************/ + +xcb_list_fonts_cookie_t +xcb_list_fonts (xcb_connection_t *c /**< */, + uint16_t max_names /**< */, + uint16_t pattern_len /**< */, + const char *pattern /**< */); + +/** + * @brief get matching font names + * + * @param c The connection + * @param max_names The maximum number of fonts to be returned. + * @param pattern_len The length (in bytes) of \a pattern. + * @param pattern A font pattern, for example "-misc-fixed-*". + * \n + * The asterisk (*) is a wildcard for any number of characters. The question mark + * (?) is a wildcard for a single character. Use of uppercase or lowercase does + * not matter. + * @return A cookie + * + * Gets a list of available font names which match the given \a pattern. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_list_fonts_cookie_t xcb_list_fonts_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t max_names + ** @param uint16_t pattern_len + ** @param const char *pattern + ** @returns xcb_list_fonts_cookie_t + ** + *****************************************************************************/ + +xcb_list_fonts_cookie_t +xcb_list_fonts_unchecked (xcb_connection_t *c /**< */, + uint16_t max_names /**< */, + uint16_t pattern_len /**< */, + const char *pattern /**< */); + + +/***************************************************************************** + ** + ** int xcb_list_fonts_names_length + ** + ** @param const xcb_list_fonts_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_fonts_names_length (const xcb_list_fonts_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_str_iterator_t xcb_list_fonts_names_iterator + ** + ** @param const xcb_list_fonts_reply_t *R + ** @returns xcb_str_iterator_t + ** + *****************************************************************************/ + +xcb_str_iterator_t +xcb_list_fonts_names_iterator (const xcb_list_fonts_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_list_fonts_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_list_fonts_reply_t * xcb_list_fonts_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_fonts_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_fonts_reply_t * + ** + *****************************************************************************/ + +xcb_list_fonts_reply_t * +xcb_list_fonts_reply (xcb_connection_t *c /**< */, + xcb_list_fonts_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_list_fonts_with_info_sizeof (const void *_buffer /**< */); + +/** + * @brief get matching font names and information + * + * @param c The connection + * @param max_names The maximum number of fonts to be returned. + * @param pattern_len The length (in bytes) of \a pattern. + * @param pattern A font pattern, for example "-misc-fixed-*". + * \n + * The asterisk (*) is a wildcard for any number of characters. The question mark + * (?) is a wildcard for a single character. Use of uppercase or lowercase does + * not matter. + * @return A cookie + * + * Gets a list of available font names which match the given \a pattern. + * + */ + +/***************************************************************************** + ** + ** xcb_list_fonts_with_info_cookie_t xcb_list_fonts_with_info + ** + ** @param xcb_connection_t *c + ** @param uint16_t max_names + ** @param uint16_t pattern_len + ** @param const char *pattern + ** @returns xcb_list_fonts_with_info_cookie_t + ** + *****************************************************************************/ + +xcb_list_fonts_with_info_cookie_t +xcb_list_fonts_with_info (xcb_connection_t *c /**< */, + uint16_t max_names /**< */, + uint16_t pattern_len /**< */, + const char *pattern /**< */); + +/** + * @brief get matching font names and information + * + * @param c The connection + * @param max_names The maximum number of fonts to be returned. + * @param pattern_len The length (in bytes) of \a pattern. + * @param pattern A font pattern, for example "-misc-fixed-*". + * \n + * The asterisk (*) is a wildcard for any number of characters. The question mark + * (?) is a wildcard for a single character. Use of uppercase or lowercase does + * not matter. + * @return A cookie + * + * Gets a list of available font names which match the given \a pattern. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_list_fonts_with_info_cookie_t xcb_list_fonts_with_info_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t max_names + ** @param uint16_t pattern_len + ** @param const char *pattern + ** @returns xcb_list_fonts_with_info_cookie_t + ** + *****************************************************************************/ + +xcb_list_fonts_with_info_cookie_t +xcb_list_fonts_with_info_unchecked (xcb_connection_t *c /**< */, + uint16_t max_names /**< */, + uint16_t pattern_len /**< */, + const char *pattern /**< */); + + +/***************************************************************************** + ** + ** xcb_fontprop_t * xcb_list_fonts_with_info_properties + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns xcb_fontprop_t * + ** + *****************************************************************************/ + +xcb_fontprop_t * +xcb_list_fonts_with_info_properties (const xcb_list_fonts_with_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_list_fonts_with_info_properties_length + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_fonts_with_info_properties_length (const xcb_list_fonts_with_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_fontprop_iterator_t xcb_list_fonts_with_info_properties_iterator + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns xcb_fontprop_iterator_t + ** + *****************************************************************************/ + +xcb_fontprop_iterator_t +xcb_list_fonts_with_info_properties_iterator (const xcb_list_fonts_with_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** char * xcb_list_fonts_with_info_name + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_list_fonts_with_info_name (const xcb_list_fonts_with_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_list_fonts_with_info_name_length + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_fonts_with_info_name_length (const xcb_list_fonts_with_info_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_list_fonts_with_info_name_end + ** + ** @param const xcb_list_fonts_with_info_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_list_fonts_with_info_name_end (const xcb_list_fonts_with_info_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_list_fonts_with_info_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_list_fonts_with_info_reply_t * xcb_list_fonts_with_info_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_fonts_with_info_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_fonts_with_info_reply_t * + ** + *****************************************************************************/ + +xcb_list_fonts_with_info_reply_t * +xcb_list_fonts_with_info_reply (xcb_connection_t *c /**< */, + xcb_list_fonts_with_info_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_set_font_path_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_font_path_checked + ** + ** @param xcb_connection_t *c + ** @param uint16_t font_qty + ** @param const xcb_str_t *font + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_font_path_checked (xcb_connection_t *c /**< */, + uint16_t font_qty /**< */, + const xcb_str_t *font /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_font_path + ** + ** @param xcb_connection_t *c + ** @param uint16_t font_qty + ** @param const xcb_str_t *font + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_font_path (xcb_connection_t *c /**< */, + uint16_t font_qty /**< */, + const xcb_str_t *font /**< */); + +int +xcb_get_font_path_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_font_path_cookie_t xcb_get_font_path + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_font_path_cookie_t + ** + *****************************************************************************/ + +xcb_get_font_path_cookie_t +xcb_get_font_path (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_font_path_cookie_t xcb_get_font_path_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_font_path_cookie_t + ** + *****************************************************************************/ + +xcb_get_font_path_cookie_t +xcb_get_font_path_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** int xcb_get_font_path_path_length + ** + ** @param const xcb_get_font_path_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_font_path_path_length (const xcb_get_font_path_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_str_iterator_t xcb_get_font_path_path_iterator + ** + ** @param const xcb_get_font_path_reply_t *R + ** @returns xcb_str_iterator_t + ** + *****************************************************************************/ + +xcb_str_iterator_t +xcb_get_font_path_path_iterator (const xcb_get_font_path_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_font_path_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_font_path_reply_t * xcb_get_font_path_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_font_path_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_font_path_reply_t * + ** + *****************************************************************************/ + +xcb_get_font_path_reply_t * +xcb_get_font_path_reply (xcb_connection_t *c /**< */, + xcb_get_font_path_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * @brief Creates a pixmap + * + * @param c The connection + * @param depth TODO + * @param pid The ID with which you will refer to the new pixmap, created by + * `xcb_generate_id`. + * @param drawable Drawable to get the screen from. + * @param width The width of the new pixmap. + * @param height The height of the new pixmap. + * @return A cookie + * + * Creates a pixmap. The pixmap can only be used on the same screen as \a drawable + * is on and only with drawables of the same \a depth. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t depth + ** @param xcb_pixmap_t pid + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_pixmap_checked (xcb_connection_t *c /**< */, + uint8_t depth /**< */, + xcb_pixmap_t pid /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * @brief Creates a pixmap + * + * @param c The connection + * @param depth TODO + * @param pid The ID with which you will refer to the new pixmap, created by + * `xcb_generate_id`. + * @param drawable Drawable to get the screen from. + * @param width The width of the new pixmap. + * @param height The height of the new pixmap. + * @return A cookie + * + * Creates a pixmap. The pixmap can only be used on the same screen as \a drawable + * is on and only with drawables of the same \a depth. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_pixmap + ** + ** @param xcb_connection_t *c + ** @param uint8_t depth + ** @param xcb_pixmap_t pid + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_pixmap (xcb_connection_t *c /**< */, + uint8_t depth /**< */, + xcb_pixmap_t pid /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * @brief Destroys a pixmap + * + * @param c The connection + * @param pixmap The pixmap to destroy. + * @return A cookie + * + * Deletes the association between the pixmap ID and the pixmap. The pixmap + * storage will be freed when there are no more references to it. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_pixmap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_pixmap_t pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_pixmap_checked (xcb_connection_t *c /**< */, + xcb_pixmap_t pixmap /**< */); + +/** + * @brief Destroys a pixmap + * + * @param c The connection + * @param pixmap The pixmap to destroy. + * @return A cookie + * + * Deletes the association between the pixmap ID and the pixmap. The pixmap + * storage will be freed when there are no more references to it. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_pixmap + ** + ** @param xcb_connection_t *c + ** @param xcb_pixmap_t pixmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_pixmap (xcb_connection_t *c /**< */, + xcb_pixmap_t pixmap /**< */); + +int +xcb_create_gc_sizeof (const void *_buffer /**< */); + +/** + * @brief Creates a graphics context + * + * @param c The connection + * @param cid The ID with which you will refer to the graphics context, created by + * `xcb_generate_id`. + * @param drawable Drawable to get the root/depth from. + * @return A cookie + * + * Creates a graphics context. The graphics context can be used with any drawable + * that has the same root and depth as the specified drawable. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t cid + ** @param xcb_drawable_t drawable + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_gc_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t cid /**< */, + xcb_drawable_t drawable /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * @brief Creates a graphics context + * + * @param c The connection + * @param cid The ID with which you will refer to the graphics context, created by + * `xcb_generate_id`. + * @param drawable Drawable to get the root/depth from. + * @return A cookie + * + * Creates a graphics context. The graphics context can be used with any drawable + * that has the same root and depth as the specified drawable. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t cid + ** @param xcb_drawable_t drawable + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_gc (xcb_connection_t *c /**< */, + xcb_gcontext_t cid /**< */, + xcb_drawable_t drawable /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +int +xcb_change_gc_sizeof (const void *_buffer /**< */); + +/** + * @brief change graphics context components + * + * @param c The connection + * @param gc The graphics context to change. + * @param value_mask A bitmask of #xcb_gc_t values. + * @param value_mask \n + * @param value_list Values for each of the components specified in the bitmask \a value_mask. The + * order has to correspond to the order of possible \a value_mask bits. See the + * example. + * @return A cookie + * + * Changes the components specified by \a value_mask for the specified graphics context. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_gc_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * @brief change graphics context components + * + * @param c The connection + * @param gc The graphics context to change. + * @param value_mask A bitmask of #xcb_gc_t values. + * @param value_mask \n + * @param value_list Values for each of the components specified in the bitmask \a value_mask. The + * order has to correspond to the order of possible \a value_mask bits. See the + * example. + * @return A cookie + * + * Changes the components specified by \a value_mask for the specified graphics context. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_gc (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t src_gc + ** @param xcb_gcontext_t dst_gc + ** @param uint32_t value_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_gc_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t src_gc /**< */, + xcb_gcontext_t dst_gc /**< */, + uint32_t value_mask /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t src_gc + ** @param xcb_gcontext_t dst_gc + ** @param uint32_t value_mask + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_gc (xcb_connection_t *c /**< */, + xcb_gcontext_t src_gc /**< */, + xcb_gcontext_t dst_gc /**< */, + uint32_t value_mask /**< */); + +int +xcb_set_dashes_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_dashes_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param uint16_t dash_offset + ** @param uint16_t dashes_len + ** @param const uint8_t *dashes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_dashes_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + uint16_t dash_offset /**< */, + uint16_t dashes_len /**< */, + const uint8_t *dashes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_dashes + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @param uint16_t dash_offset + ** @param uint16_t dashes_len + ** @param const uint8_t *dashes + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_dashes (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */, + uint16_t dash_offset /**< */, + uint16_t dashes_len /**< */, + const uint8_t *dashes /**< */); + +int +xcb_set_clip_rectangles_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_clip_rectangles_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t ordering + ** @param xcb_gcontext_t gc + ** @param int16_t clip_x_origin + ** @param int16_t clip_y_origin + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_clip_rectangles_checked (xcb_connection_t *c /**< */, + uint8_t ordering /**< */, + xcb_gcontext_t gc /**< */, + int16_t clip_x_origin /**< */, + int16_t clip_y_origin /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_clip_rectangles + ** + ** @param xcb_connection_t *c + ** @param uint8_t ordering + ** @param xcb_gcontext_t gc + ** @param int16_t clip_x_origin + ** @param int16_t clip_y_origin + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_clip_rectangles (xcb_connection_t *c /**< */, + uint8_t ordering /**< */, + xcb_gcontext_t gc /**< */, + int16_t clip_x_origin /**< */, + int16_t clip_y_origin /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * @brief Destroys a graphics context + * + * @param c The connection + * @param gc The graphics context to destroy. + * @return A cookie + * + * Destroys the specified \a gc and all associated storage. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_gc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_gc_checked (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */); + +/** + * @brief Destroys a graphics context + * + * @param c The connection + * @param gc The graphics context to destroy. + * @return A cookie + * + * Destroys the specified \a gc and all associated storage. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_gc + ** + ** @param xcb_connection_t *c + ** @param xcb_gcontext_t gc + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_gc (xcb_connection_t *c /**< */, + xcb_gcontext_t gc /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_clear_area_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t exposures + ** @param xcb_window_t window + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_clear_area_checked (xcb_connection_t *c /**< */, + uint8_t exposures /**< */, + xcb_window_t window /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_clear_area + ** + ** @param xcb_connection_t *c + ** @param uint8_t exposures + ** @param xcb_window_t window + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_clear_area (xcb_connection_t *c /**< */, + uint8_t exposures /**< */, + xcb_window_t window /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * @brief copy areas + * + * @param c The connection + * @param src_drawable The source drawable (Window or Pixmap). + * @param dst_drawable The destination drawable (Window or Pixmap). + * @param gc The graphics context to use. + * @param src_x The source X coordinate. + * @param src_y The source Y coordinate. + * @param dst_x The destination X coordinate. + * @param dst_y The destination Y coordinate. + * @param width The width of the area to copy (in pixels). + * @param height The height of the area to copy (in pixels). + * @return A cookie + * + * Copies the specified rectangle from \a src_drawable to \a dst_drawable. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_area_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t src_drawable + ** @param xcb_drawable_t dst_drawable + ** @param xcb_gcontext_t gc + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_area_checked (xcb_connection_t *c /**< */, + xcb_drawable_t src_drawable /**< */, + xcb_drawable_t dst_drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * @brief copy areas + * + * @param c The connection + * @param src_drawable The source drawable (Window or Pixmap). + * @param dst_drawable The destination drawable (Window or Pixmap). + * @param gc The graphics context to use. + * @param src_x The source X coordinate. + * @param src_y The source Y coordinate. + * @param dst_x The destination X coordinate. + * @param dst_y The destination Y coordinate. + * @param width The width of the area to copy (in pixels). + * @param height The height of the area to copy (in pixels). + * @return A cookie + * + * Copies the specified rectangle from \a src_drawable to \a dst_drawable. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_area + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t src_drawable + ** @param xcb_drawable_t dst_drawable + ** @param xcb_gcontext_t gc + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_area (xcb_connection_t *c /**< */, + xcb_drawable_t src_drawable /**< */, + xcb_drawable_t dst_drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_plane_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t src_drawable + ** @param xcb_drawable_t dst_drawable + ** @param xcb_gcontext_t gc + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t bit_plane + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_plane_checked (xcb_connection_t *c /**< */, + xcb_drawable_t src_drawable /**< */, + xcb_drawable_t dst_drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t bit_plane /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_plane + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t src_drawable + ** @param xcb_drawable_t dst_drawable + ** @param xcb_gcontext_t gc + ** @param int16_t src_x + ** @param int16_t src_y + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t bit_plane + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_plane (xcb_connection_t *c /**< */, + xcb_drawable_t src_drawable /**< */, + xcb_drawable_t dst_drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t bit_plane /**< */); + +int +xcb_poly_point_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_point_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t coordinate_mode + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_point_checked (xcb_connection_t *c /**< */, + uint8_t coordinate_mode /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_point + ** + ** @param xcb_connection_t *c + ** @param uint8_t coordinate_mode + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_point (xcb_connection_t *c /**< */, + uint8_t coordinate_mode /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */); + +int +xcb_poly_line_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */); + +/** + * @brief draw lines + * + * @param c The connection + * @param coordinate_mode A bitmask of #xcb_coord_mode_t values. + * @param coordinate_mode \n + * @param drawable The drawable to draw the line(s) on. + * @param gc The graphics context to use. + * @param points_len The number of `xcb_point_t` structures in \a points. + * @param points An array of points. + * @return A cookie + * + * Draws \a points_len-1 lines between each pair of points (point[i], point[i+1]) + * in the \a points array. The lines are drawn in the order listed in the array. + * They join correctly at all intermediate points, and if the first and last + * points coincide, the first and last lines also join correctly. For any given + * line, a pixel is not drawn more than once. If thin (zero line-width) lines + * intersect, the intersecting pixels are drawn multiple times. If wide lines + * intersect, the intersecting pixels are drawn only once, as though the entire + * request were a single, filled shape. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_line_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t coordinate_mode + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_line_checked (xcb_connection_t *c /**< */, + uint8_t coordinate_mode /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */); + +/** + * @brief draw lines + * + * @param c The connection + * @param coordinate_mode A bitmask of #xcb_coord_mode_t values. + * @param coordinate_mode \n + * @param drawable The drawable to draw the line(s) on. + * @param gc The graphics context to use. + * @param points_len The number of `xcb_point_t` structures in \a points. + * @param points An array of points. + * @return A cookie + * + * Draws \a points_len-1 lines between each pair of points (point[i], point[i+1]) + * in the \a points array. The lines are drawn in the order listed in the array. + * They join correctly at all intermediate points, and if the first and last + * points coincide, the first and last lines also join correctly. For any given + * line, a pixel is not drawn more than once. If thin (zero line-width) lines + * intersect, the intersecting pixels are drawn multiple times. If wide lines + * intersect, the intersecting pixels are drawn only once, as though the entire + * request were a single, filled shape. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_line + ** + ** @param xcb_connection_t *c + ** @param uint8_t coordinate_mode + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_line (xcb_connection_t *c /**< */, + uint8_t coordinate_mode /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_segment_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_segment_t) + */ + +/***************************************************************************** + ** + ** void xcb_segment_next + ** + ** @param xcb_segment_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_segment_next (xcb_segment_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_segment_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_segment_end + ** + ** @param xcb_segment_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_segment_end (xcb_segment_iterator_t i /**< */); + +int +xcb_poly_segment_sizeof (const void *_buffer /**< */, + uint32_t segments_len /**< */); + +/** + * @brief draw lines + * + * @param c The connection + * @param drawable A drawable (Window or Pixmap) to draw on. + * @param gc The graphics context to use. + * \n + * TODO: document which attributes of a gc are used + * @param segments_len The number of `xcb_segment_t` structures in \a segments. + * @param segments An array of `xcb_segment_t` structures. + * @return A cookie + * + * Draws multiple, unconnected lines. For each segment, a line is drawn between + * (x1, y1) and (x2, y2). The lines are drawn in the order listed in the array of + * `xcb_segment_t` structures and does not perform joining at coincident + * endpoints. For any given line, a pixel is not drawn more than once. If lines + * intersect, the intersecting pixels are drawn multiple times. + * + * TODO: include the xcb_segment_t data structure + * + * TODO: an example + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_segment_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t segments_len + ** @param const xcb_segment_t *segments + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_segment_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t segments_len /**< */, + const xcb_segment_t *segments /**< */); + +/** + * @brief draw lines + * + * @param c The connection + * @param drawable A drawable (Window or Pixmap) to draw on. + * @param gc The graphics context to use. + * \n + * TODO: document which attributes of a gc are used + * @param segments_len The number of `xcb_segment_t` structures in \a segments. + * @param segments An array of `xcb_segment_t` structures. + * @return A cookie + * + * Draws multiple, unconnected lines. For each segment, a line is drawn between + * (x1, y1) and (x2, y2). The lines are drawn in the order listed in the array of + * `xcb_segment_t` structures and does not perform joining at coincident + * endpoints. For any given line, a pixel is not drawn more than once. If lines + * intersect, the intersecting pixels are drawn multiple times. + * + * TODO: include the xcb_segment_t data structure + * + * TODO: an example + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_segment + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t segments_len + ** @param const xcb_segment_t *segments + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_segment (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t segments_len /**< */, + const xcb_segment_t *segments /**< */); + +int +xcb_poly_rectangle_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_rectangle_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_rectangle_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_rectangle + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_rectangle (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +int +xcb_poly_arc_sizeof (const void *_buffer /**< */, + uint32_t arcs_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_arc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t arcs_len + ** @param const xcb_arc_t *arcs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_arc_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t arcs_len /**< */, + const xcb_arc_t *arcs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_arc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t arcs_len + ** @param const xcb_arc_t *arcs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_arc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t arcs_len /**< */, + const xcb_arc_t *arcs /**< */); + +int +xcb_fill_poly_sizeof (const void *_buffer /**< */, + uint32_t points_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_fill_poly_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint8_t shape + ** @param uint8_t coordinate_mode + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_fill_poly_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint8_t shape /**< */, + uint8_t coordinate_mode /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_fill_poly + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint8_t shape + ** @param uint8_t coordinate_mode + ** @param uint32_t points_len + ** @param const xcb_point_t *points + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_fill_poly (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint8_t shape /**< */, + uint8_t coordinate_mode /**< */, + uint32_t points_len /**< */, + const xcb_point_t *points /**< */); + +int +xcb_poly_fill_rectangle_sizeof (const void *_buffer /**< */, + uint32_t rectangles_len /**< */); + +/** + * @brief Fills rectangles + * + * @param c The connection + * @param drawable The drawable (Window or Pixmap) to draw on. + * @param gc The graphics context to use. + * \n + * The following graphics context components are used: function, plane-mask, + * fill-style, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask. + * \n + * The following graphics context mode-dependent components are used: + * foreground, background, tile, stipple, tile-stipple-x-origin, and + * tile-stipple-y-origin. + * @param rectangles_len The number of `xcb_rectangle_t` structures in \a rectangles. + * @param rectangles The rectangles to fill. + * @return A cookie + * + * Fills the specified rectangle(s) in the order listed in the array. For any + * given rectangle, each pixel is not drawn more than once. If rectangles + * intersect, the intersecting pixels are drawn multiple times. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_fill_rectangle_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_fill_rectangle_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +/** + * @brief Fills rectangles + * + * @param c The connection + * @param drawable The drawable (Window or Pixmap) to draw on. + * @param gc The graphics context to use. + * \n + * The following graphics context components are used: function, plane-mask, + * fill-style, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask. + * \n + * The following graphics context mode-dependent components are used: + * foreground, background, tile, stipple, tile-stipple-x-origin, and + * tile-stipple-y-origin. + * @param rectangles_len The number of `xcb_rectangle_t` structures in \a rectangles. + * @param rectangles The rectangles to fill. + * @return A cookie + * + * Fills the specified rectangle(s) in the order listed in the array. For any + * given rectangle, each pixel is not drawn more than once. If rectangles + * intersect, the intersecting pixels are drawn multiple times. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_fill_rectangle + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t rectangles_len + ** @param const xcb_rectangle_t *rectangles + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_fill_rectangle (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t rectangles_len /**< */, + const xcb_rectangle_t *rectangles /**< */); + +int +xcb_poly_fill_arc_sizeof (const void *_buffer /**< */, + uint32_t arcs_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_fill_arc_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t arcs_len + ** @param const xcb_arc_t *arcs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_fill_arc_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t arcs_len /**< */, + const xcb_arc_t *arcs /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_fill_arc + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t arcs_len + ** @param const xcb_arc_t *arcs + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_fill_arc (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t arcs_len /**< */, + const xcb_arc_t *arcs /**< */); + +int +xcb_put_image_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_put_image_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t format + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint16_t width + ** @param uint16_t height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint8_t left_pad + ** @param uint8_t depth + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_put_image_checked (xcb_connection_t *c /**< */, + uint8_t format /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint8_t left_pad /**< */, + uint8_t depth /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_put_image + ** + ** @param xcb_connection_t *c + ** @param uint8_t format + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint16_t width + ** @param uint16_t height + ** @param int16_t dst_x + ** @param int16_t dst_y + ** @param uint8_t left_pad + ** @param uint8_t depth + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_put_image (xcb_connection_t *c /**< */, + uint8_t format /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + int16_t dst_x /**< */, + int16_t dst_y /**< */, + uint8_t left_pad /**< */, + uint8_t depth /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +int +xcb_get_image_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_image_cookie_t xcb_get_image + ** + ** @param xcb_connection_t *c + ** @param uint8_t format + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t plane_mask + ** @returns xcb_get_image_cookie_t + ** + *****************************************************************************/ + +xcb_get_image_cookie_t +xcb_get_image (xcb_connection_t *c /**< */, + uint8_t format /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t plane_mask /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_image_cookie_t xcb_get_image_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t format + ** @param xcb_drawable_t drawable + ** @param int16_t x + ** @param int16_t y + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t plane_mask + ** @returns xcb_get_image_cookie_t + ** + *****************************************************************************/ + +xcb_get_image_cookie_t +xcb_get_image_unchecked (xcb_connection_t *c /**< */, + uint8_t format /**< */, + xcb_drawable_t drawable /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t plane_mask /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_get_image_data + ** + ** @param const xcb_get_image_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_get_image_data (const xcb_get_image_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_get_image_data_length + ** + ** @param const xcb_get_image_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_image_data_length (const xcb_get_image_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_image_data_end + ** + ** @param const xcb_get_image_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_image_data_end (const xcb_get_image_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_image_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_image_reply_t * xcb_get_image_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_image_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_image_reply_t * + ** + *****************************************************************************/ + +xcb_get_image_reply_t * +xcb_get_image_reply (xcb_connection_t *c /**< */, + xcb_get_image_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_poly_text_8_sizeof (const void *_buffer /**< */, + uint32_t items_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_text_8_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param uint32_t items_len + ** @param const uint8_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_text_8_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint32_t items_len /**< */, + const uint8_t *items /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_text_8 + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param uint32_t items_len + ** @param const uint8_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_text_8 (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint32_t items_len /**< */, + const uint8_t *items /**< */); + +int +xcb_poly_text_16_sizeof (const void *_buffer /**< */, + uint32_t items_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_text_16_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param uint32_t items_len + ** @param const uint8_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_text_16_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint32_t items_len /**< */, + const uint8_t *items /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_poly_text_16 + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param uint32_t items_len + ** @param const uint8_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_poly_text_16 (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + uint32_t items_len /**< */, + const uint8_t *items /**< */); + +int +xcb_image_text_8_sizeof (const void *_buffer /**< */); + +/** + * @brief Draws text + * + * @param c The connection + * @param string_len The length of the \a string. Note that this parameter limited by 255 due to + * using 8 bits! + * @param drawable The drawable (Window or Pixmap) to draw text on. + * @param gc The graphics context to use. + * \n + * The following graphics context components are used: plane-mask, foreground, + * background, font, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask. + * @param x The x coordinate of the first character, relative to the origin of \a drawable. + * @param y The y coordinate of the first character, relative to the origin of \a drawable. + * @param string The string to draw. Only the first 255 characters are relevant due to the data + * type of \a string_len. + * @return A cookie + * + * Fills the destination rectangle with the background pixel from \a gc, then + * paints the text with the foreground pixel from \a gc. The upper-left corner of + * the filled rectangle is at [x, y - font-ascent]. The width is overall-width, + * the height is font-ascent + font-descent. The overall-width, font-ascent and + * font-descent are as returned by `xcb_query_text_extents` (TODO). + * + * Note that using X core fonts is deprecated (but still supported) in favor of + * client-side rendering using Xft. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_image_text_8_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t string_len + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param const char *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_image_text_8_checked (xcb_connection_t *c /**< */, + uint8_t string_len /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + const char *string /**< */); + +/** + * @brief Draws text + * + * @param c The connection + * @param string_len The length of the \a string. Note that this parameter limited by 255 due to + * using 8 bits! + * @param drawable The drawable (Window or Pixmap) to draw text on. + * @param gc The graphics context to use. + * \n + * The following graphics context components are used: plane-mask, foreground, + * background, font, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask. + * @param x The x coordinate of the first character, relative to the origin of \a drawable. + * @param y The y coordinate of the first character, relative to the origin of \a drawable. + * @param string The string to draw. Only the first 255 characters are relevant due to the data + * type of \a string_len. + * @return A cookie + * + * Fills the destination rectangle with the background pixel from \a gc, then + * paints the text with the foreground pixel from \a gc. The upper-left corner of + * the filled rectangle is at [x, y - font-ascent]. The width is overall-width, + * the height is font-ascent + font-descent. The overall-width, font-ascent and + * font-descent are as returned by `xcb_query_text_extents` (TODO). + * + * Note that using X core fonts is deprecated (but still supported) in favor of + * client-side rendering using Xft. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_image_text_8 + ** + ** @param xcb_connection_t *c + ** @param uint8_t string_len + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param const char *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_image_text_8 (xcb_connection_t *c /**< */, + uint8_t string_len /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + const char *string /**< */); + +int +xcb_image_text_16_sizeof (const void *_buffer /**< */); + +/** + * @brief Draws text + * + * @param c The connection + * @param string_len The length of the \a string in characters. Note that this parameter limited by + * 255 due to using 8 bits! + * @param drawable The drawable (Window or Pixmap) to draw text on. + * @param gc The graphics context to use. + * \n + * The following graphics context components are used: plane-mask, foreground, + * background, font, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask. + * @param x The x coordinate of the first character, relative to the origin of \a drawable. + * @param y The y coordinate of the first character, relative to the origin of \a drawable. + * @param string The string to draw. Only the first 255 characters are relevant due to the data + * type of \a string_len. Every character uses 2 bytes (hence the 16 in this + * request's name). + * @return A cookie + * + * Fills the destination rectangle with the background pixel from \a gc, then + * paints the text with the foreground pixel from \a gc. The upper-left corner of + * the filled rectangle is at [x, y - font-ascent]. The width is overall-width, + * the height is font-ascent + font-descent. The overall-width, font-ascent and + * font-descent are as returned by `xcb_query_text_extents` (TODO). + * + * Note that using X core fonts is deprecated (but still supported) in favor of + * client-side rendering using Xft. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_image_text_16_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t string_len + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param const xcb_char2b_t *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_image_text_16_checked (xcb_connection_t *c /**< */, + uint8_t string_len /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + const xcb_char2b_t *string /**< */); + +/** + * @brief Draws text + * + * @param c The connection + * @param string_len The length of the \a string in characters. Note that this parameter limited by + * 255 due to using 8 bits! + * @param drawable The drawable (Window or Pixmap) to draw text on. + * @param gc The graphics context to use. + * \n + * The following graphics context components are used: plane-mask, foreground, + * background, font, subwindow-mode, clip-x-origin, clip-y-origin, and clip-mask. + * @param x The x coordinate of the first character, relative to the origin of \a drawable. + * @param y The y coordinate of the first character, relative to the origin of \a drawable. + * @param string The string to draw. Only the first 255 characters are relevant due to the data + * type of \a string_len. Every character uses 2 bytes (hence the 16 in this + * request's name). + * @return A cookie + * + * Fills the destination rectangle with the background pixel from \a gc, then + * paints the text with the foreground pixel from \a gc. The upper-left corner of + * the filled rectangle is at [x, y - font-ascent]. The width is overall-width, + * the height is font-ascent + font-descent. The overall-width, font-ascent and + * font-descent are as returned by `xcb_query_text_extents` (TODO). + * + * Note that using X core fonts is deprecated (but still supported) in favor of + * client-side rendering using Xft. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_image_text_16 + ** + ** @param xcb_connection_t *c + ** @param uint8_t string_len + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t x + ** @param int16_t y + ** @param const xcb_char2b_t *string + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_image_text_16 (xcb_connection_t *c /**< */, + uint8_t string_len /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t x /**< */, + int16_t y /**< */, + const xcb_char2b_t *string /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_colormap_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t alloc + ** @param xcb_colormap_t mid + ** @param xcb_window_t window + ** @param xcb_visualid_t visual + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_colormap_checked (xcb_connection_t *c /**< */, + uint8_t alloc /**< */, + xcb_colormap_t mid /**< */, + xcb_window_t window /**< */, + xcb_visualid_t visual /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_colormap + ** + ** @param xcb_connection_t *c + ** @param uint8_t alloc + ** @param xcb_colormap_t mid + ** @param xcb_window_t window + ** @param xcb_visualid_t visual + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_colormap (xcb_connection_t *c /**< */, + uint8_t alloc /**< */, + xcb_colormap_t mid /**< */, + xcb_window_t window /**< */, + xcb_visualid_t visual /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_colormap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_colormap_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_colormap + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_colormap (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_colormap_and_free_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t mid + ** @param xcb_colormap_t src_cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_colormap_and_free_checked (xcb_connection_t *c /**< */, + xcb_colormap_t mid /**< */, + xcb_colormap_t src_cmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_copy_colormap_and_free + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t mid + ** @param xcb_colormap_t src_cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_copy_colormap_and_free (xcb_connection_t *c /**< */, + xcb_colormap_t mid /**< */, + xcb_colormap_t src_cmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_install_colormap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_install_colormap_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_install_colormap + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_install_colormap (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_uninstall_colormap_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_uninstall_colormap_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_uninstall_colormap + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_uninstall_colormap (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */); + +int +xcb_list_installed_colormaps_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_list_installed_colormaps_cookie_t xcb_list_installed_colormaps + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_list_installed_colormaps_cookie_t + ** + *****************************************************************************/ + +xcb_list_installed_colormaps_cookie_t +xcb_list_installed_colormaps (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_list_installed_colormaps_cookie_t xcb_list_installed_colormaps_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_list_installed_colormaps_cookie_t + ** + *****************************************************************************/ + +xcb_list_installed_colormaps_cookie_t +xcb_list_installed_colormaps_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** xcb_colormap_t * xcb_list_installed_colormaps_cmaps + ** + ** @param const xcb_list_installed_colormaps_reply_t *R + ** @returns xcb_colormap_t * + ** + *****************************************************************************/ + +xcb_colormap_t * +xcb_list_installed_colormaps_cmaps (const xcb_list_installed_colormaps_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_list_installed_colormaps_cmaps_length + ** + ** @param const xcb_list_installed_colormaps_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_installed_colormaps_cmaps_length (const xcb_list_installed_colormaps_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_list_installed_colormaps_cmaps_end + ** + ** @param const xcb_list_installed_colormaps_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_list_installed_colormaps_cmaps_end (const xcb_list_installed_colormaps_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_list_installed_colormaps_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_list_installed_colormaps_reply_t * xcb_list_installed_colormaps_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_installed_colormaps_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_installed_colormaps_reply_t * + ** + *****************************************************************************/ + +xcb_list_installed_colormaps_reply_t * +xcb_list_installed_colormaps_reply (xcb_connection_t *c /**< */, + xcb_list_installed_colormaps_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * @brief Allocate a color + * + * @param c The connection + * @param cmap TODO + * @param red The red value of your color. + * @param green The green value of your color. + * @param blue The blue value of your color. + * @return A cookie + * + * Allocates a read-only colormap entry corresponding to the closest RGB value + * supported by the hardware. If you are using TrueColor, you can take a shortcut + * and directly calculate the color pixel value to avoid the round trip. But, for + * example, on 16-bit color setups (VNC), you can easily get the closest supported + * RGB value to the RGB value you are specifying. + * + */ + +/***************************************************************************** + ** + ** xcb_alloc_color_cookie_t xcb_alloc_color + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t red + ** @param uint16_t green + ** @param uint16_t blue + ** @returns xcb_alloc_color_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_cookie_t +xcb_alloc_color (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t red /**< */, + uint16_t green /**< */, + uint16_t blue /**< */); + +/** + * @brief Allocate a color + * + * @param c The connection + * @param cmap TODO + * @param red The red value of your color. + * @param green The green value of your color. + * @param blue The blue value of your color. + * @return A cookie + * + * Allocates a read-only colormap entry corresponding to the closest RGB value + * supported by the hardware. If you are using TrueColor, you can take a shortcut + * and directly calculate the color pixel value to avoid the round trip. But, for + * example, on 16-bit color setups (VNC), you can easily get the closest supported + * RGB value to the RGB value you are specifying. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_alloc_color_cookie_t xcb_alloc_color_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t red + ** @param uint16_t green + ** @param uint16_t blue + ** @returns xcb_alloc_color_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_cookie_t +xcb_alloc_color_unchecked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t red /**< */, + uint16_t green /**< */, + uint16_t blue /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_alloc_color_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_alloc_color_reply_t * xcb_alloc_color_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_alloc_color_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_alloc_color_reply_t * + ** + *****************************************************************************/ + +xcb_alloc_color_reply_t * +xcb_alloc_color_reply (xcb_connection_t *c /**< */, + xcb_alloc_color_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_alloc_named_color_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_alloc_named_color_cookie_t xcb_alloc_named_color + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_alloc_named_color_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_named_color_cookie_t +xcb_alloc_named_color (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_alloc_named_color_cookie_t xcb_alloc_named_color_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_alloc_named_color_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_named_color_cookie_t +xcb_alloc_named_color_unchecked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_alloc_named_color_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_alloc_named_color_reply_t * xcb_alloc_named_color_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_alloc_named_color_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_alloc_named_color_reply_t * + ** + *****************************************************************************/ + +xcb_alloc_named_color_reply_t * +xcb_alloc_named_color_reply (xcb_connection_t *c /**< */, + xcb_alloc_named_color_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_alloc_color_cells_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_alloc_color_cells_cookie_t xcb_alloc_color_cells + ** + ** @param xcb_connection_t *c + ** @param uint8_t contiguous + ** @param xcb_colormap_t cmap + ** @param uint16_t colors + ** @param uint16_t planes + ** @returns xcb_alloc_color_cells_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_cells_cookie_t +xcb_alloc_color_cells (xcb_connection_t *c /**< */, + uint8_t contiguous /**< */, + xcb_colormap_t cmap /**< */, + uint16_t colors /**< */, + uint16_t planes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_alloc_color_cells_cookie_t xcb_alloc_color_cells_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t contiguous + ** @param xcb_colormap_t cmap + ** @param uint16_t colors + ** @param uint16_t planes + ** @returns xcb_alloc_color_cells_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_cells_cookie_t +xcb_alloc_color_cells_unchecked (xcb_connection_t *c /**< */, + uint8_t contiguous /**< */, + xcb_colormap_t cmap /**< */, + uint16_t colors /**< */, + uint16_t planes /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_alloc_color_cells_pixels + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_alloc_color_cells_pixels (const xcb_alloc_color_cells_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_alloc_color_cells_pixels_length + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_alloc_color_cells_pixels_length (const xcb_alloc_color_cells_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_alloc_color_cells_pixels_end + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_alloc_color_cells_pixels_end (const xcb_alloc_color_cells_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_alloc_color_cells_masks + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_alloc_color_cells_masks (const xcb_alloc_color_cells_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_alloc_color_cells_masks_length + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_alloc_color_cells_masks_length (const xcb_alloc_color_cells_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_alloc_color_cells_masks_end + ** + ** @param const xcb_alloc_color_cells_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_alloc_color_cells_masks_end (const xcb_alloc_color_cells_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_alloc_color_cells_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_alloc_color_cells_reply_t * xcb_alloc_color_cells_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_alloc_color_cells_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_alloc_color_cells_reply_t * + ** + *****************************************************************************/ + +xcb_alloc_color_cells_reply_t * +xcb_alloc_color_cells_reply (xcb_connection_t *c /**< */, + xcb_alloc_color_cells_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_alloc_color_planes_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_alloc_color_planes_cookie_t xcb_alloc_color_planes + ** + ** @param xcb_connection_t *c + ** @param uint8_t contiguous + ** @param xcb_colormap_t cmap + ** @param uint16_t colors + ** @param uint16_t reds + ** @param uint16_t greens + ** @param uint16_t blues + ** @returns xcb_alloc_color_planes_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_planes_cookie_t +xcb_alloc_color_planes (xcb_connection_t *c /**< */, + uint8_t contiguous /**< */, + xcb_colormap_t cmap /**< */, + uint16_t colors /**< */, + uint16_t reds /**< */, + uint16_t greens /**< */, + uint16_t blues /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_alloc_color_planes_cookie_t xcb_alloc_color_planes_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t contiguous + ** @param xcb_colormap_t cmap + ** @param uint16_t colors + ** @param uint16_t reds + ** @param uint16_t greens + ** @param uint16_t blues + ** @returns xcb_alloc_color_planes_cookie_t + ** + *****************************************************************************/ + +xcb_alloc_color_planes_cookie_t +xcb_alloc_color_planes_unchecked (xcb_connection_t *c /**< */, + uint8_t contiguous /**< */, + xcb_colormap_t cmap /**< */, + uint16_t colors /**< */, + uint16_t reds /**< */, + uint16_t greens /**< */, + uint16_t blues /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_alloc_color_planes_pixels + ** + ** @param const xcb_alloc_color_planes_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_alloc_color_planes_pixels (const xcb_alloc_color_planes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_alloc_color_planes_pixels_length + ** + ** @param const xcb_alloc_color_planes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_alloc_color_planes_pixels_length (const xcb_alloc_color_planes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_alloc_color_planes_pixels_end + ** + ** @param const xcb_alloc_color_planes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_alloc_color_planes_pixels_end (const xcb_alloc_color_planes_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_alloc_color_planes_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_alloc_color_planes_reply_t * xcb_alloc_color_planes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_alloc_color_planes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_alloc_color_planes_reply_t * + ** + *****************************************************************************/ + +xcb_alloc_color_planes_reply_t * +xcb_alloc_color_planes_reply (xcb_connection_t *c /**< */, + xcb_alloc_color_planes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_free_colors_sizeof (const void *_buffer /**< */, + uint32_t pixels_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_colors_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t plane_mask + ** @param uint32_t pixels_len + ** @param const uint32_t *pixels + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_colors_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t plane_mask /**< */, + uint32_t pixels_len /**< */, + const uint32_t *pixels /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_colors + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t plane_mask + ** @param uint32_t pixels_len + ** @param const uint32_t *pixels + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_colors (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t plane_mask /**< */, + uint32_t pixels_len /**< */, + const uint32_t *pixels /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_coloritem_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_coloritem_t) + */ + +/***************************************************************************** + ** + ** void xcb_coloritem_next + ** + ** @param xcb_coloritem_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_coloritem_next (xcb_coloritem_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_coloritem_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_coloritem_end + ** + ** @param xcb_coloritem_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_coloritem_end (xcb_coloritem_iterator_t i /**< */); + +int +xcb_store_colors_sizeof (const void *_buffer /**< */, + uint32_t items_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_store_colors_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t items_len + ** @param const xcb_coloritem_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_store_colors_checked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t items_len /**< */, + const xcb_coloritem_t *items /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_store_colors + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t items_len + ** @param const xcb_coloritem_t *items + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_store_colors (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t items_len /**< */, + const xcb_coloritem_t *items /**< */); + +int +xcb_store_named_color_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_store_named_color_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t flags + ** @param xcb_colormap_t cmap + ** @param uint32_t pixel + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_store_named_color_checked (xcb_connection_t *c /**< */, + uint8_t flags /**< */, + xcb_colormap_t cmap /**< */, + uint32_t pixel /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_store_named_color + ** + ** @param xcb_connection_t *c + ** @param uint8_t flags + ** @param xcb_colormap_t cmap + ** @param uint32_t pixel + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_store_named_color (xcb_connection_t *c /**< */, + uint8_t flags /**< */, + xcb_colormap_t cmap /**< */, + uint32_t pixel /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_rgb_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_rgb_t) + */ + +/***************************************************************************** + ** + ** void xcb_rgb_next + ** + ** @param xcb_rgb_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_rgb_next (xcb_rgb_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_rgb_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_rgb_end + ** + ** @param xcb_rgb_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_rgb_end (xcb_rgb_iterator_t i /**< */); + +int +xcb_query_colors_sizeof (const void *_buffer /**< */, + uint32_t pixels_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_query_colors_cookie_t xcb_query_colors + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t pixels_len + ** @param const uint32_t *pixels + ** @returns xcb_query_colors_cookie_t + ** + *****************************************************************************/ + +xcb_query_colors_cookie_t +xcb_query_colors (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t pixels_len /**< */, + const uint32_t *pixels /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_query_colors_cookie_t xcb_query_colors_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint32_t pixels_len + ** @param const uint32_t *pixels + ** @returns xcb_query_colors_cookie_t + ** + *****************************************************************************/ + +xcb_query_colors_cookie_t +xcb_query_colors_unchecked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint32_t pixels_len /**< */, + const uint32_t *pixels /**< */); + + +/***************************************************************************** + ** + ** xcb_rgb_t * xcb_query_colors_colors + ** + ** @param const xcb_query_colors_reply_t *R + ** @returns xcb_rgb_t * + ** + *****************************************************************************/ + +xcb_rgb_t * +xcb_query_colors_colors (const xcb_query_colors_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_query_colors_colors_length + ** + ** @param const xcb_query_colors_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_query_colors_colors_length (const xcb_query_colors_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_rgb_iterator_t xcb_query_colors_colors_iterator + ** + ** @param const xcb_query_colors_reply_t *R + ** @returns xcb_rgb_iterator_t + ** + *****************************************************************************/ + +xcb_rgb_iterator_t +xcb_query_colors_colors_iterator (const xcb_query_colors_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_query_colors_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_query_colors_reply_t * xcb_query_colors_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_colors_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_colors_reply_t * + ** + *****************************************************************************/ + +xcb_query_colors_reply_t * +xcb_query_colors_reply (xcb_connection_t *c /**< */, + xcb_query_colors_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_lookup_color_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_lookup_color_cookie_t xcb_lookup_color + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_lookup_color_cookie_t + ** + *****************************************************************************/ + +xcb_lookup_color_cookie_t +xcb_lookup_color (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_lookup_color_cookie_t xcb_lookup_color_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_colormap_t cmap + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_lookup_color_cookie_t + ** + *****************************************************************************/ + +xcb_lookup_color_cookie_t +xcb_lookup_color_unchecked (xcb_connection_t *c /**< */, + xcb_colormap_t cmap /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_lookup_color_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_lookup_color_reply_t * xcb_lookup_color_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_lookup_color_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_lookup_color_reply_t * + ** + *****************************************************************************/ + +xcb_lookup_color_reply_t * +xcb_lookup_color_reply (xcb_connection_t *c /**< */, + xcb_lookup_color_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_pixmap_t source + ** @param xcb_pixmap_t mask + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @param uint16_t x + ** @param uint16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_pixmap_t source /**< */, + xcb_pixmap_t mask /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */, + uint16_t x /**< */, + uint16_t y /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_pixmap_t source + ** @param xcb_pixmap_t mask + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @param uint16_t x + ** @param uint16_t y + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_pixmap_t source /**< */, + xcb_pixmap_t mask /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */, + uint16_t x /**< */, + uint16_t y /**< */); + +/** + * @brief create cursor + * + * @param c The connection + * @param cid The ID with which you will refer to the cursor, created by `xcb_generate_id`. + * @param source_font In which font to look for the cursor glyph. + * @param mask_font In which font to look for the mask glyph. + * @param source_char The glyph of \a source_font to use. + * @param mask_char The glyph of \a mask_font to use as a mask: Pixels which are set to 1 define + * which source pixels are displayed. All pixels which are set to 0 are not + * displayed. + * @param fore_red The red value of the foreground color. + * @param fore_green The green value of the foreground color. + * @param fore_blue The blue value of the foreground color. + * @param back_red The red value of the background color. + * @param back_green The green value of the background color. + * @param back_blue The blue value of the background color. + * @return A cookie + * + * Creates a cursor from a font glyph. X provides a set of standard cursor shapes + * in a special font named cursor. Applications are encouraged to use this + * interface for their cursors because the font can be customized for the + * individual display type. + * + * All pixels which are set to 1 in the source will use the foreground color (as + * specified by \a fore_red, \a fore_green and \a fore_blue). All pixels set to 0 + * will use the background color (as specified by \a back_red, \a back_green and + * \a back_blue). + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_glyph_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_font_t source_font + ** @param xcb_font_t mask_font + ** @param uint16_t source_char + ** @param uint16_t mask_char + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_glyph_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_font_t source_font /**< */, + xcb_font_t mask_font /**< */, + uint16_t source_char /**< */, + uint16_t mask_char /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */); + +/** + * @brief create cursor + * + * @param c The connection + * @param cid The ID with which you will refer to the cursor, created by `xcb_generate_id`. + * @param source_font In which font to look for the cursor glyph. + * @param mask_font In which font to look for the mask glyph. + * @param source_char The glyph of \a source_font to use. + * @param mask_char The glyph of \a mask_font to use as a mask: Pixels which are set to 1 define + * which source pixels are displayed. All pixels which are set to 0 are not + * displayed. + * @param fore_red The red value of the foreground color. + * @param fore_green The green value of the foreground color. + * @param fore_blue The blue value of the foreground color. + * @param back_red The red value of the background color. + * @param back_green The green value of the background color. + * @param back_blue The blue value of the background color. + * @return A cookie + * + * Creates a cursor from a font glyph. X provides a set of standard cursor shapes + * in a special font named cursor. Applications are encouraged to use this + * interface for their cursors because the font can be customized for the + * individual display type. + * + * All pixels which are set to 1 in the source will use the foreground color (as + * specified by \a fore_red, \a fore_green and \a fore_blue). All pixels set to 0 + * will use the background color (as specified by \a back_red, \a back_green and + * \a back_blue). + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_create_glyph_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cid + ** @param xcb_font_t source_font + ** @param xcb_font_t mask_font + ** @param uint16_t source_char + ** @param uint16_t mask_char + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_create_glyph_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cid /**< */, + xcb_font_t source_font /**< */, + xcb_font_t mask_font /**< */, + uint16_t source_char /**< */, + uint16_t mask_char /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */); + +/** + * @brief Deletes a cursor + * + * @param c The connection + * @param cursor The cursor to destroy. + * @return A cookie + * + * Deletes the association between the cursor resource ID and the specified + * cursor. The cursor is freed when no other resource references it. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */); + +/** + * @brief Deletes a cursor + * + * @param c The connection + * @param cursor The cursor to destroy. + * @return A cookie + * + * Deletes the association between the cursor resource ID and the specified + * cursor. The cursor is freed when no other resource references it. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_free_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_free_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_recolor_cursor_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_recolor_cursor_checked (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_recolor_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_cursor_t cursor + ** @param uint16_t fore_red + ** @param uint16_t fore_green + ** @param uint16_t fore_blue + ** @param uint16_t back_red + ** @param uint16_t back_green + ** @param uint16_t back_blue + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_recolor_cursor (xcb_connection_t *c /**< */, + xcb_cursor_t cursor /**< */, + uint16_t fore_red /**< */, + uint16_t fore_green /**< */, + uint16_t fore_blue /**< */, + uint16_t back_red /**< */, + uint16_t back_green /**< */, + uint16_t back_blue /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_query_best_size_cookie_t xcb_query_best_size + ** + ** @param xcb_connection_t *c + ** @param uint8_t _class + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_query_best_size_cookie_t + ** + *****************************************************************************/ + +xcb_query_best_size_cookie_t +xcb_query_best_size (xcb_connection_t *c /**< */, + uint8_t _class /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_query_best_size_cookie_t xcb_query_best_size_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t _class + ** @param xcb_drawable_t drawable + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_query_best_size_cookie_t + ** + *****************************************************************************/ + +xcb_query_best_size_cookie_t +xcb_query_best_size_unchecked (xcb_connection_t *c /**< */, + uint8_t _class /**< */, + xcb_drawable_t drawable /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_query_best_size_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_query_best_size_reply_t * xcb_query_best_size_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_best_size_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_best_size_reply_t * + ** + *****************************************************************************/ + +xcb_query_best_size_reply_t * +xcb_query_best_size_reply (xcb_connection_t *c /**< */, + xcb_query_best_size_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_query_extension_sizeof (const void *_buffer /**< */); + +/** + * @brief check if extension is present + * + * @param c The connection + * @param name_len The length of \a name in bytes. + * @param name The name of the extension to query, for example "RANDR". This is case + * sensitive! + * @return A cookie + * + * Determines if the specified extension is present on this X11 server. + * + * Every extension has a unique `major_opcode` to identify requests, the minor + * opcodes and request formats are extension-specific. If the extension provides + * events and errors, the `first_event` and `first_error` fields in the reply are + * set accordingly. + * + * There should rarely be a need to use this request directly, XCB provides the + * `xcb_get_extension_data` function instead. + * + */ + +/***************************************************************************** + ** + ** xcb_query_extension_cookie_t xcb_query_extension + ** + ** @param xcb_connection_t *c + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_query_extension_cookie_t + ** + *****************************************************************************/ + +xcb_query_extension_cookie_t +xcb_query_extension (xcb_connection_t *c /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * @brief check if extension is present + * + * @param c The connection + * @param name_len The length of \a name in bytes. + * @param name The name of the extension to query, for example "RANDR". This is case + * sensitive! + * @return A cookie + * + * Determines if the specified extension is present on this X11 server. + * + * Every extension has a unique `major_opcode` to identify requests, the minor + * opcodes and request formats are extension-specific. If the extension provides + * events and errors, the `first_event` and `first_error` fields in the reply are + * set accordingly. + * + * There should rarely be a need to use this request directly, XCB provides the + * `xcb_get_extension_data` function instead. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_query_extension_cookie_t xcb_query_extension_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint16_t name_len + ** @param const char *name + ** @returns xcb_query_extension_cookie_t + ** + *****************************************************************************/ + +xcb_query_extension_cookie_t +xcb_query_extension_unchecked (xcb_connection_t *c /**< */, + uint16_t name_len /**< */, + const char *name /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_query_extension_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_query_extension_reply_t * xcb_query_extension_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_query_extension_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_query_extension_reply_t * + ** + *****************************************************************************/ + +xcb_query_extension_reply_t * +xcb_query_extension_reply (xcb_connection_t *c /**< */, + xcb_query_extension_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_list_extensions_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_list_extensions_cookie_t xcb_list_extensions + ** + ** @param xcb_connection_t *c + ** @returns xcb_list_extensions_cookie_t + ** + *****************************************************************************/ + +xcb_list_extensions_cookie_t +xcb_list_extensions (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_list_extensions_cookie_t xcb_list_extensions_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_list_extensions_cookie_t + ** + *****************************************************************************/ + +xcb_list_extensions_cookie_t +xcb_list_extensions_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** int xcb_list_extensions_names_length + ** + ** @param const xcb_list_extensions_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_extensions_names_length (const xcb_list_extensions_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_str_iterator_t xcb_list_extensions_names_iterator + ** + ** @param const xcb_list_extensions_reply_t *R + ** @returns xcb_str_iterator_t + ** + *****************************************************************************/ + +xcb_str_iterator_t +xcb_list_extensions_names_iterator (const xcb_list_extensions_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_list_extensions_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_list_extensions_reply_t * xcb_list_extensions_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_extensions_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_extensions_reply_t * + ** + *****************************************************************************/ + +xcb_list_extensions_reply_t * +xcb_list_extensions_reply (xcb_connection_t *c /**< */, + xcb_list_extensions_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_change_keyboard_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_keyboard_mapping_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t keycode_count + ** @param xcb_keycode_t first_keycode + ** @param uint8_t keysyms_per_keycode + ** @param const xcb_keysym_t *keysyms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_keyboard_mapping_checked (xcb_connection_t *c /**< */, + uint8_t keycode_count /**< */, + xcb_keycode_t first_keycode /**< */, + uint8_t keysyms_per_keycode /**< */, + const xcb_keysym_t *keysyms /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_keyboard_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t keycode_count + ** @param xcb_keycode_t first_keycode + ** @param uint8_t keysyms_per_keycode + ** @param const xcb_keysym_t *keysyms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_keyboard_mapping (xcb_connection_t *c /**< */, + uint8_t keycode_count /**< */, + xcb_keycode_t first_keycode /**< */, + uint8_t keysyms_per_keycode /**< */, + const xcb_keysym_t *keysyms /**< */); + +int +xcb_get_keyboard_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_keyboard_mapping_cookie_t xcb_get_keyboard_mapping + ** + ** @param xcb_connection_t *c + ** @param xcb_keycode_t first_keycode + ** @param uint8_t count + ** @returns xcb_get_keyboard_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_keyboard_mapping_cookie_t +xcb_get_keyboard_mapping (xcb_connection_t *c /**< */, + xcb_keycode_t first_keycode /**< */, + uint8_t count /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_keyboard_mapping_cookie_t xcb_get_keyboard_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_keycode_t first_keycode + ** @param uint8_t count + ** @returns xcb_get_keyboard_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_keyboard_mapping_cookie_t +xcb_get_keyboard_mapping_unchecked (xcb_connection_t *c /**< */, + xcb_keycode_t first_keycode /**< */, + uint8_t count /**< */); + + +/***************************************************************************** + ** + ** xcb_keysym_t * xcb_get_keyboard_mapping_keysyms + ** + ** @param const xcb_get_keyboard_mapping_reply_t *R + ** @returns xcb_keysym_t * + ** + *****************************************************************************/ + +xcb_keysym_t * +xcb_get_keyboard_mapping_keysyms (const xcb_get_keyboard_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_get_keyboard_mapping_keysyms_length + ** + ** @param const xcb_get_keyboard_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_keyboard_mapping_keysyms_length (const xcb_get_keyboard_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_keyboard_mapping_keysyms_end + ** + ** @param const xcb_get_keyboard_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_keyboard_mapping_keysyms_end (const xcb_get_keyboard_mapping_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_keyboard_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_keyboard_mapping_reply_t * xcb_get_keyboard_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_keyboard_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_keyboard_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_get_keyboard_mapping_reply_t * +xcb_get_keyboard_mapping_reply (xcb_connection_t *c /**< */, + xcb_get_keyboard_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_change_keyboard_control_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_keyboard_control_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_keyboard_control_checked (xcb_connection_t *c /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_keyboard_control + ** + ** @param xcb_connection_t *c + ** @param uint32_t value_mask + ** @param const uint32_t *value_list + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_keyboard_control (xcb_connection_t *c /**< */, + uint32_t value_mask /**< */, + const uint32_t *value_list /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_keyboard_control_cookie_t xcb_get_keyboard_control + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_keyboard_control_cookie_t + ** + *****************************************************************************/ + +xcb_get_keyboard_control_cookie_t +xcb_get_keyboard_control (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_keyboard_control_cookie_t xcb_get_keyboard_control_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_keyboard_control_cookie_t + ** + *****************************************************************************/ + +xcb_get_keyboard_control_cookie_t +xcb_get_keyboard_control_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_keyboard_control_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_keyboard_control_reply_t * xcb_get_keyboard_control_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_keyboard_control_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_keyboard_control_reply_t * + ** + *****************************************************************************/ + +xcb_get_keyboard_control_reply_t * +xcb_get_keyboard_control_reply (xcb_connection_t *c /**< */, + xcb_get_keyboard_control_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_bell_checked + ** + ** @param xcb_connection_t *c + ** @param int8_t percent + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_bell_checked (xcb_connection_t *c /**< */, + int8_t percent /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_bell + ** + ** @param xcb_connection_t *c + ** @param int8_t percent + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_bell (xcb_connection_t *c /**< */, + int8_t percent /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_pointer_control_checked + ** + ** @param xcb_connection_t *c + ** @param int16_t acceleration_numerator + ** @param int16_t acceleration_denominator + ** @param int16_t threshold + ** @param uint8_t do_acceleration + ** @param uint8_t do_threshold + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_pointer_control_checked (xcb_connection_t *c /**< */, + int16_t acceleration_numerator /**< */, + int16_t acceleration_denominator /**< */, + int16_t threshold /**< */, + uint8_t do_acceleration /**< */, + uint8_t do_threshold /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_pointer_control + ** + ** @param xcb_connection_t *c + ** @param int16_t acceleration_numerator + ** @param int16_t acceleration_denominator + ** @param int16_t threshold + ** @param uint8_t do_acceleration + ** @param uint8_t do_threshold + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_pointer_control (xcb_connection_t *c /**< */, + int16_t acceleration_numerator /**< */, + int16_t acceleration_denominator /**< */, + int16_t threshold /**< */, + uint8_t do_acceleration /**< */, + uint8_t do_threshold /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_pointer_control_cookie_t xcb_get_pointer_control + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_pointer_control_cookie_t + ** + *****************************************************************************/ + +xcb_get_pointer_control_cookie_t +xcb_get_pointer_control (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_pointer_control_cookie_t xcb_get_pointer_control_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_pointer_control_cookie_t + ** + *****************************************************************************/ + +xcb_get_pointer_control_cookie_t +xcb_get_pointer_control_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_pointer_control_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_pointer_control_reply_t * xcb_get_pointer_control_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_pointer_control_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_pointer_control_reply_t * + ** + *****************************************************************************/ + +xcb_get_pointer_control_reply_t * +xcb_get_pointer_control_reply (xcb_connection_t *c /**< */, + xcb_get_pointer_control_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_screen_saver_checked + ** + ** @param xcb_connection_t *c + ** @param int16_t timeout + ** @param int16_t interval + ** @param uint8_t prefer_blanking + ** @param uint8_t allow_exposures + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_screen_saver_checked (xcb_connection_t *c /**< */, + int16_t timeout /**< */, + int16_t interval /**< */, + uint8_t prefer_blanking /**< */, + uint8_t allow_exposures /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_screen_saver + ** + ** @param xcb_connection_t *c + ** @param int16_t timeout + ** @param int16_t interval + ** @param uint8_t prefer_blanking + ** @param uint8_t allow_exposures + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_screen_saver (xcb_connection_t *c /**< */, + int16_t timeout /**< */, + int16_t interval /**< */, + uint8_t prefer_blanking /**< */, + uint8_t allow_exposures /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_screen_saver_cookie_t xcb_get_screen_saver + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_screen_saver_cookie_t + ** + *****************************************************************************/ + +xcb_get_screen_saver_cookie_t +xcb_get_screen_saver (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_screen_saver_cookie_t xcb_get_screen_saver_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_screen_saver_cookie_t + ** + *****************************************************************************/ + +xcb_get_screen_saver_cookie_t +xcb_get_screen_saver_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_screen_saver_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_screen_saver_reply_t * xcb_get_screen_saver_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_screen_saver_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_screen_saver_reply_t * + ** + *****************************************************************************/ + +xcb_get_screen_saver_reply_t * +xcb_get_screen_saver_reply (xcb_connection_t *c /**< */, + xcb_get_screen_saver_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_change_hosts_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_hosts_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param uint8_t family + ** @param uint16_t address_len + ** @param const uint8_t *address + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_hosts_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + uint8_t family /**< */, + uint16_t address_len /**< */, + const uint8_t *address /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_change_hosts + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @param uint8_t family + ** @param uint16_t address_len + ** @param const uint8_t *address + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_change_hosts (xcb_connection_t *c /**< */, + uint8_t mode /**< */, + uint8_t family /**< */, + uint16_t address_len /**< */, + const uint8_t *address /**< */); + +int +xcb_host_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_host_address + ** + ** @param const xcb_host_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_host_address (const xcb_host_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_host_address_length + ** + ** @param const xcb_host_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_host_address_length (const xcb_host_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_host_address_end + ** + ** @param const xcb_host_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_host_address_end (const xcb_host_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_host_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_host_t) + */ + +/***************************************************************************** + ** + ** void xcb_host_next + ** + ** @param xcb_host_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_host_next (xcb_host_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_host_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_host_end + ** + ** @param xcb_host_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_host_end (xcb_host_iterator_t i /**< */); + +int +xcb_list_hosts_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_list_hosts_cookie_t xcb_list_hosts + ** + ** @param xcb_connection_t *c + ** @returns xcb_list_hosts_cookie_t + ** + *****************************************************************************/ + +xcb_list_hosts_cookie_t +xcb_list_hosts (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_list_hosts_cookie_t xcb_list_hosts_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_list_hosts_cookie_t + ** + *****************************************************************************/ + +xcb_list_hosts_cookie_t +xcb_list_hosts_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** int xcb_list_hosts_hosts_length + ** + ** @param const xcb_list_hosts_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_list_hosts_hosts_length (const xcb_list_hosts_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_host_iterator_t xcb_list_hosts_hosts_iterator + ** + ** @param const xcb_list_hosts_reply_t *R + ** @returns xcb_host_iterator_t + ** + *****************************************************************************/ + +xcb_host_iterator_t +xcb_list_hosts_hosts_iterator (const xcb_list_hosts_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_list_hosts_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_list_hosts_reply_t * xcb_list_hosts_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_list_hosts_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_list_hosts_reply_t * + ** + *****************************************************************************/ + +xcb_list_hosts_reply_t * +xcb_list_hosts_reply (xcb_connection_t *c /**< */, + xcb_list_hosts_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_access_control_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_access_control_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_access_control + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_access_control (xcb_connection_t *c /**< */, + uint8_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_close_down_mode_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_close_down_mode_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_set_close_down_mode + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_set_close_down_mode (xcb_connection_t *c /**< */, + uint8_t mode /**< */); + +/** + * @brief kills a client + * + * @param c The connection + * @param resource Any resource belonging to the client (for example a Window), used to identify + * the client connection. + * \n + * The special value of `XCB_KILL_ALL_TEMPORARY`, the resources of all clients + * that have terminated in `RetainTemporary` (TODO) are destroyed. + * @return A cookie + * + * Forces a close down of the client that created the specified \a resource. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_kill_client_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t resource + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_kill_client_checked (xcb_connection_t *c /**< */, + uint32_t resource /**< */); + +/** + * @brief kills a client + * + * @param c The connection + * @param resource Any resource belonging to the client (for example a Window), used to identify + * the client connection. + * \n + * The special value of `XCB_KILL_ALL_TEMPORARY`, the resources of all clients + * that have terminated in `RetainTemporary` (TODO) are destroyed. + * @return A cookie + * + * Forces a close down of the client that created the specified \a resource. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_kill_client + ** + ** @param xcb_connection_t *c + ** @param uint32_t resource + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_kill_client (xcb_connection_t *c /**< */, + uint32_t resource /**< */); + +int +xcb_rotate_properties_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_rotate_properties_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t atoms_len + ** @param int16_t delta + ** @param const xcb_atom_t *atoms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_rotate_properties_checked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t atoms_len /**< */, + int16_t delta /**< */, + const xcb_atom_t *atoms /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_rotate_properties + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param uint16_t atoms_len + ** @param int16_t delta + ** @param const xcb_atom_t *atoms + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_rotate_properties (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + uint16_t atoms_len /**< */, + int16_t delta /**< */, + const xcb_atom_t *atoms /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_force_screen_saver_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_force_screen_saver_checked (xcb_connection_t *c /**< */, + uint8_t mode /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_force_screen_saver + ** + ** @param xcb_connection_t *c + ** @param uint8_t mode + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_force_screen_saver (xcb_connection_t *c /**< */, + uint8_t mode /**< */); + +int +xcb_set_pointer_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_set_pointer_mapping_cookie_t xcb_set_pointer_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t map_len + ** @param const uint8_t *map + ** @returns xcb_set_pointer_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_set_pointer_mapping_cookie_t +xcb_set_pointer_mapping (xcb_connection_t *c /**< */, + uint8_t map_len /**< */, + const uint8_t *map /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_set_pointer_mapping_cookie_t xcb_set_pointer_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t map_len + ** @param const uint8_t *map + ** @returns xcb_set_pointer_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_set_pointer_mapping_cookie_t +xcb_set_pointer_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t map_len /**< */, + const uint8_t *map /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_set_pointer_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_set_pointer_mapping_reply_t * xcb_set_pointer_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_set_pointer_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_set_pointer_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_set_pointer_mapping_reply_t * +xcb_set_pointer_mapping_reply (xcb_connection_t *c /**< */, + xcb_set_pointer_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_get_pointer_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_pointer_mapping_cookie_t xcb_get_pointer_mapping + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_pointer_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_pointer_mapping_cookie_t +xcb_get_pointer_mapping (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_pointer_mapping_cookie_t xcb_get_pointer_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_pointer_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_pointer_mapping_cookie_t +xcb_get_pointer_mapping_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_get_pointer_mapping_map + ** + ** @param const xcb_get_pointer_mapping_reply_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_get_pointer_mapping_map (const xcb_get_pointer_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_get_pointer_mapping_map_length + ** + ** @param const xcb_get_pointer_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_pointer_mapping_map_length (const xcb_get_pointer_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_pointer_mapping_map_end + ** + ** @param const xcb_get_pointer_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_pointer_mapping_map_end (const xcb_get_pointer_mapping_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_pointer_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_pointer_mapping_reply_t * xcb_get_pointer_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_pointer_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_pointer_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_get_pointer_mapping_reply_t * +xcb_get_pointer_mapping_reply (xcb_connection_t *c /**< */, + xcb_get_pointer_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_set_modifier_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_set_modifier_mapping_cookie_t xcb_set_modifier_mapping + ** + ** @param xcb_connection_t *c + ** @param uint8_t keycodes_per_modifier + ** @param const xcb_keycode_t *keycodes + ** @returns xcb_set_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_set_modifier_mapping_cookie_t +xcb_set_modifier_mapping (xcb_connection_t *c /**< */, + uint8_t keycodes_per_modifier /**< */, + const xcb_keycode_t *keycodes /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_set_modifier_mapping_cookie_t xcb_set_modifier_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t keycodes_per_modifier + ** @param const xcb_keycode_t *keycodes + ** @returns xcb_set_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_set_modifier_mapping_cookie_t +xcb_set_modifier_mapping_unchecked (xcb_connection_t *c /**< */, + uint8_t keycodes_per_modifier /**< */, + const xcb_keycode_t *keycodes /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_set_modifier_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_set_modifier_mapping_reply_t * xcb_set_modifier_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_set_modifier_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_set_modifier_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_set_modifier_mapping_reply_t * +xcb_set_modifier_mapping_reply (xcb_connection_t *c /**< */, + xcb_set_modifier_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_get_modifier_mapping_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_get_modifier_mapping_cookie_t xcb_get_modifier_mapping + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_modifier_mapping_cookie_t +xcb_get_modifier_mapping (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_get_modifier_mapping_cookie_t xcb_get_modifier_mapping_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_get_modifier_mapping_cookie_t + ** + *****************************************************************************/ + +xcb_get_modifier_mapping_cookie_t +xcb_get_modifier_mapping_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** xcb_keycode_t * xcb_get_modifier_mapping_keycodes + ** + ** @param const xcb_get_modifier_mapping_reply_t *R + ** @returns xcb_keycode_t * + ** + *****************************************************************************/ + +xcb_keycode_t * +xcb_get_modifier_mapping_keycodes (const xcb_get_modifier_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_get_modifier_mapping_keycodes_length + ** + ** @param const xcb_get_modifier_mapping_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_get_modifier_mapping_keycodes_length (const xcb_get_modifier_mapping_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_get_modifier_mapping_keycodes_end + ** + ** @param const xcb_get_modifier_mapping_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_get_modifier_mapping_keycodes_end (const xcb_get_modifier_mapping_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_get_modifier_mapping_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_get_modifier_mapping_reply_t * xcb_get_modifier_mapping_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_get_modifier_mapping_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_get_modifier_mapping_reply_t * + ** + *****************************************************************************/ + +xcb_get_modifier_mapping_reply_t * +xcb_get_modifier_mapping_reply (xcb_connection_t *c /**< */, + xcb_get_modifier_mapping_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_no_operation_checked + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_no_operation_checked (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_no_operation + ** + ** @param xcb_connection_t *c + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_no_operation (xcb_connection_t *c /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xselinux.c b/external/mit/xorg/lib/libxcb/files/xselinux.c new file mode 100644 index 000000000..bab2e2bd9 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xselinux.c @@ -0,0 +1,3708 @@ +/* + * This file generated automatically from xselinux.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xselinux.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_selinux_id = { "SELinux", 0 }; + + +/***************************************************************************** + ** + ** xcb_selinux_query_version_cookie_t xcb_selinux_query_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major + ** @param uint8_t client_minor + ** @returns xcb_selinux_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_query_version_cookie_t +xcb_selinux_query_version (xcb_connection_t *c /**< */, + uint8_t client_major /**< */, + uint8_t client_minor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_query_version_cookie_t xcb_ret; + xcb_selinux_query_version_request_t xcb_out; + + xcb_out.client_major = client_major; + xcb_out.client_minor = client_minor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_query_version_cookie_t xcb_selinux_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major + ** @param uint8_t client_minor + ** @returns xcb_selinux_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_query_version_cookie_t +xcb_selinux_query_version_unchecked (xcb_connection_t *c /**< */, + uint8_t client_major /**< */, + uint8_t client_minor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_query_version_cookie_t xcb_ret; + xcb_selinux_query_version_request_t xcb_out; + + xcb_out.client_major = client_major; + xcb_out.client_minor = client_minor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_query_version_reply_t * xcb_selinux_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_query_version_reply_t * +xcb_selinux_query_version_reply (xcb_connection_t *c /**< */, + xcb_selinux_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_set_device_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_set_device_create_context_request_t *_aux = (xcb_selinux_set_device_create_context_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_set_device_create_context_request_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_device_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_device_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_DEVICE_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_device_create_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_device_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_device_create_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_DEVICE_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_device_create_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_selinux_get_device_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_device_create_context_reply_t *_aux = (xcb_selinux_get_device_create_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_device_create_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_device_create_context_cookie_t xcb_selinux_get_device_create_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_device_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_device_create_context_cookie_t +xcb_selinux_get_device_create_context (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_DEVICE_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_device_create_context_cookie_t xcb_ret; + xcb_selinux_get_device_create_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_device_create_context_cookie_t xcb_selinux_get_device_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_device_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_device_create_context_cookie_t +xcb_selinux_get_device_create_context_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_DEVICE_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_device_create_context_cookie_t xcb_ret; + xcb_selinux_get_device_create_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_device_create_context_context + ** + ** @param const xcb_selinux_get_device_create_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_device_create_context_context (const xcb_selinux_get_device_create_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_device_create_context_context_length + ** + ** @param const xcb_selinux_get_device_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_device_create_context_context_length (const xcb_selinux_get_device_create_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_device_create_context_context_end + ** + ** @param const xcb_selinux_get_device_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_device_create_context_context_end (const xcb_selinux_get_device_create_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_device_create_context_reply_t * xcb_selinux_get_device_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_device_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_device_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_device_create_context_reply_t * +xcb_selinux_get_device_create_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_device_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_device_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_set_device_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_set_device_context_request_t *_aux = (xcb_selinux_set_device_context_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_set_device_context_request_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_device_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t device + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_device_context_checked (xcb_connection_t *c /**< */, + uint32_t device /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_DEVICE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_device_context_request_t xcb_out; + + xcb_out.device = device; + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_device_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t device + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_device_context (xcb_connection_t *c /**< */, + uint32_t device /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_DEVICE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_device_context_request_t xcb_out; + + xcb_out.device = device; + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_selinux_get_device_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_device_context_reply_t *_aux = (xcb_selinux_get_device_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_device_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_device_context_cookie_t xcb_selinux_get_device_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t device + ** @returns xcb_selinux_get_device_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_device_context_cookie_t +xcb_selinux_get_device_context (xcb_connection_t *c /**< */, + uint32_t device /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_DEVICE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_device_context_cookie_t xcb_ret; + xcb_selinux_get_device_context_request_t xcb_out; + + xcb_out.device = device; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_device_context_cookie_t xcb_selinux_get_device_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t device + ** @returns xcb_selinux_get_device_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_device_context_cookie_t +xcb_selinux_get_device_context_unchecked (xcb_connection_t *c /**< */, + uint32_t device /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_DEVICE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_device_context_cookie_t xcb_ret; + xcb_selinux_get_device_context_request_t xcb_out; + + xcb_out.device = device; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_device_context_context + ** + ** @param const xcb_selinux_get_device_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_device_context_context (const xcb_selinux_get_device_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_device_context_context_length + ** + ** @param const xcb_selinux_get_device_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_device_context_context_length (const xcb_selinux_get_device_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_device_context_context_end + ** + ** @param const xcb_selinux_get_device_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_device_context_context_end (const xcb_selinux_get_device_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_device_context_reply_t * xcb_selinux_get_device_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_device_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_device_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_device_context_reply_t * +xcb_selinux_get_device_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_device_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_device_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_set_window_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_set_window_create_context_request_t *_aux = (xcb_selinux_set_window_create_context_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_set_window_create_context_request_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_window_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_window_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_WINDOW_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_window_create_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_window_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_window_create_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_WINDOW_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_window_create_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_selinux_get_window_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_window_create_context_reply_t *_aux = (xcb_selinux_get_window_create_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_window_create_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_window_create_context_cookie_t xcb_selinux_get_window_create_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_window_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_window_create_context_cookie_t +xcb_selinux_get_window_create_context (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_WINDOW_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_window_create_context_cookie_t xcb_ret; + xcb_selinux_get_window_create_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_window_create_context_cookie_t xcb_selinux_get_window_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_window_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_window_create_context_cookie_t +xcb_selinux_get_window_create_context_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_WINDOW_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_window_create_context_cookie_t xcb_ret; + xcb_selinux_get_window_create_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_window_create_context_context + ** + ** @param const xcb_selinux_get_window_create_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_window_create_context_context (const xcb_selinux_get_window_create_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_window_create_context_context_length + ** + ** @param const xcb_selinux_get_window_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_window_create_context_context_length (const xcb_selinux_get_window_create_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_window_create_context_context_end + ** + ** @param const xcb_selinux_get_window_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_window_create_context_context_end (const xcb_selinux_get_window_create_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_window_create_context_reply_t * xcb_selinux_get_window_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_window_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_window_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_window_create_context_reply_t * +xcb_selinux_get_window_create_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_window_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_window_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_get_window_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_window_context_reply_t *_aux = (xcb_selinux_get_window_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_window_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_window_context_cookie_t xcb_selinux_get_window_context + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_selinux_get_window_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_window_context_cookie_t +xcb_selinux_get_window_context (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_WINDOW_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_window_context_cookie_t xcb_ret; + xcb_selinux_get_window_context_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_window_context_cookie_t xcb_selinux_get_window_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_selinux_get_window_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_window_context_cookie_t +xcb_selinux_get_window_context_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_WINDOW_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_window_context_cookie_t xcb_ret; + xcb_selinux_get_window_context_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_window_context_context + ** + ** @param const xcb_selinux_get_window_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_window_context_context (const xcb_selinux_get_window_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_window_context_context_length + ** + ** @param const xcb_selinux_get_window_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_window_context_context_length (const xcb_selinux_get_window_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_window_context_context_end + ** + ** @param const xcb_selinux_get_window_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_window_context_context_end (const xcb_selinux_get_window_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_window_context_reply_t * xcb_selinux_get_window_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_window_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_window_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_window_context_reply_t * +xcb_selinux_get_window_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_window_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_window_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_list_item_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_list_item_t *_aux = (xcb_selinux_list_item_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_list_item_t); + xcb_tmp += xcb_block_len; + /* object_context */ + xcb_block_len += _aux->object_context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* data_context */ + xcb_block_len += _aux->data_context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_list_item_object_context + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_list_item_object_context (const xcb_selinux_list_item_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_list_item_object_context_length + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_list_item_object_context_length (const xcb_selinux_list_item_t *R /**< */) +{ + return R->object_context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_list_item_object_context_end + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_list_item_object_context_end (const xcb_selinux_list_item_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->object_context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_list_item_data_context + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_list_item_data_context (const xcb_selinux_list_item_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_selinux_list_item_object_context_end(R); + return (char *) ((char *) prev.data + XCB_TYPE_PAD(char, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_list_item_data_context_length + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_list_item_data_context_length (const xcb_selinux_list_item_t *R /**< */) +{ + return R->data_context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_list_item_data_context_end + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_list_item_data_context_end (const xcb_selinux_list_item_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_selinux_list_item_object_context_end(R); + i.data = ((char *) child.data) + (R->data_context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_selinux_list_item_next + ** + ** @param xcb_selinux_list_item_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_selinux_list_item_next (xcb_selinux_list_item_iterator_t *i /**< */) +{ + xcb_selinux_list_item_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_selinux_list_item_t *)(((char *)R) + xcb_selinux_list_item_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_selinux_list_item_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_list_item_end + ** + ** @param xcb_selinux_list_item_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_list_item_end (xcb_selinux_list_item_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_selinux_list_item_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_selinux_set_property_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_set_property_create_context_request_t *_aux = (xcb_selinux_set_property_create_context_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_set_property_create_context_request_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_property_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_property_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_PROPERTY_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_property_create_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_property_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_property_create_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_PROPERTY_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_property_create_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_selinux_get_property_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_property_create_context_reply_t *_aux = (xcb_selinux_get_property_create_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_property_create_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_create_context_cookie_t xcb_selinux_get_property_create_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_property_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_create_context_cookie_t +xcb_selinux_get_property_create_context (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_PROPERTY_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_property_create_context_cookie_t xcb_ret; + xcb_selinux_get_property_create_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_create_context_cookie_t xcb_selinux_get_property_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_property_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_create_context_cookie_t +xcb_selinux_get_property_create_context_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_PROPERTY_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_property_create_context_cookie_t xcb_ret; + xcb_selinux_get_property_create_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_property_create_context_context + ** + ** @param const xcb_selinux_get_property_create_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_property_create_context_context (const xcb_selinux_get_property_create_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_property_create_context_context_length + ** + ** @param const xcb_selinux_get_property_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_property_create_context_context_length (const xcb_selinux_get_property_create_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_property_create_context_context_end + ** + ** @param const xcb_selinux_get_property_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_property_create_context_context_end (const xcb_selinux_get_property_create_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_create_context_reply_t * xcb_selinux_get_property_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_property_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_property_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_property_create_context_reply_t * +xcb_selinux_get_property_create_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_property_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_property_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_set_property_use_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_set_property_use_context_request_t *_aux = (xcb_selinux_set_property_use_context_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_set_property_use_context_request_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_property_use_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_property_use_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_PROPERTY_USE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_property_use_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_property_use_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_property_use_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_PROPERTY_USE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_property_use_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_selinux_get_property_use_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_property_use_context_reply_t *_aux = (xcb_selinux_get_property_use_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_property_use_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_use_context_cookie_t xcb_selinux_get_property_use_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_property_use_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_use_context_cookie_t +xcb_selinux_get_property_use_context (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_PROPERTY_USE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_property_use_context_cookie_t xcb_ret; + xcb_selinux_get_property_use_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_use_context_cookie_t xcb_selinux_get_property_use_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_property_use_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_use_context_cookie_t +xcb_selinux_get_property_use_context_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_PROPERTY_USE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_property_use_context_cookie_t xcb_ret; + xcb_selinux_get_property_use_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_property_use_context_context + ** + ** @param const xcb_selinux_get_property_use_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_property_use_context_context (const xcb_selinux_get_property_use_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_property_use_context_context_length + ** + ** @param const xcb_selinux_get_property_use_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_property_use_context_context_length (const xcb_selinux_get_property_use_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_property_use_context_context_end + ** + ** @param const xcb_selinux_get_property_use_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_property_use_context_context_end (const xcb_selinux_get_property_use_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_use_context_reply_t * xcb_selinux_get_property_use_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_property_use_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_property_use_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_property_use_context_reply_t * +xcb_selinux_get_property_use_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_property_use_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_property_use_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_get_property_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_property_context_reply_t *_aux = (xcb_selinux_get_property_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_property_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_context_cookie_t xcb_selinux_get_property_context + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_selinux_get_property_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_context_cookie_t +xcb_selinux_get_property_context (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_PROPERTY_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_property_context_cookie_t xcb_ret; + xcb_selinux_get_property_context_request_t xcb_out; + + xcb_out.window = window; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_context_cookie_t xcb_selinux_get_property_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_selinux_get_property_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_context_cookie_t +xcb_selinux_get_property_context_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_PROPERTY_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_property_context_cookie_t xcb_ret; + xcb_selinux_get_property_context_request_t xcb_out; + + xcb_out.window = window; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_property_context_context + ** + ** @param const xcb_selinux_get_property_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_property_context_context (const xcb_selinux_get_property_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_property_context_context_length + ** + ** @param const xcb_selinux_get_property_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_property_context_context_length (const xcb_selinux_get_property_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_property_context_context_end + ** + ** @param const xcb_selinux_get_property_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_property_context_context_end (const xcb_selinux_get_property_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_context_reply_t * xcb_selinux_get_property_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_property_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_property_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_property_context_reply_t * +xcb_selinux_get_property_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_property_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_property_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_get_property_data_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_property_data_context_reply_t *_aux = (xcb_selinux_get_property_data_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_property_data_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_data_context_cookie_t xcb_selinux_get_property_data_context + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_selinux_get_property_data_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_data_context_cookie_t +xcb_selinux_get_property_data_context (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_PROPERTY_DATA_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_property_data_context_cookie_t xcb_ret; + xcb_selinux_get_property_data_context_request_t xcb_out; + + xcb_out.window = window; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_data_context_cookie_t xcb_selinux_get_property_data_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_selinux_get_property_data_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_data_context_cookie_t +xcb_selinux_get_property_data_context_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_PROPERTY_DATA_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_property_data_context_cookie_t xcb_ret; + xcb_selinux_get_property_data_context_request_t xcb_out; + + xcb_out.window = window; + xcb_out.property = property; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_property_data_context_context + ** + ** @param const xcb_selinux_get_property_data_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_property_data_context_context (const xcb_selinux_get_property_data_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_property_data_context_context_length + ** + ** @param const xcb_selinux_get_property_data_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_property_data_context_context_length (const xcb_selinux_get_property_data_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_property_data_context_context_end + ** + ** @param const xcb_selinux_get_property_data_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_property_data_context_context_end (const xcb_selinux_get_property_data_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_property_data_context_reply_t * xcb_selinux_get_property_data_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_property_data_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_property_data_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_property_data_context_reply_t * +xcb_selinux_get_property_data_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_property_data_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_property_data_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_list_properties_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_list_properties_reply_t *_aux = (xcb_selinux_list_properties_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_selinux_list_properties_reply_t); + xcb_tmp += xcb_block_len; + /* properties */ + for(i=0; i<_aux->properties_len; i++) { + xcb_tmp_len = xcb_selinux_list_item_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_selinux_list_item_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_list_properties_cookie_t xcb_selinux_list_properties + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_selinux_list_properties_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_list_properties_cookie_t +xcb_selinux_list_properties (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_LIST_PROPERTIES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_list_properties_cookie_t xcb_ret; + xcb_selinux_list_properties_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_list_properties_cookie_t xcb_selinux_list_properties_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_selinux_list_properties_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_list_properties_cookie_t +xcb_selinux_list_properties_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_LIST_PROPERTIES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_list_properties_cookie_t xcb_ret; + xcb_selinux_list_properties_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_selinux_list_properties_properties_length + ** + ** @param const xcb_selinux_list_properties_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_list_properties_properties_length (const xcb_selinux_list_properties_reply_t *R /**< */) +{ + return R->properties_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_list_item_iterator_t xcb_selinux_list_properties_properties_iterator + ** + ** @param const xcb_selinux_list_properties_reply_t *R + ** @returns xcb_selinux_list_item_iterator_t + ** + *****************************************************************************/ + +xcb_selinux_list_item_iterator_t +xcb_selinux_list_properties_properties_iterator (const xcb_selinux_list_properties_reply_t *R /**< */) +{ + xcb_selinux_list_item_iterator_t i; + i.data = (xcb_selinux_list_item_t *) (R + 1); + i.rem = R->properties_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_list_properties_reply_t * xcb_selinux_list_properties_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_list_properties_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_list_properties_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_list_properties_reply_t * +xcb_selinux_list_properties_reply (xcb_connection_t *c /**< */, + xcb_selinux_list_properties_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_list_properties_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_set_selection_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_set_selection_create_context_request_t *_aux = (xcb_selinux_set_selection_create_context_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_set_selection_create_context_request_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_selection_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_selection_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_SELECTION_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_selection_create_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_selection_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_selection_create_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_SELECTION_CREATE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_selection_create_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_selinux_get_selection_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_selection_create_context_reply_t *_aux = (xcb_selinux_get_selection_create_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_selection_create_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_create_context_cookie_t xcb_selinux_get_selection_create_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_selection_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_create_context_cookie_t +xcb_selinux_get_selection_create_context (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_SELECTION_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_selection_create_context_cookie_t xcb_ret; + xcb_selinux_get_selection_create_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_create_context_cookie_t xcb_selinux_get_selection_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_selection_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_create_context_cookie_t +xcb_selinux_get_selection_create_context_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_SELECTION_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_selection_create_context_cookie_t xcb_ret; + xcb_selinux_get_selection_create_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_selection_create_context_context + ** + ** @param const xcb_selinux_get_selection_create_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_selection_create_context_context (const xcb_selinux_get_selection_create_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_selection_create_context_context_length + ** + ** @param const xcb_selinux_get_selection_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_selection_create_context_context_length (const xcb_selinux_get_selection_create_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_selection_create_context_context_end + ** + ** @param const xcb_selinux_get_selection_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_selection_create_context_context_end (const xcb_selinux_get_selection_create_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_create_context_reply_t * xcb_selinux_get_selection_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_selection_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_selection_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_selection_create_context_reply_t * +xcb_selinux_get_selection_create_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_selection_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_selection_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_set_selection_use_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_set_selection_use_context_request_t *_aux = (xcb_selinux_set_selection_use_context_request_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_set_selection_use_context_request_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_selection_use_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_selection_use_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_SELECTION_USE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_selection_use_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_selection_use_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_selection_use_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_SET_SELECTION_USE_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_selinux_set_selection_use_context_request_t xcb_out; + + xcb_out.context_len = context_len; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* char context */ + xcb_parts[4].iov_base = (char *) context; + xcb_parts[4].iov_len = context_len * sizeof(char); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_selinux_get_selection_use_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_selection_use_context_reply_t *_aux = (xcb_selinux_get_selection_use_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_selection_use_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_use_context_cookie_t xcb_selinux_get_selection_use_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_selection_use_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_use_context_cookie_t +xcb_selinux_get_selection_use_context (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_SELECTION_USE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_selection_use_context_cookie_t xcb_ret; + xcb_selinux_get_selection_use_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_use_context_cookie_t xcb_selinux_get_selection_use_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_selection_use_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_use_context_cookie_t +xcb_selinux_get_selection_use_context_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_SELECTION_USE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_selection_use_context_cookie_t xcb_ret; + xcb_selinux_get_selection_use_context_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_selection_use_context_context + ** + ** @param const xcb_selinux_get_selection_use_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_selection_use_context_context (const xcb_selinux_get_selection_use_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_selection_use_context_context_length + ** + ** @param const xcb_selinux_get_selection_use_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_selection_use_context_context_length (const xcb_selinux_get_selection_use_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_selection_use_context_context_end + ** + ** @param const xcb_selinux_get_selection_use_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_selection_use_context_context_end (const xcb_selinux_get_selection_use_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_use_context_reply_t * xcb_selinux_get_selection_use_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_selection_use_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_selection_use_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_selection_use_context_reply_t * +xcb_selinux_get_selection_use_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_selection_use_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_selection_use_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_get_selection_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_selection_context_reply_t *_aux = (xcb_selinux_get_selection_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_selection_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_context_cookie_t xcb_selinux_get_selection_context + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_selinux_get_selection_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_context_cookie_t +xcb_selinux_get_selection_context (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_SELECTION_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_selection_context_cookie_t xcb_ret; + xcb_selinux_get_selection_context_request_t xcb_out; + + xcb_out.selection = selection; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_context_cookie_t xcb_selinux_get_selection_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_selinux_get_selection_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_context_cookie_t +xcb_selinux_get_selection_context_unchecked (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_SELECTION_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_selection_context_cookie_t xcb_ret; + xcb_selinux_get_selection_context_request_t xcb_out; + + xcb_out.selection = selection; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_selection_context_context + ** + ** @param const xcb_selinux_get_selection_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_selection_context_context (const xcb_selinux_get_selection_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_selection_context_context_length + ** + ** @param const xcb_selinux_get_selection_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_selection_context_context_length (const xcb_selinux_get_selection_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_selection_context_context_end + ** + ** @param const xcb_selinux_get_selection_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_selection_context_context_end (const xcb_selinux_get_selection_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_context_reply_t * xcb_selinux_get_selection_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_selection_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_selection_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_selection_context_reply_t * +xcb_selinux_get_selection_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_selection_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_selection_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_get_selection_data_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_selection_data_context_reply_t *_aux = (xcb_selinux_get_selection_data_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_selection_data_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_data_context_cookie_t xcb_selinux_get_selection_data_context + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_selinux_get_selection_data_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_data_context_cookie_t +xcb_selinux_get_selection_data_context (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_SELECTION_DATA_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_selection_data_context_cookie_t xcb_ret; + xcb_selinux_get_selection_data_context_request_t xcb_out; + + xcb_out.selection = selection; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_data_context_cookie_t xcb_selinux_get_selection_data_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_selinux_get_selection_data_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_data_context_cookie_t +xcb_selinux_get_selection_data_context_unchecked (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_SELECTION_DATA_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_selection_data_context_cookie_t xcb_ret; + xcb_selinux_get_selection_data_context_request_t xcb_out; + + xcb_out.selection = selection; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_selection_data_context_context + ** + ** @param const xcb_selinux_get_selection_data_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_selection_data_context_context (const xcb_selinux_get_selection_data_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_selection_data_context_context_length + ** + ** @param const xcb_selinux_get_selection_data_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_selection_data_context_context_length (const xcb_selinux_get_selection_data_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_selection_data_context_context_end + ** + ** @param const xcb_selinux_get_selection_data_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_selection_data_context_context_end (const xcb_selinux_get_selection_data_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_data_context_reply_t * xcb_selinux_get_selection_data_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_selection_data_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_selection_data_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_selection_data_context_reply_t * +xcb_selinux_get_selection_data_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_selection_data_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_selection_data_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_list_selections_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_list_selections_reply_t *_aux = (xcb_selinux_list_selections_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_selinux_list_selections_reply_t); + xcb_tmp += xcb_block_len; + /* selections */ + for(i=0; i<_aux->selections_len; i++) { + xcb_tmp_len = xcb_selinux_list_item_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_selinux_list_item_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_list_selections_cookie_t xcb_selinux_list_selections + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_list_selections_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_list_selections_cookie_t +xcb_selinux_list_selections (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_LIST_SELECTIONS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_list_selections_cookie_t xcb_ret; + xcb_selinux_list_selections_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_list_selections_cookie_t xcb_selinux_list_selections_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_list_selections_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_list_selections_cookie_t +xcb_selinux_list_selections_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_LIST_SELECTIONS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_list_selections_cookie_t xcb_ret; + xcb_selinux_list_selections_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_selinux_list_selections_selections_length + ** + ** @param const xcb_selinux_list_selections_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_list_selections_selections_length (const xcb_selinux_list_selections_reply_t *R /**< */) +{ + return R->selections_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_list_item_iterator_t xcb_selinux_list_selections_selections_iterator + ** + ** @param const xcb_selinux_list_selections_reply_t *R + ** @returns xcb_selinux_list_item_iterator_t + ** + *****************************************************************************/ + +xcb_selinux_list_item_iterator_t +xcb_selinux_list_selections_selections_iterator (const xcb_selinux_list_selections_reply_t *R /**< */) +{ + xcb_selinux_list_item_iterator_t i; + i.data = (xcb_selinux_list_item_t *) (R + 1); + i.rem = R->selections_len; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_list_selections_reply_t * xcb_selinux_list_selections_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_list_selections_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_list_selections_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_list_selections_reply_t * +xcb_selinux_list_selections_reply (xcb_connection_t *c /**< */, + xcb_selinux_list_selections_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_list_selections_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_selinux_get_client_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_selinux_get_client_context_reply_t *_aux = (xcb_selinux_get_client_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_selinux_get_client_context_reply_t); + xcb_tmp += xcb_block_len; + /* context */ + xcb_block_len += _aux->context_len * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_client_context_cookie_t xcb_selinux_get_client_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t resource + ** @returns xcb_selinux_get_client_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_client_context_cookie_t +xcb_selinux_get_client_context (xcb_connection_t *c /**< */, + uint32_t resource /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_CLIENT_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_client_context_cookie_t xcb_ret; + xcb_selinux_get_client_context_request_t xcb_out; + + xcb_out.resource = resource; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_client_context_cookie_t xcb_selinux_get_client_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t resource + ** @returns xcb_selinux_get_client_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_client_context_cookie_t +xcb_selinux_get_client_context_unchecked (xcb_connection_t *c /**< */, + uint32_t resource /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_selinux_id, + /* opcode */ XCB_SELINUX_GET_CLIENT_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_selinux_get_client_context_cookie_t xcb_ret; + xcb_selinux_get_client_context_request_t xcb_out; + + xcb_out.resource = resource; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_client_context_context + ** + ** @param const xcb_selinux_get_client_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_client_context_context (const xcb_selinux_get_client_context_reply_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_selinux_get_client_context_context_length + ** + ** @param const xcb_selinux_get_client_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_client_context_context_length (const xcb_selinux_get_client_context_reply_t *R /**< */) +{ + return R->context_len; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_client_context_context_end + ** + ** @param const xcb_selinux_get_client_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_client_context_context_end (const xcb_selinux_get_client_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->context_len); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_selinux_get_client_context_reply_t * xcb_selinux_get_client_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_client_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_client_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_client_context_reply_t * +xcb_selinux_get_client_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_client_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_selinux_get_client_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/xselinux.h b/external/mit/xorg/lib/libxcb/files/xselinux.h new file mode 100644 index 000000000..2f9380739 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xselinux.h @@ -0,0 +1,3042 @@ +/* + * This file generated automatically from xselinux.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_SELinux_API XCB SELinux API + * @brief SELinux XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XSELINUX_H +#define __XSELINUX_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_SELINUX_MAJOR_VERSION 1 +#define XCB_SELINUX_MINOR_VERSION 0 + +extern xcb_extension_t xcb_selinux_id; + +/** + * @brief xcb_selinux_query_version_cookie_t + **/ +typedef struct xcb_selinux_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_query_version_cookie_t; + +/** Opcode for xcb_selinux_query_version. */ +#define XCB_SELINUX_QUERY_VERSION 0 + +/** + * @brief xcb_selinux_query_version_request_t + **/ +typedef struct xcb_selinux_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t client_major; /**< */ + uint8_t client_minor; /**< */ +} xcb_selinux_query_version_request_t; + +/** + * @brief xcb_selinux_query_version_reply_t + **/ +typedef struct xcb_selinux_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t server_major; /**< */ + uint16_t server_minor; /**< */ +} xcb_selinux_query_version_reply_t; + +/** Opcode for xcb_selinux_set_device_create_context. */ +#define XCB_SELINUX_SET_DEVICE_CREATE_CONTEXT 1 + +/** + * @brief xcb_selinux_set_device_create_context_request_t + **/ +typedef struct xcb_selinux_set_device_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t context_len; /**< */ +} xcb_selinux_set_device_create_context_request_t; + +/** + * @brief xcb_selinux_get_device_create_context_cookie_t + **/ +typedef struct xcb_selinux_get_device_create_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_device_create_context_cookie_t; + +/** Opcode for xcb_selinux_get_device_create_context. */ +#define XCB_SELINUX_GET_DEVICE_CREATE_CONTEXT 2 + +/** + * @brief xcb_selinux_get_device_create_context_request_t + **/ +typedef struct xcb_selinux_get_device_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_selinux_get_device_create_context_request_t; + +/** + * @brief xcb_selinux_get_device_create_context_reply_t + **/ +typedef struct xcb_selinux_get_device_create_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_device_create_context_reply_t; + +/** Opcode for xcb_selinux_set_device_context. */ +#define XCB_SELINUX_SET_DEVICE_CONTEXT 3 + +/** + * @brief xcb_selinux_set_device_context_request_t + **/ +typedef struct xcb_selinux_set_device_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t device; /**< */ + uint32_t context_len; /**< */ +} xcb_selinux_set_device_context_request_t; + +/** + * @brief xcb_selinux_get_device_context_cookie_t + **/ +typedef struct xcb_selinux_get_device_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_device_context_cookie_t; + +/** Opcode for xcb_selinux_get_device_context. */ +#define XCB_SELINUX_GET_DEVICE_CONTEXT 4 + +/** + * @brief xcb_selinux_get_device_context_request_t + **/ +typedef struct xcb_selinux_get_device_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t device; /**< */ +} xcb_selinux_get_device_context_request_t; + +/** + * @brief xcb_selinux_get_device_context_reply_t + **/ +typedef struct xcb_selinux_get_device_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_device_context_reply_t; + +/** Opcode for xcb_selinux_set_window_create_context. */ +#define XCB_SELINUX_SET_WINDOW_CREATE_CONTEXT 5 + +/** + * @brief xcb_selinux_set_window_create_context_request_t + **/ +typedef struct xcb_selinux_set_window_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t context_len; /**< */ +} xcb_selinux_set_window_create_context_request_t; + +/** + * @brief xcb_selinux_get_window_create_context_cookie_t + **/ +typedef struct xcb_selinux_get_window_create_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_window_create_context_cookie_t; + +/** Opcode for xcb_selinux_get_window_create_context. */ +#define XCB_SELINUX_GET_WINDOW_CREATE_CONTEXT 6 + +/** + * @brief xcb_selinux_get_window_create_context_request_t + **/ +typedef struct xcb_selinux_get_window_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_selinux_get_window_create_context_request_t; + +/** + * @brief xcb_selinux_get_window_create_context_reply_t + **/ +typedef struct xcb_selinux_get_window_create_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_window_create_context_reply_t; + +/** + * @brief xcb_selinux_get_window_context_cookie_t + **/ +typedef struct xcb_selinux_get_window_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_window_context_cookie_t; + +/** Opcode for xcb_selinux_get_window_context. */ +#define XCB_SELINUX_GET_WINDOW_CONTEXT 7 + +/** + * @brief xcb_selinux_get_window_context_request_t + **/ +typedef struct xcb_selinux_get_window_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_selinux_get_window_context_request_t; + +/** + * @brief xcb_selinux_get_window_context_reply_t + **/ +typedef struct xcb_selinux_get_window_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_window_context_reply_t; + +/** + * @brief xcb_selinux_list_item_t + **/ +typedef struct xcb_selinux_list_item_t { + xcb_atom_t name; /**< */ + uint32_t object_context_len; /**< */ + uint32_t data_context_len; /**< */ +} xcb_selinux_list_item_t; + +/** + * @brief xcb_selinux_list_item_iterator_t + **/ +typedef struct xcb_selinux_list_item_iterator_t { + xcb_selinux_list_item_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_selinux_list_item_iterator_t; + +/** Opcode for xcb_selinux_set_property_create_context. */ +#define XCB_SELINUX_SET_PROPERTY_CREATE_CONTEXT 8 + +/** + * @brief xcb_selinux_set_property_create_context_request_t + **/ +typedef struct xcb_selinux_set_property_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t context_len; /**< */ +} xcb_selinux_set_property_create_context_request_t; + +/** + * @brief xcb_selinux_get_property_create_context_cookie_t + **/ +typedef struct xcb_selinux_get_property_create_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_property_create_context_cookie_t; + +/** Opcode for xcb_selinux_get_property_create_context. */ +#define XCB_SELINUX_GET_PROPERTY_CREATE_CONTEXT 9 + +/** + * @brief xcb_selinux_get_property_create_context_request_t + **/ +typedef struct xcb_selinux_get_property_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_selinux_get_property_create_context_request_t; + +/** + * @brief xcb_selinux_get_property_create_context_reply_t + **/ +typedef struct xcb_selinux_get_property_create_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_property_create_context_reply_t; + +/** Opcode for xcb_selinux_set_property_use_context. */ +#define XCB_SELINUX_SET_PROPERTY_USE_CONTEXT 10 + +/** + * @brief xcb_selinux_set_property_use_context_request_t + **/ +typedef struct xcb_selinux_set_property_use_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t context_len; /**< */ +} xcb_selinux_set_property_use_context_request_t; + +/** + * @brief xcb_selinux_get_property_use_context_cookie_t + **/ +typedef struct xcb_selinux_get_property_use_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_property_use_context_cookie_t; + +/** Opcode for xcb_selinux_get_property_use_context. */ +#define XCB_SELINUX_GET_PROPERTY_USE_CONTEXT 11 + +/** + * @brief xcb_selinux_get_property_use_context_request_t + **/ +typedef struct xcb_selinux_get_property_use_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_selinux_get_property_use_context_request_t; + +/** + * @brief xcb_selinux_get_property_use_context_reply_t + **/ +typedef struct xcb_selinux_get_property_use_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_property_use_context_reply_t; + +/** + * @brief xcb_selinux_get_property_context_cookie_t + **/ +typedef struct xcb_selinux_get_property_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_property_context_cookie_t; + +/** Opcode for xcb_selinux_get_property_context. */ +#define XCB_SELINUX_GET_PROPERTY_CONTEXT 12 + +/** + * @brief xcb_selinux_get_property_context_request_t + **/ +typedef struct xcb_selinux_get_property_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_atom_t property; /**< */ +} xcb_selinux_get_property_context_request_t; + +/** + * @brief xcb_selinux_get_property_context_reply_t + **/ +typedef struct xcb_selinux_get_property_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_property_context_reply_t; + +/** + * @brief xcb_selinux_get_property_data_context_cookie_t + **/ +typedef struct xcb_selinux_get_property_data_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_property_data_context_cookie_t; + +/** Opcode for xcb_selinux_get_property_data_context. */ +#define XCB_SELINUX_GET_PROPERTY_DATA_CONTEXT 13 + +/** + * @brief xcb_selinux_get_property_data_context_request_t + **/ +typedef struct xcb_selinux_get_property_data_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_atom_t property; /**< */ +} xcb_selinux_get_property_data_context_request_t; + +/** + * @brief xcb_selinux_get_property_data_context_reply_t + **/ +typedef struct xcb_selinux_get_property_data_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_property_data_context_reply_t; + +/** + * @brief xcb_selinux_list_properties_cookie_t + **/ +typedef struct xcb_selinux_list_properties_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_list_properties_cookie_t; + +/** Opcode for xcb_selinux_list_properties. */ +#define XCB_SELINUX_LIST_PROPERTIES 14 + +/** + * @brief xcb_selinux_list_properties_request_t + **/ +typedef struct xcb_selinux_list_properties_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_selinux_list_properties_request_t; + +/** + * @brief xcb_selinux_list_properties_reply_t + **/ +typedef struct xcb_selinux_list_properties_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t properties_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_list_properties_reply_t; + +/** Opcode for xcb_selinux_set_selection_create_context. */ +#define XCB_SELINUX_SET_SELECTION_CREATE_CONTEXT 15 + +/** + * @brief xcb_selinux_set_selection_create_context_request_t + **/ +typedef struct xcb_selinux_set_selection_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t context_len; /**< */ +} xcb_selinux_set_selection_create_context_request_t; + +/** + * @brief xcb_selinux_get_selection_create_context_cookie_t + **/ +typedef struct xcb_selinux_get_selection_create_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_selection_create_context_cookie_t; + +/** Opcode for xcb_selinux_get_selection_create_context. */ +#define XCB_SELINUX_GET_SELECTION_CREATE_CONTEXT 16 + +/** + * @brief xcb_selinux_get_selection_create_context_request_t + **/ +typedef struct xcb_selinux_get_selection_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_selinux_get_selection_create_context_request_t; + +/** + * @brief xcb_selinux_get_selection_create_context_reply_t + **/ +typedef struct xcb_selinux_get_selection_create_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_selection_create_context_reply_t; + +/** Opcode for xcb_selinux_set_selection_use_context. */ +#define XCB_SELINUX_SET_SELECTION_USE_CONTEXT 17 + +/** + * @brief xcb_selinux_set_selection_use_context_request_t + **/ +typedef struct xcb_selinux_set_selection_use_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t context_len; /**< */ +} xcb_selinux_set_selection_use_context_request_t; + +/** + * @brief xcb_selinux_get_selection_use_context_cookie_t + **/ +typedef struct xcb_selinux_get_selection_use_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_selection_use_context_cookie_t; + +/** Opcode for xcb_selinux_get_selection_use_context. */ +#define XCB_SELINUX_GET_SELECTION_USE_CONTEXT 18 + +/** + * @brief xcb_selinux_get_selection_use_context_request_t + **/ +typedef struct xcb_selinux_get_selection_use_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_selinux_get_selection_use_context_request_t; + +/** + * @brief xcb_selinux_get_selection_use_context_reply_t + **/ +typedef struct xcb_selinux_get_selection_use_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_selection_use_context_reply_t; + +/** + * @brief xcb_selinux_get_selection_context_cookie_t + **/ +typedef struct xcb_selinux_get_selection_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_selection_context_cookie_t; + +/** Opcode for xcb_selinux_get_selection_context. */ +#define XCB_SELINUX_GET_SELECTION_CONTEXT 19 + +/** + * @brief xcb_selinux_get_selection_context_request_t + **/ +typedef struct xcb_selinux_get_selection_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_atom_t selection; /**< */ +} xcb_selinux_get_selection_context_request_t; + +/** + * @brief xcb_selinux_get_selection_context_reply_t + **/ +typedef struct xcb_selinux_get_selection_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_selection_context_reply_t; + +/** + * @brief xcb_selinux_get_selection_data_context_cookie_t + **/ +typedef struct xcb_selinux_get_selection_data_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_selection_data_context_cookie_t; + +/** Opcode for xcb_selinux_get_selection_data_context. */ +#define XCB_SELINUX_GET_SELECTION_DATA_CONTEXT 20 + +/** + * @brief xcb_selinux_get_selection_data_context_request_t + **/ +typedef struct xcb_selinux_get_selection_data_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_atom_t selection; /**< */ +} xcb_selinux_get_selection_data_context_request_t; + +/** + * @brief xcb_selinux_get_selection_data_context_reply_t + **/ +typedef struct xcb_selinux_get_selection_data_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_selection_data_context_reply_t; + +/** + * @brief xcb_selinux_list_selections_cookie_t + **/ +typedef struct xcb_selinux_list_selections_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_list_selections_cookie_t; + +/** Opcode for xcb_selinux_list_selections. */ +#define XCB_SELINUX_LIST_SELECTIONS 21 + +/** + * @brief xcb_selinux_list_selections_request_t + **/ +typedef struct xcb_selinux_list_selections_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_selinux_list_selections_request_t; + +/** + * @brief xcb_selinux_list_selections_reply_t + **/ +typedef struct xcb_selinux_list_selections_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t selections_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_list_selections_reply_t; + +/** + * @brief xcb_selinux_get_client_context_cookie_t + **/ +typedef struct xcb_selinux_get_client_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_selinux_get_client_context_cookie_t; + +/** Opcode for xcb_selinux_get_client_context. */ +#define XCB_SELINUX_GET_CLIENT_CONTEXT 22 + +/** + * @brief xcb_selinux_get_client_context_request_t + **/ +typedef struct xcb_selinux_get_client_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint32_t resource; /**< */ +} xcb_selinux_get_client_context_request_t; + +/** + * @brief xcb_selinux_get_client_context_reply_t + **/ +typedef struct xcb_selinux_get_client_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t context_len; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_selinux_get_client_context_reply_t; + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_query_version_cookie_t xcb_selinux_query_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major + ** @param uint8_t client_minor + ** @returns xcb_selinux_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_query_version_cookie_t +xcb_selinux_query_version (xcb_connection_t *c /**< */, + uint8_t client_major /**< */, + uint8_t client_minor /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_query_version_cookie_t xcb_selinux_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t client_major + ** @param uint8_t client_minor + ** @returns xcb_selinux_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_query_version_cookie_t +xcb_selinux_query_version_unchecked (xcb_connection_t *c /**< */, + uint8_t client_major /**< */, + uint8_t client_minor /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_query_version_reply_t * xcb_selinux_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_query_version_reply_t * +xcb_selinux_query_version_reply (xcb_connection_t *c /**< */, + xcb_selinux_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_set_device_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_device_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_device_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_device_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_device_create_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +int +xcb_selinux_get_device_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_device_create_context_cookie_t xcb_selinux_get_device_create_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_device_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_device_create_context_cookie_t +xcb_selinux_get_device_create_context (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_device_create_context_cookie_t xcb_selinux_get_device_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_device_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_device_create_context_cookie_t +xcb_selinux_get_device_create_context_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_device_create_context_context + ** + ** @param const xcb_selinux_get_device_create_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_device_create_context_context (const xcb_selinux_get_device_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_device_create_context_context_length + ** + ** @param const xcb_selinux_get_device_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_device_create_context_context_length (const xcb_selinux_get_device_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_device_create_context_context_end + ** + ** @param const xcb_selinux_get_device_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_device_create_context_context_end (const xcb_selinux_get_device_create_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_device_create_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_device_create_context_reply_t * xcb_selinux_get_device_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_device_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_device_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_device_create_context_reply_t * +xcb_selinux_get_device_create_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_device_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_set_device_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_device_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t device + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_device_context_checked (xcb_connection_t *c /**< */, + uint32_t device /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_device_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t device + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_device_context (xcb_connection_t *c /**< */, + uint32_t device /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +int +xcb_selinux_get_device_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_device_context_cookie_t xcb_selinux_get_device_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t device + ** @returns xcb_selinux_get_device_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_device_context_cookie_t +xcb_selinux_get_device_context (xcb_connection_t *c /**< */, + uint32_t device /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_device_context_cookie_t xcb_selinux_get_device_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t device + ** @returns xcb_selinux_get_device_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_device_context_cookie_t +xcb_selinux_get_device_context_unchecked (xcb_connection_t *c /**< */, + uint32_t device /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_device_context_context + ** + ** @param const xcb_selinux_get_device_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_device_context_context (const xcb_selinux_get_device_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_device_context_context_length + ** + ** @param const xcb_selinux_get_device_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_device_context_context_length (const xcb_selinux_get_device_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_device_context_context_end + ** + ** @param const xcb_selinux_get_device_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_device_context_context_end (const xcb_selinux_get_device_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_device_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_device_context_reply_t * xcb_selinux_get_device_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_device_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_device_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_device_context_reply_t * +xcb_selinux_get_device_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_device_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_set_window_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_window_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_window_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_window_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_window_create_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +int +xcb_selinux_get_window_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_window_create_context_cookie_t xcb_selinux_get_window_create_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_window_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_window_create_context_cookie_t +xcb_selinux_get_window_create_context (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_window_create_context_cookie_t xcb_selinux_get_window_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_window_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_window_create_context_cookie_t +xcb_selinux_get_window_create_context_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_window_create_context_context + ** + ** @param const xcb_selinux_get_window_create_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_window_create_context_context (const xcb_selinux_get_window_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_window_create_context_context_length + ** + ** @param const xcb_selinux_get_window_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_window_create_context_context_length (const xcb_selinux_get_window_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_window_create_context_context_end + ** + ** @param const xcb_selinux_get_window_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_window_create_context_context_end (const xcb_selinux_get_window_create_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_window_create_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_window_create_context_reply_t * xcb_selinux_get_window_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_window_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_window_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_window_create_context_reply_t * +xcb_selinux_get_window_create_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_window_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_get_window_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_window_context_cookie_t xcb_selinux_get_window_context + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_selinux_get_window_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_window_context_cookie_t +xcb_selinux_get_window_context (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_window_context_cookie_t xcb_selinux_get_window_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_selinux_get_window_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_window_context_cookie_t +xcb_selinux_get_window_context_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_window_context_context + ** + ** @param const xcb_selinux_get_window_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_window_context_context (const xcb_selinux_get_window_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_window_context_context_length + ** + ** @param const xcb_selinux_get_window_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_window_context_context_length (const xcb_selinux_get_window_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_window_context_context_end + ** + ** @param const xcb_selinux_get_window_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_window_context_context_end (const xcb_selinux_get_window_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_window_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_window_context_reply_t * xcb_selinux_get_window_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_window_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_window_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_window_context_reply_t * +xcb_selinux_get_window_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_window_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_list_item_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_list_item_object_context + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_list_item_object_context (const xcb_selinux_list_item_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_list_item_object_context_length + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_list_item_object_context_length (const xcb_selinux_list_item_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_list_item_object_context_end + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_list_item_object_context_end (const xcb_selinux_list_item_t *R /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_list_item_data_context + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_list_item_data_context (const xcb_selinux_list_item_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_list_item_data_context_length + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_list_item_data_context_length (const xcb_selinux_list_item_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_list_item_data_context_end + ** + ** @param const xcb_selinux_list_item_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_list_item_data_context_end (const xcb_selinux_list_item_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_selinux_list_item_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_selinux_list_item_t) + */ + +/***************************************************************************** + ** + ** void xcb_selinux_list_item_next + ** + ** @param xcb_selinux_list_item_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_selinux_list_item_next (xcb_selinux_list_item_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_selinux_list_item_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_list_item_end + ** + ** @param xcb_selinux_list_item_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_list_item_end (xcb_selinux_list_item_iterator_t i /**< */); + +int +xcb_selinux_set_property_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_property_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_property_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_property_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_property_create_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +int +xcb_selinux_get_property_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_create_context_cookie_t xcb_selinux_get_property_create_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_property_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_create_context_cookie_t +xcb_selinux_get_property_create_context (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_create_context_cookie_t xcb_selinux_get_property_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_property_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_create_context_cookie_t +xcb_selinux_get_property_create_context_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_property_create_context_context + ** + ** @param const xcb_selinux_get_property_create_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_property_create_context_context (const xcb_selinux_get_property_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_property_create_context_context_length + ** + ** @param const xcb_selinux_get_property_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_property_create_context_context_length (const xcb_selinux_get_property_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_property_create_context_context_end + ** + ** @param const xcb_selinux_get_property_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_property_create_context_context_end (const xcb_selinux_get_property_create_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_property_create_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_create_context_reply_t * xcb_selinux_get_property_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_property_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_property_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_property_create_context_reply_t * +xcb_selinux_get_property_create_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_property_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_set_property_use_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_property_use_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_property_use_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_property_use_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_property_use_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +int +xcb_selinux_get_property_use_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_use_context_cookie_t xcb_selinux_get_property_use_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_property_use_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_use_context_cookie_t +xcb_selinux_get_property_use_context (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_use_context_cookie_t xcb_selinux_get_property_use_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_property_use_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_use_context_cookie_t +xcb_selinux_get_property_use_context_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_property_use_context_context + ** + ** @param const xcb_selinux_get_property_use_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_property_use_context_context (const xcb_selinux_get_property_use_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_property_use_context_context_length + ** + ** @param const xcb_selinux_get_property_use_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_property_use_context_context_length (const xcb_selinux_get_property_use_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_property_use_context_context_end + ** + ** @param const xcb_selinux_get_property_use_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_property_use_context_context_end (const xcb_selinux_get_property_use_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_property_use_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_use_context_reply_t * xcb_selinux_get_property_use_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_property_use_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_property_use_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_property_use_context_reply_t * +xcb_selinux_get_property_use_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_property_use_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_get_property_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_context_cookie_t xcb_selinux_get_property_context + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_selinux_get_property_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_context_cookie_t +xcb_selinux_get_property_context (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_context_cookie_t xcb_selinux_get_property_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_selinux_get_property_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_context_cookie_t +xcb_selinux_get_property_context_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_property_context_context + ** + ** @param const xcb_selinux_get_property_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_property_context_context (const xcb_selinux_get_property_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_property_context_context_length + ** + ** @param const xcb_selinux_get_property_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_property_context_context_length (const xcb_selinux_get_property_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_property_context_context_end + ** + ** @param const xcb_selinux_get_property_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_property_context_context_end (const xcb_selinux_get_property_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_property_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_context_reply_t * xcb_selinux_get_property_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_property_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_property_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_property_context_reply_t * +xcb_selinux_get_property_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_property_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_get_property_data_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_data_context_cookie_t xcb_selinux_get_property_data_context + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_selinux_get_property_data_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_data_context_cookie_t +xcb_selinux_get_property_data_context (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_data_context_cookie_t xcb_selinux_get_property_data_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_atom_t property + ** @returns xcb_selinux_get_property_data_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_property_data_context_cookie_t +xcb_selinux_get_property_data_context_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_atom_t property /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_property_data_context_context + ** + ** @param const xcb_selinux_get_property_data_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_property_data_context_context (const xcb_selinux_get_property_data_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_property_data_context_context_length + ** + ** @param const xcb_selinux_get_property_data_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_property_data_context_context_length (const xcb_selinux_get_property_data_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_property_data_context_context_end + ** + ** @param const xcb_selinux_get_property_data_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_property_data_context_context_end (const xcb_selinux_get_property_data_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_property_data_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_property_data_context_reply_t * xcb_selinux_get_property_data_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_property_data_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_property_data_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_property_data_context_reply_t * +xcb_selinux_get_property_data_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_property_data_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_list_properties_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_list_properties_cookie_t xcb_selinux_list_properties + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_selinux_list_properties_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_list_properties_cookie_t +xcb_selinux_list_properties (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_list_properties_cookie_t xcb_selinux_list_properties_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_selinux_list_properties_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_list_properties_cookie_t +xcb_selinux_list_properties_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_list_properties_properties_length + ** + ** @param const xcb_selinux_list_properties_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_list_properties_properties_length (const xcb_selinux_list_properties_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_selinux_list_item_iterator_t xcb_selinux_list_properties_properties_iterator + ** + ** @param const xcb_selinux_list_properties_reply_t *R + ** @returns xcb_selinux_list_item_iterator_t + ** + *****************************************************************************/ + +xcb_selinux_list_item_iterator_t +xcb_selinux_list_properties_properties_iterator (const xcb_selinux_list_properties_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_list_properties_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_list_properties_reply_t * xcb_selinux_list_properties_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_list_properties_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_list_properties_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_list_properties_reply_t * +xcb_selinux_list_properties_reply (xcb_connection_t *c /**< */, + xcb_selinux_list_properties_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_set_selection_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_selection_create_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_selection_create_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_selection_create_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_selection_create_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +int +xcb_selinux_get_selection_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_create_context_cookie_t xcb_selinux_get_selection_create_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_selection_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_create_context_cookie_t +xcb_selinux_get_selection_create_context (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_create_context_cookie_t xcb_selinux_get_selection_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_selection_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_create_context_cookie_t +xcb_selinux_get_selection_create_context_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_selection_create_context_context + ** + ** @param const xcb_selinux_get_selection_create_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_selection_create_context_context (const xcb_selinux_get_selection_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_selection_create_context_context_length + ** + ** @param const xcb_selinux_get_selection_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_selection_create_context_context_length (const xcb_selinux_get_selection_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_selection_create_context_context_end + ** + ** @param const xcb_selinux_get_selection_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_selection_create_context_context_end (const xcb_selinux_get_selection_create_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_selection_create_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_create_context_reply_t * xcb_selinux_get_selection_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_selection_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_selection_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_selection_create_context_reply_t * +xcb_selinux_get_selection_create_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_selection_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_set_selection_use_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_selection_use_context_checked + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_selection_use_context_checked (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_selinux_set_selection_use_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t context_len + ** @param const char *context + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_selinux_set_selection_use_context (xcb_connection_t *c /**< */, + uint32_t context_len /**< */, + const char *context /**< */); + +int +xcb_selinux_get_selection_use_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_use_context_cookie_t xcb_selinux_get_selection_use_context + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_selection_use_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_use_context_cookie_t +xcb_selinux_get_selection_use_context (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_use_context_cookie_t xcb_selinux_get_selection_use_context_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_get_selection_use_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_use_context_cookie_t +xcb_selinux_get_selection_use_context_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_selection_use_context_context + ** + ** @param const xcb_selinux_get_selection_use_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_selection_use_context_context (const xcb_selinux_get_selection_use_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_selection_use_context_context_length + ** + ** @param const xcb_selinux_get_selection_use_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_selection_use_context_context_length (const xcb_selinux_get_selection_use_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_selection_use_context_context_end + ** + ** @param const xcb_selinux_get_selection_use_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_selection_use_context_context_end (const xcb_selinux_get_selection_use_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_selection_use_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_use_context_reply_t * xcb_selinux_get_selection_use_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_selection_use_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_selection_use_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_selection_use_context_reply_t * +xcb_selinux_get_selection_use_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_selection_use_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_get_selection_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_context_cookie_t xcb_selinux_get_selection_context + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_selinux_get_selection_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_context_cookie_t +xcb_selinux_get_selection_context (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_context_cookie_t xcb_selinux_get_selection_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_selinux_get_selection_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_context_cookie_t +xcb_selinux_get_selection_context_unchecked (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_selection_context_context + ** + ** @param const xcb_selinux_get_selection_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_selection_context_context (const xcb_selinux_get_selection_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_selection_context_context_length + ** + ** @param const xcb_selinux_get_selection_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_selection_context_context_length (const xcb_selinux_get_selection_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_selection_context_context_end + ** + ** @param const xcb_selinux_get_selection_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_selection_context_context_end (const xcb_selinux_get_selection_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_selection_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_context_reply_t * xcb_selinux_get_selection_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_selection_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_selection_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_selection_context_reply_t * +xcb_selinux_get_selection_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_selection_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_get_selection_data_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_data_context_cookie_t xcb_selinux_get_selection_data_context + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_selinux_get_selection_data_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_data_context_cookie_t +xcb_selinux_get_selection_data_context (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_data_context_cookie_t xcb_selinux_get_selection_data_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_atom_t selection + ** @returns xcb_selinux_get_selection_data_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_selection_data_context_cookie_t +xcb_selinux_get_selection_data_context_unchecked (xcb_connection_t *c /**< */, + xcb_atom_t selection /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_selection_data_context_context + ** + ** @param const xcb_selinux_get_selection_data_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_selection_data_context_context (const xcb_selinux_get_selection_data_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_selection_data_context_context_length + ** + ** @param const xcb_selinux_get_selection_data_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_selection_data_context_context_length (const xcb_selinux_get_selection_data_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_selection_data_context_context_end + ** + ** @param const xcb_selinux_get_selection_data_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_selection_data_context_context_end (const xcb_selinux_get_selection_data_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_selection_data_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_selection_data_context_reply_t * xcb_selinux_get_selection_data_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_selection_data_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_selection_data_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_selection_data_context_reply_t * +xcb_selinux_get_selection_data_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_selection_data_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_list_selections_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_list_selections_cookie_t xcb_selinux_list_selections + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_list_selections_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_list_selections_cookie_t +xcb_selinux_list_selections (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_list_selections_cookie_t xcb_selinux_list_selections_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_selinux_list_selections_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_list_selections_cookie_t +xcb_selinux_list_selections_unchecked (xcb_connection_t *c /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_list_selections_selections_length + ** + ** @param const xcb_selinux_list_selections_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_list_selections_selections_length (const xcb_selinux_list_selections_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_selinux_list_item_iterator_t xcb_selinux_list_selections_selections_iterator + ** + ** @param const xcb_selinux_list_selections_reply_t *R + ** @returns xcb_selinux_list_item_iterator_t + ** + *****************************************************************************/ + +xcb_selinux_list_item_iterator_t +xcb_selinux_list_selections_selections_iterator (const xcb_selinux_list_selections_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_list_selections_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_list_selections_reply_t * xcb_selinux_list_selections_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_list_selections_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_list_selections_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_list_selections_reply_t * +xcb_selinux_list_selections_reply (xcb_connection_t *c /**< */, + xcb_selinux_list_selections_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_selinux_get_client_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_client_context_cookie_t xcb_selinux_get_client_context + ** + ** @param xcb_connection_t *c + ** @param uint32_t resource + ** @returns xcb_selinux_get_client_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_client_context_cookie_t +xcb_selinux_get_client_context (xcb_connection_t *c /**< */, + uint32_t resource /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_client_context_cookie_t xcb_selinux_get_client_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint32_t resource + ** @returns xcb_selinux_get_client_context_cookie_t + ** + *****************************************************************************/ + +xcb_selinux_get_client_context_cookie_t +xcb_selinux_get_client_context_unchecked (xcb_connection_t *c /**< */, + uint32_t resource /**< */); + + +/***************************************************************************** + ** + ** char * xcb_selinux_get_client_context_context + ** + ** @param const xcb_selinux_get_client_context_reply_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_selinux_get_client_context_context (const xcb_selinux_get_client_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_selinux_get_client_context_context_length + ** + ** @param const xcb_selinux_get_client_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_selinux_get_client_context_context_length (const xcb_selinux_get_client_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_selinux_get_client_context_context_end + ** + ** @param const xcb_selinux_get_client_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_selinux_get_client_context_context_end (const xcb_selinux_get_client_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_selinux_get_client_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_selinux_get_client_context_reply_t * xcb_selinux_get_client_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_selinux_get_client_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_selinux_get_client_context_reply_t * + ** + *****************************************************************************/ + +xcb_selinux_get_client_context_reply_t * +xcb_selinux_get_client_context_reply (xcb_connection_t *c /**< */, + xcb_selinux_get_client_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xtest.c b/external/mit/xorg/lib/libxcb/files/xtest.c new file mode 100644 index 000000000..ba1abd9a4 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xtest.c @@ -0,0 +1,414 @@ +/* + * This file generated automatically from xtest.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xtest.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" + +xcb_extension_t xcb_test_id = { "XTEST", 0 }; + + +/***************************************************************************** + ** + ** xcb_test_get_version_cookie_t xcb_test_get_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t major_version + ** @param uint16_t minor_version + ** @returns xcb_test_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_test_get_version_cookie_t +xcb_test_get_version (xcb_connection_t *c /**< */, + uint8_t major_version /**< */, + uint16_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_test_id, + /* opcode */ XCB_TEST_GET_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_test_get_version_cookie_t xcb_ret; + xcb_test_get_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.pad0 = 0; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_test_get_version_cookie_t xcb_test_get_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t major_version + ** @param uint16_t minor_version + ** @returns xcb_test_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_test_get_version_cookie_t +xcb_test_get_version_unchecked (xcb_connection_t *c /**< */, + uint8_t major_version /**< */, + uint16_t minor_version /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_test_id, + /* opcode */ XCB_TEST_GET_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_test_get_version_cookie_t xcb_ret; + xcb_test_get_version_request_t xcb_out; + + xcb_out.major_version = major_version; + xcb_out.pad0 = 0; + xcb_out.minor_version = minor_version; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_test_get_version_reply_t * xcb_test_get_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_test_get_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_test_get_version_reply_t * + ** + *****************************************************************************/ + +xcb_test_get_version_reply_t * +xcb_test_get_version_reply (xcb_connection_t *c /**< */, + xcb_test_get_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_test_get_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_test_compare_cursor_cookie_t xcb_test_compare_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_cursor_t cursor + ** @returns xcb_test_compare_cursor_cookie_t + ** + *****************************************************************************/ + +xcb_test_compare_cursor_cookie_t +xcb_test_compare_cursor (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_cursor_t cursor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_test_id, + /* opcode */ XCB_TEST_COMPARE_CURSOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_test_compare_cursor_cookie_t xcb_ret; + xcb_test_compare_cursor_request_t xcb_out; + + xcb_out.window = window; + xcb_out.cursor = cursor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_test_compare_cursor_cookie_t xcb_test_compare_cursor_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_cursor_t cursor + ** @returns xcb_test_compare_cursor_cookie_t + ** + *****************************************************************************/ + +xcb_test_compare_cursor_cookie_t +xcb_test_compare_cursor_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_cursor_t cursor /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_test_id, + /* opcode */ XCB_TEST_COMPARE_CURSOR, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_test_compare_cursor_cookie_t xcb_ret; + xcb_test_compare_cursor_request_t xcb_out; + + xcb_out.window = window; + xcb_out.cursor = cursor; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_test_compare_cursor_reply_t * xcb_test_compare_cursor_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_test_compare_cursor_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_test_compare_cursor_reply_t * + ** + *****************************************************************************/ + +xcb_test_compare_cursor_reply_t * +xcb_test_compare_cursor_reply (xcb_connection_t *c /**< */, + xcb_test_compare_cursor_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_test_compare_cursor_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_test_fake_input_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t type + ** @param uint8_t detail + ** @param uint32_t time + ** @param xcb_window_t root + ** @param int16_t rootX + ** @param int16_t rootY + ** @param uint8_t deviceid + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_test_fake_input_checked (xcb_connection_t *c /**< */, + uint8_t type /**< */, + uint8_t detail /**< */, + uint32_t time /**< */, + xcb_window_t root /**< */, + int16_t rootX /**< */, + int16_t rootY /**< */, + uint8_t deviceid /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_test_id, + /* opcode */ XCB_TEST_FAKE_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_test_fake_input_request_t xcb_out; + + xcb_out.type = type; + xcb_out.detail = detail; + memset(xcb_out.pad0, 0, 2); + xcb_out.time = time; + xcb_out.root = root; + memset(xcb_out.pad1, 0, 8); + xcb_out.rootX = rootX; + xcb_out.rootY = rootY; + memset(xcb_out.pad2, 0, 7); + xcb_out.deviceid = deviceid; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_test_fake_input + ** + ** @param xcb_connection_t *c + ** @param uint8_t type + ** @param uint8_t detail + ** @param uint32_t time + ** @param xcb_window_t root + ** @param int16_t rootX + ** @param int16_t rootY + ** @param uint8_t deviceid + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_test_fake_input (xcb_connection_t *c /**< */, + uint8_t type /**< */, + uint8_t detail /**< */, + uint32_t time /**< */, + xcb_window_t root /**< */, + int16_t rootX /**< */, + int16_t rootY /**< */, + uint8_t deviceid /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_test_id, + /* opcode */ XCB_TEST_FAKE_INPUT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_test_fake_input_request_t xcb_out; + + xcb_out.type = type; + xcb_out.detail = detail; + memset(xcb_out.pad0, 0, 2); + xcb_out.time = time; + xcb_out.root = root; + memset(xcb_out.pad1, 0, 8); + xcb_out.rootX = rootX; + xcb_out.rootY = rootY; + memset(xcb_out.pad2, 0, 7); + xcb_out.deviceid = deviceid; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_test_grab_control_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t impervious + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_test_grab_control_checked (xcb_connection_t *c /**< */, + uint8_t impervious /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_test_id, + /* opcode */ XCB_TEST_GRAB_CONTROL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_test_grab_control_request_t xcb_out; + + xcb_out.impervious = impervious; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_test_grab_control + ** + ** @param xcb_connection_t *c + ** @param uint8_t impervious + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_test_grab_control (xcb_connection_t *c /**< */, + uint8_t impervious /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_test_id, + /* opcode */ XCB_TEST_GRAB_CONTROL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_test_grab_control_request_t xcb_out; + + xcb_out.impervious = impervious; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/xtest.h b/external/mit/xorg/lib/libxcb/files/xtest.h new file mode 100644 index 000000000..ff6b33a5d --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xtest.h @@ -0,0 +1,431 @@ +/* + * This file generated automatically from xtest.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Test_API XCB Test API + * @brief Test XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XTEST_H +#define __XTEST_H + +#include "xcb.h" +#include "xproto.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_TEST_MAJOR_VERSION 2 +#define XCB_TEST_MINOR_VERSION 1 + +extern xcb_extension_t xcb_test_id; + +/** + * @brief xcb_test_get_version_cookie_t + **/ +typedef struct xcb_test_get_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_test_get_version_cookie_t; + +/** Opcode for xcb_test_get_version. */ +#define XCB_TEST_GET_VERSION 0 + +/** + * @brief xcb_test_get_version_request_t + **/ +typedef struct xcb_test_get_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t major_version; /**< */ + uint8_t pad0; /**< */ + uint16_t minor_version; /**< */ +} xcb_test_get_version_request_t; + +/** + * @brief xcb_test_get_version_reply_t + **/ +typedef struct xcb_test_get_version_reply_t { + uint8_t response_type; /**< */ + uint8_t major_version; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t minor_version; /**< */ +} xcb_test_get_version_reply_t; + +typedef enum xcb_test_cursor_t { + XCB_TEST_CURSOR_NONE = 0, + XCB_TEST_CURSOR_CURRENT = 1 +} xcb_test_cursor_t; + +/** + * @brief xcb_test_compare_cursor_cookie_t + **/ +typedef struct xcb_test_compare_cursor_cookie_t { + unsigned int sequence; /**< */ +} xcb_test_compare_cursor_cookie_t; + +/** Opcode for xcb_test_compare_cursor. */ +#define XCB_TEST_COMPARE_CURSOR 1 + +/** + * @brief xcb_test_compare_cursor_request_t + **/ +typedef struct xcb_test_compare_cursor_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ + xcb_cursor_t cursor; /**< */ +} xcb_test_compare_cursor_request_t; + +/** + * @brief xcb_test_compare_cursor_reply_t + **/ +typedef struct xcb_test_compare_cursor_reply_t { + uint8_t response_type; /**< */ + uint8_t same; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ +} xcb_test_compare_cursor_reply_t; + +/** Opcode for xcb_test_fake_input. */ +#define XCB_TEST_FAKE_INPUT 2 + +/** + * @brief xcb_test_fake_input_request_t + **/ +typedef struct xcb_test_fake_input_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t type; /**< */ + uint8_t detail; /**< */ + uint8_t pad0[2]; /**< */ + uint32_t time; /**< */ + xcb_window_t root; /**< */ + uint8_t pad1[8]; /**< */ + int16_t rootX; /**< */ + int16_t rootY; /**< */ + uint8_t pad2[7]; /**< */ + uint8_t deviceid; /**< */ +} xcb_test_fake_input_request_t; + +/** Opcode for xcb_test_grab_control. */ +#define XCB_TEST_GRAB_CONTROL 3 + +/** + * @brief xcb_test_grab_control_request_t + **/ +typedef struct xcb_test_grab_control_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + uint8_t impervious; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_test_grab_control_request_t; + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_test_get_version_cookie_t xcb_test_get_version + ** + ** @param xcb_connection_t *c + ** @param uint8_t major_version + ** @param uint16_t minor_version + ** @returns xcb_test_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_test_get_version_cookie_t +xcb_test_get_version (xcb_connection_t *c /**< */, + uint8_t major_version /**< */, + uint16_t minor_version /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_test_get_version_cookie_t xcb_test_get_version_unchecked + ** + ** @param xcb_connection_t *c + ** @param uint8_t major_version + ** @param uint16_t minor_version + ** @returns xcb_test_get_version_cookie_t + ** + *****************************************************************************/ + +xcb_test_get_version_cookie_t +xcb_test_get_version_unchecked (xcb_connection_t *c /**< */, + uint8_t major_version /**< */, + uint16_t minor_version /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_test_get_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_test_get_version_reply_t * xcb_test_get_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_test_get_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_test_get_version_reply_t * + ** + *****************************************************************************/ + +xcb_test_get_version_reply_t * +xcb_test_get_version_reply (xcb_connection_t *c /**< */, + xcb_test_get_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_test_compare_cursor_cookie_t xcb_test_compare_cursor + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_cursor_t cursor + ** @returns xcb_test_compare_cursor_cookie_t + ** + *****************************************************************************/ + +xcb_test_compare_cursor_cookie_t +xcb_test_compare_cursor (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_cursor_t cursor /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_test_compare_cursor_cookie_t xcb_test_compare_cursor_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @param xcb_cursor_t cursor + ** @returns xcb_test_compare_cursor_cookie_t + ** + *****************************************************************************/ + +xcb_test_compare_cursor_cookie_t +xcb_test_compare_cursor_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */, + xcb_cursor_t cursor /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_test_compare_cursor_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_test_compare_cursor_reply_t * xcb_test_compare_cursor_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_test_compare_cursor_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_test_compare_cursor_reply_t * + ** + *****************************************************************************/ + +xcb_test_compare_cursor_reply_t * +xcb_test_compare_cursor_reply (xcb_connection_t *c /**< */, + xcb_test_compare_cursor_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_test_fake_input_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t type + ** @param uint8_t detail + ** @param uint32_t time + ** @param xcb_window_t root + ** @param int16_t rootX + ** @param int16_t rootY + ** @param uint8_t deviceid + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_test_fake_input_checked (xcb_connection_t *c /**< */, + uint8_t type /**< */, + uint8_t detail /**< */, + uint32_t time /**< */, + xcb_window_t root /**< */, + int16_t rootX /**< */, + int16_t rootY /**< */, + uint8_t deviceid /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_test_fake_input + ** + ** @param xcb_connection_t *c + ** @param uint8_t type + ** @param uint8_t detail + ** @param uint32_t time + ** @param xcb_window_t root + ** @param int16_t rootX + ** @param int16_t rootY + ** @param uint8_t deviceid + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_test_fake_input (xcb_connection_t *c /**< */, + uint8_t type /**< */, + uint8_t detail /**< */, + uint32_t time /**< */, + xcb_window_t root /**< */, + int16_t rootX /**< */, + int16_t rootY /**< */, + uint8_t deviceid /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_test_grab_control_checked + ** + ** @param xcb_connection_t *c + ** @param uint8_t impervious + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_test_grab_control_checked (xcb_connection_t *c /**< */, + uint8_t impervious /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_test_grab_control + ** + ** @param xcb_connection_t *c + ** @param uint8_t impervious + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_test_grab_control (xcb_connection_t *c /**< */, + uint8_t impervious /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xv.c b/external/mit/xorg/lib/libxcb/files/xv.c new file mode 100644 index 000000000..c73236cea --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xv.c @@ -0,0 +1,3562 @@ +/* + * This file generated automatically from xv.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xv.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" +#include "shm.h" + +xcb_extension_t xcb_xv_id = { "XVideo", 0 }; + + +/***************************************************************************** + ** + ** void xcb_xv_port_next + ** + ** @param xcb_xv_port_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_port_next (xcb_xv_port_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xv_port_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_port_end + ** + ** @param xcb_xv_port_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_port_end (xcb_xv_port_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xv_encoding_next + ** + ** @param xcb_xv_encoding_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_encoding_next (xcb_xv_encoding_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xv_encoding_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_encoding_end + ** + ** @param xcb_xv_encoding_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_encoding_end (xcb_xv_encoding_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xv_rational_next + ** + ** @param xcb_xv_rational_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_rational_next (xcb_xv_rational_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xv_rational_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_rational_end + ** + ** @param xcb_xv_rational_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_rational_end (xcb_xv_rational_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xv_format_next + ** + ** @param xcb_xv_format_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_format_next (xcb_xv_format_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xv_format_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_format_end + ** + ** @param xcb_xv_format_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_format_end (xcb_xv_format_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + +int +xcb_xv_adaptor_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xv_adaptor_info_t *_aux = (xcb_xv_adaptor_info_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xv_adaptor_info_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_size * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* formats */ + xcb_block_len += _aux->num_formats * sizeof(xcb_xv_format_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xv_format_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_xv_adaptor_info_name + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xv_adaptor_info_name (const xcb_xv_adaptor_info_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xv_adaptor_info_name_length + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_adaptor_info_name_length (const xcb_xv_adaptor_info_t *R /**< */) +{ + return R->name_size; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_adaptor_info_name_end + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_adaptor_info_name_end (const xcb_xv_adaptor_info_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->name_size); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xv_format_t * xcb_xv_adaptor_info_formats + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns xcb_xv_format_t * + ** + *****************************************************************************/ + +xcb_xv_format_t * +xcb_xv_adaptor_info_formats (const xcb_xv_adaptor_info_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xv_adaptor_info_name_end(R); + return (xcb_xv_format_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xv_format_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xv_adaptor_info_formats_length + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_adaptor_info_formats_length (const xcb_xv_adaptor_info_t *R /**< */) +{ + return R->num_formats; +} + + +/***************************************************************************** + ** + ** xcb_xv_format_iterator_t xcb_xv_adaptor_info_formats_iterator + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns xcb_xv_format_iterator_t + ** + *****************************************************************************/ + +xcb_xv_format_iterator_t +xcb_xv_adaptor_info_formats_iterator (const xcb_xv_adaptor_info_t *R /**< */) +{ + xcb_xv_format_iterator_t i; + xcb_generic_iterator_t prev = xcb_xv_adaptor_info_name_end(R); + i.data = (xcb_xv_format_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xv_format_t, prev.index)); + i.rem = R->num_formats; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xv_adaptor_info_next + ** + ** @param xcb_xv_adaptor_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_adaptor_info_next (xcb_xv_adaptor_info_iterator_t *i /**< */) +{ + xcb_xv_adaptor_info_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xv_adaptor_info_t *)(((char *)R) + xcb_xv_adaptor_info_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xv_adaptor_info_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_adaptor_info_end + ** + ** @param xcb_xv_adaptor_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_adaptor_info_end (xcb_xv_adaptor_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xv_adaptor_info_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xv_encoding_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xv_encoding_info_t *_aux = (xcb_xv_encoding_info_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xv_encoding_info_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->name_size * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_xv_encoding_info_name + ** + ** @param const xcb_xv_encoding_info_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xv_encoding_info_name (const xcb_xv_encoding_info_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xv_encoding_info_name_length + ** + ** @param const xcb_xv_encoding_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_encoding_info_name_length (const xcb_xv_encoding_info_t *R /**< */) +{ + return R->name_size; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_encoding_info_name_end + ** + ** @param const xcb_xv_encoding_info_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_encoding_info_name_end (const xcb_xv_encoding_info_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->name_size); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xv_encoding_info_next + ** + ** @param xcb_xv_encoding_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_encoding_info_next (xcb_xv_encoding_info_iterator_t *i /**< */) +{ + xcb_xv_encoding_info_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xv_encoding_info_t *)(((char *)R) + xcb_xv_encoding_info_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xv_encoding_info_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_encoding_info_end + ** + ** @param xcb_xv_encoding_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_encoding_info_end (xcb_xv_encoding_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xv_encoding_info_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xv_image_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xv_image_t *_aux = (xcb_xv_image_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xv_image_t); + xcb_tmp += xcb_block_len; + /* pitches */ + xcb_block_len += _aux->num_planes * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* offsets */ + xcb_block_len += _aux->num_planes * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* data */ + xcb_block_len += _aux->data_size * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xv_image_pitches + ** + ** @param const xcb_xv_image_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xv_image_pitches (const xcb_xv_image_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xv_image_pitches_length + ** + ** @param const xcb_xv_image_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_image_pitches_length (const xcb_xv_image_t *R /**< */) +{ + return R->num_planes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_pitches_end + ** + ** @param const xcb_xv_image_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_pitches_end (const xcb_xv_image_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->num_planes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xv_image_offsets + ** + ** @param const xcb_xv_image_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xv_image_offsets (const xcb_xv_image_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xv_image_pitches_end(R); + return (uint32_t *) ((char *) prev.data + XCB_TYPE_PAD(uint32_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xv_image_offsets_length + ** + ** @param const xcb_xv_image_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_image_offsets_length (const xcb_xv_image_t *R /**< */) +{ + return R->num_planes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_offsets_end + ** + ** @param const xcb_xv_image_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_offsets_end (const xcb_xv_image_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_xv_image_pitches_end(R); + i.data = ((uint32_t *) child.data) + (R->num_planes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint8_t * xcb_xv_image_data + ** + ** @param const xcb_xv_image_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xv_image_data (const xcb_xv_image_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xv_image_offsets_end(R); + return (uint8_t *) ((char *) prev.data + XCB_TYPE_PAD(uint8_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xv_image_data_length + ** + ** @param const xcb_xv_image_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_image_data_length (const xcb_xv_image_t *R /**< */) +{ + return R->data_size; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_data_end + ** + ** @param const xcb_xv_image_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_data_end (const xcb_xv_image_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_xv_image_offsets_end(R); + i.data = ((uint8_t *) child.data) + (R->data_size); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xv_image_next + ** + ** @param xcb_xv_image_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_image_next (xcb_xv_image_iterator_t *i /**< */) +{ + xcb_xv_image_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xv_image_t *)(((char *)R) + xcb_xv_image_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xv_image_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_end + ** + ** @param xcb_xv_image_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_end (xcb_xv_image_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xv_image_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + +int +xcb_xv_attribute_info_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xv_attribute_info_t *_aux = (xcb_xv_attribute_info_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xv_attribute_info_t); + xcb_tmp += xcb_block_len; + /* name */ + xcb_block_len += _aux->size * sizeof(char); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(char); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** char * xcb_xv_attribute_info_name + ** + ** @param const xcb_xv_attribute_info_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xv_attribute_info_name (const xcb_xv_attribute_info_t *R /**< */) +{ + return (char *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xv_attribute_info_name_length + ** + ** @param const xcb_xv_attribute_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_attribute_info_name_length (const xcb_xv_attribute_info_t *R /**< */) +{ + return R->size; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_attribute_info_name_end + ** + ** @param const xcb_xv_attribute_info_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_attribute_info_name_end (const xcb_xv_attribute_info_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((char *) (R + 1)) + (R->size); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** void xcb_xv_attribute_info_next + ** + ** @param xcb_xv_attribute_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_attribute_info_next (xcb_xv_attribute_info_iterator_t *i /**< */) +{ + xcb_xv_attribute_info_t *R = i->data; + xcb_generic_iterator_t child; + child.data = (xcb_xv_attribute_info_t *)(((char *)R) + xcb_xv_attribute_info_sizeof(R)); + i->index = (char *) child.data - (char *) i->data; + --i->rem; + i->data = (xcb_xv_attribute_info_t *) child.data; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_attribute_info_end + ** + ** @param xcb_xv_attribute_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_attribute_info_end (xcb_xv_attribute_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + while(i.rem > 0) + xcb_xv_attribute_info_next(&i); + ret.data = i.data; + ret.rem = i.rem; + ret.index = i.index; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xv_image_format_info_next + ** + ** @param xcb_xv_image_format_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_image_format_info_next (xcb_xv_image_format_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xv_image_format_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_format_info_end + ** + ** @param xcb_xv_image_format_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_format_info_end (xcb_xv_image_format_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_extension_cookie_t xcb_xv_query_extension + ** + ** @param xcb_connection_t *c + ** @returns xcb_xv_query_extension_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_extension_cookie_t +xcb_xv_query_extension (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_EXTENSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_extension_cookie_t xcb_ret; + xcb_xv_query_extension_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_extension_cookie_t xcb_xv_query_extension_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xv_query_extension_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_extension_cookie_t +xcb_xv_query_extension_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_EXTENSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_extension_cookie_t xcb_ret; + xcb_xv_query_extension_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_extension_reply_t * xcb_xv_query_extension_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_extension_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_extension_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_extension_reply_t * +xcb_xv_query_extension_reply (xcb_connection_t *c /**< */, + xcb_xv_query_extension_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xv_query_extension_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xv_query_adaptors_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xv_query_adaptors_reply_t *_aux = (xcb_xv_query_adaptors_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_xv_query_adaptors_reply_t); + xcb_tmp += xcb_block_len; + /* info */ + for(i=0; i<_aux->num_adaptors; i++) { + xcb_tmp_len = xcb_xv_adaptor_info_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xv_adaptor_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_adaptors_cookie_t xcb_xv_query_adaptors + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xv_query_adaptors_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_adaptors_cookie_t +xcb_xv_query_adaptors (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_ADAPTORS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_adaptors_cookie_t xcb_ret; + xcb_xv_query_adaptors_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_adaptors_cookie_t xcb_xv_query_adaptors_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xv_query_adaptors_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_adaptors_cookie_t +xcb_xv_query_adaptors_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_ADAPTORS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_adaptors_cookie_t xcb_ret; + xcb_xv_query_adaptors_request_t xcb_out; + + xcb_out.window = window; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_xv_query_adaptors_info_length + ** + ** @param const xcb_xv_query_adaptors_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_adaptors_info_length (const xcb_xv_query_adaptors_reply_t *R /**< */) +{ + return R->num_adaptors; +} + + +/***************************************************************************** + ** + ** xcb_xv_adaptor_info_iterator_t xcb_xv_query_adaptors_info_iterator + ** + ** @param const xcb_xv_query_adaptors_reply_t *R + ** @returns xcb_xv_adaptor_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_adaptor_info_iterator_t +xcb_xv_query_adaptors_info_iterator (const xcb_xv_query_adaptors_reply_t *R /**< */) +{ + xcb_xv_adaptor_info_iterator_t i; + i.data = (xcb_xv_adaptor_info_t *) (R + 1); + i.rem = R->num_adaptors; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_adaptors_reply_t * xcb_xv_query_adaptors_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_adaptors_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_adaptors_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_adaptors_reply_t * +xcb_xv_query_adaptors_reply (xcb_connection_t *c /**< */, + xcb_xv_query_adaptors_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xv_query_adaptors_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xv_query_encodings_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xv_query_encodings_reply_t *_aux = (xcb_xv_query_encodings_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_xv_query_encodings_reply_t); + xcb_tmp += xcb_block_len; + /* info */ + for(i=0; i<_aux->num_encodings; i++) { + xcb_tmp_len = xcb_xv_encoding_info_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xv_encoding_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_encodings_cookie_t xcb_xv_query_encodings + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_query_encodings_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_encodings_cookie_t +xcb_xv_query_encodings (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_ENCODINGS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_encodings_cookie_t xcb_ret; + xcb_xv_query_encodings_request_t xcb_out; + + xcb_out.port = port; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_encodings_cookie_t xcb_xv_query_encodings_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_query_encodings_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_encodings_cookie_t +xcb_xv_query_encodings_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_ENCODINGS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_encodings_cookie_t xcb_ret; + xcb_xv_query_encodings_request_t xcb_out; + + xcb_out.port = port; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_xv_query_encodings_info_length + ** + ** @param const xcb_xv_query_encodings_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_encodings_info_length (const xcb_xv_query_encodings_reply_t *R /**< */) +{ + return R->num_encodings; +} + + +/***************************************************************************** + ** + ** xcb_xv_encoding_info_iterator_t xcb_xv_query_encodings_info_iterator + ** + ** @param const xcb_xv_query_encodings_reply_t *R + ** @returns xcb_xv_encoding_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_encoding_info_iterator_t +xcb_xv_query_encodings_info_iterator (const xcb_xv_query_encodings_reply_t *R /**< */) +{ + xcb_xv_encoding_info_iterator_t i; + i.data = (xcb_xv_encoding_info_t *) (R + 1); + i.rem = R->num_encodings; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_encodings_reply_t * xcb_xv_query_encodings_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_encodings_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_encodings_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_encodings_reply_t * +xcb_xv_query_encodings_reply (xcb_connection_t *c /**< */, + xcb_xv_query_encodings_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xv_query_encodings_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_xv_grab_port_cookie_t xcb_xv_grab_port + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_timestamp_t time + ** @returns xcb_xv_grab_port_cookie_t + ** + *****************************************************************************/ + +xcb_xv_grab_port_cookie_t +xcb_xv_grab_port (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_GRAB_PORT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_grab_port_cookie_t xcb_ret; + xcb_xv_grab_port_request_t xcb_out; + + xcb_out.port = port; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_grab_port_cookie_t xcb_xv_grab_port_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_timestamp_t time + ** @returns xcb_xv_grab_port_cookie_t + ** + *****************************************************************************/ + +xcb_xv_grab_port_cookie_t +xcb_xv_grab_port_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_GRAB_PORT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_grab_port_cookie_t xcb_ret; + xcb_xv_grab_port_request_t xcb_out; + + xcb_out.port = port; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_grab_port_reply_t * xcb_xv_grab_port_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_grab_port_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_grab_port_reply_t * + ** + *****************************************************************************/ + +xcb_xv_grab_port_reply_t * +xcb_xv_grab_port_reply (xcb_connection_t *c /**< */, + xcb_xv_grab_port_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xv_grab_port_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_ungrab_port_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_ungrab_port_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_UNGRAB_PORT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_ungrab_port_request_t xcb_out; + + xcb_out.port = port; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_ungrab_port + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_ungrab_port (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_timestamp_t time /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_UNGRAB_PORT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_ungrab_port_request_t xcb_out; + + xcb_out.port = port; + xcb_out.time = time; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_video_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_video_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_PUT_VIDEO, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_put_video_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.vid_x = vid_x; + xcb_out.vid_y = vid_y; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_video + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_video (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_PUT_VIDEO, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_put_video_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.vid_x = vid_x; + xcb_out.vid_y = vid_y; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_still_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_still_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_PUT_STILL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_put_still_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.vid_x = vid_x; + xcb_out.vid_y = vid_y; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_still + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_still (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_PUT_STILL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_put_still_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.vid_x = vid_x; + xcb_out.vid_y = vid_y; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_get_video_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_get_video_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_GET_VIDEO, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_get_video_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.vid_x = vid_x; + xcb_out.vid_y = vid_y; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_get_video + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_get_video (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_GET_VIDEO, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_get_video_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.vid_x = vid_x; + xcb_out.vid_y = vid_y; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_get_still_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_get_still_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_GET_STILL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_get_still_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.vid_x = vid_x; + xcb_out.vid_y = vid_y; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_get_still + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_get_still (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_GET_STILL, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_get_still_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.vid_x = vid_x; + xcb_out.vid_y = vid_y; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_stop_video_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_stop_video_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_STOP_VIDEO, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_stop_video_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_stop_video + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_stop_video (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_STOP_VIDEO, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_stop_video_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_select_video_notify_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint8_t onoff + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_select_video_notify_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint8_t onoff /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_SELECT_VIDEO_NOTIFY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_select_video_notify_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.onoff = onoff; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_select_video_notify + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint8_t onoff + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_select_video_notify (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint8_t onoff /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_SELECT_VIDEO_NOTIFY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_select_video_notify_request_t xcb_out; + + xcb_out.drawable = drawable; + xcb_out.onoff = onoff; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_select_port_notify_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint8_t onoff + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_select_port_notify_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint8_t onoff /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_SELECT_PORT_NOTIFY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_select_port_notify_request_t xcb_out; + + xcb_out.port = port; + xcb_out.onoff = onoff; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_select_port_notify + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint8_t onoff + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_select_port_notify (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint8_t onoff /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_SELECT_PORT_NOTIFY, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_select_port_notify_request_t xcb_out; + + xcb_out.port = port; + xcb_out.onoff = onoff; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_best_size_cookie_t xcb_xv_query_best_size + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint8_t motion + ** @returns xcb_xv_query_best_size_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_best_size_cookie_t +xcb_xv_query_best_size (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint8_t motion /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_BEST_SIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_best_size_cookie_t xcb_ret; + xcb_xv_query_best_size_request_t xcb_out; + + xcb_out.port = port; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + xcb_out.motion = motion; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_best_size_cookie_t xcb_xv_query_best_size_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint8_t motion + ** @returns xcb_xv_query_best_size_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_best_size_cookie_t +xcb_xv_query_best_size_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint8_t motion /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_BEST_SIZE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_best_size_cookie_t xcb_ret; + xcb_xv_query_best_size_request_t xcb_out; + + xcb_out.port = port; + xcb_out.vid_w = vid_w; + xcb_out.vid_h = vid_h; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + xcb_out.motion = motion; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_best_size_reply_t * xcb_xv_query_best_size_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_best_size_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_best_size_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_best_size_reply_t * +xcb_xv_query_best_size_reply (xcb_connection_t *c /**< */, + xcb_xv_query_best_size_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xv_query_best_size_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_set_port_attribute_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_atom_t attribute + ** @param int32_t value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_set_port_attribute_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_atom_t attribute /**< */, + int32_t value /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_SET_PORT_ATTRIBUTE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_set_port_attribute_request_t xcb_out; + + xcb_out.port = port; + xcb_out.attribute = attribute; + xcb_out.value = value; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_set_port_attribute + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_atom_t attribute + ** @param int32_t value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_set_port_attribute (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_atom_t attribute /**< */, + int32_t value /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_SET_PORT_ATTRIBUTE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_set_port_attribute_request_t xcb_out; + + xcb_out.port = port; + xcb_out.attribute = attribute; + xcb_out.value = value; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_get_port_attribute_cookie_t xcb_xv_get_port_attribute + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_atom_t attribute + ** @returns xcb_xv_get_port_attribute_cookie_t + ** + *****************************************************************************/ + +xcb_xv_get_port_attribute_cookie_t +xcb_xv_get_port_attribute (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_atom_t attribute /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_GET_PORT_ATTRIBUTE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_get_port_attribute_cookie_t xcb_ret; + xcb_xv_get_port_attribute_request_t xcb_out; + + xcb_out.port = port; + xcb_out.attribute = attribute; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_get_port_attribute_cookie_t xcb_xv_get_port_attribute_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_atom_t attribute + ** @returns xcb_xv_get_port_attribute_cookie_t + ** + *****************************************************************************/ + +xcb_xv_get_port_attribute_cookie_t +xcb_xv_get_port_attribute_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_atom_t attribute /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_GET_PORT_ATTRIBUTE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_get_port_attribute_cookie_t xcb_ret; + xcb_xv_get_port_attribute_request_t xcb_out; + + xcb_out.port = port; + xcb_out.attribute = attribute; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_get_port_attribute_reply_t * xcb_xv_get_port_attribute_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_get_port_attribute_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_get_port_attribute_reply_t * + ** + *****************************************************************************/ + +xcb_xv_get_port_attribute_reply_t * +xcb_xv_get_port_attribute_reply (xcb_connection_t *c /**< */, + xcb_xv_get_port_attribute_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xv_get_port_attribute_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xv_query_port_attributes_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xv_query_port_attributes_reply_t *_aux = (xcb_xv_query_port_attributes_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + unsigned int i; + unsigned int xcb_tmp_len; + + xcb_block_len += sizeof(xcb_xv_query_port_attributes_reply_t); + xcb_tmp += xcb_block_len; + /* attributes */ + for(i=0; i<_aux->num_attributes; i++) { + xcb_tmp_len = xcb_xv_attribute_info_sizeof(xcb_tmp); + xcb_block_len += xcb_tmp_len; + xcb_tmp += xcb_tmp_len; + } + xcb_align_to = ALIGNOF(xcb_xv_attribute_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_port_attributes_cookie_t xcb_xv_query_port_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_query_port_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_port_attributes_cookie_t +xcb_xv_query_port_attributes (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_PORT_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_port_attributes_cookie_t xcb_ret; + xcb_xv_query_port_attributes_request_t xcb_out; + + xcb_out.port = port; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_port_attributes_cookie_t xcb_xv_query_port_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_query_port_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_port_attributes_cookie_t +xcb_xv_query_port_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_PORT_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_port_attributes_cookie_t xcb_ret; + xcb_xv_query_port_attributes_request_t xcb_out; + + xcb_out.port = port; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** int xcb_xv_query_port_attributes_attributes_length + ** + ** @param const xcb_xv_query_port_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_port_attributes_attributes_length (const xcb_xv_query_port_attributes_reply_t *R /**< */) +{ + return R->num_attributes; +} + + +/***************************************************************************** + ** + ** xcb_xv_attribute_info_iterator_t xcb_xv_query_port_attributes_attributes_iterator + ** + ** @param const xcb_xv_query_port_attributes_reply_t *R + ** @returns xcb_xv_attribute_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_attribute_info_iterator_t +xcb_xv_query_port_attributes_attributes_iterator (const xcb_xv_query_port_attributes_reply_t *R /**< */) +{ + xcb_xv_attribute_info_iterator_t i; + i.data = (xcb_xv_attribute_info_t *) (R + 1); + i.rem = R->num_attributes; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_port_attributes_reply_t * xcb_xv_query_port_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_port_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_port_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_port_attributes_reply_t * +xcb_xv_query_port_attributes_reply (xcb_connection_t *c /**< */, + xcb_xv_query_port_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xv_query_port_attributes_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xv_list_image_formats_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xv_list_image_formats_reply_t *_aux = (xcb_xv_list_image_formats_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xv_list_image_formats_reply_t); + xcb_tmp += xcb_block_len; + /* format */ + xcb_block_len += _aux->num_formats * sizeof(xcb_xv_image_format_info_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xv_image_format_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xv_list_image_formats_cookie_t xcb_xv_list_image_formats + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_list_image_formats_cookie_t + ** + *****************************************************************************/ + +xcb_xv_list_image_formats_cookie_t +xcb_xv_list_image_formats (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_LIST_IMAGE_FORMATS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_list_image_formats_cookie_t xcb_ret; + xcb_xv_list_image_formats_request_t xcb_out; + + xcb_out.port = port; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_list_image_formats_cookie_t xcb_xv_list_image_formats_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_list_image_formats_cookie_t + ** + *****************************************************************************/ + +xcb_xv_list_image_formats_cookie_t +xcb_xv_list_image_formats_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_LIST_IMAGE_FORMATS, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_list_image_formats_cookie_t xcb_ret; + xcb_xv_list_image_formats_request_t xcb_out; + + xcb_out.port = port; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_image_format_info_t * xcb_xv_list_image_formats_format + ** + ** @param const xcb_xv_list_image_formats_reply_t *R + ** @returns xcb_xv_image_format_info_t * + ** + *****************************************************************************/ + +xcb_xv_image_format_info_t * +xcb_xv_list_image_formats_format (const xcb_xv_list_image_formats_reply_t *R /**< */) +{ + return (xcb_xv_image_format_info_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xv_list_image_formats_format_length + ** + ** @param const xcb_xv_list_image_formats_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_list_image_formats_format_length (const xcb_xv_list_image_formats_reply_t *R /**< */) +{ + return R->num_formats; +} + + +/***************************************************************************** + ** + ** xcb_xv_image_format_info_iterator_t xcb_xv_list_image_formats_format_iterator + ** + ** @param const xcb_xv_list_image_formats_reply_t *R + ** @returns xcb_xv_image_format_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_image_format_info_iterator_t +xcb_xv_list_image_formats_format_iterator (const xcb_xv_list_image_formats_reply_t *R /**< */) +{ + xcb_xv_image_format_info_iterator_t i; + i.data = (xcb_xv_image_format_info_t *) (R + 1); + i.rem = R->num_formats; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xv_list_image_formats_reply_t * xcb_xv_list_image_formats_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_list_image_formats_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_list_image_formats_reply_t * + ** + *****************************************************************************/ + +xcb_xv_list_image_formats_reply_t * +xcb_xv_list_image_formats_reply (xcb_connection_t *c /**< */, + xcb_xv_list_image_formats_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xv_list_image_formats_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xv_query_image_attributes_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xv_query_image_attributes_reply_t *_aux = (xcb_xv_query_image_attributes_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xv_query_image_attributes_reply_t); + xcb_tmp += xcb_block_len; + /* pitches */ + xcb_block_len += _aux->num_planes * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + /* offsets */ + xcb_block_len += _aux->num_planes * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_image_attributes_cookie_t xcb_xv_query_image_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint32_t id + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_xv_query_image_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_image_attributes_cookie_t +xcb_xv_query_image_attributes (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint32_t id /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_IMAGE_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_image_attributes_cookie_t xcb_ret; + xcb_xv_query_image_attributes_request_t xcb_out; + + xcb_out.port = port; + xcb_out.id = id; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_image_attributes_cookie_t xcb_xv_query_image_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint32_t id + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_xv_query_image_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_image_attributes_cookie_t +xcb_xv_query_image_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint32_t id /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_QUERY_IMAGE_ATTRIBUTES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xv_query_image_attributes_cookie_t xcb_ret; + xcb_xv_query_image_attributes_request_t xcb_out; + + xcb_out.port = port; + xcb_out.id = id; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xv_query_image_attributes_pitches + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xv_query_image_attributes_pitches (const xcb_xv_query_image_attributes_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xv_query_image_attributes_pitches_length + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_image_attributes_pitches_length (const xcb_xv_query_image_attributes_reply_t *R /**< */) +{ + return R->num_planes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_query_image_attributes_pitches_end + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_query_image_attributes_pitches_end (const xcb_xv_query_image_attributes_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->num_planes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xv_query_image_attributes_offsets + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xv_query_image_attributes_offsets (const xcb_xv_query_image_attributes_reply_t *R /**< */) +{ + xcb_generic_iterator_t prev = xcb_xv_query_image_attributes_pitches_end(R); + return (uint32_t *) ((char *) prev.data + XCB_TYPE_PAD(uint32_t, prev.index) + 0); +} + + +/***************************************************************************** + ** + ** int xcb_xv_query_image_attributes_offsets_length + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_image_attributes_offsets_length (const xcb_xv_query_image_attributes_reply_t *R /**< */) +{ + return R->num_planes; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_query_image_attributes_offsets_end + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_query_image_attributes_offsets_end (const xcb_xv_query_image_attributes_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + xcb_generic_iterator_t child = xcb_xv_query_image_attributes_pitches_end(R); + i.data = ((uint32_t *) child.data) + (R->num_planes); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xv_query_image_attributes_reply_t * xcb_xv_query_image_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_image_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_image_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_image_attributes_reply_t * +xcb_xv_query_image_attributes_reply (xcb_connection_t *c /**< */, + xcb_xv_query_image_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xv_query_image_attributes_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xv_put_image_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */) +{ + char *xcb_tmp = (char *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xv_put_image_request_t); + xcb_tmp += xcb_block_len; + /* data */ + xcb_block_len += data_len * sizeof(uint8_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint8_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_image_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t id + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_w + ** @param uint16_t src_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_image_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t id /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_w /**< */, + uint16_t src_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_PUT_IMAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xv_put_image_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.id = id; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.src_w = src_w; + xcb_out.src_h = src_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_image + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t id + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_w + ** @param uint16_t src_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_image (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t id /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_w /**< */, + uint16_t src_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 4, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_PUT_IMAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[6]; + xcb_void_cookie_t xcb_ret; + xcb_xv_put_image_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.id = id; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.src_w = src_w; + xcb_out.src_h = src_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + /* uint8_t data */ + xcb_parts[4].iov_base = (char *) data; + xcb_parts[4].iov_len = data_len * sizeof(uint8_t); + xcb_parts[5].iov_base = 0; + xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_shm_put_image_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t id + ** @param uint32_t offset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_w + ** @param uint16_t src_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint16_t width + ** @param uint16_t height + ** @param uint8_t send_event + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_shm_put_image_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t id /**< */, + uint32_t offset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_w /**< */, + uint16_t src_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint8_t send_event /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_SHM_PUT_IMAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_shm_put_image_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.shmseg = shmseg; + xcb_out.id = id; + xcb_out.offset = offset; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.src_w = src_w; + xcb_out.src_h = src_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.send_event = send_event; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_shm_put_image + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t id + ** @param uint32_t offset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_w + ** @param uint16_t src_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint16_t width + ** @param uint16_t height + ** @param uint8_t send_event + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_shm_put_image (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t id /**< */, + uint32_t offset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_w /**< */, + uint16_t src_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint8_t send_event /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xv_id, + /* opcode */ XCB_XV_SHM_PUT_IMAGE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xv_shm_put_image_request_t xcb_out; + + xcb_out.port = port; + xcb_out.drawable = drawable; + xcb_out.gc = gc; + xcb_out.shmseg = shmseg; + xcb_out.id = id; + xcb_out.offset = offset; + xcb_out.src_x = src_x; + xcb_out.src_y = src_y; + xcb_out.src_w = src_w; + xcb_out.src_h = src_h; + xcb_out.drw_x = drw_x; + xcb_out.drw_y = drw_y; + xcb_out.drw_w = drw_w; + xcb_out.drw_h = drw_h; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.send_event = send_event; + memset(xcb_out.pad0, 0, 3); + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + diff --git a/external/mit/xorg/lib/libxcb/files/xv.h b/external/mit/xorg/lib/libxcb/files/xv.h new file mode 100644 index 000000000..18c0e554e --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xv.h @@ -0,0 +1,3338 @@ +/* + * This file generated automatically from xv.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_Xv_API XCB Xv API + * @brief Xv XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XV_H +#define __XV_H + +#include "xcb.h" +#include "xproto.h" +#include "shm.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_XV_MAJOR_VERSION 2 +#define XCB_XV_MINOR_VERSION 2 + +extern xcb_extension_t xcb_xv_id; + +typedef uint32_t xcb_xv_port_t; + +/** + * @brief xcb_xv_port_iterator_t + **/ +typedef struct xcb_xv_port_iterator_t { + xcb_xv_port_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xv_port_iterator_t; + +typedef uint32_t xcb_xv_encoding_t; + +/** + * @brief xcb_xv_encoding_iterator_t + **/ +typedef struct xcb_xv_encoding_iterator_t { + xcb_xv_encoding_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xv_encoding_iterator_t; + +typedef enum xcb_xv_type_t { + XCB_XV_TYPE_INPUT_MASK = 1, + XCB_XV_TYPE_OUTPUT_MASK = 2, + XCB_XV_TYPE_VIDEO_MASK = 4, + XCB_XV_TYPE_STILL_MASK = 8, + XCB_XV_TYPE_IMAGE_MASK = 16 +} xcb_xv_type_t; + +typedef enum xcb_xv_image_format_info_type_t { + XCB_XV_IMAGE_FORMAT_INFO_TYPE_RGB, + XCB_XV_IMAGE_FORMAT_INFO_TYPE_YUV +} xcb_xv_image_format_info_type_t; + +typedef enum xcb_xv_image_format_info_format_t { + XCB_XV_IMAGE_FORMAT_INFO_FORMAT_PACKED, + XCB_XV_IMAGE_FORMAT_INFO_FORMAT_PLANAR +} xcb_xv_image_format_info_format_t; + +typedef enum xcb_xv_attribute_flag_t { + XCB_XV_ATTRIBUTE_FLAG_GETTABLE = 1, + XCB_XV_ATTRIBUTE_FLAG_SETTABLE = 2 +} xcb_xv_attribute_flag_t; + +typedef enum xcb_xv_video_notify_reason_t { + XCB_XV_VIDEO_NOTIFY_REASON_STARTED, + XCB_XV_VIDEO_NOTIFY_REASON_STOPPED, + XCB_XV_VIDEO_NOTIFY_REASON_BUSY, + XCB_XV_VIDEO_NOTIFY_REASON_PREEMPTED, + XCB_XV_VIDEO_NOTIFY_REASON_HARD_ERROR +} xcb_xv_video_notify_reason_t; + +typedef enum xcb_xv_scanline_order_t { + XCB_XV_SCANLINE_ORDER_TOP_TO_BOTTOM, + XCB_XV_SCANLINE_ORDER_BOTTOM_TO_TOP +} xcb_xv_scanline_order_t; + +typedef enum xcb_xv_grab_port_status_t { + XCB_XV_GRAB_PORT_STATUS_SUCCESS, + XCB_XV_GRAB_PORT_STATUS_BAD_EXTENSION, + XCB_XV_GRAB_PORT_STATUS_ALREADY_GRABBED, + XCB_XV_GRAB_PORT_STATUS_INVALID_TIME, + XCB_XV_GRAB_PORT_STATUS_BAD_REPLY, + XCB_XV_GRAB_PORT_STATUS_BAD_ALLOC +} xcb_xv_grab_port_status_t; + +/** + * @brief xcb_xv_rational_t + **/ +typedef struct xcb_xv_rational_t { + int32_t numerator; /**< */ + int32_t denominator; /**< */ +} xcb_xv_rational_t; + +/** + * @brief xcb_xv_rational_iterator_t + **/ +typedef struct xcb_xv_rational_iterator_t { + xcb_xv_rational_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xv_rational_iterator_t; + +/** + * @brief xcb_xv_format_t + **/ +typedef struct xcb_xv_format_t { + xcb_visualid_t visual; /**< */ + uint8_t depth; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xv_format_t; + +/** + * @brief xcb_xv_format_iterator_t + **/ +typedef struct xcb_xv_format_iterator_t { + xcb_xv_format_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xv_format_iterator_t; + +/** + * @brief xcb_xv_adaptor_info_t + **/ +typedef struct xcb_xv_adaptor_info_t { + xcb_xv_port_t base_id; /**< */ + uint16_t name_size; /**< */ + uint16_t num_ports; /**< */ + uint16_t num_formats; /**< */ + uint8_t type; /**< */ + uint8_t pad0; /**< */ +} xcb_xv_adaptor_info_t; + +/** + * @brief xcb_xv_adaptor_info_iterator_t + **/ +typedef struct xcb_xv_adaptor_info_iterator_t { + xcb_xv_adaptor_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xv_adaptor_info_iterator_t; + +/** + * @brief xcb_xv_encoding_info_t + **/ +typedef struct xcb_xv_encoding_info_t { + xcb_xv_encoding_t encoding; /**< */ + uint16_t name_size; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint8_t pad0[2]; /**< */ + xcb_xv_rational_t rate; /**< */ +} xcb_xv_encoding_info_t; + +/** + * @brief xcb_xv_encoding_info_iterator_t + **/ +typedef struct xcb_xv_encoding_info_iterator_t { + xcb_xv_encoding_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xv_encoding_info_iterator_t; + +/** + * @brief xcb_xv_image_t + **/ +typedef struct xcb_xv_image_t { + uint32_t id; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint32_t data_size; /**< */ + uint32_t num_planes; /**< */ +} xcb_xv_image_t; + +/** + * @brief xcb_xv_image_iterator_t + **/ +typedef struct xcb_xv_image_iterator_t { + xcb_xv_image_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xv_image_iterator_t; + +/** + * @brief xcb_xv_attribute_info_t + **/ +typedef struct xcb_xv_attribute_info_t { + uint32_t flags; /**< */ + int32_t min; /**< */ + int32_t max; /**< */ + uint32_t size; /**< */ +} xcb_xv_attribute_info_t; + +/** + * @brief xcb_xv_attribute_info_iterator_t + **/ +typedef struct xcb_xv_attribute_info_iterator_t { + xcb_xv_attribute_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xv_attribute_info_iterator_t; + +/** + * @brief xcb_xv_image_format_info_t + **/ +typedef struct xcb_xv_image_format_info_t { + uint32_t id; /**< */ + uint8_t type; /**< */ + uint8_t byte_order; /**< */ + uint8_t pad0[2]; /**< */ + uint8_t guid[16]; /**< */ + uint8_t bpp; /**< */ + uint8_t num_planes; /**< */ + uint8_t pad1[2]; /**< */ + uint8_t depth; /**< */ + uint8_t pad2[3]; /**< */ + uint32_t red_mask; /**< */ + uint32_t green_mask; /**< */ + uint32_t blue_mask; /**< */ + uint8_t format; /**< */ + uint8_t pad3[3]; /**< */ + uint32_t y_sample_bits; /**< */ + uint32_t u_sample_bits; /**< */ + uint32_t v_sample_bits; /**< */ + uint32_t vhorz_y_period; /**< */ + uint32_t vhorz_u_period; /**< */ + uint32_t vhorz_v_period; /**< */ + uint32_t vvert_y_period; /**< */ + uint32_t vvert_u_period; /**< */ + uint32_t vvert_v_period; /**< */ + uint8_t vcomp_order[32]; /**< */ + uint8_t vscanline_order; /**< */ + uint8_t pad4[11]; /**< */ +} xcb_xv_image_format_info_t; + +/** + * @brief xcb_xv_image_format_info_iterator_t + **/ +typedef struct xcb_xv_image_format_info_iterator_t { + xcb_xv_image_format_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xv_image_format_info_iterator_t; + +/** Opcode for xcb_xv_bad_port. */ +#define XCB_XV_BAD_PORT 0 + +/** + * @brief xcb_xv_bad_port_error_t + **/ +typedef struct xcb_xv_bad_port_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_xv_bad_port_error_t; + +/** Opcode for xcb_xv_bad_encoding. */ +#define XCB_XV_BAD_ENCODING 1 + +/** + * @brief xcb_xv_bad_encoding_error_t + **/ +typedef struct xcb_xv_bad_encoding_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_xv_bad_encoding_error_t; + +/** Opcode for xcb_xv_bad_control. */ +#define XCB_XV_BAD_CONTROL 2 + +/** + * @brief xcb_xv_bad_control_error_t + **/ +typedef struct xcb_xv_bad_control_error_t { + uint8_t response_type; /**< */ + uint8_t error_code; /**< */ + uint16_t sequence; /**< */ +} xcb_xv_bad_control_error_t; + +/** Opcode for xcb_xv_video_notify. */ +#define XCB_XV_VIDEO_NOTIFY 0 + +/** + * @brief xcb_xv_video_notify_event_t + **/ +typedef struct xcb_xv_video_notify_event_t { + uint8_t response_type; /**< */ + uint8_t reason; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_xv_port_t port; /**< */ +} xcb_xv_video_notify_event_t; + +/** Opcode for xcb_xv_port_notify. */ +#define XCB_XV_PORT_NOTIFY 1 + +/** + * @brief xcb_xv_port_notify_event_t + **/ +typedef struct xcb_xv_port_notify_event_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + xcb_timestamp_t time; /**< */ + xcb_xv_port_t port; /**< */ + xcb_atom_t attribute; /**< */ + int32_t value; /**< */ +} xcb_xv_port_notify_event_t; + +/** + * @brief xcb_xv_query_extension_cookie_t + **/ +typedef struct xcb_xv_query_extension_cookie_t { + unsigned int sequence; /**< */ +} xcb_xv_query_extension_cookie_t; + +/** Opcode for xcb_xv_query_extension. */ +#define XCB_XV_QUERY_EXTENSION 0 + +/** + * @brief xcb_xv_query_extension_request_t + **/ +typedef struct xcb_xv_query_extension_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_xv_query_extension_request_t; + +/** + * @brief xcb_xv_query_extension_reply_t + **/ +typedef struct xcb_xv_query_extension_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t major; /**< */ + uint16_t minor; /**< */ +} xcb_xv_query_extension_reply_t; + +/** + * @brief xcb_xv_query_adaptors_cookie_t + **/ +typedef struct xcb_xv_query_adaptors_cookie_t { + unsigned int sequence; /**< */ +} xcb_xv_query_adaptors_cookie_t; + +/** Opcode for xcb_xv_query_adaptors. */ +#define XCB_XV_QUERY_ADAPTORS 1 + +/** + * @brief xcb_xv_query_adaptors_request_t + **/ +typedef struct xcb_xv_query_adaptors_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_window_t window; /**< */ +} xcb_xv_query_adaptors_request_t; + +/** + * @brief xcb_xv_query_adaptors_reply_t + **/ +typedef struct xcb_xv_query_adaptors_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t num_adaptors; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_xv_query_adaptors_reply_t; + +/** + * @brief xcb_xv_query_encodings_cookie_t + **/ +typedef struct xcb_xv_query_encodings_cookie_t { + unsigned int sequence; /**< */ +} xcb_xv_query_encodings_cookie_t; + +/** Opcode for xcb_xv_query_encodings. */ +#define XCB_XV_QUERY_ENCODINGS 2 + +/** + * @brief xcb_xv_query_encodings_request_t + **/ +typedef struct xcb_xv_query_encodings_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ +} xcb_xv_query_encodings_request_t; + +/** + * @brief xcb_xv_query_encodings_reply_t + **/ +typedef struct xcb_xv_query_encodings_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t num_encodings; /**< */ + uint8_t pad1[22]; /**< */ +} xcb_xv_query_encodings_reply_t; + +/** + * @brief xcb_xv_grab_port_cookie_t + **/ +typedef struct xcb_xv_grab_port_cookie_t { + unsigned int sequence; /**< */ +} xcb_xv_grab_port_cookie_t; + +/** Opcode for xcb_xv_grab_port. */ +#define XCB_XV_GRAB_PORT 3 + +/** + * @brief xcb_xv_grab_port_request_t + **/ +typedef struct xcb_xv_grab_port_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_timestamp_t time; /**< */ +} xcb_xv_grab_port_request_t; + +/** + * @brief xcb_xv_grab_port_reply_t + **/ +typedef struct xcb_xv_grab_port_reply_t { + uint8_t response_type; /**< */ + uint8_t result; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ +} xcb_xv_grab_port_reply_t; + +/** Opcode for xcb_xv_ungrab_port. */ +#define XCB_XV_UNGRAB_PORT 4 + +/** + * @brief xcb_xv_ungrab_port_request_t + **/ +typedef struct xcb_xv_ungrab_port_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_timestamp_t time; /**< */ +} xcb_xv_ungrab_port_request_t; + +/** Opcode for xcb_xv_put_video. */ +#define XCB_XV_PUT_VIDEO 5 + +/** + * @brief xcb_xv_put_video_request_t + **/ +typedef struct xcb_xv_put_video_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t vid_x; /**< */ + int16_t vid_y; /**< */ + uint16_t vid_w; /**< */ + uint16_t vid_h; /**< */ + int16_t drw_x; /**< */ + int16_t drw_y; /**< */ + uint16_t drw_w; /**< */ + uint16_t drw_h; /**< */ +} xcb_xv_put_video_request_t; + +/** Opcode for xcb_xv_put_still. */ +#define XCB_XV_PUT_STILL 6 + +/** + * @brief xcb_xv_put_still_request_t + **/ +typedef struct xcb_xv_put_still_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t vid_x; /**< */ + int16_t vid_y; /**< */ + uint16_t vid_w; /**< */ + uint16_t vid_h; /**< */ + int16_t drw_x; /**< */ + int16_t drw_y; /**< */ + uint16_t drw_w; /**< */ + uint16_t drw_h; /**< */ +} xcb_xv_put_still_request_t; + +/** Opcode for xcb_xv_get_video. */ +#define XCB_XV_GET_VIDEO 7 + +/** + * @brief xcb_xv_get_video_request_t + **/ +typedef struct xcb_xv_get_video_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t vid_x; /**< */ + int16_t vid_y; /**< */ + uint16_t vid_w; /**< */ + uint16_t vid_h; /**< */ + int16_t drw_x; /**< */ + int16_t drw_y; /**< */ + uint16_t drw_w; /**< */ + uint16_t drw_h; /**< */ +} xcb_xv_get_video_request_t; + +/** Opcode for xcb_xv_get_still. */ +#define XCB_XV_GET_STILL 8 + +/** + * @brief xcb_xv_get_still_request_t + **/ +typedef struct xcb_xv_get_still_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + int16_t vid_x; /**< */ + int16_t vid_y; /**< */ + uint16_t vid_w; /**< */ + uint16_t vid_h; /**< */ + int16_t drw_x; /**< */ + int16_t drw_y; /**< */ + uint16_t drw_w; /**< */ + uint16_t drw_h; /**< */ +} xcb_xv_get_still_request_t; + +/** Opcode for xcb_xv_stop_video. */ +#define XCB_XV_STOP_VIDEO 9 + +/** + * @brief xcb_xv_stop_video_request_t + **/ +typedef struct xcb_xv_stop_video_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_drawable_t drawable; /**< */ +} xcb_xv_stop_video_request_t; + +/** Opcode for xcb_xv_select_video_notify. */ +#define XCB_XV_SELECT_VIDEO_NOTIFY 10 + +/** + * @brief xcb_xv_select_video_notify_request_t + **/ +typedef struct xcb_xv_select_video_notify_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_drawable_t drawable; /**< */ + uint8_t onoff; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xv_select_video_notify_request_t; + +/** Opcode for xcb_xv_select_port_notify. */ +#define XCB_XV_SELECT_PORT_NOTIFY 11 + +/** + * @brief xcb_xv_select_port_notify_request_t + **/ +typedef struct xcb_xv_select_port_notify_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + uint8_t onoff; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xv_select_port_notify_request_t; + +/** + * @brief xcb_xv_query_best_size_cookie_t + **/ +typedef struct xcb_xv_query_best_size_cookie_t { + unsigned int sequence; /**< */ +} xcb_xv_query_best_size_cookie_t; + +/** Opcode for xcb_xv_query_best_size. */ +#define XCB_XV_QUERY_BEST_SIZE 12 + +/** + * @brief xcb_xv_query_best_size_request_t + **/ +typedef struct xcb_xv_query_best_size_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + uint16_t vid_w; /**< */ + uint16_t vid_h; /**< */ + uint16_t drw_w; /**< */ + uint16_t drw_h; /**< */ + uint8_t motion; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xv_query_best_size_request_t; + +/** + * @brief xcb_xv_query_best_size_reply_t + **/ +typedef struct xcb_xv_query_best_size_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t actual_width; /**< */ + uint16_t actual_height; /**< */ +} xcb_xv_query_best_size_reply_t; + +/** Opcode for xcb_xv_set_port_attribute. */ +#define XCB_XV_SET_PORT_ATTRIBUTE 13 + +/** + * @brief xcb_xv_set_port_attribute_request_t + **/ +typedef struct xcb_xv_set_port_attribute_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_atom_t attribute; /**< */ + int32_t value; /**< */ +} xcb_xv_set_port_attribute_request_t; + +/** + * @brief xcb_xv_get_port_attribute_cookie_t + **/ +typedef struct xcb_xv_get_port_attribute_cookie_t { + unsigned int sequence; /**< */ +} xcb_xv_get_port_attribute_cookie_t; + +/** Opcode for xcb_xv_get_port_attribute. */ +#define XCB_XV_GET_PORT_ATTRIBUTE 14 + +/** + * @brief xcb_xv_get_port_attribute_request_t + **/ +typedef struct xcb_xv_get_port_attribute_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_atom_t attribute; /**< */ +} xcb_xv_get_port_attribute_request_t; + +/** + * @brief xcb_xv_get_port_attribute_reply_t + **/ +typedef struct xcb_xv_get_port_attribute_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + int32_t value; /**< */ +} xcb_xv_get_port_attribute_reply_t; + +/** + * @brief xcb_xv_query_port_attributes_cookie_t + **/ +typedef struct xcb_xv_query_port_attributes_cookie_t { + unsigned int sequence; /**< */ +} xcb_xv_query_port_attributes_cookie_t; + +/** Opcode for xcb_xv_query_port_attributes. */ +#define XCB_XV_QUERY_PORT_ATTRIBUTES 15 + +/** + * @brief xcb_xv_query_port_attributes_request_t + **/ +typedef struct xcb_xv_query_port_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ +} xcb_xv_query_port_attributes_request_t; + +/** + * @brief xcb_xv_query_port_attributes_reply_t + **/ +typedef struct xcb_xv_query_port_attributes_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_attributes; /**< */ + uint32_t text_size; /**< */ + uint8_t pad1[16]; /**< */ +} xcb_xv_query_port_attributes_reply_t; + +/** + * @brief xcb_xv_list_image_formats_cookie_t + **/ +typedef struct xcb_xv_list_image_formats_cookie_t { + unsigned int sequence; /**< */ +} xcb_xv_list_image_formats_cookie_t; + +/** Opcode for xcb_xv_list_image_formats. */ +#define XCB_XV_LIST_IMAGE_FORMATS 16 + +/** + * @brief xcb_xv_list_image_formats_request_t + **/ +typedef struct xcb_xv_list_image_formats_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ +} xcb_xv_list_image_formats_request_t; + +/** + * @brief xcb_xv_list_image_formats_reply_t + **/ +typedef struct xcb_xv_list_image_formats_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_formats; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_xv_list_image_formats_reply_t; + +/** + * @brief xcb_xv_query_image_attributes_cookie_t + **/ +typedef struct xcb_xv_query_image_attributes_cookie_t { + unsigned int sequence; /**< */ +} xcb_xv_query_image_attributes_cookie_t; + +/** Opcode for xcb_xv_query_image_attributes. */ +#define XCB_XV_QUERY_IMAGE_ATTRIBUTES 17 + +/** + * @brief xcb_xv_query_image_attributes_request_t + **/ +typedef struct xcb_xv_query_image_attributes_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + uint32_t id; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_xv_query_image_attributes_request_t; + +/** + * @brief xcb_xv_query_image_attributes_reply_t + **/ +typedef struct xcb_xv_query_image_attributes_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num_planes; /**< */ + uint32_t data_size; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint8_t pad1[12]; /**< */ +} xcb_xv_query_image_attributes_reply_t; + +/** Opcode for xcb_xv_put_image. */ +#define XCB_XV_PUT_IMAGE 18 + +/** + * @brief xcb_xv_put_image_request_t + **/ +typedef struct xcb_xv_put_image_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + uint32_t id; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ + uint16_t src_w; /**< */ + uint16_t src_h; /**< */ + int16_t drw_x; /**< */ + int16_t drw_y; /**< */ + uint16_t drw_w; /**< */ + uint16_t drw_h; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_xv_put_image_request_t; + +/** Opcode for xcb_xv_shm_put_image. */ +#define XCB_XV_SHM_PUT_IMAGE 19 + +/** + * @brief xcb_xv_shm_put_image_request_t + **/ +typedef struct xcb_xv_shm_put_image_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port; /**< */ + xcb_drawable_t drawable; /**< */ + xcb_gcontext_t gc; /**< */ + xcb_shm_seg_t shmseg; /**< */ + uint32_t id; /**< */ + uint32_t offset; /**< */ + int16_t src_x; /**< */ + int16_t src_y; /**< */ + uint16_t src_w; /**< */ + uint16_t src_h; /**< */ + int16_t drw_x; /**< */ + int16_t drw_y; /**< */ + uint16_t drw_w; /**< */ + uint16_t drw_h; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint8_t send_event; /**< */ + uint8_t pad0[3]; /**< */ +} xcb_xv_shm_put_image_request_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xv_port_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xv_port_t) + */ + +/***************************************************************************** + ** + ** void xcb_xv_port_next + ** + ** @param xcb_xv_port_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_port_next (xcb_xv_port_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xv_port_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_port_end + ** + ** @param xcb_xv_port_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_port_end (xcb_xv_port_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xv_encoding_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xv_encoding_t) + */ + +/***************************************************************************** + ** + ** void xcb_xv_encoding_next + ** + ** @param xcb_xv_encoding_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_encoding_next (xcb_xv_encoding_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xv_encoding_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_encoding_end + ** + ** @param xcb_xv_encoding_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_encoding_end (xcb_xv_encoding_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xv_rational_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xv_rational_t) + */ + +/***************************************************************************** + ** + ** void xcb_xv_rational_next + ** + ** @param xcb_xv_rational_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_rational_next (xcb_xv_rational_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xv_rational_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_rational_end + ** + ** @param xcb_xv_rational_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_rational_end (xcb_xv_rational_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xv_format_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xv_format_t) + */ + +/***************************************************************************** + ** + ** void xcb_xv_format_next + ** + ** @param xcb_xv_format_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_format_next (xcb_xv_format_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xv_format_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_format_end + ** + ** @param xcb_xv_format_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_format_end (xcb_xv_format_iterator_t i /**< */); + +int +xcb_xv_adaptor_info_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_xv_adaptor_info_name + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xv_adaptor_info_name (const xcb_xv_adaptor_info_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_adaptor_info_name_length + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_adaptor_info_name_length (const xcb_xv_adaptor_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_adaptor_info_name_end + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_adaptor_info_name_end (const xcb_xv_adaptor_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xv_format_t * xcb_xv_adaptor_info_formats + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns xcb_xv_format_t * + ** + *****************************************************************************/ + +xcb_xv_format_t * +xcb_xv_adaptor_info_formats (const xcb_xv_adaptor_info_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_adaptor_info_formats_length + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_adaptor_info_formats_length (const xcb_xv_adaptor_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xv_format_iterator_t xcb_xv_adaptor_info_formats_iterator + ** + ** @param const xcb_xv_adaptor_info_t *R + ** @returns xcb_xv_format_iterator_t + ** + *****************************************************************************/ + +xcb_xv_format_iterator_t +xcb_xv_adaptor_info_formats_iterator (const xcb_xv_adaptor_info_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xv_adaptor_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xv_adaptor_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_xv_adaptor_info_next + ** + ** @param xcb_xv_adaptor_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_adaptor_info_next (xcb_xv_adaptor_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xv_adaptor_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_adaptor_info_end + ** + ** @param xcb_xv_adaptor_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_adaptor_info_end (xcb_xv_adaptor_info_iterator_t i /**< */); + +int +xcb_xv_encoding_info_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_xv_encoding_info_name + ** + ** @param const xcb_xv_encoding_info_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xv_encoding_info_name (const xcb_xv_encoding_info_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_encoding_info_name_length + ** + ** @param const xcb_xv_encoding_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_encoding_info_name_length (const xcb_xv_encoding_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_encoding_info_name_end + ** + ** @param const xcb_xv_encoding_info_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_encoding_info_name_end (const xcb_xv_encoding_info_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xv_encoding_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xv_encoding_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_xv_encoding_info_next + ** + ** @param xcb_xv_encoding_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_encoding_info_next (xcb_xv_encoding_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xv_encoding_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_encoding_info_end + ** + ** @param xcb_xv_encoding_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_encoding_info_end (xcb_xv_encoding_info_iterator_t i /**< */); + +int +xcb_xv_image_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xv_image_pitches + ** + ** @param const xcb_xv_image_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xv_image_pitches (const xcb_xv_image_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_image_pitches_length + ** + ** @param const xcb_xv_image_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_image_pitches_length (const xcb_xv_image_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_pitches_end + ** + ** @param const xcb_xv_image_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_pitches_end (const xcb_xv_image_t *R /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xv_image_offsets + ** + ** @param const xcb_xv_image_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xv_image_offsets (const xcb_xv_image_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_image_offsets_length + ** + ** @param const xcb_xv_image_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_image_offsets_length (const xcb_xv_image_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_offsets_end + ** + ** @param const xcb_xv_image_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_offsets_end (const xcb_xv_image_t *R /**< */); + + +/***************************************************************************** + ** + ** uint8_t * xcb_xv_image_data + ** + ** @param const xcb_xv_image_t *R + ** @returns uint8_t * + ** + *****************************************************************************/ + +uint8_t * +xcb_xv_image_data (const xcb_xv_image_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_image_data_length + ** + ** @param const xcb_xv_image_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_image_data_length (const xcb_xv_image_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_data_end + ** + ** @param const xcb_xv_image_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_data_end (const xcb_xv_image_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xv_image_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xv_image_t) + */ + +/***************************************************************************** + ** + ** void xcb_xv_image_next + ** + ** @param xcb_xv_image_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_image_next (xcb_xv_image_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xv_image_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_end + ** + ** @param xcb_xv_image_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_end (xcb_xv_image_iterator_t i /**< */); + +int +xcb_xv_attribute_info_sizeof (const void *_buffer /**< */); + + +/***************************************************************************** + ** + ** char * xcb_xv_attribute_info_name + ** + ** @param const xcb_xv_attribute_info_t *R + ** @returns char * + ** + *****************************************************************************/ + +char * +xcb_xv_attribute_info_name (const xcb_xv_attribute_info_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_attribute_info_name_length + ** + ** @param const xcb_xv_attribute_info_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_attribute_info_name_length (const xcb_xv_attribute_info_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_attribute_info_name_end + ** + ** @param const xcb_xv_attribute_info_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_attribute_info_name_end (const xcb_xv_attribute_info_t *R /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xv_attribute_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xv_attribute_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_xv_attribute_info_next + ** + ** @param xcb_xv_attribute_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_attribute_info_next (xcb_xv_attribute_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xv_attribute_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_attribute_info_end + ** + ** @param xcb_xv_attribute_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_attribute_info_end (xcb_xv_attribute_info_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xv_image_format_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xv_image_format_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_xv_image_format_info_next + ** + ** @param xcb_xv_image_format_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xv_image_format_info_next (xcb_xv_image_format_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xv_image_format_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_image_format_info_end + ** + ** @param xcb_xv_image_format_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_image_format_info_end (xcb_xv_image_format_info_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xv_query_extension_cookie_t xcb_xv_query_extension + ** + ** @param xcb_connection_t *c + ** @returns xcb_xv_query_extension_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_extension_cookie_t +xcb_xv_query_extension (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xv_query_extension_cookie_t xcb_xv_query_extension_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xv_query_extension_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_extension_cookie_t +xcb_xv_query_extension_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xv_query_extension_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xv_query_extension_reply_t * xcb_xv_query_extension_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_extension_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_extension_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_extension_reply_t * +xcb_xv_query_extension_reply (xcb_connection_t *c /**< */, + xcb_xv_query_extension_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xv_query_adaptors_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xv_query_adaptors_cookie_t xcb_xv_query_adaptors + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xv_query_adaptors_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_adaptors_cookie_t +xcb_xv_query_adaptors (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xv_query_adaptors_cookie_t xcb_xv_query_adaptors_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_window_t window + ** @returns xcb_xv_query_adaptors_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_adaptors_cookie_t +xcb_xv_query_adaptors_unchecked (xcb_connection_t *c /**< */, + xcb_window_t window /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_query_adaptors_info_length + ** + ** @param const xcb_xv_query_adaptors_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_adaptors_info_length (const xcb_xv_query_adaptors_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xv_adaptor_info_iterator_t xcb_xv_query_adaptors_info_iterator + ** + ** @param const xcb_xv_query_adaptors_reply_t *R + ** @returns xcb_xv_adaptor_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_adaptor_info_iterator_t +xcb_xv_query_adaptors_info_iterator (const xcb_xv_query_adaptors_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xv_query_adaptors_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xv_query_adaptors_reply_t * xcb_xv_query_adaptors_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_adaptors_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_adaptors_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_adaptors_reply_t * +xcb_xv_query_adaptors_reply (xcb_connection_t *c /**< */, + xcb_xv_query_adaptors_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xv_query_encodings_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xv_query_encodings_cookie_t xcb_xv_query_encodings + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_query_encodings_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_encodings_cookie_t +xcb_xv_query_encodings (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xv_query_encodings_cookie_t xcb_xv_query_encodings_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_query_encodings_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_encodings_cookie_t +xcb_xv_query_encodings_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_query_encodings_info_length + ** + ** @param const xcb_xv_query_encodings_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_encodings_info_length (const xcb_xv_query_encodings_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xv_encoding_info_iterator_t xcb_xv_query_encodings_info_iterator + ** + ** @param const xcb_xv_query_encodings_reply_t *R + ** @returns xcb_xv_encoding_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_encoding_info_iterator_t +xcb_xv_query_encodings_info_iterator (const xcb_xv_query_encodings_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xv_query_encodings_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xv_query_encodings_reply_t * xcb_xv_query_encodings_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_encodings_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_encodings_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_encodings_reply_t * +xcb_xv_query_encodings_reply (xcb_connection_t *c /**< */, + xcb_xv_query_encodings_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xv_grab_port_cookie_t xcb_xv_grab_port + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_timestamp_t time + ** @returns xcb_xv_grab_port_cookie_t + ** + *****************************************************************************/ + +xcb_xv_grab_port_cookie_t +xcb_xv_grab_port (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_timestamp_t time /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xv_grab_port_cookie_t xcb_xv_grab_port_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_timestamp_t time + ** @returns xcb_xv_grab_port_cookie_t + ** + *****************************************************************************/ + +xcb_xv_grab_port_cookie_t +xcb_xv_grab_port_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_timestamp_t time /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xv_grab_port_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xv_grab_port_reply_t * xcb_xv_grab_port_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_grab_port_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_grab_port_reply_t * + ** + *****************************************************************************/ + +xcb_xv_grab_port_reply_t * +xcb_xv_grab_port_reply (xcb_connection_t *c /**< */, + xcb_xv_grab_port_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_ungrab_port_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_ungrab_port_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_timestamp_t time /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_ungrab_port + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_timestamp_t time + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_ungrab_port (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_timestamp_t time /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_video_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_video_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_video + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_video (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_still_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_still_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_still + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_still (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_get_video_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_get_video_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_get_video + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_get_video (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_get_still_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_get_still_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_get_still + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param int16_t vid_x + ** @param int16_t vid_y + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_get_still (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + int16_t vid_x /**< */, + int16_t vid_y /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_stop_video_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_stop_video_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_stop_video + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_stop_video (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_select_video_notify_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint8_t onoff + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_select_video_notify_checked (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint8_t onoff /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_select_video_notify + ** + ** @param xcb_connection_t *c + ** @param xcb_drawable_t drawable + ** @param uint8_t onoff + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_select_video_notify (xcb_connection_t *c /**< */, + xcb_drawable_t drawable /**< */, + uint8_t onoff /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_select_port_notify_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint8_t onoff + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_select_port_notify_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint8_t onoff /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_select_port_notify + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint8_t onoff + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_select_port_notify (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint8_t onoff /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xv_query_best_size_cookie_t xcb_xv_query_best_size + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint8_t motion + ** @returns xcb_xv_query_best_size_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_best_size_cookie_t +xcb_xv_query_best_size (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint8_t motion /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xv_query_best_size_cookie_t xcb_xv_query_best_size_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint16_t vid_w + ** @param uint16_t vid_h + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint8_t motion + ** @returns xcb_xv_query_best_size_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_best_size_cookie_t +xcb_xv_query_best_size_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint16_t vid_w /**< */, + uint16_t vid_h /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint8_t motion /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xv_query_best_size_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xv_query_best_size_reply_t * xcb_xv_query_best_size_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_best_size_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_best_size_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_best_size_reply_t * +xcb_xv_query_best_size_reply (xcb_connection_t *c /**< */, + xcb_xv_query_best_size_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_set_port_attribute_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_atom_t attribute + ** @param int32_t value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_set_port_attribute_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_atom_t attribute /**< */, + int32_t value /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_set_port_attribute + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_atom_t attribute + ** @param int32_t value + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_set_port_attribute (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_atom_t attribute /**< */, + int32_t value /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xv_get_port_attribute_cookie_t xcb_xv_get_port_attribute + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_atom_t attribute + ** @returns xcb_xv_get_port_attribute_cookie_t + ** + *****************************************************************************/ + +xcb_xv_get_port_attribute_cookie_t +xcb_xv_get_port_attribute (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_atom_t attribute /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xv_get_port_attribute_cookie_t xcb_xv_get_port_attribute_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_atom_t attribute + ** @returns xcb_xv_get_port_attribute_cookie_t + ** + *****************************************************************************/ + +xcb_xv_get_port_attribute_cookie_t +xcb_xv_get_port_attribute_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_atom_t attribute /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xv_get_port_attribute_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xv_get_port_attribute_reply_t * xcb_xv_get_port_attribute_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_get_port_attribute_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_get_port_attribute_reply_t * + ** + *****************************************************************************/ + +xcb_xv_get_port_attribute_reply_t * +xcb_xv_get_port_attribute_reply (xcb_connection_t *c /**< */, + xcb_xv_get_port_attribute_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xv_query_port_attributes_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xv_query_port_attributes_cookie_t xcb_xv_query_port_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_query_port_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_port_attributes_cookie_t +xcb_xv_query_port_attributes (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xv_query_port_attributes_cookie_t xcb_xv_query_port_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_query_port_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_port_attributes_cookie_t +xcb_xv_query_port_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_query_port_attributes_attributes_length + ** + ** @param const xcb_xv_query_port_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_port_attributes_attributes_length (const xcb_xv_query_port_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xv_attribute_info_iterator_t xcb_xv_query_port_attributes_attributes_iterator + ** + ** @param const xcb_xv_query_port_attributes_reply_t *R + ** @returns xcb_xv_attribute_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_attribute_info_iterator_t +xcb_xv_query_port_attributes_attributes_iterator (const xcb_xv_query_port_attributes_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xv_query_port_attributes_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xv_query_port_attributes_reply_t * xcb_xv_query_port_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_port_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_port_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_port_attributes_reply_t * +xcb_xv_query_port_attributes_reply (xcb_connection_t *c /**< */, + xcb_xv_query_port_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xv_list_image_formats_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xv_list_image_formats_cookie_t xcb_xv_list_image_formats + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_list_image_formats_cookie_t + ** + *****************************************************************************/ + +xcb_xv_list_image_formats_cookie_t +xcb_xv_list_image_formats (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xv_list_image_formats_cookie_t xcb_xv_list_image_formats_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @returns xcb_xv_list_image_formats_cookie_t + ** + *****************************************************************************/ + +xcb_xv_list_image_formats_cookie_t +xcb_xv_list_image_formats_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */); + + +/***************************************************************************** + ** + ** xcb_xv_image_format_info_t * xcb_xv_list_image_formats_format + ** + ** @param const xcb_xv_list_image_formats_reply_t *R + ** @returns xcb_xv_image_format_info_t * + ** + *****************************************************************************/ + +xcb_xv_image_format_info_t * +xcb_xv_list_image_formats_format (const xcb_xv_list_image_formats_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_list_image_formats_format_length + ** + ** @param const xcb_xv_list_image_formats_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_list_image_formats_format_length (const xcb_xv_list_image_formats_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xv_image_format_info_iterator_t xcb_xv_list_image_formats_format_iterator + ** + ** @param const xcb_xv_list_image_formats_reply_t *R + ** @returns xcb_xv_image_format_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_image_format_info_iterator_t +xcb_xv_list_image_formats_format_iterator (const xcb_xv_list_image_formats_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xv_list_image_formats_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xv_list_image_formats_reply_t * xcb_xv_list_image_formats_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_list_image_formats_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_list_image_formats_reply_t * + ** + *****************************************************************************/ + +xcb_xv_list_image_formats_reply_t * +xcb_xv_list_image_formats_reply (xcb_connection_t *c /**< */, + xcb_xv_list_image_formats_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xv_query_image_attributes_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xv_query_image_attributes_cookie_t xcb_xv_query_image_attributes + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint32_t id + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_xv_query_image_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_image_attributes_cookie_t +xcb_xv_query_image_attributes (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint32_t id /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xv_query_image_attributes_cookie_t xcb_xv_query_image_attributes_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param uint32_t id + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_xv_query_image_attributes_cookie_t + ** + *****************************************************************************/ + +xcb_xv_query_image_attributes_cookie_t +xcb_xv_query_image_attributes_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + uint32_t id /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xv_query_image_attributes_pitches + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xv_query_image_attributes_pitches (const xcb_xv_query_image_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_query_image_attributes_pitches_length + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_image_attributes_pitches_length (const xcb_xv_query_image_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_query_image_attributes_pitches_end + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_query_image_attributes_pitches_end (const xcb_xv_query_image_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xv_query_image_attributes_offsets + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xv_query_image_attributes_offsets (const xcb_xv_query_image_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xv_query_image_attributes_offsets_length + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xv_query_image_attributes_offsets_length (const xcb_xv_query_image_attributes_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xv_query_image_attributes_offsets_end + ** + ** @param const xcb_xv_query_image_attributes_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xv_query_image_attributes_offsets_end (const xcb_xv_query_image_attributes_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xv_query_image_attributes_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xv_query_image_attributes_reply_t * xcb_xv_query_image_attributes_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_query_image_attributes_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xv_query_image_attributes_reply_t * + ** + *****************************************************************************/ + +xcb_xv_query_image_attributes_reply_t * +xcb_xv_query_image_attributes_reply (xcb_connection_t *c /**< */, + xcb_xv_query_image_attributes_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xv_put_image_sizeof (const void *_buffer /**< */, + uint32_t data_len /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_image_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t id + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_w + ** @param uint16_t src_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_image_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t id /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_w /**< */, + uint16_t src_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_put_image + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param uint32_t id + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_w + ** @param uint16_t src_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t data_len + ** @param const uint8_t *data + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_put_image (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + uint32_t id /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_w /**< */, + uint16_t src_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t data_len /**< */, + const uint8_t *data /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_shm_put_image_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t id + ** @param uint32_t offset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_w + ** @param uint16_t src_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint16_t width + ** @param uint16_t height + ** @param uint8_t send_event + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_shm_put_image_checked (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t id /**< */, + uint32_t offset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_w /**< */, + uint16_t src_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint8_t send_event /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xv_shm_put_image + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port + ** @param xcb_drawable_t drawable + ** @param xcb_gcontext_t gc + ** @param xcb_shm_seg_t shmseg + ** @param uint32_t id + ** @param uint32_t offset + ** @param int16_t src_x + ** @param int16_t src_y + ** @param uint16_t src_w + ** @param uint16_t src_h + ** @param int16_t drw_x + ** @param int16_t drw_y + ** @param uint16_t drw_w + ** @param uint16_t drw_h + ** @param uint16_t width + ** @param uint16_t height + ** @param uint8_t send_event + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xv_shm_put_image (xcb_connection_t *c /**< */, + xcb_xv_port_t port /**< */, + xcb_drawable_t drawable /**< */, + xcb_gcontext_t gc /**< */, + xcb_shm_seg_t shmseg /**< */, + uint32_t id /**< */, + uint32_t offset /**< */, + int16_t src_x /**< */, + int16_t src_y /**< */, + uint16_t src_w /**< */, + uint16_t src_h /**< */, + int16_t drw_x /**< */, + int16_t drw_y /**< */, + uint16_t drw_w /**< */, + uint16_t drw_h /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint8_t send_event /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/files/xvmc.c b/external/mit/xorg/lib/libxcb/files/xvmc.c new file mode 100644 index 000000000..87f012c2d --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xvmc.c @@ -0,0 +1,1425 @@ +/* + * This file generated automatically from xvmc.xml by c_client.py. + * Edit at your peril. + */ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif +#include +#include +#include +#include /* for offsetof() */ +#include "xcbext.h" +#include "xvmc.h" + +#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member) +#include "xproto.h" +#include "shm.h" +#include "xv.h" + +xcb_extension_t xcb_xvmc_id = { "XVideo-MotionCompensation", 0 }; + + +/***************************************************************************** + ** + ** void xcb_xvmc_context_next + ** + ** @param xcb_xvmc_context_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xvmc_context_next (xcb_xvmc_context_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xvmc_context_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_context_end + ** + ** @param xcb_xvmc_context_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_context_end (xcb_xvmc_context_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xvmc_surface_next + ** + ** @param xcb_xvmc_surface_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xvmc_surface_next (xcb_xvmc_surface_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xvmc_surface_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_surface_end + ** + ** @param xcb_xvmc_surface_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_surface_end (xcb_xvmc_surface_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xvmc_subpicture_next + ** + ** @param xcb_xvmc_subpicture_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xvmc_subpicture_next (xcb_xvmc_subpicture_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xvmc_subpicture_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_subpicture_end + ** + ** @param xcb_xvmc_subpicture_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_subpicture_end (xcb_xvmc_subpicture_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** void xcb_xvmc_surface_info_next + ** + ** @param xcb_xvmc_surface_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xvmc_surface_info_next (xcb_xvmc_surface_info_iterator_t *i /**< */) +{ + --i->rem; + ++i->data; + i->index += sizeof(xcb_xvmc_surface_info_t); +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_surface_info_end + ** + ** @param xcb_xvmc_surface_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_surface_info_end (xcb_xvmc_surface_info_iterator_t i /**< */) +{ + xcb_generic_iterator_t ret; + ret.data = i.data + i.rem; + ret.index = i.index + ((char *) ret.data - (char *) i.data); + ret.rem = 0; + return ret; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_query_version_cookie_t xcb_xvmc_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_xvmc_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_query_version_cookie_t +xcb_xvmc_query_version (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_query_version_cookie_t xcb_ret; + xcb_xvmc_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_query_version_cookie_t xcb_xvmc_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xvmc_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_query_version_cookie_t +xcb_xvmc_query_version_unchecked (xcb_connection_t *c /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_QUERY_VERSION, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_query_version_cookie_t xcb_ret; + xcb_xvmc_query_version_request_t xcb_out; + + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_query_version_reply_t * xcb_xvmc_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_query_version_reply_t * +xcb_xvmc_query_version_reply (xcb_connection_t *c /**< */, + xcb_xvmc_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xvmc_query_version_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xvmc_list_surface_types_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xvmc_list_surface_types_reply_t *_aux = (xcb_xvmc_list_surface_types_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xvmc_list_surface_types_reply_t); + xcb_tmp += xcb_block_len; + /* surfaces */ + xcb_block_len += _aux->num * sizeof(xcb_xvmc_surface_info_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xvmc_surface_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_list_surface_types_cookie_t xcb_xvmc_list_surface_types + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port_id + ** @returns xcb_xvmc_list_surface_types_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_list_surface_types_cookie_t +xcb_xvmc_list_surface_types (xcb_connection_t *c /**< */, + xcb_xv_port_t port_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_LIST_SURFACE_TYPES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_list_surface_types_cookie_t xcb_ret; + xcb_xvmc_list_surface_types_request_t xcb_out; + + xcb_out.port_id = port_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_list_surface_types_cookie_t xcb_xvmc_list_surface_types_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port_id + ** @returns xcb_xvmc_list_surface_types_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_list_surface_types_cookie_t +xcb_xvmc_list_surface_types_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_LIST_SURFACE_TYPES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_list_surface_types_cookie_t xcb_ret; + xcb_xvmc_list_surface_types_request_t xcb_out; + + xcb_out.port_id = port_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_surface_info_t * xcb_xvmc_list_surface_types_surfaces + ** + ** @param const xcb_xvmc_list_surface_types_reply_t *R + ** @returns xcb_xvmc_surface_info_t * + ** + *****************************************************************************/ + +xcb_xvmc_surface_info_t * +xcb_xvmc_list_surface_types_surfaces (const xcb_xvmc_list_surface_types_reply_t *R /**< */) +{ + return (xcb_xvmc_surface_info_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xvmc_list_surface_types_surfaces_length + ** + ** @param const xcb_xvmc_list_surface_types_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_list_surface_types_surfaces_length (const xcb_xvmc_list_surface_types_reply_t *R /**< */) +{ + return R->num; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_surface_info_iterator_t xcb_xvmc_list_surface_types_surfaces_iterator + ** + ** @param const xcb_xvmc_list_surface_types_reply_t *R + ** @returns xcb_xvmc_surface_info_iterator_t + ** + *****************************************************************************/ + +xcb_xvmc_surface_info_iterator_t +xcb_xvmc_list_surface_types_surfaces_iterator (const xcb_xvmc_list_surface_types_reply_t *R /**< */) +{ + xcb_xvmc_surface_info_iterator_t i; + i.data = (xcb_xvmc_surface_info_t *) (R + 1); + i.rem = R->num; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_list_surface_types_reply_t * xcb_xvmc_list_surface_types_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_list_surface_types_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_list_surface_types_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_list_surface_types_reply_t * +xcb_xvmc_list_surface_types_reply (xcb_connection_t *c /**< */, + xcb_xvmc_list_surface_types_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xvmc_list_surface_types_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + +int +xcb_xvmc_create_context_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xvmc_create_context_reply_t *_aux = (xcb_xvmc_create_context_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xvmc_create_context_reply_t); + xcb_tmp += xcb_block_len; + /* priv_data */ + xcb_block_len += _aux->length * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_create_context_cookie_t xcb_xvmc_create_context + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_context_t context_id + ** @param xcb_xv_port_t port_id + ** @param xcb_xvmc_surface_t surface_id + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t flags + ** @returns xcb_xvmc_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_context_cookie_t +xcb_xvmc_create_context (xcb_connection_t *c /**< */, + xcb_xvmc_context_t context_id /**< */, + xcb_xv_port_t port_id /**< */, + xcb_xvmc_surface_t surface_id /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t flags /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_create_context_cookie_t xcb_ret; + xcb_xvmc_create_context_request_t xcb_out; + + xcb_out.context_id = context_id; + xcb_out.port_id = port_id; + xcb_out.surface_id = surface_id; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.flags = flags; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_create_context_cookie_t xcb_xvmc_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_context_t context_id + ** @param xcb_xv_port_t port_id + ** @param xcb_xvmc_surface_t surface_id + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t flags + ** @returns xcb_xvmc_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_context_cookie_t +xcb_xvmc_create_context_unchecked (xcb_connection_t *c /**< */, + xcb_xvmc_context_t context_id /**< */, + xcb_xv_port_t port_id /**< */, + xcb_xvmc_surface_t surface_id /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t flags /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_CREATE_CONTEXT, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_create_context_cookie_t xcb_ret; + xcb_xvmc_create_context_request_t xcb_out; + + xcb_out.context_id = context_id; + xcb_out.port_id = port_id; + xcb_out.surface_id = surface_id; + xcb_out.width = width; + xcb_out.height = height; + xcb_out.flags = flags; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xvmc_create_context_priv_data + ** + ** @param const xcb_xvmc_create_context_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xvmc_create_context_priv_data (const xcb_xvmc_create_context_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xvmc_create_context_priv_data_length + ** + ** @param const xcb_xvmc_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_create_context_priv_data_length (const xcb_xvmc_create_context_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_create_context_priv_data_end + ** + ** @param const xcb_xvmc_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_create_context_priv_data_end (const xcb_xvmc_create_context_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_create_context_reply_t * xcb_xvmc_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_create_context_reply_t * +xcb_xvmc_create_context_reply (xcb_connection_t *c /**< */, + xcb_xvmc_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xvmc_create_context_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_context_t context_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_context_checked (xcb_connection_t *c /**< */, + xcb_xvmc_context_t context_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_DESTROY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xvmc_destroy_context_request_t xcb_out; + + xcb_out.context_id = context_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_context + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_context_t context_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_context (xcb_connection_t *c /**< */, + xcb_xvmc_context_t context_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_DESTROY_CONTEXT, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xvmc_destroy_context_request_t xcb_out; + + xcb_out.context_id = context_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xvmc_create_surface_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xvmc_create_surface_reply_t *_aux = (xcb_xvmc_create_surface_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xvmc_create_surface_reply_t); + xcb_tmp += xcb_block_len; + /* priv_data */ + xcb_block_len += _aux->length * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_create_surface_cookie_t xcb_xvmc_create_surface + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_surface_t surface_id + ** @param xcb_xvmc_context_t context_id + ** @returns xcb_xvmc_create_surface_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_surface_cookie_t +xcb_xvmc_create_surface (xcb_connection_t *c /**< */, + xcb_xvmc_surface_t surface_id /**< */, + xcb_xvmc_context_t context_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_CREATE_SURFACE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_create_surface_cookie_t xcb_ret; + xcb_xvmc_create_surface_request_t xcb_out; + + xcb_out.surface_id = surface_id; + xcb_out.context_id = context_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_create_surface_cookie_t xcb_xvmc_create_surface_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_surface_t surface_id + ** @param xcb_xvmc_context_t context_id + ** @returns xcb_xvmc_create_surface_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_surface_cookie_t +xcb_xvmc_create_surface_unchecked (xcb_connection_t *c /**< */, + xcb_xvmc_surface_t surface_id /**< */, + xcb_xvmc_context_t context_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_CREATE_SURFACE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_create_surface_cookie_t xcb_ret; + xcb_xvmc_create_surface_request_t xcb_out; + + xcb_out.surface_id = surface_id; + xcb_out.context_id = context_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xvmc_create_surface_priv_data + ** + ** @param const xcb_xvmc_create_surface_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xvmc_create_surface_priv_data (const xcb_xvmc_create_surface_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xvmc_create_surface_priv_data_length + ** + ** @param const xcb_xvmc_create_surface_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_create_surface_priv_data_length (const xcb_xvmc_create_surface_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_create_surface_priv_data_end + ** + ** @param const xcb_xvmc_create_surface_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_create_surface_priv_data_end (const xcb_xvmc_create_surface_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_create_surface_reply_t * xcb_xvmc_create_surface_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_create_surface_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_create_surface_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_create_surface_reply_t * +xcb_xvmc_create_surface_reply (xcb_connection_t *c /**< */, + xcb_xvmc_create_surface_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xvmc_create_surface_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_surface_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_surface_t surface_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_surface_checked (xcb_connection_t *c /**< */, + xcb_xvmc_surface_t surface_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_DESTROY_SURFACE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xvmc_destroy_surface_request_t xcb_out; + + xcb_out.surface_id = surface_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_surface + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_surface_t surface_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_surface (xcb_connection_t *c /**< */, + xcb_xvmc_surface_t surface_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_DESTROY_SURFACE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xvmc_destroy_surface_request_t xcb_out; + + xcb_out.surface_id = surface_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xvmc_create_subpicture_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xvmc_create_subpicture_reply_t *_aux = (xcb_xvmc_create_subpicture_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xvmc_create_subpicture_reply_t); + xcb_tmp += xcb_block_len; + /* priv_data */ + xcb_block_len += _aux->length * sizeof(uint32_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(uint32_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_create_subpicture_cookie_t xcb_xvmc_create_subpicture + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_subpicture_t subpicture_id + ** @param xcb_xvmc_context_t context + ** @param uint32_t xvimage_id + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_xvmc_create_subpicture_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_subpicture_cookie_t +xcb_xvmc_create_subpicture (xcb_connection_t *c /**< */, + xcb_xvmc_subpicture_t subpicture_id /**< */, + xcb_xvmc_context_t context /**< */, + uint32_t xvimage_id /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_CREATE_SUBPICTURE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_create_subpicture_cookie_t xcb_ret; + xcb_xvmc_create_subpicture_request_t xcb_out; + + xcb_out.subpicture_id = subpicture_id; + xcb_out.context = context; + xcb_out.xvimage_id = xvimage_id; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_create_subpicture_cookie_t xcb_xvmc_create_subpicture_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_subpicture_t subpicture_id + ** @param xcb_xvmc_context_t context + ** @param uint32_t xvimage_id + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_xvmc_create_subpicture_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_subpicture_cookie_t +xcb_xvmc_create_subpicture_unchecked (xcb_connection_t *c /**< */, + xcb_xvmc_subpicture_t subpicture_id /**< */, + xcb_xvmc_context_t context /**< */, + uint32_t xvimage_id /**< */, + uint16_t width /**< */, + uint16_t height /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_CREATE_SUBPICTURE, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_create_subpicture_cookie_t xcb_ret; + xcb_xvmc_create_subpicture_request_t xcb_out; + + xcb_out.subpicture_id = subpicture_id; + xcb_out.context = context; + xcb_out.xvimage_id = xvimage_id; + xcb_out.width = width; + xcb_out.height = height; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** uint32_t * xcb_xvmc_create_subpicture_priv_data + ** + ** @param const xcb_xvmc_create_subpicture_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xvmc_create_subpicture_priv_data (const xcb_xvmc_create_subpicture_reply_t *R /**< */) +{ + return (uint32_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xvmc_create_subpicture_priv_data_length + ** + ** @param const xcb_xvmc_create_subpicture_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_create_subpicture_priv_data_length (const xcb_xvmc_create_subpicture_reply_t *R /**< */) +{ + return R->length; +} + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_create_subpicture_priv_data_end + ** + ** @param const xcb_xvmc_create_subpicture_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_create_subpicture_priv_data_end (const xcb_xvmc_create_subpicture_reply_t *R /**< */) +{ + xcb_generic_iterator_t i; + i.data = ((uint32_t *) (R + 1)) + (R->length); + i.rem = 0; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_create_subpicture_reply_t * xcb_xvmc_create_subpicture_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_create_subpicture_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_create_subpicture_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_create_subpicture_reply_t * +xcb_xvmc_create_subpicture_reply (xcb_connection_t *c /**< */, + xcb_xvmc_create_subpicture_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xvmc_create_subpicture_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_subpicture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_subpicture_t subpicture_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_subpicture_checked (xcb_connection_t *c /**< */, + xcb_xvmc_subpicture_t subpicture_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_DESTROY_SUBPICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xvmc_destroy_subpicture_request_t xcb_out; + + xcb_out.subpicture_id = subpicture_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_subpicture + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_subpicture_t subpicture_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_subpicture (xcb_connection_t *c /**< */, + xcb_xvmc_subpicture_t subpicture_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_DESTROY_SUBPICTURE, + /* isvoid */ 1 + }; + + struct iovec xcb_parts[4]; + xcb_void_cookie_t xcb_ret; + xcb_xvmc_destroy_subpicture_request_t xcb_out; + + xcb_out.subpicture_id = subpicture_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + +int +xcb_xvmc_list_subpicture_types_sizeof (const void *_buffer /**< */) +{ + char *xcb_tmp = (char *)_buffer; + const xcb_xvmc_list_subpicture_types_reply_t *_aux = (xcb_xvmc_list_subpicture_types_reply_t *)_buffer; + unsigned int xcb_buffer_len = 0; + unsigned int xcb_block_len = 0; + unsigned int xcb_pad = 0; + unsigned int xcb_align_to; + + + xcb_block_len += sizeof(xcb_xvmc_list_subpicture_types_reply_t); + xcb_tmp += xcb_block_len; + /* types */ + xcb_block_len += _aux->num * sizeof(xcb_xv_image_format_info_t); + xcb_tmp += xcb_block_len; + xcb_align_to = ALIGNOF(xcb_xv_image_format_info_t); + /* insert padding */ + xcb_pad = -xcb_block_len & (xcb_align_to - 1); + xcb_buffer_len += xcb_block_len + xcb_pad; + if (0 != xcb_pad) { + xcb_tmp += xcb_pad; + xcb_pad = 0; + } + xcb_block_len = 0; + + return xcb_buffer_len; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_list_subpicture_types_cookie_t xcb_xvmc_list_subpicture_types + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port_id + ** @param xcb_xvmc_surface_t surface_id + ** @returns xcb_xvmc_list_subpicture_types_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_list_subpicture_types_cookie_t +xcb_xvmc_list_subpicture_types (xcb_connection_t *c /**< */, + xcb_xv_port_t port_id /**< */, + xcb_xvmc_surface_t surface_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_LIST_SUBPICTURE_TYPES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_list_subpicture_types_cookie_t xcb_ret; + xcb_xvmc_list_subpicture_types_request_t xcb_out; + + xcb_out.port_id = port_id; + xcb_out.surface_id = surface_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_list_subpicture_types_cookie_t xcb_xvmc_list_subpicture_types_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port_id + ** @param xcb_xvmc_surface_t surface_id + ** @returns xcb_xvmc_list_subpicture_types_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_list_subpicture_types_cookie_t +xcb_xvmc_list_subpicture_types_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port_id /**< */, + xcb_xvmc_surface_t surface_id /**< */) +{ + static const xcb_protocol_request_t xcb_req = { + /* count */ 2, + /* ext */ &xcb_xvmc_id, + /* opcode */ XCB_XVMC_LIST_SUBPICTURE_TYPES, + /* isvoid */ 0 + }; + + struct iovec xcb_parts[4]; + xcb_xvmc_list_subpicture_types_cookie_t xcb_ret; + xcb_xvmc_list_subpicture_types_request_t xcb_out; + + xcb_out.port_id = port_id; + xcb_out.surface_id = surface_id; + + xcb_parts[2].iov_base = (char *) &xcb_out; + xcb_parts[2].iov_len = sizeof(xcb_out); + xcb_parts[3].iov_base = 0; + xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3; + + xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req); + return xcb_ret; +} + + +/***************************************************************************** + ** + ** xcb_xv_image_format_info_t * xcb_xvmc_list_subpicture_types_types + ** + ** @param const xcb_xvmc_list_subpicture_types_reply_t *R + ** @returns xcb_xv_image_format_info_t * + ** + *****************************************************************************/ + +xcb_xv_image_format_info_t * +xcb_xvmc_list_subpicture_types_types (const xcb_xvmc_list_subpicture_types_reply_t *R /**< */) +{ + return (xcb_xv_image_format_info_t *) (R + 1); +} + + +/***************************************************************************** + ** + ** int xcb_xvmc_list_subpicture_types_types_length + ** + ** @param const xcb_xvmc_list_subpicture_types_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_list_subpicture_types_types_length (const xcb_xvmc_list_subpicture_types_reply_t *R /**< */) +{ + return R->num; +} + + +/***************************************************************************** + ** + ** xcb_xv_image_format_info_iterator_t xcb_xvmc_list_subpicture_types_types_iterator + ** + ** @param const xcb_xvmc_list_subpicture_types_reply_t *R + ** @returns xcb_xv_image_format_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_image_format_info_iterator_t +xcb_xvmc_list_subpicture_types_types_iterator (const xcb_xvmc_list_subpicture_types_reply_t *R /**< */) +{ + xcb_xv_image_format_info_iterator_t i; + i.data = (xcb_xv_image_format_info_t *) (R + 1); + i.rem = R->num; + i.index = (char *) i.data - (char *) R; + return i; +} + + +/***************************************************************************** + ** + ** xcb_xvmc_list_subpicture_types_reply_t * xcb_xvmc_list_subpicture_types_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_list_subpicture_types_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_list_subpicture_types_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_list_subpicture_types_reply_t * +xcb_xvmc_list_subpicture_types_reply (xcb_connection_t *c /**< */, + xcb_xvmc_list_subpicture_types_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */) +{ + return (xcb_xvmc_list_subpicture_types_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e); +} + diff --git a/external/mit/xorg/lib/libxcb/files/xvmc.h b/external/mit/xorg/lib/libxcb/files/xvmc.h new file mode 100644 index 000000000..1f2bfbf82 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/files/xvmc.h @@ -0,0 +1,1390 @@ +/* + * This file generated automatically from xvmc.xml by c_client.py. + * Edit at your peril. + */ + +/** + * @defgroup XCB_XvMC_API XCB XvMC API + * @brief XvMC XCB Protocol Implementation. + * @{ + **/ + +#ifndef __XVMC_H +#define __XVMC_H + +#include "xcb.h" +#include "xproto.h" +#include "shm.h" +#include "xv.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define XCB_XVMC_MAJOR_VERSION 1 +#define XCB_XVMC_MINOR_VERSION 1 + +extern xcb_extension_t xcb_xvmc_id; + +typedef uint32_t xcb_xvmc_context_t; + +/** + * @brief xcb_xvmc_context_iterator_t + **/ +typedef struct xcb_xvmc_context_iterator_t { + xcb_xvmc_context_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xvmc_context_iterator_t; + +typedef uint32_t xcb_xvmc_surface_t; + +/** + * @brief xcb_xvmc_surface_iterator_t + **/ +typedef struct xcb_xvmc_surface_iterator_t { + xcb_xvmc_surface_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xvmc_surface_iterator_t; + +typedef uint32_t xcb_xvmc_subpicture_t; + +/** + * @brief xcb_xvmc_subpicture_iterator_t + **/ +typedef struct xcb_xvmc_subpicture_iterator_t { + xcb_xvmc_subpicture_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xvmc_subpicture_iterator_t; + +/** + * @brief xcb_xvmc_surface_info_t + **/ +typedef struct xcb_xvmc_surface_info_t { + xcb_xvmc_surface_t id; /**< */ + uint16_t chroma_format; /**< */ + uint16_t pad0; /**< */ + uint16_t max_width; /**< */ + uint16_t max_height; /**< */ + uint16_t subpicture_max_width; /**< */ + uint16_t subpicture_max_height; /**< */ + uint32_t mc_type; /**< */ + uint32_t flags; /**< */ +} xcb_xvmc_surface_info_t; + +/** + * @brief xcb_xvmc_surface_info_iterator_t + **/ +typedef struct xcb_xvmc_surface_info_iterator_t { + xcb_xvmc_surface_info_t *data; /**< */ + int rem; /**< */ + int index; /**< */ +} xcb_xvmc_surface_info_iterator_t; + +/** + * @brief xcb_xvmc_query_version_cookie_t + **/ +typedef struct xcb_xvmc_query_version_cookie_t { + unsigned int sequence; /**< */ +} xcb_xvmc_query_version_cookie_t; + +/** Opcode for xcb_xvmc_query_version. */ +#define XCB_XVMC_QUERY_VERSION 0 + +/** + * @brief xcb_xvmc_query_version_request_t + **/ +typedef struct xcb_xvmc_query_version_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ +} xcb_xvmc_query_version_request_t; + +/** + * @brief xcb_xvmc_query_version_reply_t + **/ +typedef struct xcb_xvmc_query_version_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t major; /**< */ + uint32_t minor; /**< */ +} xcb_xvmc_query_version_reply_t; + +/** + * @brief xcb_xvmc_list_surface_types_cookie_t + **/ +typedef struct xcb_xvmc_list_surface_types_cookie_t { + unsigned int sequence; /**< */ +} xcb_xvmc_list_surface_types_cookie_t; + +/** Opcode for xcb_xvmc_list_surface_types. */ +#define XCB_XVMC_LIST_SURFACE_TYPES 1 + +/** + * @brief xcb_xvmc_list_surface_types_request_t + **/ +typedef struct xcb_xvmc_list_surface_types_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port_id; /**< */ +} xcb_xvmc_list_surface_types_request_t; + +/** + * @brief xcb_xvmc_list_surface_types_reply_t + **/ +typedef struct xcb_xvmc_list_surface_types_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_xvmc_list_surface_types_reply_t; + +/** + * @brief xcb_xvmc_create_context_cookie_t + **/ +typedef struct xcb_xvmc_create_context_cookie_t { + unsigned int sequence; /**< */ +} xcb_xvmc_create_context_cookie_t; + +/** Opcode for xcb_xvmc_create_context. */ +#define XCB_XVMC_CREATE_CONTEXT 2 + +/** + * @brief xcb_xvmc_create_context_request_t + **/ +typedef struct xcb_xvmc_create_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xvmc_context_t context_id; /**< */ + xcb_xv_port_t port_id; /**< */ + xcb_xvmc_surface_t surface_id; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ + uint32_t flags; /**< */ +} xcb_xvmc_create_context_request_t; + +/** + * @brief xcb_xvmc_create_context_reply_t + **/ +typedef struct xcb_xvmc_create_context_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t width_actual; /**< */ + uint16_t height_actual; /**< */ + uint32_t flags_return; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_xvmc_create_context_reply_t; + +/** Opcode for xcb_xvmc_destroy_context. */ +#define XCB_XVMC_DESTROY_CONTEXT 3 + +/** + * @brief xcb_xvmc_destroy_context_request_t + **/ +typedef struct xcb_xvmc_destroy_context_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xvmc_context_t context_id; /**< */ +} xcb_xvmc_destroy_context_request_t; + +/** + * @brief xcb_xvmc_create_surface_cookie_t + **/ +typedef struct xcb_xvmc_create_surface_cookie_t { + unsigned int sequence; /**< */ +} xcb_xvmc_create_surface_cookie_t; + +/** Opcode for xcb_xvmc_create_surface. */ +#define XCB_XVMC_CREATE_SURFACE 4 + +/** + * @brief xcb_xvmc_create_surface_request_t + **/ +typedef struct xcb_xvmc_create_surface_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xvmc_surface_t surface_id; /**< */ + xcb_xvmc_context_t context_id; /**< */ +} xcb_xvmc_create_surface_request_t; + +/** + * @brief xcb_xvmc_create_surface_reply_t + **/ +typedef struct xcb_xvmc_create_surface_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint8_t pad1[24]; /**< */ +} xcb_xvmc_create_surface_reply_t; + +/** Opcode for xcb_xvmc_destroy_surface. */ +#define XCB_XVMC_DESTROY_SURFACE 5 + +/** + * @brief xcb_xvmc_destroy_surface_request_t + **/ +typedef struct xcb_xvmc_destroy_surface_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xvmc_surface_t surface_id; /**< */ +} xcb_xvmc_destroy_surface_request_t; + +/** + * @brief xcb_xvmc_create_subpicture_cookie_t + **/ +typedef struct xcb_xvmc_create_subpicture_cookie_t { + unsigned int sequence; /**< */ +} xcb_xvmc_create_subpicture_cookie_t; + +/** Opcode for xcb_xvmc_create_subpicture. */ +#define XCB_XVMC_CREATE_SUBPICTURE 6 + +/** + * @brief xcb_xvmc_create_subpicture_request_t + **/ +typedef struct xcb_xvmc_create_subpicture_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xvmc_subpicture_t subpicture_id; /**< */ + xcb_xvmc_context_t context; /**< */ + uint32_t xvimage_id; /**< */ + uint16_t width; /**< */ + uint16_t height; /**< */ +} xcb_xvmc_create_subpicture_request_t; + +/** + * @brief xcb_xvmc_create_subpicture_reply_t + **/ +typedef struct xcb_xvmc_create_subpicture_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint16_t width_actual; /**< */ + uint16_t height_actual; /**< */ + uint16_t num_palette_entries; /**< */ + uint16_t entry_bytes; /**< */ + uint8_t component_order[4]; /**< */ + uint8_t pad1[12]; /**< */ +} xcb_xvmc_create_subpicture_reply_t; + +/** Opcode for xcb_xvmc_destroy_subpicture. */ +#define XCB_XVMC_DESTROY_SUBPICTURE 7 + +/** + * @brief xcb_xvmc_destroy_subpicture_request_t + **/ +typedef struct xcb_xvmc_destroy_subpicture_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xvmc_subpicture_t subpicture_id; /**< */ +} xcb_xvmc_destroy_subpicture_request_t; + +/** + * @brief xcb_xvmc_list_subpicture_types_cookie_t + **/ +typedef struct xcb_xvmc_list_subpicture_types_cookie_t { + unsigned int sequence; /**< */ +} xcb_xvmc_list_subpicture_types_cookie_t; + +/** Opcode for xcb_xvmc_list_subpicture_types. */ +#define XCB_XVMC_LIST_SUBPICTURE_TYPES 8 + +/** + * @brief xcb_xvmc_list_subpicture_types_request_t + **/ +typedef struct xcb_xvmc_list_subpicture_types_request_t { + uint8_t major_opcode; /**< */ + uint8_t minor_opcode; /**< */ + uint16_t length; /**< */ + xcb_xv_port_t port_id; /**< */ + xcb_xvmc_surface_t surface_id; /**< */ +} xcb_xvmc_list_subpicture_types_request_t; + +/** + * @brief xcb_xvmc_list_subpicture_types_reply_t + **/ +typedef struct xcb_xvmc_list_subpicture_types_reply_t { + uint8_t response_type; /**< */ + uint8_t pad0; /**< */ + uint16_t sequence; /**< */ + uint32_t length; /**< */ + uint32_t num; /**< */ + uint8_t pad1[20]; /**< */ +} xcb_xvmc_list_subpicture_types_reply_t; + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xvmc_context_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xvmc_context_t) + */ + +/***************************************************************************** + ** + ** void xcb_xvmc_context_next + ** + ** @param xcb_xvmc_context_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xvmc_context_next (xcb_xvmc_context_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xvmc_context_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_context_end + ** + ** @param xcb_xvmc_context_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_context_end (xcb_xvmc_context_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xvmc_surface_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xvmc_surface_t) + */ + +/***************************************************************************** + ** + ** void xcb_xvmc_surface_next + ** + ** @param xcb_xvmc_surface_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xvmc_surface_next (xcb_xvmc_surface_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xvmc_surface_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_surface_end + ** + ** @param xcb_xvmc_surface_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_surface_end (xcb_xvmc_surface_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xvmc_subpicture_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xvmc_subpicture_t) + */ + +/***************************************************************************** + ** + ** void xcb_xvmc_subpicture_next + ** + ** @param xcb_xvmc_subpicture_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xvmc_subpicture_next (xcb_xvmc_subpicture_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xvmc_subpicture_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_subpicture_end + ** + ** @param xcb_xvmc_subpicture_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_subpicture_end (xcb_xvmc_subpicture_iterator_t i /**< */); + +/** + * Get the next element of the iterator + * @param i Pointer to a xcb_xvmc_surface_info_iterator_t + * + * Get the next element in the iterator. The member rem is + * decreased by one. The member data points to the next + * element. The member index is increased by sizeof(xcb_xvmc_surface_info_t) + */ + +/***************************************************************************** + ** + ** void xcb_xvmc_surface_info_next + ** + ** @param xcb_xvmc_surface_info_iterator_t *i + ** @returns void + ** + *****************************************************************************/ + +void +xcb_xvmc_surface_info_next (xcb_xvmc_surface_info_iterator_t *i /**< */); + +/** + * Return the iterator pointing to the last element + * @param i An xcb_xvmc_surface_info_iterator_t + * @return The iterator pointing to the last element + * + * Set the current element in the iterator to the last element. + * The member rem is set to 0. The member data points to the + * last element. + */ + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_surface_info_end + ** + ** @param xcb_xvmc_surface_info_iterator_t i + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_surface_info_end (xcb_xvmc_surface_info_iterator_t i /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xvmc_query_version_cookie_t xcb_xvmc_query_version + ** + ** @param xcb_connection_t *c + ** @returns xcb_xvmc_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_query_version_cookie_t +xcb_xvmc_query_version (xcb_connection_t *c /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xvmc_query_version_cookie_t xcb_xvmc_query_version_unchecked + ** + ** @param xcb_connection_t *c + ** @returns xcb_xvmc_query_version_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_query_version_cookie_t +xcb_xvmc_query_version_unchecked (xcb_connection_t *c /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xvmc_query_version_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xvmc_query_version_reply_t * xcb_xvmc_query_version_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_query_version_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_query_version_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_query_version_reply_t * +xcb_xvmc_query_version_reply (xcb_connection_t *c /**< */, + xcb_xvmc_query_version_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xvmc_list_surface_types_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xvmc_list_surface_types_cookie_t xcb_xvmc_list_surface_types + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port_id + ** @returns xcb_xvmc_list_surface_types_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_list_surface_types_cookie_t +xcb_xvmc_list_surface_types (xcb_connection_t *c /**< */, + xcb_xv_port_t port_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xvmc_list_surface_types_cookie_t xcb_xvmc_list_surface_types_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port_id + ** @returns xcb_xvmc_list_surface_types_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_list_surface_types_cookie_t +xcb_xvmc_list_surface_types_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port_id /**< */); + + +/***************************************************************************** + ** + ** xcb_xvmc_surface_info_t * xcb_xvmc_list_surface_types_surfaces + ** + ** @param const xcb_xvmc_list_surface_types_reply_t *R + ** @returns xcb_xvmc_surface_info_t * + ** + *****************************************************************************/ + +xcb_xvmc_surface_info_t * +xcb_xvmc_list_surface_types_surfaces (const xcb_xvmc_list_surface_types_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xvmc_list_surface_types_surfaces_length + ** + ** @param const xcb_xvmc_list_surface_types_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_list_surface_types_surfaces_length (const xcb_xvmc_list_surface_types_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xvmc_surface_info_iterator_t xcb_xvmc_list_surface_types_surfaces_iterator + ** + ** @param const xcb_xvmc_list_surface_types_reply_t *R + ** @returns xcb_xvmc_surface_info_iterator_t + ** + *****************************************************************************/ + +xcb_xvmc_surface_info_iterator_t +xcb_xvmc_list_surface_types_surfaces_iterator (const xcb_xvmc_list_surface_types_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xvmc_list_surface_types_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xvmc_list_surface_types_reply_t * xcb_xvmc_list_surface_types_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_list_surface_types_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_list_surface_types_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_list_surface_types_reply_t * +xcb_xvmc_list_surface_types_reply (xcb_connection_t *c /**< */, + xcb_xvmc_list_surface_types_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +int +xcb_xvmc_create_context_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xvmc_create_context_cookie_t xcb_xvmc_create_context + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_context_t context_id + ** @param xcb_xv_port_t port_id + ** @param xcb_xvmc_surface_t surface_id + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t flags + ** @returns xcb_xvmc_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_context_cookie_t +xcb_xvmc_create_context (xcb_connection_t *c /**< */, + xcb_xvmc_context_t context_id /**< */, + xcb_xv_port_t port_id /**< */, + xcb_xvmc_surface_t surface_id /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t flags /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xvmc_create_context_cookie_t xcb_xvmc_create_context_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_context_t context_id + ** @param xcb_xv_port_t port_id + ** @param xcb_xvmc_surface_t surface_id + ** @param uint16_t width + ** @param uint16_t height + ** @param uint32_t flags + ** @returns xcb_xvmc_create_context_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_context_cookie_t +xcb_xvmc_create_context_unchecked (xcb_connection_t *c /**< */, + xcb_xvmc_context_t context_id /**< */, + xcb_xv_port_t port_id /**< */, + xcb_xvmc_surface_t surface_id /**< */, + uint16_t width /**< */, + uint16_t height /**< */, + uint32_t flags /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xvmc_create_context_priv_data + ** + ** @param const xcb_xvmc_create_context_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xvmc_create_context_priv_data (const xcb_xvmc_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xvmc_create_context_priv_data_length + ** + ** @param const xcb_xvmc_create_context_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_create_context_priv_data_length (const xcb_xvmc_create_context_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_create_context_priv_data_end + ** + ** @param const xcb_xvmc_create_context_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_create_context_priv_data_end (const xcb_xvmc_create_context_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xvmc_create_context_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xvmc_create_context_reply_t * xcb_xvmc_create_context_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_create_context_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_create_context_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_create_context_reply_t * +xcb_xvmc_create_context_reply (xcb_connection_t *c /**< */, + xcb_xvmc_create_context_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_context_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_context_t context_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_context_checked (xcb_connection_t *c /**< */, + xcb_xvmc_context_t context_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_context + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_context_t context_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_context (xcb_connection_t *c /**< */, + xcb_xvmc_context_t context_id /**< */); + +int +xcb_xvmc_create_surface_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xvmc_create_surface_cookie_t xcb_xvmc_create_surface + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_surface_t surface_id + ** @param xcb_xvmc_context_t context_id + ** @returns xcb_xvmc_create_surface_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_surface_cookie_t +xcb_xvmc_create_surface (xcb_connection_t *c /**< */, + xcb_xvmc_surface_t surface_id /**< */, + xcb_xvmc_context_t context_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xvmc_create_surface_cookie_t xcb_xvmc_create_surface_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_surface_t surface_id + ** @param xcb_xvmc_context_t context_id + ** @returns xcb_xvmc_create_surface_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_surface_cookie_t +xcb_xvmc_create_surface_unchecked (xcb_connection_t *c /**< */, + xcb_xvmc_surface_t surface_id /**< */, + xcb_xvmc_context_t context_id /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xvmc_create_surface_priv_data + ** + ** @param const xcb_xvmc_create_surface_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xvmc_create_surface_priv_data (const xcb_xvmc_create_surface_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xvmc_create_surface_priv_data_length + ** + ** @param const xcb_xvmc_create_surface_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_create_surface_priv_data_length (const xcb_xvmc_create_surface_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_create_surface_priv_data_end + ** + ** @param const xcb_xvmc_create_surface_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_create_surface_priv_data_end (const xcb_xvmc_create_surface_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xvmc_create_surface_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xvmc_create_surface_reply_t * xcb_xvmc_create_surface_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_create_surface_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_create_surface_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_create_surface_reply_t * +xcb_xvmc_create_surface_reply (xcb_connection_t *c /**< */, + xcb_xvmc_create_surface_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_surface_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_surface_t surface_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_surface_checked (xcb_connection_t *c /**< */, + xcb_xvmc_surface_t surface_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_surface + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_surface_t surface_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_surface (xcb_connection_t *c /**< */, + xcb_xvmc_surface_t surface_id /**< */); + +int +xcb_xvmc_create_subpicture_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xvmc_create_subpicture_cookie_t xcb_xvmc_create_subpicture + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_subpicture_t subpicture_id + ** @param xcb_xvmc_context_t context + ** @param uint32_t xvimage_id + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_xvmc_create_subpicture_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_subpicture_cookie_t +xcb_xvmc_create_subpicture (xcb_connection_t *c /**< */, + xcb_xvmc_subpicture_t subpicture_id /**< */, + xcb_xvmc_context_t context /**< */, + uint32_t xvimage_id /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xvmc_create_subpicture_cookie_t xcb_xvmc_create_subpicture_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_subpicture_t subpicture_id + ** @param xcb_xvmc_context_t context + ** @param uint32_t xvimage_id + ** @param uint16_t width + ** @param uint16_t height + ** @returns xcb_xvmc_create_subpicture_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_create_subpicture_cookie_t +xcb_xvmc_create_subpicture_unchecked (xcb_connection_t *c /**< */, + xcb_xvmc_subpicture_t subpicture_id /**< */, + xcb_xvmc_context_t context /**< */, + uint32_t xvimage_id /**< */, + uint16_t width /**< */, + uint16_t height /**< */); + + +/***************************************************************************** + ** + ** uint32_t * xcb_xvmc_create_subpicture_priv_data + ** + ** @param const xcb_xvmc_create_subpicture_reply_t *R + ** @returns uint32_t * + ** + *****************************************************************************/ + +uint32_t * +xcb_xvmc_create_subpicture_priv_data (const xcb_xvmc_create_subpicture_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xvmc_create_subpicture_priv_data_length + ** + ** @param const xcb_xvmc_create_subpicture_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_create_subpicture_priv_data_length (const xcb_xvmc_create_subpicture_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_generic_iterator_t xcb_xvmc_create_subpicture_priv_data_end + ** + ** @param const xcb_xvmc_create_subpicture_reply_t *R + ** @returns xcb_generic_iterator_t + ** + *****************************************************************************/ + +xcb_generic_iterator_t +xcb_xvmc_create_subpicture_priv_data_end (const xcb_xvmc_create_subpicture_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xvmc_create_subpicture_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xvmc_create_subpicture_reply_t * xcb_xvmc_create_subpicture_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_create_subpicture_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_create_subpicture_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_create_subpicture_reply_t * +xcb_xvmc_create_subpicture_reply (xcb_connection_t *c /**< */, + xcb_xvmc_create_subpicture_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will not cause + * a reply to be generated. Any returned error will be + * saved for handling by xcb_request_check(). + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_subpicture_checked + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_subpicture_t subpicture_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_subpicture_checked (xcb_connection_t *c /**< */, + xcb_xvmc_subpicture_t subpicture_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_void_cookie_t xcb_xvmc_destroy_subpicture + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_subpicture_t subpicture_id + ** @returns xcb_void_cookie_t + ** + *****************************************************************************/ + +xcb_void_cookie_t +xcb_xvmc_destroy_subpicture (xcb_connection_t *c /**< */, + xcb_xvmc_subpicture_t subpicture_id /**< */); + +int +xcb_xvmc_list_subpicture_types_sizeof (const void *_buffer /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + */ + +/***************************************************************************** + ** + ** xcb_xvmc_list_subpicture_types_cookie_t xcb_xvmc_list_subpicture_types + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port_id + ** @param xcb_xvmc_surface_t surface_id + ** @returns xcb_xvmc_list_subpicture_types_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_list_subpicture_types_cookie_t +xcb_xvmc_list_subpicture_types (xcb_connection_t *c /**< */, + xcb_xv_port_t port_id /**< */, + xcb_xvmc_surface_t surface_id /**< */); + +/** + * + * @param c The connection + * @return A cookie + * + * Delivers a request to the X server. + * + * This form can be used only if the request will cause + * a reply to be generated. Any returned error will be + * placed in the event queue. + */ + +/***************************************************************************** + ** + ** xcb_xvmc_list_subpicture_types_cookie_t xcb_xvmc_list_subpicture_types_unchecked + ** + ** @param xcb_connection_t *c + ** @param xcb_xv_port_t port_id + ** @param xcb_xvmc_surface_t surface_id + ** @returns xcb_xvmc_list_subpicture_types_cookie_t + ** + *****************************************************************************/ + +xcb_xvmc_list_subpicture_types_cookie_t +xcb_xvmc_list_subpicture_types_unchecked (xcb_connection_t *c /**< */, + xcb_xv_port_t port_id /**< */, + xcb_xvmc_surface_t surface_id /**< */); + + +/***************************************************************************** + ** + ** xcb_xv_image_format_info_t * xcb_xvmc_list_subpicture_types_types + ** + ** @param const xcb_xvmc_list_subpicture_types_reply_t *R + ** @returns xcb_xv_image_format_info_t * + ** + *****************************************************************************/ + +xcb_xv_image_format_info_t * +xcb_xvmc_list_subpicture_types_types (const xcb_xvmc_list_subpicture_types_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** int xcb_xvmc_list_subpicture_types_types_length + ** + ** @param const xcb_xvmc_list_subpicture_types_reply_t *R + ** @returns int + ** + *****************************************************************************/ + +int +xcb_xvmc_list_subpicture_types_types_length (const xcb_xvmc_list_subpicture_types_reply_t *R /**< */); + + +/***************************************************************************** + ** + ** xcb_xv_image_format_info_iterator_t xcb_xvmc_list_subpicture_types_types_iterator + ** + ** @param const xcb_xvmc_list_subpicture_types_reply_t *R + ** @returns xcb_xv_image_format_info_iterator_t + ** + *****************************************************************************/ + +xcb_xv_image_format_info_iterator_t +xcb_xvmc_list_subpicture_types_types_iterator (const xcb_xvmc_list_subpicture_types_reply_t *R /**< */); + +/** + * Return the reply + * @param c The connection + * @param cookie The cookie + * @param e The xcb_generic_error_t supplied + * + * Returns the reply of the request asked by + * + * The parameter @p e supplied to this function must be NULL if + * xcb_xvmc_list_subpicture_types_unchecked(). is used. + * Otherwise, it stores the error if any. + * + * The returned value must be freed by the caller using free(). + */ + +/***************************************************************************** + ** + ** xcb_xvmc_list_subpicture_types_reply_t * xcb_xvmc_list_subpicture_types_reply + ** + ** @param xcb_connection_t *c + ** @param xcb_xvmc_list_subpicture_types_cookie_t cookie + ** @param xcb_generic_error_t **e + ** @returns xcb_xvmc_list_subpicture_types_reply_t * + ** + *****************************************************************************/ + +xcb_xvmc_list_subpicture_types_reply_t * +xcb_xvmc_list_subpicture_types_reply (xcb_connection_t *c /**< */, + xcb_xvmc_list_subpicture_types_cookie_t cookie /**< */, + xcb_generic_error_t **e /**< */); + + +#ifdef __cplusplus +} +#endif + +#endif + +/** + * @} + */ diff --git a/external/mit/xorg/lib/libxcb/glx/Makefile b/external/mit/xorg/lib/libxcb/glx/Makefile new file mode 100644 index 000000000..b72ffda66 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/glx/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:29 mrg Exp $ + +XCBEXT= glx + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/libxcb/Makefile b/external/mit/xorg/lib/libxcb/libxcb/Makefile new file mode 100644 index 000000000..d15f6b6b3 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/libxcb/Makefile @@ -0,0 +1,67 @@ +# $NetBSD: Makefile,v 1.5 2011/02/24 08:15:13 mrg Exp $ + +.include + +LIB= xcb +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}} +.PATH: ${.CURDIR}/../files + +SRCS= xcb_auth.c \ + xcb_conn.c \ + xcb_ext.c \ + xcb_in.c \ + xcb_list.c \ + xcb_out.c \ + xcb_util.c \ + xcb_xid.c + +SRCS+= xproto.c \ + bigreq.c \ + xc_misc.c + +CPPFLAGS+= -DHAVE_CONFIG_H +CPPFLAGS+= -I${X11SRCDIR.${LIB}}/../include +#CPPFLAGS+= -I${.CURDIR}/../files +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/xcb + +LIBDPLIBS=\ + Xau ${.CURDIR}/../../libXau \ + Xdmcp ${.CURDIR}/../../libXdmcp + +NOMAN= # defined + +PKGDIST= xcb + +INCSDIR=${X11INCDIR}/xcb +INCS= \ + bigreq.h \ + composite.h \ + damage.h \ + dpms.h \ + dri2.h \ + glx.h \ + randr.h \ + record.h \ + render.h \ + res.h \ + screensaver.h \ + shape.h \ + shm.h \ + sync.h \ + xc_misc.h \ + xcb.h \ + xcbext.h \ + xevie.h \ + xf86dri.h \ + xfixes.h \ + xinerama.h \ + xinput.h \ + xproto.h \ + xselinux.h \ + xtest.h \ + xv.h \ + xvmc.h + +.include +.include diff --git a/external/mit/xorg/lib/libxcb/libxcb/shlib_version b/external/mit/xorg/lib/libxcb/libxcb/shlib_version new file mode 100644 index 000000000..52123ec49 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/libxcb/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.1 2010/07/17 23:43:29 mrg Exp $ +# +major=1 +minor=1 diff --git a/external/mit/xorg/lib/libxcb/randr/Makefile b/external/mit/xorg/lib/libxcb/randr/Makefile new file mode 100644 index 000000000..dab88dab5 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/randr/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:29 mrg Exp $ + +XCBEXT= randr + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/record/Makefile b/external/mit/xorg/lib/libxcb/record/Makefile new file mode 100644 index 000000000..e8ac3d3f4 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/record/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:30 mrg Exp $ + +XCBEXT= record + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/render/Makefile b/external/mit/xorg/lib/libxcb/render/Makefile new file mode 100644 index 000000000..e7e979c5e --- /dev/null +++ b/external/mit/xorg/lib/libxcb/render/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:30 mrg Exp $ + +XCBEXT= render + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/res/Makefile b/external/mit/xorg/lib/libxcb/res/Makefile new file mode 100644 index 000000000..a5a6d3d58 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/res/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:30 mrg Exp $ + +XCBEXT= res + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/screensaver/Makefile b/external/mit/xorg/lib/libxcb/screensaver/Makefile new file mode 100644 index 000000000..9da01cad6 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/screensaver/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:30 mrg Exp $ + +XCBEXT= screensaver + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/shape/Makefile b/external/mit/xorg/lib/libxcb/shape/Makefile new file mode 100644 index 000000000..3d67ae8ad --- /dev/null +++ b/external/mit/xorg/lib/libxcb/shape/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:30 mrg Exp $ + +XCBEXT= shape + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/shm/Makefile b/external/mit/xorg/lib/libxcb/shm/Makefile new file mode 100644 index 000000000..ad5789448 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/shm/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:30 mrg Exp $ + +XCBEXT= shm + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/sync/Makefile b/external/mit/xorg/lib/libxcb/sync/Makefile new file mode 100644 index 000000000..0be95b808 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/sync/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:31 mrg Exp $ + +XCBEXT= sync + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xc_misc/Makefile b/external/mit/xorg/lib/libxcb/xc_misc/Makefile new file mode 100644 index 000000000..7303b536a --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xc_misc/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:31 mrg Exp $ + +XCBEXT= xc_misc + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xcb.mk b/external/mit/xorg/lib/libxcb/xcb.mk new file mode 100644 index 000000000..068693ea4 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xcb.mk @@ -0,0 +1,26 @@ +# $NetBSD: xcb.mk,v 1.2 2013/05/31 09:14:19 mrg Exp $ + +# define XCBEXT to something before including this + +LIB= xcb-${XCBEXT} + +SRCS= ${XCBEXT}.c + +CPPFLAGS+= -I${X11SRCDIR.xcb}/src +CPPFLAGS+= -I${.CURDIR}/../files + +LIBDPLIBS=\ + xcb ${.CURDIR}/../libxcb \ + Xau ${.CURDIR}/../../libXau \ + Xdmcp ${.CURDIR}/../../libXdmcp + +SHLIB_MAJOR= 0 +SHLIB_MINOR= 1 + +PKGCONFIG= xcb-${XCBEXT} +PKGCONFIG_VERSION.${PKGCONFIG}= 1.9 + +.include +.include + +.PATH: ${.CURDIR}/../files ${X11SRCDIR.xcb} diff --git a/external/mit/xorg/lib/libxcb/xevie/Makefile b/external/mit/xorg/lib/libxcb/xevie/Makefile new file mode 100644 index 000000000..cb550c7f8 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xevie/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:31 mrg Exp $ + +XCBEXT= xevie + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xf86dri/Makefile b/external/mit/xorg/lib/libxcb/xf86dri/Makefile new file mode 100644 index 000000000..ad4864423 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xf86dri/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:31 mrg Exp $ + +XCBEXT= xf86dri + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xfixes/Makefile b/external/mit/xorg/lib/libxcb/xfixes/Makefile new file mode 100644 index 000000000..ee79ab72b --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xfixes/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:31 mrg Exp $ + +XCBEXT= xfixes + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xinerama/Makefile b/external/mit/xorg/lib/libxcb/xinerama/Makefile new file mode 100644 index 000000000..d760a0f33 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xinerama/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:31 mrg Exp $ + +XCBEXT= xinerama + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xinput/Makefile b/external/mit/xorg/lib/libxcb/xinput/Makefile new file mode 100644 index 000000000..8488c5e4f --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xinput/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:31 mrg Exp $ + +XCBEXT= xinput + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xproto/Makefile b/external/mit/xorg/lib/libxcb/xproto/Makefile new file mode 100644 index 000000000..4974472e7 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xproto/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:32 mrg Exp $ + +XCBEXT= xproto + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xtest/Makefile b/external/mit/xorg/lib/libxcb/xtest/Makefile new file mode 100644 index 000000000..24c6d31cb --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xtest/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:32 mrg Exp $ + +XCBEXT= xtest + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xv/Makefile b/external/mit/xorg/lib/libxcb/xv/Makefile new file mode 100644 index 000000000..185776aa2 --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xv/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:32 mrg Exp $ + +XCBEXT= xv + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxcb/xvmc/Makefile b/external/mit/xorg/lib/libxcb/xvmc/Makefile new file mode 100644 index 000000000..8e5c4d77d --- /dev/null +++ b/external/mit/xorg/lib/libxcb/xvmc/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1 2010/07/17 23:43:32 mrg Exp $ + +XCBEXT= xvmc + +.include "../xcb.mk" diff --git a/external/mit/xorg/lib/libxkbfile/Makefile b/external/mit/xorg/lib/libxkbfile/Makefile new file mode 100644 index 000000000..120c4eadb --- /dev/null +++ b/external/mit/xorg/lib/libxkbfile/Makefile @@ -0,0 +1,25 @@ +# $NetBSD: Makefile,v 1.3 2008/11/06 22:28:26 veego Exp $ + +.include + +LIB= xkbfile +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions + +SRCS= cout.c maprules.c srvmisc.c xkbatom.c xkbbells.c xkbconfig.c \ + xkbdraw.c xkberrs.c xkbmisc.c xkbout.c xkbtext.c xkmout.c \ + xkmread.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/extensions + +INCSDIR=${X11INCDIR}/X11/extensions + +INCS= XKBbells.h XKBconfig.h XKBfile.h XKBrules.h XKM.h XKMformat.h +INCSDIR=${X11INCDIR}/X11/extensions + +LIBDPLIBS= X11 ${.CURDIR}/../libX11/dynamic + +PKGCONFIG= xkbfile + +.include +.include diff --git a/external/mit/xorg/lib/libxkbfile/shlib_version b/external/mit/xorg/lib/libxkbfile/shlib_version new file mode 100644 index 000000000..e06fc0e9f --- /dev/null +++ b/external/mit/xorg/lib/libxkbfile/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:13 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/libxkbui/Makefile b/external/mit/xorg/lib/libxkbui/Makefile new file mode 100644 index 000000000..0b77eab61 --- /dev/null +++ b/external/mit/xorg/lib/libxkbui/Makefile @@ -0,0 +1,23 @@ +# $NetBSD: Makefile,v 1.3 2008/11/06 22:28:26 veego Exp $ + +.include + +LIB= xkbui +.PATH: ${X11SRCDIR.${LIB}}/src +.PATH: ${X11SRCDIR.${LIB}}/include/X11/extensions + +SRCS= XKBui.c + +INCS= XKBui.h +INCSDIR=${X11INCDIR}/X11/extensions + +CPPFLAGS+=-I${DESTDIR}${X11INCDIR}/X11/extensions + +LIBDPLIBS= X11 ${.CURDIR}/../libX11/dynamic \ + xkbfile ${.CURDIR}/../libxkbfile \ + m ${.CURDIR}/../../../../../lib/libm + +PKGCONFIG= xkbui + +.include +.include diff --git a/external/mit/xorg/lib/libxkbui/shlib_version b/external/mit/xorg/lib/libxkbui/shlib_version new file mode 100644 index 000000000..e06fc0e9f --- /dev/null +++ b/external/mit/xorg/lib/libxkbui/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.2 2009/01/11 03:10:13 christos Exp $ +# +major=2 +minor=0 diff --git a/external/mit/xorg/lib/pixman/Makefile b/external/mit/xorg/lib/pixman/Makefile new file mode 100644 index 000000000..33dd57cee --- /dev/null +++ b/external/mit/xorg/lib/pixman/Makefile @@ -0,0 +1,122 @@ +# $NetBSD: Makefile,v 1.25 2013/09/07 09:22:37 skrll Exp $ + +NOLINT= 1 # defined + +.include + +LIB= pixman-1 + +DIST= ${X11SRCDIR.pixman}/pixman +.PATH: ${DIST} + +SRCS= \ + pixman.c \ + pixman-access.c \ + pixman-access-accessors.c \ + pixman-bits-image.c \ + pixman-combine32.c \ + pixman-combine-float.c \ + pixman-conical-gradient.c \ + pixman-edge.c \ + pixman-edge-accessors.c \ + pixman-fast-path.c \ + pixman-filter.c \ + pixman-glyph.c \ + pixman-general.c \ + pixman-gradient-walker.c \ + pixman-image.c \ + pixman-implementation.c \ + pixman-linear-gradient.c \ + pixman-matrix.c \ + pixman-noop.c \ + pixman-radial-gradient.c \ + pixman-region16.c \ + pixman-region32.c \ + pixman-solid-fill.c \ + pixman-timer.c \ + pixman-trap.c \ + pixman-utils.c + +SRCS+= \ + pixman-x86.c \ + pixman-mips.c \ + pixman-arm.c \ + pixman-ppc.c \ + +# XXX + +.if !defined(__MINIX) +.if ${MACHINE_ARCH} == "i386" +SRCS+= pixman-mmx.c +COPTS.pixman-mmx.c= -mmmx -fvisibility=hidden +MKDEPFLAGS+= -mmmx -msse2 -fvisibility=hidden +SRCS+= pixman-sse2.c +COPTS.pixman-sse2.c= -msse2 -fvisibility=hidden +CPPFLAGS+= -DUSE_SSE2 -DUSE_X86_MMX +.elif ${MACHINE_ARCH} == "x86_64" +SRCS+= pixman-sse2.c +COPTS.pixman-sse2.c= -msse2 -fvisibility=hidden +CPPFLAGS+= -DUSE_SSE2 +.endif +.endif # !defined(__MINIX) + +.if ${MACHINE_ARCH} == "powerpc" +SRCS+= pixman-vmx.c +COPTS.pixman-vmx.c= -maltivec +CPPFLAGS+= -DUSE_VMX +MKDEPFLAGS+= -maltivec +.endif + +.if ${MACHINE_ARCH} == "earm" || ${MACHINE_ARCH} == "earmhf" +# ARM SIMD +#SRCS+= pixman-arm-simd.c \ +# pixman-arm-simd-asm.S \ +# pixman-arm-simd-asm-scaled.S +#CPPFLAGS+= -DUSE_ARM_SIMD +# ARM NEON +SRCS+= pixman-arm-neon.c \ + pixman-arm-neon-asm.S \ + pixman-arm-neon-asm-bilinear.S +CPPFLAGS+= -DUSE_ARM_NEON +# ARM iwMMX +#SRCS+= pixman-mmx.c +#COPTS.pixman-mmx.c= -mcpu=iwmmxt +#CPPFLAGS+= -DUSE_ARM_IWMMXT +.endif + +.if ${MACHINE} == "evbmips" +# Loongson MMI +SRCS+= pixman-mmx.c +CPPFLAGS+= -DUSE_LOONGSON_MMI +# SIMD instructions use floatpoint registers so we need to enable their use +COPTS.pixman-mmx.c= -march=loongson2f -mhard-float +.endif + +INCS= pixman.h pixman-version.h +INCSDIR=${X11INCDIR}/pixman-1 + +CPPFLAGS+= -DHAVE_CONFIG_H \ + -I${X11SRCDIR.pixman}/../include \ + -I${X11SRCDIR.pixman}/../combine \ + -I${X11SRCDIR.pixman}/pixman + +# With pixman 0.28.3, HAVE_PTHREAD_SETSPECIFIC is much faster than TLS +.if !defined(__MINIX) +CPPFLAGS+= -DHAVE_PTHREAD_SETSPECIFIC +#CPPFLAGS+= -DTLS=__thread +.else +# LSC: No thread support on minix +CPPFLAGS+= -DPIXMAN_NO_TLS + +.if ${ACTIVE_CC} == "gcc" +CPPFLAGS+= -I${DESTDIR}/usr/include/gcc-4.5 +.endif # ${ACTIVE_CC} == "gcc" +.endif # !defined(__MINIX) + +LIBDPLIBS= m ${.CURDIR}/../../../../../lib/libm + +PKGCONFIG= pixman-1 +PKGDIST= pixman + +.include +.include diff --git a/external/mit/xorg/lib/pixman/shlib_version b/external/mit/xorg/lib/pixman/shlib_version new file mode 100644 index 000000000..8c98a3bda --- /dev/null +++ b/external/mit/xorg/lib/pixman/shlib_version @@ -0,0 +1,4 @@ +# $NetBSD: shlib_version,v 1.6 2013/06/05 09:04:16 mrg Exp $ +# +major=2 +minor=2 diff --git a/external/mit/xorg/lib/xcb-util/Makefile b/external/mit/xorg/lib/xcb-util/Makefile new file mode 100644 index 000000000..5abb42ffb --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.3 2012/01/07 02:07:58 mrg Exp $ + +SUBDIR= reply keysyms render-util \ + atom event aux .WAIT property .WAIT \ + image icccm + +.include + +INCSDIR=${X11INCDIR}/xcb +INCS= xcb_atom.h xcb_aux.h xcb_bitops.h xcb_event.h xcb_icccm.h \ + xcb_image.h xcb_keysyms.h xcb_pixel.h xcb_property.h \ + xcb_renderutil.h xcb_reply.h + +.include + +.PATH: ${X11SRCDIR.xcb-util}/atom +.PATH: ${X11SRCDIR.xcb-util}/aux +.PATH: ${X11SRCDIR.xcb-util}/event +.PATH: ${X11SRCDIR.xcb-util}/icccm +.PATH: ${X11SRCDIR.xcb-util}/image +.PATH: ${X11SRCDIR.xcb-util}/keysyms +.PATH: ${X11SRCDIR.xcb-util}/property +.PATH: ${X11SRCDIR.xcb-util}/renderutil +.PATH: ${X11SRCDIR.xcb-util}/reply diff --git a/external/mit/xorg/lib/xcb-util/atom/Makefile b/external/mit/xorg/lib/xcb-util/atom/Makefile new file mode 100644 index 000000000..401dc90a9 --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/atom/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.1 2010/07/18 07:01:38 mrg Exp $ + +XCBUTIL= atom + +SRCS= atoms.c + +SHLIB_MAJOR= 1 + +.include "../xcb-util.mk" diff --git a/external/mit/xorg/lib/xcb-util/atom/atoms.c b/external/mit/xorg/lib/xcb-util/atom/atoms.c new file mode 100644 index 000000000..85d08cad4 --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/atom/atoms.c @@ -0,0 +1,837 @@ +/* C code produced by gperf version 3.0.4 */ +/* Command-line: gperf --output-file atoms.c atoms.gperf */ +/* Computed positions: -k'3,6,9,$' */ + +#if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \ + && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \ + && (')' == 41) && ('*' == 42) && ('+' == 43) && (',' == 44) \ + && ('-' == 45) && ('.' == 46) && ('/' == 47) && ('0' == 48) \ + && ('1' == 49) && ('2' == 50) && ('3' == 51) && ('4' == 52) \ + && ('5' == 53) && ('6' == 54) && ('7' == 55) && ('8' == 56) \ + && ('9' == 57) && (':' == 58) && (';' == 59) && ('<' == 60) \ + && ('=' == 61) && ('>' == 62) && ('?' == 63) && ('A' == 65) \ + && ('B' == 66) && ('C' == 67) && ('D' == 68) && ('E' == 69) \ + && ('F' == 70) && ('G' == 71) && ('H' == 72) && ('I' == 73) \ + && ('J' == 74) && ('K' == 75) && ('L' == 76) && ('M' == 77) \ + && ('N' == 78) && ('O' == 79) && ('P' == 80) && ('Q' == 81) \ + && ('R' == 82) && ('S' == 83) && ('T' == 84) && ('U' == 85) \ + && ('V' == 86) && ('W' == 87) && ('X' == 88) && ('Y' == 89) \ + && ('Z' == 90) && ('[' == 91) && ('\\' == 92) && (']' == 93) \ + && ('^' == 94) && ('_' == 95) && ('a' == 97) && ('b' == 98) \ + && ('c' == 99) && ('d' == 100) && ('e' == 101) && ('f' == 102) \ + && ('g' == 103) && ('h' == 104) && ('i' == 105) && ('j' == 106) \ + && ('k' == 107) && ('l' == 108) && ('m' == 109) && ('n' == 110) \ + && ('o' == 111) && ('p' == 112) && ('q' == 113) && ('r' == 114) \ + && ('s' == 115) && ('t' == 116) && ('u' == 117) && ('v' == 118) \ + && ('w' == 119) && ('x' == 120) && ('y' == 121) && ('z' == 122) \ + && ('{' == 123) && ('|' == 124) && ('}' == 125) && ('~' == 126)) +/* The character set is not based on ISO-646. */ +error "gperf generated tables don't work with this execution character set. Please report a bug to ." +#endif + +#line 1 "atoms.gperf" + + +/* Rely on vasprintf (GNU extension) instead of vsnprintf if + possible... */ +#ifdef HAVE_VASPRINTF +#define _GNU_SOURCE +#include +#endif + +#include +#include +#include +#include "xcb_atom.h" + +const xcb_atom_t PRIMARY = 1; +const xcb_atom_t SECONDARY = 2; +const xcb_atom_t ARC = 3; +const xcb_atom_t ATOM = 4; +const xcb_atom_t BITMAP = 5; +const xcb_atom_t CARDINAL = 6; +const xcb_atom_t COLORMAP = 7; +const xcb_atom_t CURSOR = 8; +const xcb_atom_t CUT_BUFFER0 = 9; +const xcb_atom_t CUT_BUFFER1 = 10; +const xcb_atom_t CUT_BUFFER2 = 11; +const xcb_atom_t CUT_BUFFER3 = 12; +const xcb_atom_t CUT_BUFFER4 = 13; +const xcb_atom_t CUT_BUFFER5 = 14; +const xcb_atom_t CUT_BUFFER6 = 15; +const xcb_atom_t CUT_BUFFER7 = 16; +const xcb_atom_t DRAWABLE = 17; +const xcb_atom_t FONT = 18; +const xcb_atom_t INTEGER = 19; +const xcb_atom_t PIXMAP = 20; +const xcb_atom_t POINT = 21; +const xcb_atom_t RECTANGLE = 22; +const xcb_atom_t RESOURCE_MANAGER = 23; +const xcb_atom_t RGB_COLOR_MAP = 24; +const xcb_atom_t RGB_BEST_MAP = 25; +const xcb_atom_t RGB_BLUE_MAP = 26; +const xcb_atom_t RGB_DEFAULT_MAP = 27; +const xcb_atom_t RGB_GRAY_MAP = 28; +const xcb_atom_t RGB_GREEN_MAP = 29; +const xcb_atom_t RGB_RED_MAP = 30; +const xcb_atom_t STRING = 31; +const xcb_atom_t VISUALID = 32; +const xcb_atom_t WINDOW = 33; +const xcb_atom_t WM_COMMAND = 34; +const xcb_atom_t WM_HINTS = 35; +const xcb_atom_t WM_CLIENT_MACHINE = 36; +const xcb_atom_t WM_ICON_NAME = 37; +const xcb_atom_t WM_ICON_SIZE = 38; +const xcb_atom_t WM_NAME = 39; +const xcb_atom_t WM_NORMAL_HINTS = 40; +const xcb_atom_t WM_SIZE_HINTS = 41; +const xcb_atom_t WM_ZOOM_HINTS = 42; +const xcb_atom_t MIN_SPACE = 43; +const xcb_atom_t NORM_SPACE = 44; +const xcb_atom_t MAX_SPACE = 45; +const xcb_atom_t END_SPACE = 46; +const xcb_atom_t SUPERSCRIPT_X = 47; +const xcb_atom_t SUPERSCRIPT_Y = 48; +const xcb_atom_t SUBSCRIPT_X = 49; +const xcb_atom_t SUBSCRIPT_Y = 50; +const xcb_atom_t UNDERLINE_POSITION = 51; +const xcb_atom_t UNDERLINE_THICKNESS = 52; +const xcb_atom_t STRIKEOUT_ASCENT = 53; +const xcb_atom_t STRIKEOUT_DESCENT = 54; +const xcb_atom_t ITALIC_ANGLE = 55; +const xcb_atom_t X_HEIGHT = 56; +const xcb_atom_t QUAD_WIDTH = 57; +const xcb_atom_t WEIGHT = 58; +const xcb_atom_t POINT_SIZE = 59; +const xcb_atom_t RESOLUTION = 60; +const xcb_atom_t COPYRIGHT = 61; +const xcb_atom_t NOTICE = 62; +const xcb_atom_t FONT_NAME = 63; +const xcb_atom_t FAMILY_NAME = 64; +const xcb_atom_t FULL_NAME = 65; +const xcb_atom_t CAP_HEIGHT = 66; +const xcb_atom_t WM_CLASS = 67; +const xcb_atom_t WM_TRANSIENT_FOR = 68; +#line 93 "atoms.gperf" +struct atom_map { int name; xcb_atom_t value; }; +#include +/* maximum key range = 146, duplicates = 0 */ + +#ifdef __GNUC__ +__inline +#else +#ifdef __cplusplus +inline +#endif +#endif +static unsigned int +hash (str, len) + register const char *str; + register unsigned int len; +{ + static const unsigned char asso_values[] = + { + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 75, 70, + 65, 60, 40, 35, 20, 5, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 35, 0, 45, 15, 0, + 150, 50, 0, 5, 150, 150, 15, 35, 0, 40, + 5, 150, 10, 15, 0, 25, 150, 20, 70, 40, + 55, 150, 150, 150, 150, 15, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, + 150, 150, 150, 150, 150, 150 + }; + register int hval = len; + + switch (hval) + { + default: + hval += asso_values[(unsigned char)str[8]]; + /*FALLTHROUGH*/ + case 8: + case 7: + case 6: + hval += asso_values[(unsigned char)str[5]]; + /*FALLTHROUGH*/ + case 5: + case 4: + case 3: + hval += asso_values[(unsigned char)str[2]]; + break; + } + return hval + asso_values[(unsigned char)str[len - 1]]; +} + +struct stringpool_t + { + char stringpool_str4[sizeof("FONT")]; + char stringpool_str6[sizeof("NOTICE")]; + char stringpool_str9[sizeof("FONT_NAME")]; + char stringpool_str10[sizeof("POINT")]; + char stringpool_str11[sizeof("WEIGHT")]; + char stringpool_str14[sizeof("MIN_SPACE")]; + char stringpool_str15[sizeof("CAP_HEIGHT")]; + char stringpool_str16[sizeof("BITMAP")]; + char stringpool_str17[sizeof("INTEGER")]; + char stringpool_str19[sizeof("COPYRIGHT")]; + char stringpool_str24[sizeof("FULL_NAME")]; + char stringpool_str26[sizeof("STRIKEOUT_ASCENT")]; + char stringpool_str27[sizeof("STRIKEOUT_DESCENT")]; + char stringpool_str28[sizeof("RGB_GREEN_MAP")]; + char stringpool_str29[sizeof("END_SPACE")]; + char stringpool_str32[sizeof("RGB_BEST_MAP")]; + char stringpool_str33[sizeof("CARDINAL")]; + char stringpool_str36[sizeof("CURSOR")]; + char stringpool_str37[sizeof("WM_CLIENT_MACHINE")]; + char stringpool_str38[sizeof("WM_HINTS")]; + char stringpool_str41[sizeof("CUT_BUFFER7")]; + char stringpool_str42[sizeof("RGB_GRAY_MAP")]; + char stringpool_str43[sizeof("DRAWABLE")]; + char stringpool_str45[sizeof("RGB_DEFAULT_MAP")]; + char stringpool_str46[sizeof("WINDOW")]; + char stringpool_str47[sizeof("RGB_BLUE_MAP")]; + char stringpool_str48[sizeof("UNDERLINE_POSITION")]; + char stringpool_str51[sizeof("RGB_RED_MAP")]; + char stringpool_str53[sizeof("VISUALID")]; + char stringpool_str54[sizeof("RECTANGLE")]; + char stringpool_str56[sizeof("CUT_BUFFER6")]; + char stringpool_str57[sizeof("WM_NAME")]; + char stringpool_str58[sizeof("X_HEIGHT")]; + char stringpool_str61[sizeof("SUBSCRIPT_Y")]; + char stringpool_str62[sizeof("PRIMARY")]; + char stringpool_str63[sizeof("COLORMAP")]; + char stringpool_str64[sizeof("UNDERLINE_THICKNESS")]; + char stringpool_str65[sizeof("QUAD_WIDTH")]; + char stringpool_str66[sizeof("RESOURCE_MANAGER")]; + char stringpool_str67[sizeof("WM_ICON_NAME")]; + char stringpool_str68[sizeof("RGB_COLOR_MAP")]; + char stringpool_str70[sizeof("WM_NORMAL_HINTS")]; + char stringpool_str71[sizeof("CUT_BUFFER5")]; + char stringpool_str73[sizeof("WM_CLASS")]; + char stringpool_str75[sizeof("WM_COMMAND")]; + char stringpool_str76[sizeof("CUT_BUFFER4")]; + char stringpool_str78[sizeof("SUPERSCRIPT_Y")]; + char stringpool_str79[sizeof("ATOM")]; + char stringpool_str80[sizeof("NORM_SPACE")]; + char stringpool_str81[sizeof("WM_TRANSIENT_FOR")]; + char stringpool_str82[sizeof("WM_ICON_SIZE")]; + char stringpool_str83[sizeof("WM_ZOOM_HINTS")]; + char stringpool_str84[sizeof("MAX_SPACE")]; + char stringpool_str85[sizeof("POINT_SIZE")]; + char stringpool_str86[sizeof("PIXMAP")]; + char stringpool_str90[sizeof("RESOLUTION")]; + char stringpool_str91[sizeof("SUBSCRIPT_X")]; + char stringpool_str92[sizeof("ITALIC_ANGLE")]; + char stringpool_str93[sizeof("ARC")]; + char stringpool_str96[sizeof("CUT_BUFFER3")]; + char stringpool_str98[sizeof("WM_SIZE_HINTS")]; + char stringpool_str101[sizeof("CUT_BUFFER2")]; + char stringpool_str106[sizeof("CUT_BUFFER1")]; + char stringpool_str108[sizeof("SUPERSCRIPT_X")]; + char stringpool_str111[sizeof("CUT_BUFFER0")]; + char stringpool_str116[sizeof("STRING")]; + char stringpool_str121[sizeof("FAMILY_NAME")]; + char stringpool_str149[sizeof("SECONDARY")]; + }; +static const struct stringpool_t stringpool_contents = + { + "FONT", + "NOTICE", + "FONT_NAME", + "POINT", + "WEIGHT", + "MIN_SPACE", + "CAP_HEIGHT", + "BITMAP", + "INTEGER", + "COPYRIGHT", + "FULL_NAME", + "STRIKEOUT_ASCENT", + "STRIKEOUT_DESCENT", + "RGB_GREEN_MAP", + "END_SPACE", + "RGB_BEST_MAP", + "CARDINAL", + "CURSOR", + "WM_CLIENT_MACHINE", + "WM_HINTS", + "CUT_BUFFER7", + "RGB_GRAY_MAP", + "DRAWABLE", + "RGB_DEFAULT_MAP", + "WINDOW", + "RGB_BLUE_MAP", + "UNDERLINE_POSITION", + "RGB_RED_MAP", + "VISUALID", + "RECTANGLE", + "CUT_BUFFER6", + "WM_NAME", + "X_HEIGHT", + "SUBSCRIPT_Y", + "PRIMARY", + "COLORMAP", + "UNDERLINE_THICKNESS", + "QUAD_WIDTH", + "RESOURCE_MANAGER", + "WM_ICON_NAME", + "RGB_COLOR_MAP", + "WM_NORMAL_HINTS", + "CUT_BUFFER5", + "WM_CLASS", + "WM_COMMAND", + "CUT_BUFFER4", + "SUPERSCRIPT_Y", + "ATOM", + "NORM_SPACE", + "WM_TRANSIENT_FOR", + "WM_ICON_SIZE", + "WM_ZOOM_HINTS", + "MAX_SPACE", + "POINT_SIZE", + "PIXMAP", + "RESOLUTION", + "SUBSCRIPT_X", + "ITALIC_ANGLE", + "ARC", + "CUT_BUFFER3", + "WM_SIZE_HINTS", + "CUT_BUFFER2", + "CUT_BUFFER1", + "SUPERSCRIPT_X", + "CUT_BUFFER0", + "STRING", + "FAMILY_NAME", + "SECONDARY" + }; +#define stringpool ((const char *) &stringpool_contents) +static +#ifdef __GNUC__ +__inline +#if defined __GNUC_STDC_INLINE__ || defined __GNUC_GNU_INLINE__ +__attribute__ ((__gnu_inline__)) +#endif +#endif +const struct atom_map * +in_word_set (str, len) + register const char *str; + register unsigned int len; +{ + enum + { + TOTAL_KEYWORDS = 68, + MIN_WORD_LENGTH = 3, + MAX_WORD_LENGTH = 19, + MIN_HASH_VALUE = 4, + MAX_HASH_VALUE = 149 + }; + + static const struct atom_map wordlist[] = + { + {-1}, {-1}, {-1}, {-1}, +#line 112 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str4,18}, + {-1}, +#line 156 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str6,62}, + {-1}, {-1}, +#line 157 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str9,63}, +#line 115 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str10,21}, +#line 152 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str11,58}, + {-1}, {-1}, +#line 137 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str14,43}, +#line 160 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str15,66}, +#line 99 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str16,5}, +#line 113 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str17,19}, + {-1}, +#line 155 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str19,61}, + {-1}, {-1}, {-1}, {-1}, +#line 159 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str24,65}, + {-1}, +#line 147 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str26,53}, +#line 148 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str27,54}, +#line 123 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str28,29}, +#line 140 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str29,46}, + {-1}, {-1}, +#line 119 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str32,25}, +#line 100 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str33,6}, + {-1}, {-1}, +#line 102 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str36,8}, +#line 130 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str37,36}, +#line 129 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str38,35}, + {-1}, {-1}, +#line 110 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str41,16}, +#line 122 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str42,28}, +#line 111 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str43,17}, + {-1}, +#line 121 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str45,27}, +#line 127 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str46,33}, +#line 120 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str47,26}, +#line 145 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str48,51}, + {-1}, {-1}, +#line 124 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str51,30}, + {-1}, +#line 126 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str53,32}, +#line 116 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str54,22}, + {-1}, +#line 109 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str56,15}, +#line 133 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str57,39}, +#line 150 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str58,56}, + {-1}, {-1}, +#line 144 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str61,50}, +#line 95 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str62,1}, +#line 101 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str63,7}, +#line 146 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str64,52}, +#line 151 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str65,57}, +#line 117 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str66,23}, +#line 131 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str67,37}, +#line 118 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str68,24}, + {-1}, +#line 134 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str70,40}, +#line 108 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str71,14}, + {-1}, +#line 161 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str73,67}, + {-1}, +#line 128 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str75,34}, +#line 107 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str76,13}, + {-1}, +#line 142 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str78,48}, +#line 98 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str79,4}, +#line 138 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str80,44}, +#line 162 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str81,68}, +#line 132 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str82,38}, +#line 136 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str83,42}, +#line 139 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str84,45}, +#line 153 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str85,59}, +#line 114 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str86,20}, + {-1}, {-1}, {-1}, +#line 154 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str90,60}, +#line 143 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str91,49}, +#line 149 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str92,55}, +#line 97 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str93,3}, + {-1}, {-1}, +#line 106 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str96,12}, + {-1}, +#line 135 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str98,41}, + {-1}, {-1}, +#line 105 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str101,11}, + {-1}, {-1}, {-1}, {-1}, +#line 104 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str106,10}, + {-1}, +#line 141 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str108,47}, + {-1}, {-1}, +#line 103 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str111,9}, + {-1}, {-1}, {-1}, {-1}, +#line 125 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str116,31}, + {-1}, {-1}, {-1}, {-1}, +#line 158 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str121,64}, + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, + {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, {-1}, +#line 96 "atoms.gperf" + {(int)(long)&((struct stringpool_t *)0)->stringpool_str149,2} + }; + + if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) + { + register int key = hash (str, len); + + if (key <= MAX_HASH_VALUE && key >= 0) + { + register int o = wordlist[key].name; + if (o >= 0) + { + register const char *s = o + stringpool; + + if (*str == *s && !strncmp (str + 1, s + 1, len - 1) && s[len] == '\0') + return &wordlist[key]; + } + } + } + return 0; +} +#line 163 "atoms.gperf" + + +static const char atom_names[] = + "PRIMARY\0" + "SECONDARY\0" + "ARC\0" + "ATOM\0" + "BITMAP\0" + "CARDINAL\0" + "COLORMAP\0" + "CURSOR\0" + "CUT_BUFFER0\0" + "CUT_BUFFER1\0" + "CUT_BUFFER2\0" + "CUT_BUFFER3\0" + "CUT_BUFFER4\0" + "CUT_BUFFER5\0" + "CUT_BUFFER6\0" + "CUT_BUFFER7\0" + "DRAWABLE\0" + "FONT\0" + "INTEGER\0" + "PIXMAP\0" + "POINT\0" + "RECTANGLE\0" + "RESOURCE_MANAGER\0" + "RGB_COLOR_MAP\0" + "RGB_BEST_MAP\0" + "RGB_BLUE_MAP\0" + "RGB_DEFAULT_MAP\0" + "RGB_GRAY_MAP\0" + "RGB_GREEN_MAP\0" + "RGB_RED_MAP\0" + "STRING\0" + "VISUALID\0" + "WINDOW\0" + "WM_COMMAND\0" + "WM_HINTS\0" + "WM_CLIENT_MACHINE\0" + "WM_ICON_NAME\0" + "WM_ICON_SIZE\0" + "WM_NAME\0" + "WM_NORMAL_HINTS\0" + "WM_SIZE_HINTS\0" + "WM_ZOOM_HINTS\0" + "MIN_SPACE\0" + "NORM_SPACE\0" + "MAX_SPACE\0" + "END_SPACE\0" + "SUPERSCRIPT_X\0" + "SUPERSCRIPT_Y\0" + "SUBSCRIPT_X\0" + "SUBSCRIPT_Y\0" + "UNDERLINE_POSITION\0" + "UNDERLINE_THICKNESS\0" + "STRIKEOUT_ASCENT\0" + "STRIKEOUT_DESCENT\0" + "ITALIC_ANGLE\0" + "X_HEIGHT\0" + "QUAD_WIDTH\0" + "WEIGHT\0" + "POINT_SIZE\0" + "RESOLUTION\0" + "COPYRIGHT\0" + "NOTICE\0" + "FONT_NAME\0" + "FAMILY_NAME\0" + "FULL_NAME\0" + "CAP_HEIGHT\0" + "WM_CLASS\0" + "WM_TRANSIENT_FOR\0" +; + +static const uint16_t atom_name_offsets[] = { + 0, + 8, + 18, + 22, + 27, + 34, + 43, + 52, + 59, + 71, + 83, + 95, + 107, + 119, + 131, + 143, + 155, + 164, + 169, + 177, + 184, + 190, + 200, + 217, + 231, + 244, + 257, + 273, + 286, + 300, + 312, + 319, + 328, + 335, + 346, + 355, + 373, + 386, + 399, + 407, + 423, + 437, + 451, + 461, + 472, + 482, + 492, + 506, + 520, + 532, + 544, + 563, + 583, + 600, + 618, + 631, + 640, + 651, + 658, + 669, + 680, + 690, + 697, + 707, + 719, + 729, + 740, + 749, +}; + +xcb_atom_t xcb_atom_get(xcb_connection_t *connection, const char *atom_name) +{ + if(atom_name == NULL) + return XCB_NONE; + xcb_intern_atom_reply_t *reply = xcb_intern_atom_reply(connection, + xcb_intern_atom(connection, 0, strlen(atom_name), atom_name), NULL); + if(!reply) + return XCB_NONE; + xcb_atom_t atom = reply->atom; + free(reply); + return atom; +} + +xcb_atom_t xcb_atom_get_predefined(uint16_t name_len, const char *name) +{ + const struct atom_map *value = in_word_set(name, name_len); + xcb_atom_t ret = XCB_NONE; + if(value) + ret = value->value; + return ret; +} + +xcb_atom_fast_cookie_t xcb_atom_get_fast(xcb_connection_t *c, uint8_t only_if_exists, uint16_t name_len, const char *name) +{ + xcb_atom_fast_cookie_t cookie; + + if((cookie.u.atom = xcb_atom_get_predefined(name_len, name)) != XCB_NONE) + { + cookie.tag = TAG_VALUE; + return cookie; + } + + cookie.tag = TAG_COOKIE; + cookie.u.cookie = xcb_intern_atom(c, only_if_exists, name_len, name); + return cookie; +} + +xcb_atom_t xcb_atom_get_fast_reply(xcb_connection_t *c, xcb_atom_fast_cookie_t cookie, xcb_generic_error_t **e) +{ + switch(cookie.tag) + { + xcb_intern_atom_reply_t *reply; + case TAG_VALUE: + if(e) + *e = 0; + break; + case TAG_COOKIE: + reply = xcb_intern_atom_reply(c, cookie.u.cookie, e); + if(reply) + { + cookie.u.atom = reply->atom; + free(reply); + } + else + cookie.u.atom = XCB_NONE; + break; + } + return cookie.u.atom; +} + +const char *xcb_atom_get_name_predefined(xcb_atom_t atom) +{ + if(atom <= 0 || atom > (sizeof(atom_name_offsets) / sizeof(*atom_name_offsets))) + return 0; + return atom_names + atom_name_offsets[atom - 1]; +} + +int xcb_atom_get_name(xcb_connection_t *c, xcb_atom_t atom, const char **namep, int *lengthp) +{ + static char buf[100]; + const char *name = xcb_atom_get_name_predefined(atom); + int namelen; + xcb_get_atom_name_cookie_t atomc; + xcb_get_atom_name_reply_t *atomr; + if(name) + { + *namep = name; + *lengthp = strlen(name); + return 1; + } + atomc = xcb_get_atom_name(c, atom); + atomr = xcb_get_atom_name_reply(c, atomc, 0); + if(!atomr) + return 0; + namelen = xcb_get_atom_name_name_length(atomr); + if(namelen > sizeof(buf)) + namelen = sizeof(buf); + *lengthp = namelen; + memcpy(buf, xcb_get_atom_name_name(atomr), namelen); + *namep = buf; + free(atomr); + return 1; +} + +static char *makename(const char *fmt, ...) +{ + char *ret; + int n; + va_list ap; + +#ifndef HAVE_VASPRINTF + char *np; + int size = 64; + + /* First allocate 'size' bytes, should be enough usually */ + if((ret = malloc(size)) == NULL) + return NULL; + + while(1) + { + va_start(ap, fmt); + n = vsnprintf(ret, size, fmt, ap); + va_end(ap); + + if(n < 0) + return NULL; + + if(n < size) + return ret; + + size = n + 1; + if((np = realloc(ret, size)) == NULL) + { + free(ret); + return NULL; + } + + ret = np; + } +#else + va_start(ap, fmt); + n = vasprintf(&ret, fmt, ap); + va_end(ap); + + if(n < 0) + return NULL; + + return ret; +#endif +} + +char *xcb_atom_name_by_screen(const char *base, uint8_t screen) +{ + return makename("%s_S%u", base, screen); +} + +char *xcb_atom_name_by_resource(const char *base, uint32_t resource) +{ + return makename("%s_R%08X", base, resource); +} + +char *xcb_atom_name_unique(const char *base, uint32_t id) +{ + if(base) + return makename("%s_U%lu", base, id); + else + return makename("U%lu", id); +} diff --git a/external/mit/xorg/lib/xcb-util/aux/Makefile b/external/mit/xorg/lib/xcb-util/aux/Makefile new file mode 100644 index 000000000..eded75995 --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/aux/Makefile @@ -0,0 +1,7 @@ +# $NetBSD: Makefile,v 1.1 2010/07/18 07:01:38 mrg Exp $ + +XCBUTIL= aux + +SRCS= xcb_aux.c + +.include "../xcb-util.mk" diff --git a/external/mit/xorg/lib/xcb-util/event/Makefile b/external/mit/xorg/lib/xcb-util/event/Makefile new file mode 100644 index 000000000..25bfce5fa --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/event/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.1 2010/07/18 07:01:38 mrg Exp $ + +XCBUTIL= event + +SRCS= event.c + +SHLIB_MAJOR= 1 + +.include "../xcb-util.mk" diff --git a/external/mit/xorg/lib/xcb-util/icccm/Makefile b/external/mit/xorg/lib/xcb-util/icccm/Makefile new file mode 100644 index 000000000..d8f6dab71 --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/icccm/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.2 2012/01/07 02:07:58 mrg Exp $ + +XCBUTIL= icccm + +SRCS= icccm.c + +SHLIB_MAJOR= 1 + +XCBUTIL_EXTRA_DPLIBS+=\ + xcb-atom ${.CURDIR}/../atom \ + xcb-property ${.CURDIR}/../property \ + xcb-event ${.CURDIR}/../event + +.include "../xcb-util.mk" + +CPPFLAGS+= -I${X11SRCDIR.xcb-util}/atom +CPPFLAGS+= -I${X11SRCDIR.xcb-util}/property +CPPFLAGS+= -I${X11SRCDIR.xcb-util}/event diff --git a/external/mit/xorg/lib/xcb-util/image/Makefile b/external/mit/xorg/lib/xcb-util/image/Makefile new file mode 100644 index 000000000..6f11f5fb2 --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/image/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.3 2012/01/07 02:07:58 mrg Exp $ + +XCBUTIL= image + +SRCS= \ + xcb_image.c + +XCBUTIL_EXTRA_DPLIBS+=\ + xcb-shm ${.CURDIR}/../../libxcb/shm \ + xcb-aux ${.CURDIR}/../aux + +.include "../xcb-util.mk" + +CPPFLAGS+= -I${X11SRCDIR.xcb-util}/aux + +CWARNFLAGS.clang+= -Wno-return-type diff --git a/external/mit/xorg/lib/xcb-util/keysyms/Makefile b/external/mit/xorg/lib/xcb-util/keysyms/Makefile new file mode 100644 index 000000000..f21d4f60b --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/keysyms/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.1 2010/07/18 07:01:39 mrg Exp $ + +XCBUTIL= keysyms + +SRCS= keysyms.c + +SHLIB_MAJOR= 1 + +.include "../xcb-util.mk" diff --git a/external/mit/xorg/lib/xcb-util/property/Makefile b/external/mit/xorg/lib/xcb-util/property/Makefile new file mode 100644 index 000000000..00e9a2df9 --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/property/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.2 2012/01/07 02:07:58 mrg Exp $ + +XCBUTIL= property + +SRCS= property.c + +SHLIB_MAJOR= 1 + +XCBUTIL_EXTRA_DPLIBS+=\ + xcb-event ${.CURDIR}/../event + +.include "../xcb-util.mk" + +CPPFLAGS+= -I${X11SRCDIR.xcb-util}/event diff --git a/external/mit/xorg/lib/xcb-util/render-util/Makefile b/external/mit/xorg/lib/xcb-util/render-util/Makefile new file mode 100644 index 000000000..6e976c35a --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/render-util/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2012/01/07 02:07:59 mrg Exp $ + +XCBUTIL= render-util + +SRCS= cache.c glyph.c util.c + +XCBUTIL_EXTRA_DPLIBS+=\ + xcb-render ${.CURDIR}/../../libxcb/render + +# xxx render-util vs renderutil +PKGCONFIG= xcb-renderutil +.include "../xcb-util.mk" + +# xxx render-util vs renderutil +CPPFLAGS+= -I${X11SRCDIR.xcb-util}/renderutil +.PATH: ${X11SRCDIR.xcb-util}/renderutil + +CWARNFLAGS.clang+= -Wno-tautological-compare diff --git a/external/mit/xorg/lib/xcb-util/reply/Makefile b/external/mit/xorg/lib/xcb-util/reply/Makefile new file mode 100644 index 000000000..1d56b11b5 --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/reply/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2010/07/18 07:01:39 mrg Exp $ + +XCBUTIL= reply + +SRCS= reply.c test_reply.c + +SHLIB_MAJOR= 1 + +COPTS+= -pthread + +.include "../xcb-util.mk" diff --git a/external/mit/xorg/lib/xcb-util/xcb-util.mk b/external/mit/xorg/lib/xcb-util/xcb-util.mk new file mode 100644 index 000000000..27bf023ab --- /dev/null +++ b/external/mit/xorg/lib/xcb-util/xcb-util.mk @@ -0,0 +1,28 @@ +# $NetBSD: xcb-util.mk,v 1.3 2012/01/07 02:07:58 mrg Exp $ + +# define XCBUTIL to something before including this + +LIB= xcb-${XCBUTIL} + +CPPFLAGS+= -I${X11SRCDIR.xcb-util}/${XCBUTIL} +CPPFLAGS+= -DHAVE_VASPRINTF + +LIBDPLIBS=\ + xcb ${.CURDIR}/../../libxcb/libxcb \ + Xau ${.CURDIR}/../../libXau \ + Xdmcp ${.CURDIR}/../../libXdmcp \ + ${XCBUTIL_EXTRA_DPLIBS} + +SHLIB_MAJOR?= 0 +SHLIB_MINOR?= 0 + +PKGCONFIG?= xcb-${XCBUTIL} +PKGCONFIG_VERSION.${PKGCONFIG}= 0.3.6 + +# XXX totally fails +NOLINT= # defined + +.include +.include + +.PATH: ${X11SRCDIR.xcb-util}/${XCBUTIL} diff --git a/external/mit/xorg/lib/xkeyboard-config/Makefile b/external/mit/xorg/lib/xkeyboard-config/Makefile new file mode 100644 index 000000000..8aebb663c --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.9 2013/05/31 23:50:51 mrg Exp $ + +.include + +SUBDIR= compat geometry keycodes rules symbols types + +NOOBJ= # defined + +PKGCONFIG= xkeyboard-config + +.include +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/Makefile.xkbdata b/external/mit/xorg/lib/xkeyboard-config/Makefile.xkbdata new file mode 100644 index 000000000..c86c4d735 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/Makefile.xkbdata @@ -0,0 +1,24 @@ +# $NetBSD: Makefile.xkbdata,v 1.1 2009/06/11 01:49:20 mrg Exp $ + +XKBDISTDIR= ${X11SRCDIR.xkeyboard-config}/${XKBNAME} + +.PATH: ${XKBDISTDIR} + +FILESDIR= ${X11LIBDIR}/xkb/${XKBNAME} + + +.if defined(XKBDIR) # { +FILES+= ${XKBNAME}.dir +FILESDIR_${XKBNAME}.dir=${X11LIBDIR}/xkb +CLEANFILES+= ${XKBNAME}.dir + +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/xkbcomp/Makefile.xkbcomp" + +${XKBNAME}.dir: + ${_MKTARGET_CREATE} + rm -f ${.TARGET} + (cd ${XKBDISTDIR} && ${XKBCOMP} -lfhlpR -o ${.OBJDIR}/${.TARGET} '*') + +realall: ${FILES} + +.endif # } diff --git a/external/mit/xorg/lib/xkeyboard-config/compat/Makefile b/external/mit/xorg/lib/xkeyboard-config/compat/Makefile new file mode 100644 index 000000000..3a17454b5 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/compat/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 23:28:25 mrg Exp $ + +.include + +XKBNAME= compat +FILES= README accessx basic caps complete iso9995 japan \ + ledcaps lednum ledscroll level5 misc mousekeys \ + olpc pc pc98 xfree86 xtest + +XKBDIR= 1 + +.include "../Makefile.xkbdata" + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/geometry/Makefile b/external/mit/xorg/lib/xkeyboard-config/geometry/Makefile new file mode 100644 index 000000000..46b9ffe5d --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/geometry/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2011/02/21 05:10:27 mrg Exp $ + +.include + +XKBNAME= geometry +FILES= README amiga ataritt chicony dell everex fujitsu hhk hp \ + keytronic kinesis macintosh microsoft nec nokia northgate \ + pc sanwa sony sun thinkpad typematrix winbook + +SUBDIR= digital_vndr sgi_vndr + +XKBDIR= 1 + +.include "../Makefile.xkbdata" + +.include +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/geometry/digital_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/geometry/digital_vndr/Makefile new file mode 100644 index 000000000..c2f698e49 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/geometry/digital_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:21 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/geometry/digital_vndr +FILES= lk pc unix + +.PATH: ${X11SRCDIR.xkeyboard-config}/geometry/digital_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/geometry/sgi_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/geometry/sgi_vndr/Makefile new file mode 100644 index 000000000..d6d67b2a7 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/geometry/sgi_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:21 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/geometry/sgi_vndr +FILES= indy indigo O2 + +.PATH: ${X11SRCDIR.xkeyboard-config}/geometry/sgi_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/keycodes/Makefile b/external/mit/xorg/lib/xkeyboard-config/keycodes/Makefile new file mode 100644 index 000000000..cc1befdff --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/keycodes/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 23:28:25 mrg Exp $ + +.include + +XKBNAME= keycodes +FILES= README aliases amiga ataritt empty evdev fujitsu hp ibm \ + macintosh olpc sony sun xfree86 xfree98 + +SUBDIR= digital_vndr sgi_vndr + +XKBDIR= 1 + +.include "../Makefile.xkbdata" + +.include +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/keycodes/digital_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/keycodes/digital_vndr/Makefile new file mode 100644 index 000000000..6ecd4fa96 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/keycodes/digital_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:21 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/keycodes/digital_vndr +FILES= lk pc + +.PATH: ${X11SRCDIR.xkeyboard-config}/keycodes/digital_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/keycodes/sgi_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/keycodes/sgi_vndr/Makefile new file mode 100644 index 000000000..c873de526 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/keycodes/sgi_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:21 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/keycodes/sgi_vndr +FILES= indy indigo iris + +.PATH: ${X11SRCDIR.xkeyboard-config}/keycodes/sgi_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/rules/Makefile b/external/mit/xorg/lib/xkeyboard-config/rules/Makefile new file mode 100644 index 000000000..3df3f010c --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/rules/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.3 2010/05/29 07:58:24 ghen Exp $ +# +# When upgrading, re-assemble the files base, base.lst, evdev and +# evdev.lst by running ./configure && make in the dist directory, +# and copy the resulting files back here. + +.include + +XKBNAME= rules +FILES= README base base.lst base.extras.xml.in base.xml.in \ + evdev evdev.lst evdev.extras.xml.in evdev.xml.in \ + xfree98 xkb.dtd + +FILESNAME_base.xml.in= base.xml +FILESNAME_base.extras.xml.in= base.extras.xml +FILESNAME_evdev.xml.in= evdev.xml +FILESNAME_evdev.extras.xml.in= evdev.extras.xml + +SYMLINKS= base ${FILESDIR}/xorg \ + base.lst ${FILESDIR}/xorg.lst \ + base.xml ${FILESDIR}/xorg.xml + +.include "../Makefile.xkbdata" + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/rules/base b/external/mit/xorg/lib/xkeyboard-config/rules/base new file mode 100644 index 000000000..59f78fdc2 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/rules/base @@ -0,0 +1,1162 @@ +// DO NOT EDIT THIS FILE - IT WAS AUTOGENERATED BY merge.sh FROM rules/*.part +// +// Rules for resolving XKB components for use with XFree86 +// Copyright 1996 by Joseph Moss +// +// 2002 Modifier: Ivan Pascal The XFree86 Project +// + +// If you want non-latin layouts implicitly include the en_US layout +// uncomment lines below +//! $nonlatin = am ara ben bd bg bt by cs deva ge gh gr guj guru il \ +// in ir iku jp kan kh kr la lao lk mk mm mn mv mal ori pk \ +// ru scc sy syr tel th tj tam ua uz + +// PC models +! $pcmodels = pc101 pc102 pc104 pc105 + +// Microsoft models (using MS geometry) +! $msmodels = microsoft microsoft4000 microsoft7000 microsoftpro microsoftprousb microsoftprose + +// Nokia devices and keyboards +! $nokiamodels = nokiasu8w nokiarx44 nokiarx51 + +// PC geometries - they have special geometry but symbols are mostly pc105 +! $pcgeometries = latitude + +// TypeMatrix geometries +! $tmgeometries = tm2020 tm2030PS2 tm2030USB tm2030USB-102 tm2030USB-106 + +// Layouts that provide further specializations for the OLPC +! $olpclayouts = af am ara br ca es et fr it kh kz in mn np ru th tr us + +! $macbooks = macbook78 macbook79 +! $maclaptop = ibook powerbook macbook78 macbook79 +! $applealu = applealu_ansi applealu_iso applealu_jis +! $macs = macintosh macintosh_old ibook powerbook macbook78 macbook79 + +! $macvendorlayouts = ch de dk fi fr gb is it latam nl no pt se us + +! $azerty = be fr +! $qwertz = al cz de hr hu ro si sk + +! $inetkbds = acer_c300 acer_ferrari4k acer_laptop \ + airkey \ + apple armada azonaRF2300 \ + benqx brother \ + btc5113rf btc9000 btc9000a btc9001ah btc5090 btc9019u \ + cherryblue cherrybluea cherryblueb \ + cherrycyboard cherrycmexpert \ + chicony chicony0108 chicony0420 chicony9885 \ + compalfl90 \ + compaqeak8 compaqik7 compaqik13 compaqik18 \ + creativedw7000 \ + cymotionlinux \ + dell dellm65 inspiron dellusbmm \ + emachines ennyah_dkb1008 evdev \ + genius geniuscomfy2 \ + gyration honeywell_euroboard \ + hp250x hp5xx hp500fa hpdv5 \ + hpi6 hpxe3gc hpxe3gf hpxe4xxx hpxt1000 hpzt11xx htcdream \ + ibm_spacesaver ipaq inspiron intel \ + logiaccess logicda logicink \ + logiex110 logiclx300 \ + logiinkse logiinkseusb logiitc logiik \ + logitech_base itouch logiultrax \ + logitech_g15 \ + logidinovo logidinovoedge \ + microsoft4000 microsoft7000 microsoftinet microsoftprousb microsoftprooem microsoftprose \ + microsoftoffice microsoftmult \ + mx1998 mx2500 mx2750 \ + oretec \ + pc105 \ + presario propeller \ + qtronix \ + rapidaccess rapidaccess2 thinkpad60 \ + samsung4500 samsung4510 \ + silvercrest \ + sk1300 sk2500 sk6200 sk7100 \ + sven sven303 symplon \ + toshiba_s3000 trust trustda \ + unitekkb1925 yahoo + +// all layouts with 3rd and 4th groups +! $threelevellayouts = al az \ + be br bt \ + ca ch cs cz \ + de dk \ + ee es \ + fi fo fr \ + gb gr \ + hu \ + ie ir is it \ + latam \ + lk lt \ + mn mt \ + nl no \ + pl pt \ + ro \ + se sk \ + tr \ + us \ + vn \ + za + +! $evdevkbds = ibm_spacesaver + +! $thinkpads = thinkpad thinkpad60 thinkpadz60 + +! $sun_t6_custom = ara be br ca ch cz de dk \ + ee es fi fr gb gr it kr \ + lt lv nl no pl pt ro ru \ + se sk tr tw ua + +! $htcdreamlayouts = us it de + +! $dvoraklayouts = br ca de ee es fr gb no pl se us + +! model = keycodes + amiga = amiga(de) + ataritt = ataritt(de) + empty = empty + sun4 = sun(type4_euro) + sun5 = sun(type5_euro) + sun6 = sun(type6_usb) + sun6euro = sun(type6tuv_usb) + pc98 = xfree98(pc98) + $applealu = macintosh(alukbd) + macintosh_hhk = macintosh(hhk) + macintosh_old = macintosh(old) + $macs = macintosh + thinkpadz60 = xfree86(thinkpadz60) + * = xfree86 + +! layout[1] = keycodes + $azerty = +aliases(azerty) + $qwertz = +aliases(qwertz) + * = +aliases(qwerty) + +! layout = keycodes + $azerty = +aliases(azerty) + $qwertz = +aliases(qwertz) + * = +aliases(qwerty) + +! option = keycodes + +! model layout = geometry + thinkpad us = thinkpad(us) + +! model = geometry + microsoftelite = microsoft(elite) + $msmodels = microsoft(natural) + dell101 = dell(dell101) + dellm65 = dell(dellm65) + latitude = dell(latitude) + flexpro = keytronic(FlexPro) + hp6000 = hp(omnibook) + hpmini110 = hp(mini110) + hpdv5 = hp(dv5) + omnikey101 = northgate(omnikey101) + sanwaskbkg3 = sanwa(sanwaskbkg3) + $pcmodels = pc(%m) + $pcgeometries = pc(%m) + everex = everex(STEPnote) + thinkpad = thinkpad(intl) + thinkpad60 = thinkpad(60) + thinkpadz60 = thinkpad(60) + $tmgeometries = typematrix(%m) + winbook = winbook(XP5) + pc98 = nec(pc98) + $applealu = macintosh(%m) + $macbooks = macintosh(%m) + $macs = macintosh(macintosh) + hhk = hhk(basic) + kinesis = kinesis(model100) + $nokiamodels = nokia(%m) + * = pc(pc104) + +! model layout variant = symbols + * ben basic = pc+in(ben) + * ben probhat = pc+in(ben_probhat) + * dev basic = pc+in(deva) + * dvorak $dvoraklayouts = pc+%v(dvorak) + * dvorak basic = pc+us(dvorak) + * dvorak pl_basic = pc+pl(dvorak) + * dvorak pl = pc+pl(dvorak_quotes) + * dvorak pl_altquotes = pc+pl(dvorak_altquotes) + * dzdwi basic = pc+bt(basic) + * fi basic = pc+fi(classic) + * ge azerty_tskapo = pc+fr(geo) + * guj basic = pc+in(guj) + * gur basic = pc+in(guru) + * ie laptop = pc+ie(basic) + * ie CloGaelachLaptop = pc+ie(CloGaelach) + * in urd = pc+in(urd-phonetic) + * iu basic = pc+ca(ike) + * lo basic = pc+la(basic) + * kan basic = pc+in(kan) + * mal basic = pc+in(mal) + * mal mlplusnum = pc+in(mal) + * ogham basic = pc+ie(ogam) + * ogham laptop = pc+ie(ogam) + * ogham is434 = pc+ie(ogam_is434) + * ogham is434laptop = pc+ie(ogam_is434) + * ori basic = pc+in(ori) + * ro de = pc+ro(winkeys) + * ro us = pc+ro(std) + * ro academic = pc+ro(std) + * ro std_comma = pc+ro(std) + * ro comma = pc+ro(basic) + * ru os = pc+ru(os_legacy) + * pk urd = pc+pk(urd-phonetic) + * sapmi basic = pc+no(smi) + * sapmi nodeadkeys = pc+no(smi_nodeadkeys) + * sapmi sefi = pc+fi(smi) + * sin phonetic-static = pc+in(sin_phonetic) + * syr basic = pc+sy(syc) + * syr phonetic = pc+sy(syc_phonetic) + * tam INSCRIPT = pc+in(tam) + * tam UNI = pc+in(tam_unicode) + * tam NUMERAL-KEYBOARD = pc+in(tam_keyboard_with_numerals) + * tam TAB = pc+in(tam_TAB) + * tam TSCII = pc+in(tam_TSCII) + * tel basic = pc+in(tel) + * yu basic = pc+srp(latin) + * yu unicode = pc+srp(latinunicode) + * yu yz = pc+srp(latinyz) + * yu unicodeyz = pc+srp(latinunicodeyz) + classmate us intl = pc+us(classmate-intl) + classmate us alt-intl = pc+us(classmate-alt-intl) + classmate us altgr-intl = pc+us(classmate-altgr-intl) + nokiarx51 cz qwerty = nokia_vndr/rx-51(cz_qwerty) + +! model layout = symbols + * ar = pc+ara + * ben = pc+in(ben) + * bs = pc+ba + * cs = pc+rs + * cz_qwerty = pc+cz(qwerty) + * dev = pc+in(deva) + * dvorak = pc+us(dvorak) + * dzdwi = pc+bt + * el = pc+gr + * en_US = pc+latin + * guj = pc+in(guj) + * gur = pc+in(guru) + * iu = pc+ca(ike) + * lo = pc+la + * kan = pc+in(kan) + * mi = pc+mao + * ml = pc+in(mal) + * ogham = pc+ie(ogam) + * ori = pc+ie(ori) + * sapmi = pc+no(smi) + * sr = pc+srp + * syr = pc+sy(syc) + * tel = pc+in(tel) + * tml = pc+in(tam) + * yu = pc+srp + * fr-latin9 = pc+fr(latin9) + * us_intl = pc+us(alt-intl) + * ben(basic) = pc+in(ben) + * ben(probhat) = pc+in(ben_probhat) + * dev(basic) = pc+in(deva) + * dvorak($dvoraklayouts) = pc+%v(dvorak) + * dvorak(basic) = pc+us(dvorak) + * dvorak(pl_basic) = pc+pl(dvorak) + * dvorak(pl) = pc+pl(dvorak_quotes) + * dvorak(pl_altquotes) = pc+pl(dvorak_altquotes) + * dzdwi(basic) = pc+bt(basic) + * fi(basic) = pc+fi(classic) + * ge(azerty_tskapo) = pc+fr(geo) + * guj(basic) = pc+in(guj) + * gur(basic) = pc+in(guru) + * ie(laptop) = pc+ie(basic) + * ie(CloGaelachLaptop) = pc+ie(CloGaelach) + * in(urd) = pc+in(urd-phonetic) + * iu(basic) = pc+ca(ike) + * lo(basic) = pc+la(basic) + * kan(basic) = pc+in(kan) + * mal(basic) = pc+in(mal) + * mal(mlplusnum) = pc+in(mal) + * ogham(basic) = pc+ie(ogam) + * ogham(laptop) = pc+ie(ogam) + * ogham(is434) = pc+ie(ogam_is434) + * ogham(is434laptop) = pc+ie(ogam_is434) + * ori(basic) = pc+in(ori) + * ro(de) = pc+ro(winkeys) + * ro(us) = pc+ro(std) + * ro(academic) = pc+ro(std) + * ro(std_comma) = pc+ro(std) + * ro(comma) = pc+ro(basic) + * ru(os) = pc+ru(os_legacy) + * pk(urd) = pc+pk(urd-phonetic) + * sapmi(basic) = pc+no(smi) + * sapmi(nodeadkeys) = pc+no(smi_nodeadkeys) + * sapmi(sefi) = pc+fi(smi) + * sin(phonetic-static) = pc+in(sin_phonetic) + * syr(basic) = pc+sy(syc) + * syr(phonetic) = pc+sy(syc_phonetic) + * tam(INSCRIPT) = pc+in(tam) + * tam(UNI) = pc+in(tam_unicode) + * tam(NUMERAL-KEYBOARD) = pc+in(tam_keyboard_with_numerals) + * tam(TAB) = pc+in(tam_TAB) + * tam(TSCII) = pc+in(tam_TSCII) + * tel(basic) = pc+in(tel) + * yu(basic) = pc+srp(latin) + * yu(unicode) = pc+srp(latinunicode) + * yu(yz) = pc+srp(latinyz) + * yu(unicodeyz) = pc+srp(latinunicodeyz) + ataritt $nonlatin = xfree68_vndr/ataritt(us)+%l%(v):2 + ataritt * = xfree68_vndr/ataritt(us)+%l%(v) + amiga $nonlatin = xfree68_vndr/amiga(usa1)+%l%(v):2 + amiga * = xfree68_vndr/amiga(usa1)+%l%(v) + classmate us = pc+%l(classmate) + empty * = empty(basic) + * empty = empty(basic) + sun4 $nonlatin = latin+sun_vndr/us(type4)+%l%(v):2 + sun4 * = latin+sun_vndr/us(type4)+%l%(v) + sun5 $nonlatin = latin+sun_vndr/us(type5)+%l%(v):2 + sun5 * = latin+sun_vndr/us(type5)+%l%(v) + sun6 us = pc+sun_vndr/us(type6) + sun6 en_US = pc+sun_vndr/us(type6)+iso9995-3(basic) + sun6 $sun_t6_custom = pc+sun_vndr/us(type6)+sun_vndr/%l%(v) + sun6 * = pc+sun_vndr/us(type6)+%l%(v) + sun6euro us = pc+sun_vndr/us(type6) + sun6euro en_US = pc+sun_vndr/us(type6)+iso9995-3(basic) + sun6euro $sun_t6_custom = pc+sun_vndr/us(type6)+sun_vndr/%l%(v) + sun6euro * = pc+sun_vndr/us(type6)+%l%(v) + pc98 nec_vndr/jp = nec_vndr/jp(pc98) + macintosh_old us = macintosh_vndr/us(oldmac) + macintosh_old en_US = macintosh_vndr/us(oldmac) + macintosh_old $macvendorlayouts = macintosh_vndr/us(oldmac)+macintosh_vndr/%l%(v) + macintosh_old $nonlatin = macintosh_vndr/us(oldmac)+%l%(v):2 + macintosh_old * = macintosh_vndr/us(oldmac)+%l%(v) + applealu_jis jp = macintosh_vndr/apple(alukbd)+macintosh_vndr/jp(usmac)+macintosh_vndr/jp(mac):2 + applealu_jis * = macintosh_vndr/apple(alukbd)+%l%(v)+macintosh_vndr/jp(mac):2 + $applealu $macvendorlayouts = macintosh_vndr/apple(alukbd)+macintosh_vndr/%l%(v) + $applealu * = macintosh_vndr/apple(alukbd)+%l%(v) + $macs en_US = pc+macintosh_vndr/us(extended) + $macs $macvendorlayouts = pc+macintosh_vndr/%l%(v) + nokiarx44 * = nokia_vndr/rx-44(%l) + nokiarx51 cz(qwerty) = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(cz_qwerty) + nokiarx51 * = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(%l%_v) + nokiasu8w * = nokia_vndr/su-8w(%l) + olpc $olpclayouts = olpc+%l%(m) + olpc * = olpc+%l%(v) + $thinkpads br = pc+br(thinkpad) + sl-c3x00 * = pc+sharp_vndr/sl-c3x00(basic) + ws003sh * = pc+sharp_vndr/ws003sh(basic) + ws007sh * = pc+sharp_vndr/ws007sh(basic) + ws011sh * = pc+sharp_vndr/ws011sh(basic) + ws020sh * = pc+sharp_vndr/ws020sh(basic) + htcdream $htcdreamlayouts = %l(htcdream) + * $nonlatin = pc+us+%l%(v):2 + * * = pc+%l%(v) + +! model layout[1] = symbols + * ar = pc+ara%(v[1]) + * ben = pc+in(ben) + * bs = pc+ba%(v[1]) + * cs = pc+rs%(v[1]) + * cz_qwerty = pc+cz(qwerty) + * dev = pc+in(deva) + * dvorak = pc+us(dvorak) + * dzdwi = pc+bt%(v[1]) + * el = pc+gr%(v[1]) + * en_US = pc+latin%(v[1]) + * guj = pc+in(guj) + * gur = pc+in(guru) + * iu = pc+ca(ike) + * lo = pc+la%(v[1]) + * kan = pc+in(kan) + * mi = pc+mao%(v[1]) + * ml = pc+in(mal) + * ogham = pc+ie(ogam) + * ori = pc+ie(ori) + * sapmi = pc+no(smi) + * sr = pc+srp%(v[1]) + * syr = pc+sy(syc) + * tel = pc+in(tel) + * tml = pc+in(tam) + * yu = pc+srp%(v[1]) + * fr-latin9 = pc+fr(latin9) + * us_intl = pc+us(alt-intl) + * ben(basic) = pc+in(ben) + * ben(probhat) = pc+in(ben_probhat) + * dev(basic) = pc+in(deva) + * dvorak($dvoraklayouts) = pc+%v(dvorak) + * dvorak(basic) = pc+us(dvorak) + * dvorak(pl_basic) = pc+pl(dvorak) + * dvorak(pl) = pc+pl(dvorak_quotes) + * dvorak(pl_altquotes) = pc+pl(dvorak_altquotes) + * dzdwi(basic) = pc+bt(basic) + * fi(basic) = pc+fi(classic) + * ge(azerty_tskapo) = pc+fr(geo) + * guj(basic) = pc+in(guj) + * gur(basic) = pc+in(guru) + * ie(laptop) = pc+ie(basic) + * ie(CloGaelachLaptop) = pc+ie(CloGaelach) + * in(urd) = pc+in(urd-phonetic) + * iu(basic) = pc+ca(ike) + * lo(basic) = pc+la(basic) + * kan(basic) = pc+in(kan) + * mal(basic) = pc+in(mal) + * mal(mlplusnum) = pc+in(mal) + * ogham(basic) = pc+ie(ogam) + * ogham(laptop) = pc+ie(ogam) + * ogham(is434) = pc+ie(ogam_is434) + * ogham(is434laptop) = pc+ie(ogam_is434) + * ori(basic) = pc+in(ori) + * ro(de) = pc+ro(winkeys) + * ro(us) = pc+ro(std) + * ro(academic) = pc+ro(std) + * ro(std_comma) = pc+ro(std) + * ro(comma) = pc+ro(basic) + * ru(os) = pc+ru(os_legacy) + * pk(urd) = pc+pk(urd-phonetic) + * sapmi(basic) = pc+no(smi) + * sapmi(nodeadkeys) = pc+no(smi_nodeadkeys) + * sapmi(sefi) = pc+fi(smi) + * sin(phonetic-static) = pc+in(sin_phonetic) + * syr(basic) = pc+sy(syc) + * syr(phonetic) = pc+sy(syc_phonetic) + * tam(INSCRIPT) = pc+in(tam) + * tam(UNI) = pc+in(tam_unicode) + * tam(NUMERAL-KEYBOARD) = pc+in(tam_keyboard_with_numerals) + * tam(TAB) = pc+in(tam_TAB) + * tam(TSCII) = pc+in(tam_TSCII) + * tel(basic) = pc+in(tel) + * yu(basic) = pc+srp(latin) + * yu(unicode) = pc+srp(latinunicode) + * yu(yz) = pc+srp(latinyz) + * yu(unicodeyz) = pc+srp(latinunicodeyz) + ataritt * = xfree68_vndr/ataritt(us)+%l[1]%(v[1]) + amiga * = xfree68_vndr/amiga(usa1)+%l[1]%(v[1]) + sun4 * = latin+sun_vndr/us(type4)+%l[1]%(v[1]) + sun5 * = latin+sun_vndr/us(type5)+%l[1]%(v[1]) + macintosh_old us = macintosh_vndr/us(oldmac) + macintosh_old $macvendorlayouts = macintosh_vndr/us(oldmac)+macintosh_vndr/%l[1]%(v[1]) + macintosh_old * = macintosh_vndr/us(oldmac)+%l[1]%(v[1]) + applealu_jis us = macintosh_vndr/apple(alukbd)+macintosh_vndr/jp(usmac) + $applealu $macvendorlayouts = macintosh_vndr/apple(alukbd)+macintosh_vndr/%l[1]%(v[1]) + $applealu * = macintosh_vndr/apple(alukbd)+%l[1]%(v[1]) + $macs $macvendorlayouts = pc+macintosh_vndr/%l[1]%(v[1]) + nokiarx51 cz(qwerty) = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(cz_qwerty) + nokiarx51 * = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(%l[1]%_v[1]) + $thinkpads br = pc+%l[1](thinkpad) + * * = pc+%l[1]%(v[1]) + +! model layout[1] variant[1] = symbols + * ben basic = pc+in(ben) + * ben probhat = pc+in(ben_probhat) + * dev basic = pc+in(deva) + * dvorak $dvoraklayouts = pc+%v(dvorak) + * dvorak basic = pc+us(dvorak) + * dvorak pl_basic = pc+pl(dvorak) + * dvorak pl = pc+pl(dvorak_quotes) + * dvorak pl_altquotes = pc+pl(dvorak_altquotes) + * dzdwi basic = pc+bt(basic) + * fi basic = pc+fi(classic) + * ge azerty_tskapo = pc+fr(geo) + * guj basic = pc+in(guj) + * gur basic = pc+in(guru) + * ie laptop = pc+ie(basic) + * ie CloGaelachLaptop = pc+ie(CloGaelach) + * in urd = pc+in(urd-phonetic) + * iu basic = pc+ca(ike) + * lo basic = pc+la(basic) + * kan basic = pc+in(kan) + * mal basic = pc+in(mal) + * mal mlplusnum = pc+in(mal) + * ogham basic = pc+ie(ogam) + * ogham laptop = pc+ie(ogam) + * ogham is434 = pc+ie(ogam_is434) + * ogham is434laptop = pc+ie(ogam_is434) + * ori basic = pc+in(ori) + * ro de = pc+ro(winkeys) + * ro us = pc+ro(std) + * ro academic = pc+ro(std) + * ro std_comma = pc+ro(std) + * ro comma = pc+ro(basic) + * ru os = pc+ru(os_legacy) + * pk urd = pc+pk(urd-phonetic) + * sapmi basic = pc+no(smi) + * sapmi nodeadkeys = pc+no(smi_nodeadkeys) + * sapmi sefi = pc+fi(smi) + * sin phonetic-static = pc+in(sin_phonetic) + * syr basic = pc+sy(syc) + * syr phonetic = pc+sy(syc_phonetic) + * tam INSCRIPT = pc+in(tam) + * tam UNI = pc+in(tam_unicode) + * tam NUMERAL-KEYBOARD = pc+in(tam_keyboard_with_numerals) + * tam TAB = pc+in(tam_TAB) + * tam TSCII = pc+in(tam_TSCII) + * tel basic = pc+in(tel) + * yu basic = pc+srp(latin) + * yu unicode = pc+srp(latinunicode) + * yu yz = pc+srp(latinyz) + * yu unicodeyz = pc+srp(latinunicodeyz) + +! model layout[2] = symbols + * ar = +ara%(v[2]):2 + * ben = +in(ben):2 + * bs = +ba%(v[2]):2 + * cs = +rs%(v[2]):2 + * cz_qwerty = +cz(qwerty):2 + * dev = +in(deva):2 + * dvorak = +us(dvorak):2 + * dzdwi = +bt%(v[2]):2 + * el = +gr%(v[2]):2 + * en_US = +latin%(v[2]):2 + * guj = +in(guj):2 + * gur = +in(guru):2 + * iu = +ca(ike):2 + * lo = +la%(v[2]):2 + * kan = +in(kan):2 + * mi = +mao%(v[2]):2 + * ml = +in(mal):2 + * ogham = +ie(ogam):2 + * ori = +ie(ori):2 + * sapmi = +no(smi):2 + * sr = +srp%(v[2]):2 + * syr = +sy(syc):2 + * tel = +in(tel):2 + * tml = +in(tam):2 + * yu = +srp%(v[2]):2 + * fr-latin9 = +fr(latin9):2 + * us_intl = +us(alt-intl):2 + * ben(basic) = +in(ben):2 + * ben(probhat) = +in(ben_probhat):2 + * dev(basic) = +in(deva):2 + * dvorak($dvoraklayouts) = +%v(dvorak):2 + * dvorak(basic) = +us(dvorak):2 + * dvorak(pl_basic) = +pl(dvorak):2 + * dvorak(pl) = +pl(dvorak_quotes):2 + * dvorak(pl_altquotes) = +pl(dvorak_altquotes):2 + * dzdwi(basic) = +bt(basic):2 + * fi(basic) = +fi(classic):2 + * ge(azerty_tskapo) = +fr(geo):2 + * guj(basic) = +in(guj):2 + * gur(basic) = +in(guru):2 + * ie(laptop) = +ie(basic):2 + * ie(CloGaelachLaptop) = +ie(CloGaelach):2 + * in(urd) = +in(urd-phonetic):2 + * iu(basic) = +ca(ike):2 + * lo(basic) = +la(basic):2 + * kan(basic) = +in(kan):2 + * mal(basic) = +in(mal):2 + * mal(mlplusnum) = +in(mal):2 + * ogham(basic) = +ie(ogam):2 + * ogham(laptop) = +ie(ogam):2 + * ogham(is434) = +ie(ogam_is434):2 + * ogham(is434laptop) = +ie(ogam_is434):2 + * ori(basic) = +in(ori):2 + * ro(de) = +ro(winkeys):2 + * ro(us) = +ro(std):2 + * ro(academic) = +ro(std):2 + * ro(std_comma) = +ro(std):2 + * ro(comma) = +ro(basic):2 + * ru(os) = +ru(os_legacy):2 + * pk(urd) = +pk(urd-phonetic):2 + * sapmi(basic) = +no(smi):2 + * sapmi(nodeadkeys) = +no(smi_nodeadkeys):2 + * sapmi(sefi) = +fi(smi):2 + * sin(phonetic-static) = +in(sin_phonetic):2 + * syr(basic) = +sy(syc):2 + * syr(phonetic) = +sy(syc_phonetic):2 + * tam(INSCRIPT) = +in(tam):2 + * tam(UNI) = +in(tam_unicode):2 + * tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):2 + * tam(TAB) = +in(tam_TAB):2 + * tam(TSCII) = +in(tam_TSCII):2 + * tel(basic) = +in(tel):2 + * yu(basic) = +srp(latin):2 + * yu(unicode) = +srp(latinunicode):2 + * yu(yz) = +srp(latinyz):2 + * yu(unicodeyz) = +srp(latinunicodeyz):2 + nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):2 + nokiarx51 * = +nokia_vndr/rx-51(%l[2]%_v[2]):2 + * * = +%l[2]%(v[2]):2 + +! model layout[3] = symbols + * ar = +ara%(v[3]):3 + * ben = +in(ben):3 + * bs = +ba%(v[3]):3 + * cs = +rs%(v[3]):3 + * cz_qwerty = +cz(qwerty):3 + * dev = +in(deva):3 + * dvorak = +us(dvorak):3 + * dzdwi = +bt%(v[3]):3 + * el = +gr%(v[3]):3 + * en_US = +latin%(v[3]):3 + * guj = +in(guj):3 + * gur = +in(guru):3 + * iu = +ca(ike):3 + * lo = +la%(v[3]):3 + * kan = +in(kan):3 + * mi = +mao%(v[3]):3 + * ml = +in(mal):3 + * ogham = +ie(ogam):3 + * ori = +ie(ori):3 + * sapmi = +no(smi):3 + * sr = +srp%(v[3]):3 + * syr = +sy(syc):3 + * tel = +in(tel):3 + * tml = +in(tam):3 + * yu = +srp%(v[3]):3 + * fr-latin9 = +fr(latin9):3 + * us_intl = +us(alt-intl):3 + * ben(basic) = +in(ben):3 + * ben(probhat) = +in(ben_probhat):3 + * dev(basic) = +in(deva):3 + * dvorak($dvoraklayouts) = +%v(dvorak):3 + * dvorak(basic) = +us(dvorak):3 + * dvorak(pl_basic) = +pl(dvorak):3 + * dvorak(pl) = +pl(dvorak_quotes):3 + * dvorak(pl_altquotes) = +pl(dvorak_altquotes):3 + * dzdwi(basic) = +bt(basic):3 + * fi(basic) = +fi(classic):3 + * ge(azerty_tskapo) = +fr(geo):3 + * guj(basic) = +in(guj):3 + * gur(basic) = +in(guru):3 + * ie(laptop) = +ie(basic):3 + * ie(CloGaelachLaptop) = +ie(CloGaelach):3 + * in(urd) = +in(urd-phonetic):3 + * iu(basic) = +ca(ike):3 + * lo(basic) = +la(basic):3 + * kan(basic) = +in(kan):3 + * mal(basic) = +in(mal):3 + * mal(mlplusnum) = +in(mal):3 + * ogham(basic) = +ie(ogam):3 + * ogham(laptop) = +ie(ogam):3 + * ogham(is434) = +ie(ogam_is434):3 + * ogham(is434laptop) = +ie(ogam_is434):3 + * ori(basic) = +in(ori):3 + * ro(de) = +ro(winkeys):3 + * ro(us) = +ro(std):3 + * ro(academic) = +ro(std):3 + * ro(std_comma) = +ro(std):3 + * ro(comma) = +ro(basic):3 + * ru(os) = +ru(os_legacy):3 + * pk(urd) = +pk(urd-phonetic):3 + * sapmi(basic) = +no(smi):3 + * sapmi(nodeadkeys) = +no(smi_nodeadkeys):3 + * sapmi(sefi) = +fi(smi):3 + * sin(phonetic-static) = +in(sin_phonetic):3 + * syr(basic) = +sy(syc):3 + * syr(phonetic) = +sy(syc_phonetic):3 + * tam(INSCRIPT) = +in(tam):3 + * tam(UNI) = +in(tam_unicode):3 + * tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):3 + * tam(TAB) = +in(tam_TAB):3 + * tam(TSCII) = +in(tam_TSCII):3 + * tel(basic) = +in(tel):3 + * yu(basic) = +srp(latin):3 + * yu(unicode) = +srp(latinunicode):3 + * yu(yz) = +srp(latinyz):3 + * yu(unicodeyz) = +srp(latinunicodeyz):3 + nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):3 + nokiarx51 * = +nokia_vndr/rx-51(%l[3]%_v[3]):3 + * * = +%l[3]%(v[3]):3 + +! model layout[4] = symbols + * ar = +ara%(v[4]):4 + * ben = +in(ben):4 + * bs = +ba%(v[4]):4 + * cs = +rs%(v[4]):4 + * cz_qwerty = +cz(qwerty):4 + * dev = +in(deva):4 + * dvorak = +us(dvorak):4 + * dzdwi = +bt%(v[4]):4 + * el = +gr%(v[4]):4 + * en_US = +latin%(v[4]):4 + * guj = +in(guj):4 + * gur = +in(guru):4 + * iu = +ca(ike):4 + * lo = +la%(v[4]):4 + * kan = +in(kan):4 + * mi = +mao%(v[4]):4 + * ml = +in(mal):4 + * ogham = +ie(ogam):4 + * ori = +ie(ori):4 + * sapmi = +no(smi):4 + * sr = +srp%(v[4]):4 + * syr = +sy(syc):4 + * tel = +in(tel):4 + * tml = +in(tam):4 + * yu = +srp%(v[4]):4 + * fr-latin9 = +fr(latin9):4 + * us_intl = +us(alt-intl):4 + * ben(basic) = +in(ben):4 + * ben(probhat) = +in(ben_probhat):4 + * dev(basic) = +in(deva):4 + * dvorak($dvoraklayouts) = +%v(dvorak):4 + * dvorak(basic) = +us(dvorak):4 + * dvorak(pl_basic) = +pl(dvorak):4 + * dvorak(pl) = +pl(dvorak_quotes):4 + * dvorak(pl_altquotes) = +pl(dvorak_altquotes):4 + * dzdwi(basic) = +bt(basic):4 + * fi(basic) = +fi(classic):4 + * ge(azerty_tskapo) = +fr(geo):4 + * guj(basic) = +in(guj):4 + * gur(basic) = +in(guru):4 + * ie(laptop) = +ie(basic):4 + * ie(CloGaelachLaptop) = +ie(CloGaelach):4 + * in(urd) = +in(urd-phonetic):4 + * iu(basic) = +ca(ike):4 + * lo(basic) = +la(basic):4 + * kan(basic) = +in(kan):4 + * mal(basic) = +in(mal):4 + * mal(mlplusnum) = +in(mal):4 + * ogham(basic) = +ie(ogam):4 + * ogham(laptop) = +ie(ogam):4 + * ogham(is434) = +ie(ogam_is434):4 + * ogham(is434laptop) = +ie(ogam_is434):4 + * ori(basic) = +in(ori):4 + * ro(de) = +ro(winkeys):4 + * ro(us) = +ro(std):4 + * ro(academic) = +ro(std):4 + * ro(std_comma) = +ro(std):4 + * ro(comma) = +ro(basic):4 + * ru(os) = +ru(os_legacy):4 + * pk(urd) = +pk(urd-phonetic):4 + * sapmi(basic) = +no(smi):4 + * sapmi(nodeadkeys) = +no(smi_nodeadkeys):4 + * sapmi(sefi) = +fi(smi):4 + * sin(phonetic-static) = +in(sin_phonetic):4 + * syr(basic) = +sy(syc):4 + * syr(phonetic) = +sy(syc_phonetic):4 + * tam(INSCRIPT) = +in(tam):4 + * tam(UNI) = +in(tam_unicode):4 + * tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):4 + * tam(TAB) = +in(tam_TAB):4 + * tam(TSCII) = +in(tam_TSCII):4 + * tel(basic) = +in(tel):4 + * yu(basic) = +srp(latin):4 + * yu(unicode) = +srp(latinunicode):4 + * yu(yz) = +srp(latinyz):4 + * yu(unicodeyz) = +srp(latinunicodeyz):4 + nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):4 + nokiarx51 * = +nokia_vndr/rx-51(%l[4]%_v[4]):4 + * * = +%l[4]%(v[4]):4 + +! model layout[2] variant[2] = symbols + * ben basic = +in(ben):2 + * ben probhat = +in(ben_probhat):2 + * dev basic = +in(deva):2 + * dvorak $dvoraklayouts = +%v(dvorak):2 + * dvorak basic = +us(dvorak):2 + * dvorak pl_basic = +pl(dvorak):2 + * dvorak pl = +pl(dvorak_quotes):2 + * dvorak pl_altquotes = +pl(dvorak_altquotes):2 + * dzdwi basic = +bt(basic):2 + * fi basic = +fi(classic):2 + * ge azerty_tskapo = +fr(geo):2 + * guj basic = +in(guj):2 + * gur basic = +in(guru):2 + * ie laptop = +ie(basic):2 + * ie CloGaelachLaptop = +ie(CloGaelach):2 + * in urd = +in(urd-phonetic):2 + * iu basic = +ca(ike):2 + * lo basic = +la(basic):2 + * kan basic = +in(kan):2 + * mal basic = +in(mal):2 + * mal mlplusnum = +in(mal):2 + * ogham basic = +ie(ogam):2 + * ogham laptop = +ie(ogam):2 + * ogham is434 = +ie(ogam_is434):2 + * ogham is434laptop = +ie(ogam_is434):2 + * ori basic = +in(ori):2 + * ro de = +ro(winkeys):2 + * ro us = +ro(std):2 + * ro academic = +ro(std):2 + * ro std_comma = +ro(std):2 + * ro comma = +ro(basic):2 + * ru os = +ru(os_legacy):2 + * pk urd = +pk(urd-phonetic):2 + * sapmi basic = +no(smi):2 + * sapmi nodeadkeys = +no(smi_nodeadkeys):2 + * sapmi sefi = +fi(smi):2 + * sin phonetic-static = +in(sin_phonetic):2 + * syr basic = +sy(syc):2 + * syr phonetic = +sy(syc_phonetic):2 + * tam INSCRIPT = +in(tam):2 + * tam UNI = +in(tam_unicode):2 + * tam NUMERAL-KEYBOARD = +in(tam_keyboard_with_numerals):2 + * tam TAB = +in(tam_TAB):2 + * tam TSCII = +in(tam_TSCII):2 + * tel basic = +in(tel):2 + * yu basic = +srp(latin):2 + * yu unicode = +srp(latinunicode):2 + * yu yz = +srp(latinyz):2 + * yu unicodeyz = +srp(latinunicodeyz):2 + +! model layout[3] variant[3] = symbols + * ben basic = +in(ben):3 + * ben probhat = +in(ben_probhat):3 + * dev basic = +in(deva):3 + * dvorak $dvoraklayouts = +%v(dvorak):3 + * dvorak basic = +us(dvorak):3 + * dvorak pl_basic = +pl(dvorak):3 + * dvorak pl = +pl(dvorak_quotes):3 + * dvorak pl_altquotes = +pl(dvorak_altquotes):3 + * dzdwi basic = +bt(basic):3 + * fi basic = +fi(classic):3 + * ge azerty_tskapo = +fr(geo):3 + * guj basic = +in(guj):3 + * gur basic = +in(guru):3 + * ie laptop = +ie(basic):3 + * ie CloGaelachLaptop = +ie(CloGaelach):3 + * in urd = +in(urd-phonetic):3 + * iu basic = +ca(ike):3 + * lo basic = +la(basic):3 + * kan basic = +in(kan):3 + * mal basic = +in(mal):3 + * mal mlplusnum = +in(mal):3 + * ogham basic = +ie(ogam):3 + * ogham laptop = +ie(ogam):3 + * ogham is434 = +ie(ogam_is434):3 + * ogham is434laptop = +ie(ogam_is434):3 + * ori basic = +in(ori):3 + * ro de = +ro(winkeys):3 + * ro us = +ro(std):3 + * ro academic = +ro(std):3 + * ro std_comma = +ro(std):3 + * ro comma = +ro(basic):3 + * ru os = +ru(os_legacy):3 + * pk urd = +pk(urd-phonetic):3 + * sapmi basic = +no(smi):3 + * sapmi nodeadkeys = +no(smi_nodeadkeys):3 + * sapmi sefi = +fi(smi):3 + * sin phonetic-static = +in(sin_phonetic):3 + * syr basic = +sy(syc):3 + * syr phonetic = +sy(syc_phonetic):3 + * tam INSCRIPT = +in(tam):3 + * tam UNI = +in(tam_unicode):3 + * tam NUMERAL-KEYBOARD = +in(tam_keyboard_with_numerals):3 + * tam TAB = +in(tam_TAB):3 + * tam TSCII = +in(tam_TSCII):3 + * tel basic = +in(tel):3 + * yu basic = +srp(latin):3 + * yu unicode = +srp(latinunicode):3 + * yu yz = +srp(latinyz):3 + * yu unicodeyz = +srp(latinunicodeyz):3 + +! model layout[4] variant[4] = symbols + * ben basic = +in(ben):4 + * ben probhat = +in(ben_probhat):4 + * dev basic = +in(deva):4 + * dvorak $dvoraklayouts = +%v(dvorak):4 + * dvorak basic = +us(dvorak):4 + * dvorak pl_basic = +pl(dvorak):4 + * dvorak pl = +pl(dvorak_quotes):4 + * dvorak pl_altquotes = +pl(dvorak_altquotes):4 + * dzdwi basic = +bt(basic):4 + * fi basic = +fi(classic):4 + * ge azerty_tskapo = +fr(geo):4 + * guj basic = +in(guj):4 + * gur basic = +in(guru):4 + * ie laptop = +ie(basic):4 + * ie CloGaelachLaptop = +ie(CloGaelach):4 + * in urd = +in(urd-phonetic):4 + * iu basic = +ca(ike):4 + * lo basic = +la(basic):4 + * kan basic = +in(kan):4 + * mal basic = +in(mal):4 + * mal mlplusnum = +in(mal):4 + * ogham basic = +ie(ogam):4 + * ogham laptop = +ie(ogam):4 + * ogham is434 = +ie(ogam_is434):4 + * ogham is434laptop = +ie(ogam_is434):4 + * ori basic = +in(ori):4 + * ro de = +ro(winkeys):4 + * ro us = +ro(std):4 + * ro academic = +ro(std):4 + * ro std_comma = +ro(std):4 + * ro comma = +ro(basic):4 + * ru os = +ru(os_legacy):4 + * pk urd = +pk(urd-phonetic):4 + * sapmi basic = +no(smi):4 + * sapmi nodeadkeys = +no(smi_nodeadkeys):4 + * sapmi sefi = +fi(smi):4 + * sin phonetic-static = +in(sin_phonetic):4 + * syr basic = +sy(syc):4 + * syr phonetic = +sy(syc_phonetic):4 + * tam INSCRIPT = +in(tam):4 + * tam UNI = +in(tam_unicode):4 + * tam NUMERAL-KEYBOARD = +in(tam_keyboard_with_numerals):4 + * tam TAB = +in(tam_TAB):4 + * tam TSCII = +in(tam_TSCII):4 + * tel basic = +in(tel):4 + * yu basic = +srp(latin):4 + * yu unicode = +srp(latinunicode):4 + * yu yz = +srp(latinyz):4 + * yu unicodeyz = +srp(latinunicodeyz):4 + +! model = symbols + a4techKB21 = +inet(media_nav_common) + a4techKBS8 = +inet(media_nav_acpi_common) + a4_rfkb23 = +inet(media_nav_acpi_common) + asus_laptop = +inet(media_common) + acer_tm_800 = +inet(acer_laptop) + benqx730 = +inet(benqx) + benqx800 = +inet(benqx) + btc5126t = +inet(nav_acpi_common) + btc9116u = +inet(btc9019u) + btc6301urf = +inet(media_nav_acpi_common) + dellsk8125 = +inet(dell) + dellsk8135 = +inet(dell) + cherrybunlim = +inet(nav_common) + dexxa = +inet(media_nav_common) + dtk2000 = +inet(media_nav_acpi_common) + fscaa1667g = +inet(media_nav_common) + geniuskb19e = +inet(media_nav_acpi_common) + geniuscomfy = +inet(media_nav_acpi_common) + geniuskkb2050hs = +inet(dellusbmm) + hpnx9020 = +inet(hpi6) + latitude = +inet(media_common) + logicd = +inet(logitech_base) + logicd_it = +inet(logitech_base) + logicd_nav = +inet(logitech_base) + logicd_opt = +inet(logitech_base) + logiultrax = +inet(logitech_base) + logiclx300 = +inet(logiex110) + logii350 = +inet(logiex110) + logimel = +inet(logiex110) + logicdit = +inet(logicd) + logicdo = +inet(logicd) + logicdp = +inet(logicd) + logicdpa = +inet(logicda) + logiciink = +inet(logicink) + ltcd = +inet(logicda) + microsoftccurve2k = +inet(microsoftprooem) + microsoftpro = +inet(media_nav_acpi_common) + precision_m = +inet(media_nav_common) + scorpius = +inet(media_nav_acpi_common) + sp_inet = +inet(media_nav_acpi_common) + targa_v811 = +inet(media_nav_acpi_common) + thinkpad = +inet(media_nav_common) + thinkpadz60 = +inet(thinkpad60) + tm2030USB-102 = +inet(media_nav_acpi_common) + tm2030USB-106 = +inet(media_nav_acpi_common) + trust_slimline = +inet(media_nav_acpi_common) + vsonku306 = +inet(microsoftprooem) + $inetkbds = +inet(%m) + $maclaptop = +inet(apple)+level3(enter_switch) + $applealu = +inet(apple) + $macs = +inet(apple) + +! layout variant = compat + de neo = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock) + +! layout[1] variant[1] = compat + de neo = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock) + +! layout[2] variant[2] = compat + de neo = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2 + +! layout[3] variant[3] = compat + de neo = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3 + +! layout[4] variant[4] = compat + de neo = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4 + +! model layout = compat + pc98 nec_vndr/jp = pc98(basic) + * jp = complete+japan + olpc * = olpc + * * = complete + +! model layout[1] = compat + * * = complete + +! model = types + $macs = complete+numpad(mac) + $applealu = complete+numpad(mac) + $nokiamodels = complete+nokia + * = complete + +! layout option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle) + * misc:typo = +typo(base) + +! layout[1] option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):1 + * misc:typo = +typo(base):1 + +! layout[2] option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):2 + * misc:typo = +typo(base):2 + +! layout[3] option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):3 + * misc:typo = +typo(base):3 + +! layout[4] option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):4 + * misc:typo = +typo(base):4 + +! option = symbols + grp:shift_toggle = +group(shifts_toggle) + altwin:menu = +altwin(menu) + altwin:meta_alt = +altwin(meta_alt) + altwin:ctrl_win = +altwin(ctrl_win) + altwin:ctrl_alt_win = +altwin(ctrl_alt_win) + altwin:meta_win = +altwin(meta_win) + altwin:left_meta_win = +altwin(left_meta_win) + altwin:hyper_win = +altwin(hyper_win) + altwin:alt_super_win = +altwin(alt_super_win) + altwin:swap_lalt_lwin = +altwin(swap_lalt_lwin) + grp:switch = +group(switch) + grp:lswitch = +group(lswitch) + grp:win_switch = +group(win_switch) + grp:lwin_switch = +group(lwin_switch) + grp:rwin_switch = +group(rwin_switch) + grp:toggle = +group(toggle) + grp:shifts_toggle = +group(shifts_toggle) + grp:ctrls_toggle = +group(ctrls_toggle) + grp:alts_toggle = +group(alts_toggle) + grp:ctrl_shift_toggle = +group(ctrl_shift_toggle) + grp:lctrl_lshift_toggle = +group(lctrl_lshift_toggle) + grp:rctrl_rshift_toggle = +group(rctrl_rshift_toggle) + grp:caps_toggle = +capslock(grouplock) + grp:caps_switch = +capslock(groupshift) + grp:shift_caps_toggle = +group(shift_caps_toggle) + grp:shift_caps_switch = +group(shift_caps_switch) + grp:win_menu_switch = +group(win_menu_switch) + grp:alt_caps_toggle = +group(alt_caps_toggle) + grp:ctrl_alt_toggle = +group(ctrl_alt_toggle) + grp:alt_shift_toggle = +group(alt_shift_toggle) + grp:alt_space_toggle = +group(alt_space_toggle) + grp:menu_toggle = +group(menu_toggle) + grp:lwin_toggle = +group(lwin_toggle) + grp:rwin_toggle = +group(rwin_toggle) + grp:lshift_toggle = +group(lshift_toggle) + grp:rshift_toggle = +group(rshift_toggle) + grp:rctrl_switch = +group(rctrl_switch) + grp:lctrl_toggle = +group(lctrl_toggle) + grp:rctrl_toggle = +group(rctrl_toggle) + grp:lalt_toggle = +group(lalt_toggle) + grp:sclk_toggle = +group(sclk_toggle) + grp:lctrl_rctrl_switch = +group(lctrl_rctrl_switch) + grp:lctrl_lwin_rctrl_menu = +group(lctrl_lwin_rctrl_menu) + lv3:switch = +level3(switch) + lv3:ralt_switch = +level3(ralt_switch) + lv3:ralt_switch_multikey = +level3(ralt_switch_multikey) + lv3:ralt_alt = +level3(ralt_alt) + lv3:lalt_switch = +level3(lalt_switch) + lv3:alt_switch = +level3(alt_switch) + lv3:menu_switch = +level3(menu_switch) + lv3:win_switch = +level3(win_switch) + lv3:lwin_switch = +level3(lwin_switch) + lv3:rwin_switch = +level3(rwin_switch) + lv3:enter_switch = +level3(enter_switch) + caps:capslock = +capslock(capslock) + caps:numlock = +capslock(numlock) + caps:shiftlock = +capslock(shiftlock) + caps:swapescape = +capslock(swapescape) + caps:escape = +capslock(escape) + caps:backspace = +capslock(backspace) + caps:super = +capslock(super) + caps:hyper = +capslock(hyper) + caps:none = +capslock(none) + caps:ctrl_modifier = +capslock(ctrl_modifier) + ctrl:nocaps = +ctrl(nocaps) + ctrl:lctrl_meta = +ctrl(lctrl_meta) + ctrl:swapcaps = +ctrl(swapcaps) + ctrl:ctrl_ac = +ctrl(ctrl_ac) + ctrl:ctrl_aa = +ctrl(ctrl_aa) + ctrl:ctrl_ra = +ctrl(ctrl_ra) + ctrl:ctrl_menu = +ctrl(ctrl_menu) + compose:ralt = +compose(ralt) + compose:lwin = +compose(lwin) + compose:rwin = +compose(rwin) + compose:menu = +compose(menu) + compose:lctrl = +compose(lctrl) + compose:rctrl = +compose(rctrl) + compose:caps = +compose(caps) + compose:102 = +compose(102) + compose:paus = +compose(paus) + compose:prsc = +compose(prsc) + compose:sclk = +compose(sclk) + srvrkeys:none = +srvr_ctrl(no_srvr_keys) + eurosign:e = +eurosign(e) + eurosign:2 = +eurosign(2) + eurosign:4 = +eurosign(4) + eurosign:5 = +eurosign(5) + rupeesign:4 = +rupeesign(4) + keypad:oss = +keypad(oss) + keypad:legacy = +keypad(legacy) + keypad:legacy_wang = +keypad(legacy_wang) + keypad:oss_wang = +keypad(oss_wang) + keypad:future = +keypad(future) + keypad:future_wang = +keypad(future_wang) + keypad:hex = +keypad(ops)+keypad(hex) + keypad:atm = +keypad(ops)+keypad(hex)+keypad(atm) + nbsp:none = +nbsp(none) + nbsp:level2 = +nbsp(level2) + nbsp:level3 = +nbsp(level3) + nbsp:level3s = +nbsp(level3s) + nbsp:level3n = +nbsp(level3n) + nbsp:level4 = +nbsp(level4) + nbsp:level4n = +nbsp(level4n) + nbsp:level4nl = +nbsp(level4nl) + japan:nicola_f_bs = +jp(nicola_f_bs) + kpdl:dot = +kpdl(dot) + kpdl:comma = +kpdl(comma) + kpdl:dotoss = +kpdl(dotoss) + kpdl:dotoss_latin9 = +kpdl(dotoss_latin9) + kpdl:commaoss = +kpdl(commaoss) + kpdl:momayyezoss = +kpdl(momayyezoss) + kpdl:kposs = +kpdl(kposs) + kpdl:semi = +kpdl(semi) + shift:breaks_caps = +shift(breaks_caps) + esperanto:qwerty = +epo(qwerty) + esperanto:dvorak = +epo(dvorak) + terminate:ctrl_alt_bksp = +terminate(ctrl_alt_bksp) + keypad:pointerkeys = +keypad(pointerkeys) + apple:alupckeys = +macintosh_vndr/apple(alupckeys) + shift:both_capslock = +shift(both_capslock) + shift:lshift_both_capslock = +shift(lshift_both_capslock) + shift:rshift_both_capslock = +shift(rshift_both_capslock) + shift:both_capslock_cancel = +shift(both_capslock_cancel) + shift:lshift_both_capslock_cancel = +shift(lshift_both_capslock_cancel) + shift:rshift_both_capslock_cancel = +shift(rshift_both_capslock_cancel) + shift:both_shiftlock = +shift(both_shiftlock) + shift:lshift_both_shiftlock = +shift(lshift_both_shiftlock) + shift:rshift_both_shiftlock = +shift(rshift_both_shiftlock) + lv3:caps_switch = +level3(caps_switch) + lv3:bksl_switch = +level3(bksl_switch) + lv3:lsgt_switch = +level3(lsgt_switch) + lv3:caps_switch_latch = +level3(caps_switch_latch) + lv3:bksl_switch_latch = +level3(bksl_switch_latch) + lv3:lsgt_switch_latch = +level3(lsgt_switch_latch) + lv5:lsgt_switch_lock = +level5(lsgt_switch_lock) + lv5:ralt_switch_lock = +level5(ralt_switch_lock) + lv5:lwin_switch_lock = +level5(lwin_switch_lock) + lv5:rwin_switch_lock = +level5(rwin_switch_lock) + lv5:lsgt_switch_lock_cancel = +level5(lsgt_switch_lock_cancel) + lv5:ralt_switch_lock_cancel = +level5(ralt_switch_lock_cancel) + lv5:lwin_switch_lock_cancel = +level5(lwin_switch_lock_cancel) + lv5:rwin_switch_lock_cancel = +level5(rwin_switch_lock_cancel) + + + +! option = compat + grp_led:num = +lednum(group_lock) + grp_led:caps = +ledcaps(group_lock) + grp_led:scroll = +ledscroll(group_lock) + japan:kana_lock = +japan(kana_lock) + caps:shiftlock = +ledcaps(shift_lock) + + +! option = types + caps:internal = +caps(internal) + caps:internal_nocancel = +caps(internal_nocancel) + caps:shift = +caps(shift) + caps:shift_nocancel = +caps(shift_nocancel) + numpad:pc = +numpad(pc) + numpad:mac = +numpad(mac) + numpad:microsoft = +numpad(microsoft) + numpad:shift3 = +numpad(shift3) diff --git a/external/mit/xorg/lib/xkeyboard-config/rules/base.lst b/external/mit/xorg/lib/xkeyboard-config/rules/base.lst new file mode 100644 index 000000000..0459a2be3 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/rules/base.lst @@ -0,0 +1,837 @@ +! model + pc101 Generic 101-key PC + pc102 Generic 102-key (Intl) PC + pc104 Generic 104-key PC + pc105 Generic 105-key (Intl) PC + dell101 Dell 101-key PC + latitude Dell Latitude series laptop + dellm65 Dell Precision M65 + everex Everex STEPnote + flexpro Keytronic FlexPro + microsoft Microsoft Natural + omnikey101 Northgate OmniKey 101 + winbook Winbook Model XP5 + pc98 PC-98xx Series + a4techKB21 A4Tech KB-21 + a4techKBS8 A4Tech KBS-8 + a4_rfkb23 A4Tech Wireless Desktop RFKB-23 + airkey Acer AirKey V + azonaRF2300 Azona RF2300 wireless Internet Keyboard + scorpius Advance Scorpius KI + brother Brother Internet Keyboard + btc5113rf BTC 5113RF Multimedia + btc5126t BTC 5126T + btc6301urf BTC 6301URF + btc9000 BTC 9000 + btc9000a BTC 9000A + btc9001ah BTC 9001AH + btc5090 BTC 5090 + btc9019u BTC 9019U + btc9116u BTC 9116U Mini Wireless Internet and Gaming + cherryblue Cherry Blue Line CyBo@rd + cherryblueb Cherry CyMotion Master XPress + cherrybluea Cherry Blue Line CyBo@rd (alternate option) + cherrycyboard Cherry CyBo@rd USB-Hub + cherrycmexpert Cherry CyMotion Expert + cherrybunlim Cherry B.UNLIMITED + chicony Chicony Internet Keyboard + chicony0108 Chicony KU-0108 + chicony0420 Chicony KU-0420 + chicony9885 Chicony KB-9885 + compaqeak8 Compaq Easy Access Keyboard + compaqik7 Compaq Internet Keyboard (7 keys) + compaqik13 Compaq Internet Keyboard (13 keys) + compaqik18 Compaq Internet Keyboard (18 keys) + cymotionlinux Cherry CyMotion Master Linux + armada Laptop/notebook Compaq (eg. Armada) Laptop Keyboard + presario Laptop/notebook Compaq (eg. Presario) Internet Keyboard + ipaq Compaq iPaq Keyboard + dell Dell + dellsk8125 Dell SK-8125 + dellsk8135 Dell SK-8135 + dellusbmm Dell USB Multimedia Keyboard + inspiron Dell Laptop/notebook Inspiron 6xxx/8xxx + precision_m Dell Laptop/notebook Precision M series + dexxa Dexxa Wireless Desktop Keyboard + diamond Diamond 9801 / 9802 series + dtk2000 DTK2000 + ennyah_dkb1008 Ennyah DKB-1008 + fscaa1667g Fujitsu-Siemens Computers AMILO laptop + genius Genius Comfy KB-16M / Genius MM Keyboard KWD-910 + geniuscomfy Genius Comfy KB-12e + geniuscomfy2 Genius Comfy KB-21e-Scroll + geniuskb19e Genius KB-19e NB + geniuskkb2050hs Genius KKB-2050HS + gyration Gyration + htcdream HTC Dream + kinesis Kinesis + logitech_base Logitech Generic Keyboard + logitech_g15 Logitech G15 extra keys via G15daemon + hpi6 Hewlett-Packard Internet Keyboard + hp250x Hewlett-Packard SK-250x Multimedia Keyboard + hpxe3gc Hewlett-Packard Omnibook XE3 GC + hpxe3gf Hewlett-Packard Omnibook XE3 GF + hpxt1000 Hewlett-Packard Omnibook XT1000 + hpdv5 Hewlett-Packard Pavilion dv5 + hpzt11xx Hewlett-Packard Pavilion ZT11xx + hp500fa Hewlett-Packard Omnibook 500 FA + hp5xx Hewlett-Packard Omnibook 5xx + hpnx9020 Hewlett-Packard nx9020 + hp6000 Hewlett-Packard Omnibook 6000/6100 + honeywell_euroboard Honeywell Euroboard + hpmini110 Hewlett-Packard Mini 110 Notebook + rapidaccess IBM Rapid Access + rapidaccess2 IBM Rapid Access II + thinkpad IBM ThinkPad 560Z/600/600E/A22E + thinkpad60 IBM ThinkPad R60/T60/R61/T61 + thinkpadz60 IBM ThinkPad Z60m/Z60t/Z61m/Z61t + ibm_spacesaver IBM Space Saver + logiaccess Logitech Access Keyboard + logiclx300 Logitech Cordless Desktop LX-300 + logii350 Logitech Internet 350 Keyboard + logimel Logitech Media Elite Keyboard + logicd Logitech Cordless Desktop + logicd_it Logitech Cordless Desktop iTouch + logicd_nav Logitech Cordless Desktop Navigator + logicd_opt Logitech Cordless Desktop Optical + logicda Logitech Cordless Desktop (alternate option) + logicdpa2 Logitech Cordless Desktop Pro (alternate option 2) + logicfn Logitech Cordless Freedom/Desktop Navigator + logicdn Logitech Cordless Desktop Navigator + logiitc Logitech iTouch Cordless Keyboard (model Y-RB6) + logiik Logitech Internet Keyboard + itouch Logitech iTouch + logicink Logitech Internet Navigator Keyboard + logiex110 Logitech Cordless Desktop EX110 + logiinkse Logitech iTouch Internet Navigator Keyboard SE + logiinkseusb Logitech iTouch Internet Navigator Keyboard SE (USB) + logiultrax Logitech Ultra-X Keyboard + logiultraxc Logitech Ultra-X Cordless Media Desktop Keyboard + logidinovo Logitech diNovo Keyboard + logidinovoedge Logitech diNovo Edge Keyboard + mx1998 Memorex MX1998 + mx2500 Memorex MX2500 EZ-Access Keyboard + mx2750 Memorex MX2750 + microsoft4000 Microsoft Natural Wireless Ergonomic Keyboard 4000 + microsoft7000 Microsoft Natural Wireless Ergonomic Keyboard 7000 + microsoftinet Microsoft Internet Keyboard + microsoftpro Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro + microsoftprousb Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro + microsoftprooem Microsoft Natural Keyboard Pro OEM + vsonku306 ViewSonic KU-306 Internet Keyboard + microsoftprose Microsoft Internet Keyboard Pro, Swedish + microsoftoffice Microsoft Office Keyboard + microsoftmult Microsoft Wireless Multimedia Keyboard 1.0A + microsoftelite Microsoft Natural Keyboard Elite + microsoftccurve2k Microsoft Comfort Curve Keyboard 2000 + oretec Ortek MCK-800 MM/Internet keyboard + propeller Propeller Voyager (KTEZ-1000) + qtronix QTronix Scorpius 98N+ + samsung4500 Samsung SDM 4500P + samsung4510 Samsung SDM 4510P + sanwaskbkg3 Sanwa Supply SKB-KG3 + sk1300 SK-1300 + sk2500 SK-2500 + sk6200 SK-6200 + sk7100 SK-7100 + sp_inet Super Power Multimedia Keyboard + sven SVEN Ergonomic 2500 + sven303 SVEN Slim 303 + symplon Symplon PaceBook (tablet PC) + toshiba_s3000 Toshiba Satellite S3000 + trust Trust Wireless Keyboard Classic + trustda Trust Direct Access Keyboard + trust_slimline Trust Slimline + tm2020 TypeMatrix EZ-Reach 2020 + tm2030PS2 TypeMatrix EZ-Reach 2030 PS2 + tm2030USB TypeMatrix EZ-Reach 2030 USB + tm2030USB-102 TypeMatrix EZ-Reach 2030 USB (102/105:EU mode) + tm2030USB-106 TypeMatrix EZ-Reach 2030 USB (106:JP mode) + yahoo Yahoo! Internet Keyboard + macbook78 MacBook/MacBook Pro + macbook79 MacBook/MacBook Pro (Intl) + macintosh Macintosh + macintosh_old Macintosh Old + macintosh_hhk Happy Hacking Keyboard for Mac + acer_c300 Acer C300 + acer_ferrari4k Acer Ferrari 4000 + acer_laptop Acer Laptop + asus_laptop Asus Laptop + apple Apple + apple_laptop Apple Laptop + applealu_ansi Apple Aluminium Keyboard (ANSI) + applealu_iso Apple Aluminium Keyboard (ISO) + applealu_jis Apple Aluminium Keyboard (JIS) + silvercrest SILVERCREST Multimedia Wireless Keyboard + emachines Laptop/notebook eMachines m68xx + benqx BenQ X-Touch + benqx730 BenQ X-Touch 730 + benqx800 BenQ X-Touch 800 + hhk Happy Hacking Keyboard + classmate Classmate PC + olpc OLPC + sun6 Sun Type 5/6 + targa_v811 Targa Visionary 811 + unitekkb1925 Unitek KB-1925 + compalfl90 FL90 + creativedw7000 Creative Desktop Wireless 7000 + htcdream Htc Dream phone + +! layout + us English (US) + ad Catalan + af Afghani + ara Arabic + al Albanian + am Armenian + at German (Austria) + az Azerbaijani + by Belarusian + be Belgian + bd Bengali + in Indian + ba Bosnian + br Portuguese (Brazil) + bg Bulgarian + ma Arabic (Morocco) + cm English (Cameroon) + mm Burmese + ca French (Canada) + cd French (Democratic Republic of the Congo) + cn Chinese + hr Croatian + cz Czech + dk Danish + nl Dutch + bt Dzongkha + ee Estonian + ir Persian + iq Iraqi + fo Faroese + fi Finnish + fr French + gh English (Ghana) + gn French (Guinea) + ge Georgian + de German + gr Greek + hu Hungarian + is Icelandic + il Hebrew + it Italian + jp Japanese + kg Kyrgyz + kh Khmer (Cambodia) + kz Kazakh + la Lao + latam Spanish (Latin American) + lt Lithuanian + lv Latvian + mao Maori + me Montenegrin + mk Macedonian + mt Maltese + mn Mongolian + no Norwegian + pl Polish + pt Portuguese + ro Romanian + ru Russian + rs Serbian + si Slovenian + sk Slovak + es Spanish + se Swedish + ch German (Switzerland) + sy Arabic (Syria) + tj Tajik + lk Sinhala + th Thai + tr Turkish + tw Taiwanese + ua Ukrainian + gb English (UK) + uz Uzbek + vn Vietnamese + kr Korean + nec_vndr/jp Japanese (PC-98xx Series) + ie Irish + pk Urdu (Pakistan) + mv Dhivehi + za English (South Africa) + epo Esperanto + np Nepali + ng English (Nigeria) + et Amharic + sn Wolof + brai Braille + tm Turkmen + ml Bambara + tz Swahili (Tanzania) + ke Swahili (Kenya) + bw Tswana + ph Filipino + +! variant + chr us: Cherokee + euro us: English (US, with euro on 5) + intl us: English (US, international with dead keys) + alt-intl us: English (US, alternative international) + colemak us: English (Colemak) + dvorak us: English (Dvorak) + dvorak-intl us: English (Dvorak international with dead keys) + dvorak-alt-intl us: English (Dvorak alternative international no dead keys) + dvorak-l us: English (left handed Dvorak) + dvorak-r us: English (right handed Dvorak) + dvorak-classic us: English (classic Dvorak) + dvp us: English (programmer Dvorak) + rus us: Russian (US, phonetic) + mac us: English (Macintosh) + altgr-intl us: English (international AltGr dead keys) + olpc2 us: English (layout toggle on multiply/divide key) + hbs us: Serbo-Croatian (US) + ps af: Pashto + uz af: Uzbek (Afghanistan) + olpc-ps af: Pashto (Afghanistan, OLPC) + fa-olpc af: Persian (Afghanistan, Dari OLPC) + uz-olpc af: Uzbek (Afghanistan, OLPC) + azerty ara: Arabic (azerty) + azerty_digits ara: Arabic (azerty/digits) + digits ara: Arabic (digits) + qwerty ara: Arabic (qwerty) + qwerty_digits ara: Arabic (qwerty/digits) + buckwalter ara: Arabic (Buckwalter) + phonetic am: Armenian (phonetic) + phonetic-alt am: Armenian (alternative phonetic) + eastern am: Armenian (eastern) + western am: Armenian (western) + eastern-alt am: Armenian (alternative eastern) + nodeadkeys at: German (Austria, eliminate dead keys) + sundeadkeys at: German (Austria, Sun dead keys) + mac at: German (Austria, Macintosh) + cyrillic az: Azerbaijani (Cyrillic) + legacy by: Belarusian (legacy) + latin by: Belarusian (Latin) + oss be: Belgian (alternative) + oss_latin9 be: Belgian (alternative, latin-9 only) + oss_sundeadkeys be: Belgian (alternative, Sun dead keys) + iso-alternate be: Belgian (ISO alternate) + nodeadkeys be: Belgian (eliminate dead keys) + sundeadkeys be: Belgian (Sun dead keys) + wang be: Belgian (Wang model 724 azerty) + probhat bd: Bengali (Probhat) + ben in: Bengali + ben_probhat in: Bengali (Probhat) + guj in: Gujarati + guru in: Punjabi (Gurmukhi) + jhelum in: Punjabi (Gurmukhi Jhelum) + kan in: Kannada + mal in: Malayalam + mal_lalitha in: Malayalam (Lalitha) + mal_enhanced in: Malayalam (enhanced Inscript with Rupee Sign) + ori in: Oriya + tam_unicode in: Tamil (Unicode) + tam_keyboard_with_numerals in: Tamil (keyboard with numerals) + tam_TAB in: Tamil (TAB typewriter) + tam_TSCII in: Tamil (TSCII typewriter) + tam in: Tamil + tel in: Telugu + urd-phonetic in: Urdu (phonetic) + urd-phonetic3 in: Urdu (alternative phonetic) + urd-winkeys in: Urdu (WinKeys) + bolnagri in: Hindi (Bolnagri) + hin-wx in: Hindi (Wx) + eng in: English (India, with RupeeSign) + alternatequotes ba: Bosnian (use guillemets for quotes) + unicode ba: Bosnian (use Bosnian digraphs) + unicodeus ba: Bosnian (US keyboard with Bosnian digraphs) + us ba: Bosnian (US keyboard with Bosnian letters) + nodeadkeys br: Portuguese (Brazil, eliminate dead keys) + dvorak br: Portuguese (Brazil, Dvorak) + nativo br: Portuguese (Brazil, nativo) + nativo-us br: Portuguese (Brazil, nativo for USA keyboards) + nativo-epo br: Portuguese (Brazil, nativo for Esperanto) + phonetic bg: Bulgarian (traditional phonetic) + bas_phonetic bg: Bulgarian (new phonetic) + french ma: French (Morocco) + tifinagh ma: Berber (Morocco, Tifinagh) + tifinagh-alt ma: Berber (Morocco, Tifinagh alternative) + tifinagh-alt-phonetic ma: Berber (Morocco, Tifinagh alternative phonetic) + tifinagh-extended ma: Berber (Morocco, Tifinagh extended) + tifinagh-phonetic ma: Berber (Morocco, Tifinagh phonetic) + tifinagh-extended-phonetic ma: Berber (Morocco, Tifinagh extended phonetic) + french cm: French (Cameroon) + qwerty cm: English (Cameroon qwerty) + azerty cm: French (Cameroon azerty) + dvorak cm: English (Cameroon Dvorak) + fr-dvorak ca: French (Canada, Dvorak) + fr-legacy ca: French (Canada, legacy) + multix ca: Canadian Multilingual + multi ca: Canadian Multilingual (first part) + multi-2gr ca: Canadian Multilingual (second part) + ike ca: Inuktitut + eng ca: English (Canada) + tib cn: Tibetan + tib_asciinum cn: Tibetan (with ASCII numerals) + uig cn: Uyghur + alternatequotes hr: Croatian (use guillemets for quotes) + unicode hr: Croatian (use Croatian digraphs) + unicodeus hr: Croatian (US keyboard with Croatian digraphs) + us hr: Croatian (US keyboard with Croatian letters) + bksl cz: Czech (with <\|> key) + qwerty cz: Czech (qwerty) + qwerty_bksl cz: Czech (qwerty, extended Backslash) + ucw cz: Czech (UCW layout, accented letters only) + dvorak-ucw cz: Czech (US Dvorak with CZ UCW support) + nodeadkeys dk: Danish (eliminate dead keys) + mac dk: Danish (Macintosh) + mac_nodeadkeys dk: Danish (Macintosh, eliminate dead keys) + dvorak dk: Danish (Dvorak) + sundeadkeys nl: Dutch (Sun dead keys) + mac nl: Dutch (Macintosh) + std nl: Dutch (standard) + nodeadkeys ee: Estonian (eliminate dead keys) + dvorak ee: Estonian (Dvorak) + us ee: Estonian (US keyboard with Estonian letters) + pes_keypad ir: Persian (with Persian Keypad) + ku ir: Kurdish (Iran, Latin Q) + ku_f ir: Kurdish (Iran, F) + ku_alt ir: Kurdish (Iran, Latin Alt-Q) + ku_ara ir: Kurdish (Iran, Arabic-Latin) + ku iq: Kurdish (Iraq, Latin Q) + ku_f iq: Kurdish (Iraq, F) + ku_alt iq: Kurdish (Iraq, Latin Alt-Q) + ku_ara iq: Kurdish (Iraq, Arabic-Latin) + nodeadkeys fo: Faroese (eliminate dead keys) + classic fi: Finnish (classic) + nodeadkeys fi: Finnish (classic, eliminate dead keys) + smi fi: Northern Saami (Finland) + mac fi: Finnish (Macintosh) + nodeadkeys fr: French (eliminate dead keys) + sundeadkeys fr: French (Sun dead keys) + oss fr: French (alternative) + oss_latin9 fr: French (alternative, latin-9 only) + oss_nodeadkeys fr: French (alternative, eliminate dead keys) + oss_sundeadkeys fr: French (alternative, Sun dead keys) + latin9 fr: French (legacy, alternative) + latin9_nodeadkeys fr: French (legacy, alternative, eliminate dead keys) + latin9_sundeadkeys fr: French (legacy, alternative, Sun dead keys) + bepo fr: French (Bepo, ergonomic, Dvorak way) + bepo_latin9 fr: French (Bepo, ergonomic, Dvorak way, latin-9 only) + dvorak fr: French (Dvorak) + mac fr: French (Macintosh) + bre fr: French (Breton) + oci fr: Occitan + geo fr: Georgian (France, AZERTY Tskapo) + generic gh: English (Ghana, multilingual) + akan gh: Akan + ewe gh: Ewe + fula gh: Fula + ga gh: Ga + hausa gh: Hausa + avn gh: Avatime + gillbt gh: English (Ghana, GILLBT) + ergonomic ge: Georgian (ergonomic) + mess ge: Georgian (MESS) + ru ge: Russian (Georgia) + os ge: Ossetian (Georgia) + deadacute de: German (dead acute) + deadgraveacute de: German (dead grave acute) + nodeadkeys de: German (eliminate dead keys) + ro de: Romanian (Germany) + ro_nodeadkeys de: Romanian (Germany, eliminate dead keys) + dvorak de: German (Dvorak) + sundeadkeys de: German (Sun dead keys) + neo de: German (Neo 2) + mac de: German (Macintosh) + mac_nodeadkeys de: German (Macintosh, eliminate dead keys) + dsb de: Lower Sorbian + dsb_qwertz de: Lower Sorbian (qwertz) + qwerty de: German (qwerty) + ru de: Russian (Germany, phonetic) + simple gr: Greek (simple) + extended gr: Greek (extended) + nodeadkeys gr: Greek (eliminate dead keys) + polytonic gr: Greek (polytonic) + standard hu: Hungarian (standard) + nodeadkeys hu: Hungarian (eliminate dead keys) + qwerty hu: Hungarian (qwerty) + 101_qwertz_comma_dead hu: Hungarian (101/qwertz/comma/dead keys) + 101_qwertz_comma_nodead hu: Hungarian (101/qwertz/comma/eliminate dead keys) + 101_qwertz_dot_dead hu: Hungarian (101/qwertz/dot/dead keys) + 101_qwertz_dot_nodead hu: Hungarian (101/qwertz/dot/eliminate dead keys) + 101_qwerty_comma_dead hu: Hungarian (101/qwerty/comma/dead keys) + 101_qwerty_comma_nodead hu: Hungarian (101/qwerty/comma/eliminate dead keys) + 101_qwerty_dot_dead hu: Hungarian (101/qwerty/dot/dead keys) + 101_qwerty_dot_nodead hu: Hungarian (101/qwerty/dot/eliminate dead keys) + 102_qwertz_comma_dead hu: Hungarian (102/qwertz/comma/dead keys) + 102_qwertz_comma_nodead hu: Hungarian (102/qwertz/comma/eliminate dead keys) + 102_qwertz_dot_dead hu: Hungarian (102/qwertz/dot/dead keys) + 102_qwertz_dot_nodead hu: Hungarian (102/qwertz/dot/eliminate dead keys) + 102_qwerty_comma_dead hu: Hungarian (102/qwerty/comma/dead keys) + 102_qwerty_comma_nodead hu: Hungarian (102/qwerty/comma/eliminate dead keys) + 102_qwerty_dot_dead hu: Hungarian (102/qwerty/dot/dead keys) + 102_qwerty_dot_nodead hu: Hungarian (102/qwerty/dot/eliminate dead keys) + Sundeadkeys is: Icelandic (Sun dead keys) + nodeadkeys is: Icelandic (eliminate dead keys) + mac is: Icelandic (Macintosh) + dvorak is: Icelandic (Dvorak) + lyx il: Hebrew (lyx) + phonetic il: Hebrew (phonetic) + biblical il: Hebrew (Biblical, Tiro) + nodeadkeys it: Italian (eliminate dead keys) + mac it: Italian (Macintosh) + us it: Italian (US keyboard with Italian letters) + geo it: Georgian (Italy) + kana jp: Japanese (Kana) + kana86 jp: Japanese (Kana 86) + OADG109A jp: Japanese (OADG 109A) + mac jp: Japanese (Macintosh) + phonetic kg: Kyrgyz (phonetic) + ruskaz kz: Russian (Kazakhstan, with Kazakh) + kazrus kz: Kazakh (with Russian) + stea la: Lao (STEA proposed standard layout) + nodeadkeys latam: Spanish (Latin American, eliminate dead keys) + deadtilde latam: Spanish (Latin American, include dead tilde) + sundeadkeys latam: Spanish (Latin American, Sun dead keys) + std lt: Lithuanian (standard) + us lt: Lithuanian (US keyboard with Lithuanian letters) + ibm lt: Lithuanian (IBM LST 1205-92) + lekp lt: Lithuanian (LEKP) + lekpa lt: Lithuanian (LEKPa) + apostrophe lv: Latvian (apostrophe variant) + tilde lv: Latvian (tilde variant) + fkey lv: Latvian (F variant) + modern lv: Latvian (modern) + ergonomic lv: Latvian (ergonomic, ŪGJRMV) + adapted lv: Latvian (adapted) + cyrillic me: Montenegrin (Cyrillic) + cyrillicyz me: Montenegrin (Cyrillic, Z and ZHE swapped) + latinunicode me: Montenegrin (Latin Unicode) + latinyz me: Montenegrin (Latin qwerty) + latinunicodeyz me: Montenegrin (Latin Unicode qwerty) + cyrillicalternatequotes me: Montenegrin (Cyrillic with guillemets) + latinalternatequotes me: Montenegrin (Latin with guillemets) + nodeadkeys mk: Macedonian (eliminate dead keys) + us mt: Maltese (with US layout) + nodeadkeys no: Norwegian (eliminate dead keys) + dvorak no: Norwegian (Dvorak) + smi no: Northern Saami (Norway) + smi_nodeadkeys no: Northern Saami (Norway, eliminate dead keys) + mac no: Norwegian (Macintosh) + mac_nodeadkeys no: Norwegian (Macintosh, eliminate dead keys) + qwertz pl: Polish (qwertz) + dvorak pl: Polish (Dvorak) + dvorak_quotes pl: Polish (Dvorak, Polish quotes on quotemark key) + dvorak_altquotes pl: Polish (Dvorak, Polish quotes on key 1) + csb pl: Kashubian + ru_phonetic_dvorak pl: Russian (Poland, phonetic Dvorak) + dvp pl: Polish (programmer Dvorak) + nodeadkeys pt: Portuguese (eliminate dead keys) + sundeadkeys pt: Portuguese (Sun dead keys) + mac pt: Portuguese (Macintosh) + mac_nodeadkeys pt: Portuguese (Macintosh, eliminate dead keys) + mac_sundeadkeys pt: Portuguese (Macintosh, Sun dead keys) + nativo pt: Portuguese (Nativo) + nativo-us pt: Portuguese (Nativo for USA keyboards) + nativo-epo pt: Esperanto (Portugal, Nativo) + cedilla ro: Romanian (cedilla) + std ro: Romanian (standard) + std_cedilla ro: Romanian (standard cedilla) + winkeys ro: Romanian (WinKeys) + phonetic ru: Russian (phonetic) + phonetic_winkeys ru: Russian (phonetic WinKeys) + typewriter ru: Russian (typewriter) + legacy ru: Russian (legacy) + typewriter-legacy ru: Russian (typewriter, legacy) + tt ru: Tatar + os_legacy ru: Ossetian (legacy) + os_winkeys ru: Ossetian (WinKeys) + cv ru: Chuvash + cv_latin ru: Chuvash (Latin) + udm ru: Udmurt + kom ru: Komi + sah ru: Yakut + xal ru: Kalmyk + dos ru: Russian (DOS) + srp ru: Serbian (Russia) + bak ru: Bashkirian + chm ru: Mari + yz rs: Serbian (Z and ZHE swapped) + latin rs: Serbian (Latin) + latinunicode rs: Serbian (Latin Unicode) + latinyz rs: Serbian (Latin qwerty) + latinunicodeyz rs: Serbian (Latin Unicode qwerty) + alternatequotes rs: Serbian (with guillemets) + latinalternatequotes rs: Serbian (Latin with guillemets) + rue rs: Pannonian Rusyn (homophonic) + alternatequotes si: Slovenian (use guillemets for quotes) + us si: Slovenian (US keyboard with Slovenian letters) + bksl sk: Slovak (extended Backslash) + qwerty sk: Slovak (qwerty) + qwerty_bksl sk: Slovak (qwerty, extended Backslash) + nodeadkeys es: Spanish (eliminate dead keys) + deadtilde es: Spanish (include dead tilde) + sundeadkeys es: Spanish (Sun dead keys) + dvorak es: Spanish (Dvorak) + ast es: Asturian (Spain, with bottom-dot H and bottom-dot L) + cat es: Catalan (Spain, with middle-dot L) + mac es: Spanish (Macintosh) + nodeadkeys se: Swedish (eliminate dead keys) + dvorak se: Swedish (Dvorak) + rus se: Russian (Sweden, phonetic) + rus_nodeadkeys se: Russian (Sweden, phonetic, eliminate dead keys) + smi se: Northern Saami (Sweden) + mac se: Swedish (Macintosh) + svdvorak se: Swedish (Svdvorak) + swl se: Swedish Sign Language + legacy ch: German (Switzerland, legacy) + de_nodeadkeys ch: German (Switzerland, eliminate dead keys) + de_sundeadkeys ch: German (Switzerland, Sun dead keys) + fr ch: French (Switzerland) + fr_nodeadkeys ch: French (Switzerland, eliminate dead keys) + fr_sundeadkeys ch: French (Switzerland, Sun dead keys) + fr_mac ch: French (Switzerland, Macintosh) + de_mac ch: German (Switzerland, Macintosh) + syc sy: Syriac + syc_phonetic sy: Syriac (phonetic) + ku sy: Kurdish (Syria, Latin Q) + ku_f sy: Kurdish (Syria, F) + ku_alt sy: Kurdish (Syria, Latin Alt-Q) + legacy tj: Tajik (legacy) + tam_unicode lk: Tamil (Sri Lanka, Unicode) + tam_TAB lk: Tamil (Sri Lanka, TAB Typewriter) + tis th: Thai (TIS-820.2538) + pat th: Thai (Pattachote) + f tr: Turkish (F) + alt tr: Turkish (Alt-Q) + sundeadkeys tr: Turkish (Sun dead keys) + ku tr: Kurdish (Turkey, Latin Q) + ku_f tr: Kurdish (Turkey, F) + ku_alt tr: Kurdish (Turkey, Latin Alt-Q) + intl tr: Turkish (international with dead keys) + crh tr: Crimean Tatar (Turkish Q) + crh_f tr: Crimean Tatar (Turkish F) + crh_alt tr: Crimean Tatar (Turkish Alt-Q) + indigenous tw: Taiwanese (indigenous) + saisiyat tw: Saisiyat (Taiwan) + phonetic ua: Ukrainian (phonetic) + typewriter ua: Ukrainian (typewriter) + winkeys ua: Ukrainian (WinKeys) + legacy ua: Ukrainian (legacy) + rstu ua: Ukrainian (standard RSTU) + rstu_ru ua: Russian (Ukraine, standard RSTU) + homophonic ua: Ukrainian (homophonic) + extd gb: English (UK, extended WinKeys) + intl gb: English (UK, international with dead keys) + dvorak gb: English (UK, Dvorak) + dvorakukp gb: English (UK, Dvorak with UK punctuation) + mac gb: English (UK, Macintosh) + mac_intl gb: English (UK, Macintosh international) + colemak gb: English (UK, Colemak) + latin uz: Uzbek (Latin) + kr104 kr: Korean (101/104 key compatible) + CloGaelach ie: CloGaelach + UnicodeExpert ie: Irish (UnicodeExpert) + ogam ie: Ogham + ogam_is434 ie: Ogham (IS434) + urd-crulp pk: Urdu (Pakistan, CRULP) + urd-nla pk: Urdu (Pakistan, NLA) + ara pk: Arabic (Pakistan) + snd pk: Sindhi + legacy epo: Esperanto (displaced semicolon and quote, obsolete) + igbo ng: Igbo + yoruba ng: Yoruba + hausa ng: Hausa + left_hand brai: Braille (left hand) + right_hand brai: Braille (right hand) + alt tm: Turkmen (Alt-Q) + fr-oss ml: French (Mali, alternative) + us-mac ml: English (Mali, US Macintosh) + us-intl ml: English (Mali, US international) + kik ke: Kikuyu + qwerty-bay ph: Filipino (QWERTY Baybayin) + capewell-dvorak ph: Filipino (Capewell-Dvorak Latin) + capewell-dvorak-bay ph: Filipino (Capewell-Dvorak Baybayin) + capewell-qwerf2k6 ph: Filipino (Capewell-QWERF 2006 Latin) + capewell-qwerf2k6-bay ph: Filipino (Capewell-QWERF 2006 Baybayin) + colemak ph: Filipino (Colemak Latin) + colemak-bay ph: Filipino (Colemak Baybayin) + dvorak ph: Filipino (Dvorak Latin) + dvorak-bay ph: Filipino (Dvorak Baybayin) + +! option + grp Key(s) to change layout + grp:switch Right Alt (while pressed) + grp:lswitch Left Alt (while pressed) + grp:lwin_switch Left Win (while pressed) + grp:rwin_switch Right Win (while pressed) + grp:win_switch Any Win key (while pressed) + grp:caps_switch Caps Lock (while pressed), Alt+Caps Lock does the original capslock action + grp:rctrl_switch Right Ctrl (while pressed) + grp:toggle Right Alt + grp:lalt_toggle Left Alt + grp:caps_toggle Caps Lock + grp:shift_caps_toggle Shift+Caps Lock + grp:shift_caps_switch Caps Lock (to first layout), Shift+Caps Lock (to last layout) + grp:win_menu_switch Left Win (to first layout), Right Win/Menu (to last layout) + grp:lctrl_rctrl_switch Left Ctrl (to first layout), Right Ctrl (to last layout) + grp:alt_caps_toggle Alt+Caps Lock + grp:shifts_toggle Both Shift keys together + grp:alts_toggle Both Alt keys together + grp:ctrls_toggle Both Ctrl keys together + grp:ctrl_shift_toggle Ctrl+Shift + grp:lctrl_lshift_toggle Left Ctrl+Left Shift + grp:rctrl_rshift_toggle Right Ctrl+Right Shift + grp:ctrl_alt_toggle Alt+Ctrl + grp:alt_shift_toggle Alt+Shift + grp:alt_space_toggle Alt+Space + grp:menu_toggle Menu + grp:lwin_toggle Left Win + grp:rwin_toggle Right Win + grp:lshift_toggle Left Shift + grp:rshift_toggle Right Shift + grp:lctrl_toggle Left Ctrl + grp:rctrl_toggle Right Ctrl + grp:sclk_toggle Scroll Lock + grp:lctrl_lwin_rctrl_menu LeftCtrl+LeftWin (to first layout), RightCtrl+Menu (to second layout) + lv3 Key to choose 3rd level + lv3:switch Right Ctrl + lv3:menu_switch Menu + lv3:win_switch Any Win key + lv3:lwin_switch Left Win + lv3:rwin_switch Right Win + lv3:alt_switch Any Alt key + lv3:lalt_switch Left Alt + lv3:ralt_switch Right Alt + lv3:ralt_switch_multikey Right Alt, Shift+Right Alt key is Multi_Key + lv3:ralt_alt Right Alt key never chooses 3rd level + lv3:enter_switch Enter on keypad + lv3:caps_switch Caps Lock + lv3:bksl_switch Backslash + lv3:lsgt_switch <Less/Greater> + lv3:caps_switch_latch Caps Lock (chooses 3rd level, latches when pressed together with another 3rd-level-chooser) + lv3:bksl_switch_latch Backslash (chooses 3rd level, latches when pressed together with another 3rd-level-chooser) + lv3:lsgt_switch_latch <Less/Greater> (chooses 3rd level, latches when pressed together with another 3rd-level-chooser) + ctrl Ctrl key position + ctrl:nocaps Make Caps Lock an additional Ctrl + ctrl:lctrl_meta Meta on Left Ctrl + ctrl:swapcaps Swap Ctrl and Caps Lock + ctrl:ctrl_ac At left of 'A' + ctrl:ctrl_aa At bottom left + ctrl:ctrl_ra Right Ctrl as Right Alt + ctrl:ctrl_menu Right Ctrl is mapped to Menu + grp_led Use keyboard LED to show alternative layout + grp_led:num Num Lock + grp_led:caps Caps Lock + grp_led:scroll Scroll Lock + keypad Numeric keypad layout selection + keypad:legacy Legacy + keypad:oss Unicode additions (arrows and math operators) + keypad:future Unicode additions (arrows and math operators). Math operators on default level + keypad:legacy_wang Legacy Wang 724 + keypad:oss_wang Wang 724 keypad with Unicode additions (arrows and math operators) + keypad:future_wang Wang 724 keypad with Unicode additions (arrows and math operators). Math operators on default level + keypad:hex Hexadecimal + keypad:atm ATM/phone-style + kpdl Numeric keypad delete key behaviour + kpdl:dot Legacy key with dot + kpdl:comma Legacy key with comma + kpdl:dotoss Four-level key with dot + kpdl:dotoss_latin9 Four-level key with dot, latin-9 restriction + kpdl:commaoss Four-level key with comma + kpdl:momayyezoss Four-level key with momayyez + kpdl:kposs Four-level key with abstract separators + kpdl:semi Semi-colon on third level + caps Caps Lock key behavior + caps:internal Caps Lock uses internal capitalization. Shift "pauses" Caps Lock + caps:internal_nocancel Caps Lock uses internal capitalization. Shift doesn't affect Caps Lock + caps:shift Caps Lock acts as Shift with locking. Shift "pauses" Caps Lock + caps:shift_nocancel Caps Lock acts as Shift with locking. Shift doesn't affect Caps Lock + caps:capslock Caps Lock toggles normal capitalization of alphabetic characters + caps:numlock Make Caps Lock an additional Num Lock + caps:swapescape Swap ESC and Caps Lock + caps:escape Make Caps Lock an additional ESC + caps:backspace Make Caps Lock an additional Backspace + caps:super Make Caps Lock an additional Super + caps:hyper Make Caps Lock an additional Hyper + caps:shiftlock Caps Lock toggles Shift so all keys are affected + caps:none Caps Lock is disabled + caps:ctrl_modifier Make Caps Lock an additional Control but keep the Caps_Lock keysym + altwin Alt/Win key behavior + altwin:menu Add the standard behavior to Menu key + altwin:meta_alt Alt and Meta are on Alt keys + altwin:ctrl_win Control is mapped to Win keys (and the usual Ctrl keys) + altwin:ctrl_alt_win Control is mapped to Alt keys, Alt is mapped to Win keys + altwin:meta_win Meta is mapped to Win keys + altwin:left_meta_win Meta is mapped to Left Win + altwin:hyper_win Hyper is mapped to Win-keys + altwin:alt_super_win Alt is mapped to Right Win, Super to Menu + altwin:swap_lalt_lwin Left Alt is swapped with Left Win + Compose key Compose key position + compose:ralt Right Alt + compose:lwin Left Win + compose:rwin Right Win + compose:menu Menu + compose:lctrl Left Ctrl + compose:rctrl Right Ctrl + compose:caps Caps Lock + compose:102 <Less/Greater> + compose:paus Pause + compose:prsc PrtSc + compose:sclk Scroll Lock + compat Miscellaneous compatibility options + numpad:pc Default numeric keypad keys + numpad:mac Numeric keypad keys work as with Macintosh + numpad:microsoft Shift with numeric keypad keys works as in MS Windows + numpad:shift3 Shift does not cancel Num Lock, chooses 3rd level instead + srvrkeys:none Special keys (Ctrl+Alt+<key>) handled in a server + apple:alupckeys Apple Aluminium Keyboard: emulate PC keys (Print, Scroll Lock, Pause, Num Lock) + shift:breaks_caps Shift cancels Caps Lock + misc:typo Enable extra typographic characters + shift:both_capslock Both Shift-Keys together toggle Caps Lock + shift:both_capslock_cancel Both Shift-Keys together activate Caps Lock, one Shift-Key deactivates + shift:both_shiftlock Both Shift-Keys together toggle ShiftLock + keypad:pointerkeys Toggle PointerKeys with Shift + NumLock. + eurosign Adding currency signs to certain keys + eurosign:e Euro on E + eurosign:2 Euro on 2 + eurosign:4 Euro on 4 + eurosign:5 Euro on 5 + rupeesign:4 Rupee on 4 + lv5 Key to choose 5th level + lv5:lsgt_switch_lock <Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser + lv5:ralt_switch_lock Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser + lv5:lwin_switch_lock Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser + lv5:rwin_switch_lock Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser + lv5:lsgt_switch_lock_cancel <Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock + lv5:ralt_switch_lock_cancel Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock + lv5:lwin_switch_lock_cancel Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock + lv5:rwin_switch_lock_cancel Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock + lv5:lsgt_switch_lock_cancel <Less/Greater> chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock + lv5:ralt_switch_lock_cancel Right Alt chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock + nbsp Using space key to input non-breakable space character + nbsp:none Usual space at any level + nbsp:level2 Non-breakable space character at second level + nbsp:level3 Non-breakable space character at third level + nbsp:level3s Non-breakable space character at third level, nothing at fourth level + nbsp:level3n Non-breakable space character at third level, thin non-breakable space character at fourth level + nbsp:level4 Non-breakable space character at fourth level + nbsp:level4n Non-breakable space character at fourth level, thin non-breakable space character at sixth level + nbsp:level4nl Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift) + nbsp:zwnj2 Zero-width non-joiner character at second level + nbsp:zwnj2zwj3 Zero-width non-joiner character at second level, zero-width joiner character at third level + nbsp:zwnj2zwj3nb4 Zero-width non-joiner character at second level, zero-width joiner character at third level, non-breakable space character at fourth level + nbsp:zwnj2nb3 Zero-width non-joiner character at second level, non-breakable space character at third level + nbsp:zwnj2nb3s Zero-width non-joiner character at second level, non-breakable space character at third level, nothing at fourth level + nbsp:zwnj2nb3zwj4 Zero-width non-joiner character at second level, non-breakable space character at third level, zero-width joiner at fourth level + nbsp:zwnj2nb3nnb4 Zero-width non-joiner character at second level, non-breakable space character at third level, thin non-breakable space at fourth level + nbsp:zwnj3zwj4 Zero-width non-joiner character at third level, zero-width joiner at fourth level + japan Japanese keyboard options + japan:kana_lock Kana Lock key is locking + japan:nicola_f_bs NICOLA-F style Backspace + esperanto Adding Esperanto circumflexes (supersigno) + esperanto:qwerty To the corresponding key in a Qwerty keyboard. + esperanto:dvorak To the corresponding key in a Dvorak keyboard. + terminate Key sequence to kill the X server + terminate:ctrl_alt_bksp Control + Alt + Backspace diff --git a/external/mit/xorg/lib/xkeyboard-config/rules/evdev b/external/mit/xorg/lib/xkeyboard-config/rules/evdev new file mode 100644 index 000000000..df74c8761 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/rules/evdev @@ -0,0 +1,1103 @@ +// DO NOT EDIT THIS FILE - IT WAS AUTOGENERATED BY merge.sh FROM rules/*.part +// +// Rules for resolving XKB components for use with XFree86 +// Copyright 1996 by Joseph Moss +// +// 2002 Modifier: Ivan Pascal The XFree86 Project +// + +// If you want non-latin layouts implicitly include the en_US layout +// uncomment lines below +//! $nonlatin = am ara ben bd bg bt by cs deva ge gh gr guj guru il \ +// in ir iku jp kan kh kr la lao lk mk mm mn mv mal ori pk \ +// ru scc sy syr tel th tj tam ua uz + +// PC models +! $pcmodels = pc101 pc102 pc104 pc105 + +// Microsoft models (using MS geometry) +! $msmodels = microsoft microsoft4000 microsoft7000 microsoftpro microsoftprousb microsoftprose + +// Nokia devices and keyboards +! $nokiamodels = nokiasu8w nokiarx44 nokiarx51 + +// PC geometries - they have special geometry but symbols are mostly pc105 +! $pcgeometries = latitude + +// TypeMatrix geometries +! $tmgeometries = tm2020 tm2030PS2 tm2030USB tm2030USB-102 tm2030USB-106 + +// Layouts that provide further specializations for the OLPC +! $olpclayouts = af am ara br ca es et fr it kh kz in mn np ru th tr us + +! $macbooks = macbook78 macbook79 +! $maclaptop = ibook powerbook macbook78 macbook79 +! $applealu = applealu_ansi applealu_iso applealu_jis +! $macs = macintosh macintosh_old ibook powerbook macbook78 macbook79 + +! $macvendorlayouts = ch de dk fi fr gb is it latam nl no pt se us + +! $azerty = be fr +! $qwertz = al cz de hr hu ro si sk + +! $inetkbds = acer_c300 acer_ferrari4k acer_laptop \ + airkey \ + apple armada azonaRF2300 \ + benqx brother \ + btc5113rf btc9000 btc9000a btc9001ah btc5090 btc9019u \ + cherryblue cherrybluea cherryblueb \ + cherrycyboard cherrycmexpert \ + chicony chicony0108 chicony0420 chicony9885 \ + compalfl90 \ + compaqeak8 compaqik7 compaqik13 compaqik18 \ + creativedw7000 \ + cymotionlinux \ + dell dellm65 inspiron dellusbmm \ + emachines ennyah_dkb1008 evdev \ + genius geniuscomfy2 \ + gyration honeywell_euroboard \ + hp250x hp5xx hp500fa hpdv5 \ + hpi6 hpxe3gc hpxe3gf hpxe4xxx hpxt1000 hpzt11xx htcdream \ + ibm_spacesaver ipaq inspiron intel \ + logiaccess logicda logicink \ + logiex110 logiclx300 \ + logiinkse logiinkseusb logiitc logiik \ + logitech_base itouch logiultrax \ + logitech_g15 \ + logidinovo logidinovoedge \ + microsoft4000 microsoft7000 microsoftinet microsoftprousb microsoftprooem microsoftprose \ + microsoftoffice microsoftmult \ + mx1998 mx2500 mx2750 \ + oretec \ + pc105 \ + presario propeller \ + qtronix \ + rapidaccess rapidaccess2 thinkpad60 \ + samsung4500 samsung4510 \ + silvercrest \ + sk1300 sk2500 sk6200 sk7100 \ + sven sven303 symplon \ + toshiba_s3000 trust trustda \ + unitekkb1925 yahoo + +// all layouts with 3rd and 4th groups +! $threelevellayouts = al az \ + be br bt \ + ca ch cs cz \ + de dk \ + ee es \ + fi fo fr \ + gb gr \ + hu \ + ie ir is it \ + latam \ + lk lt \ + mn mt \ + nl no \ + pl pt \ + ro \ + se sk \ + tr \ + us \ + vn \ + za + +! $evdevkbds = ibm_spacesaver + +! $thinkpads = thinkpad thinkpad60 thinkpadz60 + +! $sun_t6_custom = ara be br ca ch cz de dk \ + ee es fi fr gb gr it kr \ + lt lv nl no pl pt ro ru \ + se sk tr tw ua + +! $htcdreamlayouts = us it de + +! $dvoraklayouts = br ca de ee es fr gb no pl se us + +! model = keycodes + pc98 = evdev(pc98) + applealu_jis = evdev+macintosh(jisevdev) + * = evdev + +! layout[1] = keycodes + $azerty = +aliases(azerty) + $qwertz = +aliases(qwertz) + * = +aliases(qwerty) + +! layout = keycodes + $azerty = +aliases(azerty) + $qwertz = +aliases(qwertz) + * = +aliases(qwerty) + +! option = keycodes + +! model layout = geometry + thinkpad us = thinkpad(us) + +! model = geometry + microsoftelite = microsoft(elite) + $msmodels = microsoft(natural) + dell101 = dell(dell101) + dellm65 = dell(dellm65) + latitude = dell(latitude) + flexpro = keytronic(FlexPro) + hp6000 = hp(omnibook) + hpmini110 = hp(mini110) + hpdv5 = hp(dv5) + omnikey101 = northgate(omnikey101) + sanwaskbkg3 = sanwa(sanwaskbkg3) + $pcmodels = pc(%m) + $pcgeometries = pc(%m) + everex = everex(STEPnote) + thinkpad = thinkpad(intl) + thinkpad60 = thinkpad(60) + thinkpadz60 = thinkpad(60) + $tmgeometries = typematrix(%m) + winbook = winbook(XP5) + pc98 = nec(pc98) + $applealu = macintosh(%m) + $macbooks = macintosh(%m) + $macs = macintosh(macintosh) + hhk = hhk(basic) + kinesis = kinesis(model100) + $nokiamodels = nokia(%m) + * = pc(pc104) + +! model layout variant = symbols + * ben basic = pc+in(ben) + * ben probhat = pc+in(ben_probhat) + * dev basic = pc+in(deva) + * dvorak $dvoraklayouts = pc+%v(dvorak) + * dvorak basic = pc+us(dvorak) + * dvorak pl_basic = pc+pl(dvorak) + * dvorak pl = pc+pl(dvorak_quotes) + * dvorak pl_altquotes = pc+pl(dvorak_altquotes) + * dzdwi basic = pc+bt(basic) + * fi basic = pc+fi(classic) + * ge azerty_tskapo = pc+fr(geo) + * guj basic = pc+in(guj) + * gur basic = pc+in(guru) + * ie laptop = pc+ie(basic) + * ie CloGaelachLaptop = pc+ie(CloGaelach) + * in urd = pc+in(urd-phonetic) + * iu basic = pc+ca(ike) + * lo basic = pc+la(basic) + * kan basic = pc+in(kan) + * mal basic = pc+in(mal) + * mal mlplusnum = pc+in(mal) + * ogham basic = pc+ie(ogam) + * ogham laptop = pc+ie(ogam) + * ogham is434 = pc+ie(ogam_is434) + * ogham is434laptop = pc+ie(ogam_is434) + * ori basic = pc+in(ori) + * ro de = pc+ro(winkeys) + * ro us = pc+ro(std) + * ro academic = pc+ro(std) + * ro std_comma = pc+ro(std) + * ro comma = pc+ro(basic) + * ru os = pc+ru(os_legacy) + * pk urd = pc+pk(urd-phonetic) + * sapmi basic = pc+no(smi) + * sapmi nodeadkeys = pc+no(smi_nodeadkeys) + * sapmi sefi = pc+fi(smi) + * sin phonetic-static = pc+in(sin_phonetic) + * syr basic = pc+sy(syc) + * syr phonetic = pc+sy(syc_phonetic) + * tam INSCRIPT = pc+in(tam) + * tam UNI = pc+in(tam_unicode) + * tam NUMERAL-KEYBOARD = pc+in(tam_keyboard_with_numerals) + * tam TAB = pc+in(tam_TAB) + * tam TSCII = pc+in(tam_TSCII) + * tel basic = pc+in(tel) + * yu basic = pc+srp(latin) + * yu unicode = pc+srp(latinunicode) + * yu yz = pc+srp(latinyz) + * yu unicodeyz = pc+srp(latinunicodeyz) + classmate us intl = pc+us(classmate-intl) + classmate us alt-intl = pc+us(classmate-alt-intl) + classmate us altgr-intl = pc+us(classmate-altgr-intl) + nokiarx51 cz qwerty = nokia_vndr/rx-51(cz_qwerty) + +! model layout = symbols + * ar = pc+ara + * ben = pc+in(ben) + * bs = pc+ba + * cs = pc+rs + * cz_qwerty = pc+cz(qwerty) + * dev = pc+in(deva) + * dvorak = pc+us(dvorak) + * dzdwi = pc+bt + * el = pc+gr + * en_US = pc+latin + * guj = pc+in(guj) + * gur = pc+in(guru) + * iu = pc+ca(ike) + * lo = pc+la + * kan = pc+in(kan) + * mi = pc+mao + * ml = pc+in(mal) + * ogham = pc+ie(ogam) + * ori = pc+ie(ori) + * sapmi = pc+no(smi) + * sr = pc+srp + * syr = pc+sy(syc) + * tel = pc+in(tel) + * tml = pc+in(tam) + * yu = pc+srp + * fr-latin9 = pc+fr(latin9) + * us_intl = pc+us(alt-intl) + * ben(basic) = pc+in(ben) + * ben(probhat) = pc+in(ben_probhat) + * dev(basic) = pc+in(deva) + * dvorak($dvoraklayouts) = pc+%v(dvorak) + * dvorak(basic) = pc+us(dvorak) + * dvorak(pl_basic) = pc+pl(dvorak) + * dvorak(pl) = pc+pl(dvorak_quotes) + * dvorak(pl_altquotes) = pc+pl(dvorak_altquotes) + * dzdwi(basic) = pc+bt(basic) + * fi(basic) = pc+fi(classic) + * ge(azerty_tskapo) = pc+fr(geo) + * guj(basic) = pc+in(guj) + * gur(basic) = pc+in(guru) + * ie(laptop) = pc+ie(basic) + * ie(CloGaelachLaptop) = pc+ie(CloGaelach) + * in(urd) = pc+in(urd-phonetic) + * iu(basic) = pc+ca(ike) + * lo(basic) = pc+la(basic) + * kan(basic) = pc+in(kan) + * mal(basic) = pc+in(mal) + * mal(mlplusnum) = pc+in(mal) + * ogham(basic) = pc+ie(ogam) + * ogham(laptop) = pc+ie(ogam) + * ogham(is434) = pc+ie(ogam_is434) + * ogham(is434laptop) = pc+ie(ogam_is434) + * ori(basic) = pc+in(ori) + * ro(de) = pc+ro(winkeys) + * ro(us) = pc+ro(std) + * ro(academic) = pc+ro(std) + * ro(std_comma) = pc+ro(std) + * ro(comma) = pc+ro(basic) + * ru(os) = pc+ru(os_legacy) + * pk(urd) = pc+pk(urd-phonetic) + * sapmi(basic) = pc+no(smi) + * sapmi(nodeadkeys) = pc+no(smi_nodeadkeys) + * sapmi(sefi) = pc+fi(smi) + * sin(phonetic-static) = pc+in(sin_phonetic) + * syr(basic) = pc+sy(syc) + * syr(phonetic) = pc+sy(syc_phonetic) + * tam(INSCRIPT) = pc+in(tam) + * tam(UNI) = pc+in(tam_unicode) + * tam(NUMERAL-KEYBOARD) = pc+in(tam_keyboard_with_numerals) + * tam(TAB) = pc+in(tam_TAB) + * tam(TSCII) = pc+in(tam_TSCII) + * tel(basic) = pc+in(tel) + * yu(basic) = pc+srp(latin) + * yu(unicode) = pc+srp(latinunicode) + * yu(yz) = pc+srp(latinyz) + * yu(unicodeyz) = pc+srp(latinunicodeyz) + ataritt $nonlatin = xfree68_vndr/ataritt(us)+%l%(v):2 + ataritt * = xfree68_vndr/ataritt(us)+%l%(v) + amiga $nonlatin = xfree68_vndr/amiga(usa1)+%l%(v):2 + amiga * = xfree68_vndr/amiga(usa1)+%l%(v) + classmate us = pc+%l(classmate) + empty * = empty(basic) + * empty = empty(basic) + sun4 $nonlatin = latin+sun_vndr/us(type4)+%l%(v):2 + sun4 * = latin+sun_vndr/us(type4)+%l%(v) + sun5 $nonlatin = latin+sun_vndr/us(type5)+%l%(v):2 + sun5 * = latin+sun_vndr/us(type5)+%l%(v) + sun6 us = pc+sun_vndr/us(type6) + sun6 en_US = pc+sun_vndr/us(type6)+iso9995-3(basic) + sun6 $sun_t6_custom = pc+sun_vndr/us(type6)+sun_vndr/%l%(v) + sun6 * = pc+sun_vndr/us(type6)+%l%(v) + sun6euro us = pc+sun_vndr/us(type6) + sun6euro en_US = pc+sun_vndr/us(type6)+iso9995-3(basic) + sun6euro $sun_t6_custom = pc+sun_vndr/us(type6)+sun_vndr/%l%(v) + sun6euro * = pc+sun_vndr/us(type6)+%l%(v) + pc98 nec_vndr/jp = nec_vndr/jp(pc98) + macintosh_old us = macintosh_vndr/us(oldmac) + macintosh_old en_US = macintosh_vndr/us(oldmac) + macintosh_old $macvendorlayouts = macintosh_vndr/us(oldmac)+macintosh_vndr/%l%(v) + macintosh_old $nonlatin = macintosh_vndr/us(oldmac)+%l%(v):2 + macintosh_old * = macintosh_vndr/us(oldmac)+%l%(v) + applealu_jis jp = macintosh_vndr/apple(alukbd)+macintosh_vndr/jp(usmac)+macintosh_vndr/jp(mac):2 + applealu_jis * = macintosh_vndr/apple(alukbd)+%l%(v)+macintosh_vndr/jp(mac):2 + $applealu $macvendorlayouts = macintosh_vndr/apple(alukbd)+macintosh_vndr/%l%(v) + $applealu * = macintosh_vndr/apple(alukbd)+%l%(v) + $macs en_US = pc+macintosh_vndr/us(extended) + $macs $macvendorlayouts = pc+macintosh_vndr/%l%(v) + nokiarx44 * = nokia_vndr/rx-44(%l) + nokiarx51 cz(qwerty) = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(cz_qwerty) + nokiarx51 * = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(%l%_v) + nokiasu8w * = nokia_vndr/su-8w(%l) + olpc $olpclayouts = olpc+%l%(m) + olpc * = olpc+%l%(v) + $thinkpads br = pc+br(thinkpad) + sl-c3x00 * = pc+sharp_vndr/sl-c3x00(basic) + ws003sh * = pc+sharp_vndr/ws003sh(basic) + ws007sh * = pc+sharp_vndr/ws007sh(basic) + ws011sh * = pc+sharp_vndr/ws011sh(basic) + ws020sh * = pc+sharp_vndr/ws020sh(basic) + htcdream $htcdreamlayouts = %l(htcdream) + * $nonlatin = pc+us+%l%(v):2 + * * = pc+%l%(v) + +! model layout[1] = symbols + * ar = pc+ara%(v[1]) + * ben = pc+in(ben) + * bs = pc+ba%(v[1]) + * cs = pc+rs%(v[1]) + * cz_qwerty = pc+cz(qwerty) + * dev = pc+in(deva) + * dvorak = pc+us(dvorak) + * dzdwi = pc+bt%(v[1]) + * el = pc+gr%(v[1]) + * en_US = pc+latin%(v[1]) + * guj = pc+in(guj) + * gur = pc+in(guru) + * iu = pc+ca(ike) + * lo = pc+la%(v[1]) + * kan = pc+in(kan) + * mi = pc+mao%(v[1]) + * ml = pc+in(mal) + * ogham = pc+ie(ogam) + * ori = pc+ie(ori) + * sapmi = pc+no(smi) + * sr = pc+srp%(v[1]) + * syr = pc+sy(syc) + * tel = pc+in(tel) + * tml = pc+in(tam) + * yu = pc+srp%(v[1]) + * fr-latin9 = pc+fr(latin9) + * us_intl = pc+us(alt-intl) + * ben(basic) = pc+in(ben) + * ben(probhat) = pc+in(ben_probhat) + * dev(basic) = pc+in(deva) + * dvorak($dvoraklayouts) = pc+%v(dvorak) + * dvorak(basic) = pc+us(dvorak) + * dvorak(pl_basic) = pc+pl(dvorak) + * dvorak(pl) = pc+pl(dvorak_quotes) + * dvorak(pl_altquotes) = pc+pl(dvorak_altquotes) + * dzdwi(basic) = pc+bt(basic) + * fi(basic) = pc+fi(classic) + * ge(azerty_tskapo) = pc+fr(geo) + * guj(basic) = pc+in(guj) + * gur(basic) = pc+in(guru) + * ie(laptop) = pc+ie(basic) + * ie(CloGaelachLaptop) = pc+ie(CloGaelach) + * in(urd) = pc+in(urd-phonetic) + * iu(basic) = pc+ca(ike) + * lo(basic) = pc+la(basic) + * kan(basic) = pc+in(kan) + * mal(basic) = pc+in(mal) + * mal(mlplusnum) = pc+in(mal) + * ogham(basic) = pc+ie(ogam) + * ogham(laptop) = pc+ie(ogam) + * ogham(is434) = pc+ie(ogam_is434) + * ogham(is434laptop) = pc+ie(ogam_is434) + * ori(basic) = pc+in(ori) + * ro(de) = pc+ro(winkeys) + * ro(us) = pc+ro(std) + * ro(academic) = pc+ro(std) + * ro(std_comma) = pc+ro(std) + * ro(comma) = pc+ro(basic) + * ru(os) = pc+ru(os_legacy) + * pk(urd) = pc+pk(urd-phonetic) + * sapmi(basic) = pc+no(smi) + * sapmi(nodeadkeys) = pc+no(smi_nodeadkeys) + * sapmi(sefi) = pc+fi(smi) + * sin(phonetic-static) = pc+in(sin_phonetic) + * syr(basic) = pc+sy(syc) + * syr(phonetic) = pc+sy(syc_phonetic) + * tam(INSCRIPT) = pc+in(tam) + * tam(UNI) = pc+in(tam_unicode) + * tam(NUMERAL-KEYBOARD) = pc+in(tam_keyboard_with_numerals) + * tam(TAB) = pc+in(tam_TAB) + * tam(TSCII) = pc+in(tam_TSCII) + * tel(basic) = pc+in(tel) + * yu(basic) = pc+srp(latin) + * yu(unicode) = pc+srp(latinunicode) + * yu(yz) = pc+srp(latinyz) + * yu(unicodeyz) = pc+srp(latinunicodeyz) + ataritt * = xfree68_vndr/ataritt(us)+%l[1]%(v[1]) + amiga * = xfree68_vndr/amiga(usa1)+%l[1]%(v[1]) + sun4 * = latin+sun_vndr/us(type4)+%l[1]%(v[1]) + sun5 * = latin+sun_vndr/us(type5)+%l[1]%(v[1]) + macintosh_old us = macintosh_vndr/us(oldmac) + macintosh_old $macvendorlayouts = macintosh_vndr/us(oldmac)+macintosh_vndr/%l[1]%(v[1]) + macintosh_old * = macintosh_vndr/us(oldmac)+%l[1]%(v[1]) + applealu_jis us = macintosh_vndr/apple(alukbd)+macintosh_vndr/jp(usmac) + $applealu $macvendorlayouts = macintosh_vndr/apple(alukbd)+macintosh_vndr/%l[1]%(v[1]) + $applealu * = macintosh_vndr/apple(alukbd)+%l[1]%(v[1]) + $macs $macvendorlayouts = pc+macintosh_vndr/%l[1]%(v[1]) + nokiarx51 cz(qwerty) = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(cz_qwerty) + nokiarx51 * = nokia_vndr/rx-51(common)+nokia_vndr/rx-51(%l[1]%_v[1]) + $thinkpads br = pc+%l[1](thinkpad) + * * = pc+%l[1]%(v[1]) + +! model layout[1] variant[1] = symbols + * ben basic = pc+in(ben) + * ben probhat = pc+in(ben_probhat) + * dev basic = pc+in(deva) + * dvorak $dvoraklayouts = pc+%v(dvorak) + * dvorak basic = pc+us(dvorak) + * dvorak pl_basic = pc+pl(dvorak) + * dvorak pl = pc+pl(dvorak_quotes) + * dvorak pl_altquotes = pc+pl(dvorak_altquotes) + * dzdwi basic = pc+bt(basic) + * fi basic = pc+fi(classic) + * ge azerty_tskapo = pc+fr(geo) + * guj basic = pc+in(guj) + * gur basic = pc+in(guru) + * ie laptop = pc+ie(basic) + * ie CloGaelachLaptop = pc+ie(CloGaelach) + * in urd = pc+in(urd-phonetic) + * iu basic = pc+ca(ike) + * lo basic = pc+la(basic) + * kan basic = pc+in(kan) + * mal basic = pc+in(mal) + * mal mlplusnum = pc+in(mal) + * ogham basic = pc+ie(ogam) + * ogham laptop = pc+ie(ogam) + * ogham is434 = pc+ie(ogam_is434) + * ogham is434laptop = pc+ie(ogam_is434) + * ori basic = pc+in(ori) + * ro de = pc+ro(winkeys) + * ro us = pc+ro(std) + * ro academic = pc+ro(std) + * ro std_comma = pc+ro(std) + * ro comma = pc+ro(basic) + * ru os = pc+ru(os_legacy) + * pk urd = pc+pk(urd-phonetic) + * sapmi basic = pc+no(smi) + * sapmi nodeadkeys = pc+no(smi_nodeadkeys) + * sapmi sefi = pc+fi(smi) + * sin phonetic-static = pc+in(sin_phonetic) + * syr basic = pc+sy(syc) + * syr phonetic = pc+sy(syc_phonetic) + * tam INSCRIPT = pc+in(tam) + * tam UNI = pc+in(tam_unicode) + * tam NUMERAL-KEYBOARD = pc+in(tam_keyboard_with_numerals) + * tam TAB = pc+in(tam_TAB) + * tam TSCII = pc+in(tam_TSCII) + * tel basic = pc+in(tel) + * yu basic = pc+srp(latin) + * yu unicode = pc+srp(latinunicode) + * yu yz = pc+srp(latinyz) + * yu unicodeyz = pc+srp(latinunicodeyz) + +! model layout[2] = symbols + * ar = +ara%(v[2]):2 + * ben = +in(ben):2 + * bs = +ba%(v[2]):2 + * cs = +rs%(v[2]):2 + * cz_qwerty = +cz(qwerty):2 + * dev = +in(deva):2 + * dvorak = +us(dvorak):2 + * dzdwi = +bt%(v[2]):2 + * el = +gr%(v[2]):2 + * en_US = +latin%(v[2]):2 + * guj = +in(guj):2 + * gur = +in(guru):2 + * iu = +ca(ike):2 + * lo = +la%(v[2]):2 + * kan = +in(kan):2 + * mi = +mao%(v[2]):2 + * ml = +in(mal):2 + * ogham = +ie(ogam):2 + * ori = +ie(ori):2 + * sapmi = +no(smi):2 + * sr = +srp%(v[2]):2 + * syr = +sy(syc):2 + * tel = +in(tel):2 + * tml = +in(tam):2 + * yu = +srp%(v[2]):2 + * fr-latin9 = +fr(latin9):2 + * us_intl = +us(alt-intl):2 + * ben(basic) = +in(ben):2 + * ben(probhat) = +in(ben_probhat):2 + * dev(basic) = +in(deva):2 + * dvorak($dvoraklayouts) = +%v(dvorak):2 + * dvorak(basic) = +us(dvorak):2 + * dvorak(pl_basic) = +pl(dvorak):2 + * dvorak(pl) = +pl(dvorak_quotes):2 + * dvorak(pl_altquotes) = +pl(dvorak_altquotes):2 + * dzdwi(basic) = +bt(basic):2 + * fi(basic) = +fi(classic):2 + * ge(azerty_tskapo) = +fr(geo):2 + * guj(basic) = +in(guj):2 + * gur(basic) = +in(guru):2 + * ie(laptop) = +ie(basic):2 + * ie(CloGaelachLaptop) = +ie(CloGaelach):2 + * in(urd) = +in(urd-phonetic):2 + * iu(basic) = +ca(ike):2 + * lo(basic) = +la(basic):2 + * kan(basic) = +in(kan):2 + * mal(basic) = +in(mal):2 + * mal(mlplusnum) = +in(mal):2 + * ogham(basic) = +ie(ogam):2 + * ogham(laptop) = +ie(ogam):2 + * ogham(is434) = +ie(ogam_is434):2 + * ogham(is434laptop) = +ie(ogam_is434):2 + * ori(basic) = +in(ori):2 + * ro(de) = +ro(winkeys):2 + * ro(us) = +ro(std):2 + * ro(academic) = +ro(std):2 + * ro(std_comma) = +ro(std):2 + * ro(comma) = +ro(basic):2 + * ru(os) = +ru(os_legacy):2 + * pk(urd) = +pk(urd-phonetic):2 + * sapmi(basic) = +no(smi):2 + * sapmi(nodeadkeys) = +no(smi_nodeadkeys):2 + * sapmi(sefi) = +fi(smi):2 + * sin(phonetic-static) = +in(sin_phonetic):2 + * syr(basic) = +sy(syc):2 + * syr(phonetic) = +sy(syc_phonetic):2 + * tam(INSCRIPT) = +in(tam):2 + * tam(UNI) = +in(tam_unicode):2 + * tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):2 + * tam(TAB) = +in(tam_TAB):2 + * tam(TSCII) = +in(tam_TSCII):2 + * tel(basic) = +in(tel):2 + * yu(basic) = +srp(latin):2 + * yu(unicode) = +srp(latinunicode):2 + * yu(yz) = +srp(latinyz):2 + * yu(unicodeyz) = +srp(latinunicodeyz):2 + nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):2 + nokiarx51 * = +nokia_vndr/rx-51(%l[2]%_v[2]):2 + * * = +%l[2]%(v[2]):2 + +! model layout[3] = symbols + * ar = +ara%(v[3]):3 + * ben = +in(ben):3 + * bs = +ba%(v[3]):3 + * cs = +rs%(v[3]):3 + * cz_qwerty = +cz(qwerty):3 + * dev = +in(deva):3 + * dvorak = +us(dvorak):3 + * dzdwi = +bt%(v[3]):3 + * el = +gr%(v[3]):3 + * en_US = +latin%(v[3]):3 + * guj = +in(guj):3 + * gur = +in(guru):3 + * iu = +ca(ike):3 + * lo = +la%(v[3]):3 + * kan = +in(kan):3 + * mi = +mao%(v[3]):3 + * ml = +in(mal):3 + * ogham = +ie(ogam):3 + * ori = +ie(ori):3 + * sapmi = +no(smi):3 + * sr = +srp%(v[3]):3 + * syr = +sy(syc):3 + * tel = +in(tel):3 + * tml = +in(tam):3 + * yu = +srp%(v[3]):3 + * fr-latin9 = +fr(latin9):3 + * us_intl = +us(alt-intl):3 + * ben(basic) = +in(ben):3 + * ben(probhat) = +in(ben_probhat):3 + * dev(basic) = +in(deva):3 + * dvorak($dvoraklayouts) = +%v(dvorak):3 + * dvorak(basic) = +us(dvorak):3 + * dvorak(pl_basic) = +pl(dvorak):3 + * dvorak(pl) = +pl(dvorak_quotes):3 + * dvorak(pl_altquotes) = +pl(dvorak_altquotes):3 + * dzdwi(basic) = +bt(basic):3 + * fi(basic) = +fi(classic):3 + * ge(azerty_tskapo) = +fr(geo):3 + * guj(basic) = +in(guj):3 + * gur(basic) = +in(guru):3 + * ie(laptop) = +ie(basic):3 + * ie(CloGaelachLaptop) = +ie(CloGaelach):3 + * in(urd) = +in(urd-phonetic):3 + * iu(basic) = +ca(ike):3 + * lo(basic) = +la(basic):3 + * kan(basic) = +in(kan):3 + * mal(basic) = +in(mal):3 + * mal(mlplusnum) = +in(mal):3 + * ogham(basic) = +ie(ogam):3 + * ogham(laptop) = +ie(ogam):3 + * ogham(is434) = +ie(ogam_is434):3 + * ogham(is434laptop) = +ie(ogam_is434):3 + * ori(basic) = +in(ori):3 + * ro(de) = +ro(winkeys):3 + * ro(us) = +ro(std):3 + * ro(academic) = +ro(std):3 + * ro(std_comma) = +ro(std):3 + * ro(comma) = +ro(basic):3 + * ru(os) = +ru(os_legacy):3 + * pk(urd) = +pk(urd-phonetic):3 + * sapmi(basic) = +no(smi):3 + * sapmi(nodeadkeys) = +no(smi_nodeadkeys):3 + * sapmi(sefi) = +fi(smi):3 + * sin(phonetic-static) = +in(sin_phonetic):3 + * syr(basic) = +sy(syc):3 + * syr(phonetic) = +sy(syc_phonetic):3 + * tam(INSCRIPT) = +in(tam):3 + * tam(UNI) = +in(tam_unicode):3 + * tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):3 + * tam(TAB) = +in(tam_TAB):3 + * tam(TSCII) = +in(tam_TSCII):3 + * tel(basic) = +in(tel):3 + * yu(basic) = +srp(latin):3 + * yu(unicode) = +srp(latinunicode):3 + * yu(yz) = +srp(latinyz):3 + * yu(unicodeyz) = +srp(latinunicodeyz):3 + nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):3 + nokiarx51 * = +nokia_vndr/rx-51(%l[3]%_v[3]):3 + * * = +%l[3]%(v[3]):3 + +! model layout[4] = symbols + * ar = +ara%(v[4]):4 + * ben = +in(ben):4 + * bs = +ba%(v[4]):4 + * cs = +rs%(v[4]):4 + * cz_qwerty = +cz(qwerty):4 + * dev = +in(deva):4 + * dvorak = +us(dvorak):4 + * dzdwi = +bt%(v[4]):4 + * el = +gr%(v[4]):4 + * en_US = +latin%(v[4]):4 + * guj = +in(guj):4 + * gur = +in(guru):4 + * iu = +ca(ike):4 + * lo = +la%(v[4]):4 + * kan = +in(kan):4 + * mi = +mao%(v[4]):4 + * ml = +in(mal):4 + * ogham = +ie(ogam):4 + * ori = +ie(ori):4 + * sapmi = +no(smi):4 + * sr = +srp%(v[4]):4 + * syr = +sy(syc):4 + * tel = +in(tel):4 + * tml = +in(tam):4 + * yu = +srp%(v[4]):4 + * fr-latin9 = +fr(latin9):4 + * us_intl = +us(alt-intl):4 + * ben(basic) = +in(ben):4 + * ben(probhat) = +in(ben_probhat):4 + * dev(basic) = +in(deva):4 + * dvorak($dvoraklayouts) = +%v(dvorak):4 + * dvorak(basic) = +us(dvorak):4 + * dvorak(pl_basic) = +pl(dvorak):4 + * dvorak(pl) = +pl(dvorak_quotes):4 + * dvorak(pl_altquotes) = +pl(dvorak_altquotes):4 + * dzdwi(basic) = +bt(basic):4 + * fi(basic) = +fi(classic):4 + * ge(azerty_tskapo) = +fr(geo):4 + * guj(basic) = +in(guj):4 + * gur(basic) = +in(guru):4 + * ie(laptop) = +ie(basic):4 + * ie(CloGaelachLaptop) = +ie(CloGaelach):4 + * in(urd) = +in(urd-phonetic):4 + * iu(basic) = +ca(ike):4 + * lo(basic) = +la(basic):4 + * kan(basic) = +in(kan):4 + * mal(basic) = +in(mal):4 + * mal(mlplusnum) = +in(mal):4 + * ogham(basic) = +ie(ogam):4 + * ogham(laptop) = +ie(ogam):4 + * ogham(is434) = +ie(ogam_is434):4 + * ogham(is434laptop) = +ie(ogam_is434):4 + * ori(basic) = +in(ori):4 + * ro(de) = +ro(winkeys):4 + * ro(us) = +ro(std):4 + * ro(academic) = +ro(std):4 + * ro(std_comma) = +ro(std):4 + * ro(comma) = +ro(basic):4 + * ru(os) = +ru(os_legacy):4 + * pk(urd) = +pk(urd-phonetic):4 + * sapmi(basic) = +no(smi):4 + * sapmi(nodeadkeys) = +no(smi_nodeadkeys):4 + * sapmi(sefi) = +fi(smi):4 + * sin(phonetic-static) = +in(sin_phonetic):4 + * syr(basic) = +sy(syc):4 + * syr(phonetic) = +sy(syc_phonetic):4 + * tam(INSCRIPT) = +in(tam):4 + * tam(UNI) = +in(tam_unicode):4 + * tam(NUMERAL-KEYBOARD) = +in(tam_keyboard_with_numerals):4 + * tam(TAB) = +in(tam_TAB):4 + * tam(TSCII) = +in(tam_TSCII):4 + * tel(basic) = +in(tel):4 + * yu(basic) = +srp(latin):4 + * yu(unicode) = +srp(latinunicode):4 + * yu(yz) = +srp(latinyz):4 + * yu(unicodeyz) = +srp(latinunicodeyz):4 + nokiarx51 cz(qwerty) = +nokia_vndr/rx-51(cz_qwerty):4 + nokiarx51 * = +nokia_vndr/rx-51(%l[4]%_v[4]):4 + * * = +%l[4]%(v[4]):4 + +! model layout[2] variant[2] = symbols + * ben basic = +in(ben):2 + * ben probhat = +in(ben_probhat):2 + * dev basic = +in(deva):2 + * dvorak $dvoraklayouts = +%v(dvorak):2 + * dvorak basic = +us(dvorak):2 + * dvorak pl_basic = +pl(dvorak):2 + * dvorak pl = +pl(dvorak_quotes):2 + * dvorak pl_altquotes = +pl(dvorak_altquotes):2 + * dzdwi basic = +bt(basic):2 + * fi basic = +fi(classic):2 + * ge azerty_tskapo = +fr(geo):2 + * guj basic = +in(guj):2 + * gur basic = +in(guru):2 + * ie laptop = +ie(basic):2 + * ie CloGaelachLaptop = +ie(CloGaelach):2 + * in urd = +in(urd-phonetic):2 + * iu basic = +ca(ike):2 + * lo basic = +la(basic):2 + * kan basic = +in(kan):2 + * mal basic = +in(mal):2 + * mal mlplusnum = +in(mal):2 + * ogham basic = +ie(ogam):2 + * ogham laptop = +ie(ogam):2 + * ogham is434 = +ie(ogam_is434):2 + * ogham is434laptop = +ie(ogam_is434):2 + * ori basic = +in(ori):2 + * ro de = +ro(winkeys):2 + * ro us = +ro(std):2 + * ro academic = +ro(std):2 + * ro std_comma = +ro(std):2 + * ro comma = +ro(basic):2 + * ru os = +ru(os_legacy):2 + * pk urd = +pk(urd-phonetic):2 + * sapmi basic = +no(smi):2 + * sapmi nodeadkeys = +no(smi_nodeadkeys):2 + * sapmi sefi = +fi(smi):2 + * sin phonetic-static = +in(sin_phonetic):2 + * syr basic = +sy(syc):2 + * syr phonetic = +sy(syc_phonetic):2 + * tam INSCRIPT = +in(tam):2 + * tam UNI = +in(tam_unicode):2 + * tam NUMERAL-KEYBOARD = +in(tam_keyboard_with_numerals):2 + * tam TAB = +in(tam_TAB):2 + * tam TSCII = +in(tam_TSCII):2 + * tel basic = +in(tel):2 + * yu basic = +srp(latin):2 + * yu unicode = +srp(latinunicode):2 + * yu yz = +srp(latinyz):2 + * yu unicodeyz = +srp(latinunicodeyz):2 + +! model layout[3] variant[3] = symbols + * ben basic = +in(ben):3 + * ben probhat = +in(ben_probhat):3 + * dev basic = +in(deva):3 + * dvorak $dvoraklayouts = +%v(dvorak):3 + * dvorak basic = +us(dvorak):3 + * dvorak pl_basic = +pl(dvorak):3 + * dvorak pl = +pl(dvorak_quotes):3 + * dvorak pl_altquotes = +pl(dvorak_altquotes):3 + * dzdwi basic = +bt(basic):3 + * fi basic = +fi(classic):3 + * ge azerty_tskapo = +fr(geo):3 + * guj basic = +in(guj):3 + * gur basic = +in(guru):3 + * ie laptop = +ie(basic):3 + * ie CloGaelachLaptop = +ie(CloGaelach):3 + * in urd = +in(urd-phonetic):3 + * iu basic = +ca(ike):3 + * lo basic = +la(basic):3 + * kan basic = +in(kan):3 + * mal basic = +in(mal):3 + * mal mlplusnum = +in(mal):3 + * ogham basic = +ie(ogam):3 + * ogham laptop = +ie(ogam):3 + * ogham is434 = +ie(ogam_is434):3 + * ogham is434laptop = +ie(ogam_is434):3 + * ori basic = +in(ori):3 + * ro de = +ro(winkeys):3 + * ro us = +ro(std):3 + * ro academic = +ro(std):3 + * ro std_comma = +ro(std):3 + * ro comma = +ro(basic):3 + * ru os = +ru(os_legacy):3 + * pk urd = +pk(urd-phonetic):3 + * sapmi basic = +no(smi):3 + * sapmi nodeadkeys = +no(smi_nodeadkeys):3 + * sapmi sefi = +fi(smi):3 + * sin phonetic-static = +in(sin_phonetic):3 + * syr basic = +sy(syc):3 + * syr phonetic = +sy(syc_phonetic):3 + * tam INSCRIPT = +in(tam):3 + * tam UNI = +in(tam_unicode):3 + * tam NUMERAL-KEYBOARD = +in(tam_keyboard_with_numerals):3 + * tam TAB = +in(tam_TAB):3 + * tam TSCII = +in(tam_TSCII):3 + * tel basic = +in(tel):3 + * yu basic = +srp(latin):3 + * yu unicode = +srp(latinunicode):3 + * yu yz = +srp(latinyz):3 + * yu unicodeyz = +srp(latinunicodeyz):3 + +! model layout[4] variant[4] = symbols + * ben basic = +in(ben):4 + * ben probhat = +in(ben_probhat):4 + * dev basic = +in(deva):4 + * dvorak $dvoraklayouts = +%v(dvorak):4 + * dvorak basic = +us(dvorak):4 + * dvorak pl_basic = +pl(dvorak):4 + * dvorak pl = +pl(dvorak_quotes):4 + * dvorak pl_altquotes = +pl(dvorak_altquotes):4 + * dzdwi basic = +bt(basic):4 + * fi basic = +fi(classic):4 + * ge azerty_tskapo = +fr(geo):4 + * guj basic = +in(guj):4 + * gur basic = +in(guru):4 + * ie laptop = +ie(basic):4 + * ie CloGaelachLaptop = +ie(CloGaelach):4 + * in urd = +in(urd-phonetic):4 + * iu basic = +ca(ike):4 + * lo basic = +la(basic):4 + * kan basic = +in(kan):4 + * mal basic = +in(mal):4 + * mal mlplusnum = +in(mal):4 + * ogham basic = +ie(ogam):4 + * ogham laptop = +ie(ogam):4 + * ogham is434 = +ie(ogam_is434):4 + * ogham is434laptop = +ie(ogam_is434):4 + * ori basic = +in(ori):4 + * ro de = +ro(winkeys):4 + * ro us = +ro(std):4 + * ro academic = +ro(std):4 + * ro std_comma = +ro(std):4 + * ro comma = +ro(basic):4 + * ru os = +ru(os_legacy):4 + * pk urd = +pk(urd-phonetic):4 + * sapmi basic = +no(smi):4 + * sapmi nodeadkeys = +no(smi_nodeadkeys):4 + * sapmi sefi = +fi(smi):4 + * sin phonetic-static = +in(sin_phonetic):4 + * syr basic = +sy(syc):4 + * syr phonetic = +sy(syc_phonetic):4 + * tam INSCRIPT = +in(tam):4 + * tam UNI = +in(tam_unicode):4 + * tam NUMERAL-KEYBOARD = +in(tam_keyboard_with_numerals):4 + * tam TAB = +in(tam_TAB):4 + * tam TSCII = +in(tam_TSCII):4 + * tel basic = +in(tel):4 + * yu basic = +srp(latin):4 + * yu unicode = +srp(latinunicode):4 + * yu yz = +srp(latinyz):4 + * yu unicodeyz = +srp(latinunicodeyz):4 + +! model = symbols + $evdevkbds = +inet(evdev)+inet(%m) + applealu_jis = +inet(evdev)+macintosh_vndr/jp(alujiskeys) + * = +inet(evdev) + +! layout variant = compat + de neo = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock) + +! layout[1] variant[1] = compat + de neo = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock) + +! layout[2] variant[2] = compat + de neo = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2 + +! layout[3] variant[3] = compat + de neo = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3 + +! layout[4] variant[4] = compat + de neo = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4 + +! model layout = compat + pc98 nec_vndr/jp = pc98(basic) + * jp = complete+japan + olpc * = olpc + * * = complete + +! model layout[1] = compat + * * = complete + +! model = types + $macs = complete+numpad(mac) + $applealu = complete+numpad(mac) + $nokiamodels = complete+nokia + * = complete + +! layout option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle) + * misc:typo = +typo(base) + +! layout[1] option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):1 + * misc:typo = +typo(base):1 + +! layout[2] option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):2 + * misc:typo = +typo(base):2 + +! layout[3] option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):3 + * misc:typo = +typo(base):3 + +! layout[4] option = symbols + $threelevellayouts grp:alts_toggle = +level3(ralt_switch_for_alts_toggle):4 + * misc:typo = +typo(base):4 + +! option = symbols + grp:shift_toggle = +group(shifts_toggle) + altwin:menu = +altwin(menu) + altwin:meta_alt = +altwin(meta_alt) + altwin:ctrl_win = +altwin(ctrl_win) + altwin:ctrl_alt_win = +altwin(ctrl_alt_win) + altwin:meta_win = +altwin(meta_win) + altwin:left_meta_win = +altwin(left_meta_win) + altwin:hyper_win = +altwin(hyper_win) + altwin:alt_super_win = +altwin(alt_super_win) + altwin:swap_lalt_lwin = +altwin(swap_lalt_lwin) + grp:switch = +group(switch) + grp:lswitch = +group(lswitch) + grp:win_switch = +group(win_switch) + grp:lwin_switch = +group(lwin_switch) + grp:rwin_switch = +group(rwin_switch) + grp:toggle = +group(toggle) + grp:shifts_toggle = +group(shifts_toggle) + grp:ctrls_toggle = +group(ctrls_toggle) + grp:alts_toggle = +group(alts_toggle) + grp:ctrl_shift_toggle = +group(ctrl_shift_toggle) + grp:lctrl_lshift_toggle = +group(lctrl_lshift_toggle) + grp:rctrl_rshift_toggle = +group(rctrl_rshift_toggle) + grp:caps_toggle = +capslock(grouplock) + grp:caps_switch = +capslock(groupshift) + grp:shift_caps_toggle = +group(shift_caps_toggle) + grp:shift_caps_switch = +group(shift_caps_switch) + grp:win_menu_switch = +group(win_menu_switch) + grp:alt_caps_toggle = +group(alt_caps_toggle) + grp:ctrl_alt_toggle = +group(ctrl_alt_toggle) + grp:alt_shift_toggle = +group(alt_shift_toggle) + grp:alt_space_toggle = +group(alt_space_toggle) + grp:menu_toggle = +group(menu_toggle) + grp:lwin_toggle = +group(lwin_toggle) + grp:rwin_toggle = +group(rwin_toggle) + grp:lshift_toggle = +group(lshift_toggle) + grp:rshift_toggle = +group(rshift_toggle) + grp:rctrl_switch = +group(rctrl_switch) + grp:lctrl_toggle = +group(lctrl_toggle) + grp:rctrl_toggle = +group(rctrl_toggle) + grp:lalt_toggle = +group(lalt_toggle) + grp:sclk_toggle = +group(sclk_toggle) + grp:lctrl_rctrl_switch = +group(lctrl_rctrl_switch) + grp:lctrl_lwin_rctrl_menu = +group(lctrl_lwin_rctrl_menu) + lv3:switch = +level3(switch) + lv3:ralt_switch = +level3(ralt_switch) + lv3:ralt_switch_multikey = +level3(ralt_switch_multikey) + lv3:ralt_alt = +level3(ralt_alt) + lv3:lalt_switch = +level3(lalt_switch) + lv3:alt_switch = +level3(alt_switch) + lv3:menu_switch = +level3(menu_switch) + lv3:win_switch = +level3(win_switch) + lv3:lwin_switch = +level3(lwin_switch) + lv3:rwin_switch = +level3(rwin_switch) + lv3:enter_switch = +level3(enter_switch) + caps:capslock = +capslock(capslock) + caps:numlock = +capslock(numlock) + caps:shiftlock = +capslock(shiftlock) + caps:swapescape = +capslock(swapescape) + caps:escape = +capslock(escape) + caps:backspace = +capslock(backspace) + caps:super = +capslock(super) + caps:hyper = +capslock(hyper) + caps:none = +capslock(none) + caps:ctrl_modifier = +capslock(ctrl_modifier) + ctrl:nocaps = +ctrl(nocaps) + ctrl:lctrl_meta = +ctrl(lctrl_meta) + ctrl:swapcaps = +ctrl(swapcaps) + ctrl:ctrl_ac = +ctrl(ctrl_ac) + ctrl:ctrl_aa = +ctrl(ctrl_aa) + ctrl:ctrl_ra = +ctrl(ctrl_ra) + ctrl:ctrl_menu = +ctrl(ctrl_menu) + compose:ralt = +compose(ralt) + compose:lwin = +compose(lwin) + compose:rwin = +compose(rwin) + compose:menu = +compose(menu) + compose:lctrl = +compose(lctrl) + compose:rctrl = +compose(rctrl) + compose:caps = +compose(caps) + compose:102 = +compose(102) + compose:paus = +compose(paus) + compose:prsc = +compose(prsc) + compose:sclk = +compose(sclk) + srvrkeys:none = +srvr_ctrl(no_srvr_keys) + eurosign:e = +eurosign(e) + eurosign:2 = +eurosign(2) + eurosign:4 = +eurosign(4) + eurosign:5 = +eurosign(5) + rupeesign:4 = +rupeesign(4) + keypad:oss = +keypad(oss) + keypad:legacy = +keypad(legacy) + keypad:legacy_wang = +keypad(legacy_wang) + keypad:oss_wang = +keypad(oss_wang) + keypad:future = +keypad(future) + keypad:future_wang = +keypad(future_wang) + keypad:hex = +keypad(ops)+keypad(hex) + keypad:atm = +keypad(ops)+keypad(hex)+keypad(atm) + nbsp:none = +nbsp(none) + nbsp:level2 = +nbsp(level2) + nbsp:level3 = +nbsp(level3) + nbsp:level3s = +nbsp(level3s) + nbsp:level3n = +nbsp(level3n) + nbsp:level4 = +nbsp(level4) + nbsp:level4n = +nbsp(level4n) + nbsp:level4nl = +nbsp(level4nl) + japan:nicola_f_bs = +jp(nicola_f_bs) + kpdl:dot = +kpdl(dot) + kpdl:comma = +kpdl(comma) + kpdl:dotoss = +kpdl(dotoss) + kpdl:dotoss_latin9 = +kpdl(dotoss_latin9) + kpdl:commaoss = +kpdl(commaoss) + kpdl:momayyezoss = +kpdl(momayyezoss) + kpdl:kposs = +kpdl(kposs) + kpdl:semi = +kpdl(semi) + shift:breaks_caps = +shift(breaks_caps) + esperanto:qwerty = +epo(qwerty) + esperanto:dvorak = +epo(dvorak) + terminate:ctrl_alt_bksp = +terminate(ctrl_alt_bksp) + keypad:pointerkeys = +keypad(pointerkeys) + apple:alupckeys = +macintosh_vndr/apple(alupckeys) + shift:both_capslock = +shift(both_capslock) + shift:lshift_both_capslock = +shift(lshift_both_capslock) + shift:rshift_both_capslock = +shift(rshift_both_capslock) + shift:both_capslock_cancel = +shift(both_capslock_cancel) + shift:lshift_both_capslock_cancel = +shift(lshift_both_capslock_cancel) + shift:rshift_both_capslock_cancel = +shift(rshift_both_capslock_cancel) + shift:both_shiftlock = +shift(both_shiftlock) + shift:lshift_both_shiftlock = +shift(lshift_both_shiftlock) + shift:rshift_both_shiftlock = +shift(rshift_both_shiftlock) + lv3:caps_switch = +level3(caps_switch) + lv3:bksl_switch = +level3(bksl_switch) + lv3:lsgt_switch = +level3(lsgt_switch) + lv3:caps_switch_latch = +level3(caps_switch_latch) + lv3:bksl_switch_latch = +level3(bksl_switch_latch) + lv3:lsgt_switch_latch = +level3(lsgt_switch_latch) + lv5:lsgt_switch_lock = +level5(lsgt_switch_lock) + lv5:ralt_switch_lock = +level5(ralt_switch_lock) + lv5:lwin_switch_lock = +level5(lwin_switch_lock) + lv5:rwin_switch_lock = +level5(rwin_switch_lock) + lv5:lsgt_switch_lock_cancel = +level5(lsgt_switch_lock_cancel) + lv5:ralt_switch_lock_cancel = +level5(ralt_switch_lock_cancel) + lv5:lwin_switch_lock_cancel = +level5(lwin_switch_lock_cancel) + lv5:rwin_switch_lock_cancel = +level5(rwin_switch_lock_cancel) + + + +! option = compat + grp_led:num = +lednum(group_lock) + grp_led:caps = +ledcaps(group_lock) + grp_led:scroll = +ledscroll(group_lock) + japan:kana_lock = +japan(kana_lock) + caps:shiftlock = +ledcaps(shift_lock) + + +! option = types + caps:internal = +caps(internal) + caps:internal_nocancel = +caps(internal_nocancel) + caps:shift = +caps(shift) + caps:shift_nocancel = +caps(shift_nocancel) + numpad:pc = +numpad(pc) + numpad:mac = +numpad(mac) + numpad:microsoft = +numpad(microsoft) + numpad:shift3 = +numpad(shift3) diff --git a/external/mit/xorg/lib/xkeyboard-config/rules/evdev.lst b/external/mit/xorg/lib/xkeyboard-config/rules/evdev.lst new file mode 100644 index 000000000..0459a2be3 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/rules/evdev.lst @@ -0,0 +1,837 @@ +! model + pc101 Generic 101-key PC + pc102 Generic 102-key (Intl) PC + pc104 Generic 104-key PC + pc105 Generic 105-key (Intl) PC + dell101 Dell 101-key PC + latitude Dell Latitude series laptop + dellm65 Dell Precision M65 + everex Everex STEPnote + flexpro Keytronic FlexPro + microsoft Microsoft Natural + omnikey101 Northgate OmniKey 101 + winbook Winbook Model XP5 + pc98 PC-98xx Series + a4techKB21 A4Tech KB-21 + a4techKBS8 A4Tech KBS-8 + a4_rfkb23 A4Tech Wireless Desktop RFKB-23 + airkey Acer AirKey V + azonaRF2300 Azona RF2300 wireless Internet Keyboard + scorpius Advance Scorpius KI + brother Brother Internet Keyboard + btc5113rf BTC 5113RF Multimedia + btc5126t BTC 5126T + btc6301urf BTC 6301URF + btc9000 BTC 9000 + btc9000a BTC 9000A + btc9001ah BTC 9001AH + btc5090 BTC 5090 + btc9019u BTC 9019U + btc9116u BTC 9116U Mini Wireless Internet and Gaming + cherryblue Cherry Blue Line CyBo@rd + cherryblueb Cherry CyMotion Master XPress + cherrybluea Cherry Blue Line CyBo@rd (alternate option) + cherrycyboard Cherry CyBo@rd USB-Hub + cherrycmexpert Cherry CyMotion Expert + cherrybunlim Cherry B.UNLIMITED + chicony Chicony Internet Keyboard + chicony0108 Chicony KU-0108 + chicony0420 Chicony KU-0420 + chicony9885 Chicony KB-9885 + compaqeak8 Compaq Easy Access Keyboard + compaqik7 Compaq Internet Keyboard (7 keys) + compaqik13 Compaq Internet Keyboard (13 keys) + compaqik18 Compaq Internet Keyboard (18 keys) + cymotionlinux Cherry CyMotion Master Linux + armada Laptop/notebook Compaq (eg. Armada) Laptop Keyboard + presario Laptop/notebook Compaq (eg. Presario) Internet Keyboard + ipaq Compaq iPaq Keyboard + dell Dell + dellsk8125 Dell SK-8125 + dellsk8135 Dell SK-8135 + dellusbmm Dell USB Multimedia Keyboard + inspiron Dell Laptop/notebook Inspiron 6xxx/8xxx + precision_m Dell Laptop/notebook Precision M series + dexxa Dexxa Wireless Desktop Keyboard + diamond Diamond 9801 / 9802 series + dtk2000 DTK2000 + ennyah_dkb1008 Ennyah DKB-1008 + fscaa1667g Fujitsu-Siemens Computers AMILO laptop + genius Genius Comfy KB-16M / Genius MM Keyboard KWD-910 + geniuscomfy Genius Comfy KB-12e + geniuscomfy2 Genius Comfy KB-21e-Scroll + geniuskb19e Genius KB-19e NB + geniuskkb2050hs Genius KKB-2050HS + gyration Gyration + htcdream HTC Dream + kinesis Kinesis + logitech_base Logitech Generic Keyboard + logitech_g15 Logitech G15 extra keys via G15daemon + hpi6 Hewlett-Packard Internet Keyboard + hp250x Hewlett-Packard SK-250x Multimedia Keyboard + hpxe3gc Hewlett-Packard Omnibook XE3 GC + hpxe3gf Hewlett-Packard Omnibook XE3 GF + hpxt1000 Hewlett-Packard Omnibook XT1000 + hpdv5 Hewlett-Packard Pavilion dv5 + hpzt11xx Hewlett-Packard Pavilion ZT11xx + hp500fa Hewlett-Packard Omnibook 500 FA + hp5xx Hewlett-Packard Omnibook 5xx + hpnx9020 Hewlett-Packard nx9020 + hp6000 Hewlett-Packard Omnibook 6000/6100 + honeywell_euroboard Honeywell Euroboard + hpmini110 Hewlett-Packard Mini 110 Notebook + rapidaccess IBM Rapid Access + rapidaccess2 IBM Rapid Access II + thinkpad IBM ThinkPad 560Z/600/600E/A22E + thinkpad60 IBM ThinkPad R60/T60/R61/T61 + thinkpadz60 IBM ThinkPad Z60m/Z60t/Z61m/Z61t + ibm_spacesaver IBM Space Saver + logiaccess Logitech Access Keyboard + logiclx300 Logitech Cordless Desktop LX-300 + logii350 Logitech Internet 350 Keyboard + logimel Logitech Media Elite Keyboard + logicd Logitech Cordless Desktop + logicd_it Logitech Cordless Desktop iTouch + logicd_nav Logitech Cordless Desktop Navigator + logicd_opt Logitech Cordless Desktop Optical + logicda Logitech Cordless Desktop (alternate option) + logicdpa2 Logitech Cordless Desktop Pro (alternate option 2) + logicfn Logitech Cordless Freedom/Desktop Navigator + logicdn Logitech Cordless Desktop Navigator + logiitc Logitech iTouch Cordless Keyboard (model Y-RB6) + logiik Logitech Internet Keyboard + itouch Logitech iTouch + logicink Logitech Internet Navigator Keyboard + logiex110 Logitech Cordless Desktop EX110 + logiinkse Logitech iTouch Internet Navigator Keyboard SE + logiinkseusb Logitech iTouch Internet Navigator Keyboard SE (USB) + logiultrax Logitech Ultra-X Keyboard + logiultraxc Logitech Ultra-X Cordless Media Desktop Keyboard + logidinovo Logitech diNovo Keyboard + logidinovoedge Logitech diNovo Edge Keyboard + mx1998 Memorex MX1998 + mx2500 Memorex MX2500 EZ-Access Keyboard + mx2750 Memorex MX2750 + microsoft4000 Microsoft Natural Wireless Ergonomic Keyboard 4000 + microsoft7000 Microsoft Natural Wireless Ergonomic Keyboard 7000 + microsoftinet Microsoft Internet Keyboard + microsoftpro Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro + microsoftprousb Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro + microsoftprooem Microsoft Natural Keyboard Pro OEM + vsonku306 ViewSonic KU-306 Internet Keyboard + microsoftprose Microsoft Internet Keyboard Pro, Swedish + microsoftoffice Microsoft Office Keyboard + microsoftmult Microsoft Wireless Multimedia Keyboard 1.0A + microsoftelite Microsoft Natural Keyboard Elite + microsoftccurve2k Microsoft Comfort Curve Keyboard 2000 + oretec Ortek MCK-800 MM/Internet keyboard + propeller Propeller Voyager (KTEZ-1000) + qtronix QTronix Scorpius 98N+ + samsung4500 Samsung SDM 4500P + samsung4510 Samsung SDM 4510P + sanwaskbkg3 Sanwa Supply SKB-KG3 + sk1300 SK-1300 + sk2500 SK-2500 + sk6200 SK-6200 + sk7100 SK-7100 + sp_inet Super Power Multimedia Keyboard + sven SVEN Ergonomic 2500 + sven303 SVEN Slim 303 + symplon Symplon PaceBook (tablet PC) + toshiba_s3000 Toshiba Satellite S3000 + trust Trust Wireless Keyboard Classic + trustda Trust Direct Access Keyboard + trust_slimline Trust Slimline + tm2020 TypeMatrix EZ-Reach 2020 + tm2030PS2 TypeMatrix EZ-Reach 2030 PS2 + tm2030USB TypeMatrix EZ-Reach 2030 USB + tm2030USB-102 TypeMatrix EZ-Reach 2030 USB (102/105:EU mode) + tm2030USB-106 TypeMatrix EZ-Reach 2030 USB (106:JP mode) + yahoo Yahoo! Internet Keyboard + macbook78 MacBook/MacBook Pro + macbook79 MacBook/MacBook Pro (Intl) + macintosh Macintosh + macintosh_old Macintosh Old + macintosh_hhk Happy Hacking Keyboard for Mac + acer_c300 Acer C300 + acer_ferrari4k Acer Ferrari 4000 + acer_laptop Acer Laptop + asus_laptop Asus Laptop + apple Apple + apple_laptop Apple Laptop + applealu_ansi Apple Aluminium Keyboard (ANSI) + applealu_iso Apple Aluminium Keyboard (ISO) + applealu_jis Apple Aluminium Keyboard (JIS) + silvercrest SILVERCREST Multimedia Wireless Keyboard + emachines Laptop/notebook eMachines m68xx + benqx BenQ X-Touch + benqx730 BenQ X-Touch 730 + benqx800 BenQ X-Touch 800 + hhk Happy Hacking Keyboard + classmate Classmate PC + olpc OLPC + sun6 Sun Type 5/6 + targa_v811 Targa Visionary 811 + unitekkb1925 Unitek KB-1925 + compalfl90 FL90 + creativedw7000 Creative Desktop Wireless 7000 + htcdream Htc Dream phone + +! layout + us English (US) + ad Catalan + af Afghani + ara Arabic + al Albanian + am Armenian + at German (Austria) + az Azerbaijani + by Belarusian + be Belgian + bd Bengali + in Indian + ba Bosnian + br Portuguese (Brazil) + bg Bulgarian + ma Arabic (Morocco) + cm English (Cameroon) + mm Burmese + ca French (Canada) + cd French (Democratic Republic of the Congo) + cn Chinese + hr Croatian + cz Czech + dk Danish + nl Dutch + bt Dzongkha + ee Estonian + ir Persian + iq Iraqi + fo Faroese + fi Finnish + fr French + gh English (Ghana) + gn French (Guinea) + ge Georgian + de German + gr Greek + hu Hungarian + is Icelandic + il Hebrew + it Italian + jp Japanese + kg Kyrgyz + kh Khmer (Cambodia) + kz Kazakh + la Lao + latam Spanish (Latin American) + lt Lithuanian + lv Latvian + mao Maori + me Montenegrin + mk Macedonian + mt Maltese + mn Mongolian + no Norwegian + pl Polish + pt Portuguese + ro Romanian + ru Russian + rs Serbian + si Slovenian + sk Slovak + es Spanish + se Swedish + ch German (Switzerland) + sy Arabic (Syria) + tj Tajik + lk Sinhala + th Thai + tr Turkish + tw Taiwanese + ua Ukrainian + gb English (UK) + uz Uzbek + vn Vietnamese + kr Korean + nec_vndr/jp Japanese (PC-98xx Series) + ie Irish + pk Urdu (Pakistan) + mv Dhivehi + za English (South Africa) + epo Esperanto + np Nepali + ng English (Nigeria) + et Amharic + sn Wolof + brai Braille + tm Turkmen + ml Bambara + tz Swahili (Tanzania) + ke Swahili (Kenya) + bw Tswana + ph Filipino + +! variant + chr us: Cherokee + euro us: English (US, with euro on 5) + intl us: English (US, international with dead keys) + alt-intl us: English (US, alternative international) + colemak us: English (Colemak) + dvorak us: English (Dvorak) + dvorak-intl us: English (Dvorak international with dead keys) + dvorak-alt-intl us: English (Dvorak alternative international no dead keys) + dvorak-l us: English (left handed Dvorak) + dvorak-r us: English (right handed Dvorak) + dvorak-classic us: English (classic Dvorak) + dvp us: English (programmer Dvorak) + rus us: Russian (US, phonetic) + mac us: English (Macintosh) + altgr-intl us: English (international AltGr dead keys) + olpc2 us: English (layout toggle on multiply/divide key) + hbs us: Serbo-Croatian (US) + ps af: Pashto + uz af: Uzbek (Afghanistan) + olpc-ps af: Pashto (Afghanistan, OLPC) + fa-olpc af: Persian (Afghanistan, Dari OLPC) + uz-olpc af: Uzbek (Afghanistan, OLPC) + azerty ara: Arabic (azerty) + azerty_digits ara: Arabic (azerty/digits) + digits ara: Arabic (digits) + qwerty ara: Arabic (qwerty) + qwerty_digits ara: Arabic (qwerty/digits) + buckwalter ara: Arabic (Buckwalter) + phonetic am: Armenian (phonetic) + phonetic-alt am: Armenian (alternative phonetic) + eastern am: Armenian (eastern) + western am: Armenian (western) + eastern-alt am: Armenian (alternative eastern) + nodeadkeys at: German (Austria, eliminate dead keys) + sundeadkeys at: German (Austria, Sun dead keys) + mac at: German (Austria, Macintosh) + cyrillic az: Azerbaijani (Cyrillic) + legacy by: Belarusian (legacy) + latin by: Belarusian (Latin) + oss be: Belgian (alternative) + oss_latin9 be: Belgian (alternative, latin-9 only) + oss_sundeadkeys be: Belgian (alternative, Sun dead keys) + iso-alternate be: Belgian (ISO alternate) + nodeadkeys be: Belgian (eliminate dead keys) + sundeadkeys be: Belgian (Sun dead keys) + wang be: Belgian (Wang model 724 azerty) + probhat bd: Bengali (Probhat) + ben in: Bengali + ben_probhat in: Bengali (Probhat) + guj in: Gujarati + guru in: Punjabi (Gurmukhi) + jhelum in: Punjabi (Gurmukhi Jhelum) + kan in: Kannada + mal in: Malayalam + mal_lalitha in: Malayalam (Lalitha) + mal_enhanced in: Malayalam (enhanced Inscript with Rupee Sign) + ori in: Oriya + tam_unicode in: Tamil (Unicode) + tam_keyboard_with_numerals in: Tamil (keyboard with numerals) + tam_TAB in: Tamil (TAB typewriter) + tam_TSCII in: Tamil (TSCII typewriter) + tam in: Tamil + tel in: Telugu + urd-phonetic in: Urdu (phonetic) + urd-phonetic3 in: Urdu (alternative phonetic) + urd-winkeys in: Urdu (WinKeys) + bolnagri in: Hindi (Bolnagri) + hin-wx in: Hindi (Wx) + eng in: English (India, with RupeeSign) + alternatequotes ba: Bosnian (use guillemets for quotes) + unicode ba: Bosnian (use Bosnian digraphs) + unicodeus ba: Bosnian (US keyboard with Bosnian digraphs) + us ba: Bosnian (US keyboard with Bosnian letters) + nodeadkeys br: Portuguese (Brazil, eliminate dead keys) + dvorak br: Portuguese (Brazil, Dvorak) + nativo br: Portuguese (Brazil, nativo) + nativo-us br: Portuguese (Brazil, nativo for USA keyboards) + nativo-epo br: Portuguese (Brazil, nativo for Esperanto) + phonetic bg: Bulgarian (traditional phonetic) + bas_phonetic bg: Bulgarian (new phonetic) + french ma: French (Morocco) + tifinagh ma: Berber (Morocco, Tifinagh) + tifinagh-alt ma: Berber (Morocco, Tifinagh alternative) + tifinagh-alt-phonetic ma: Berber (Morocco, Tifinagh alternative phonetic) + tifinagh-extended ma: Berber (Morocco, Tifinagh extended) + tifinagh-phonetic ma: Berber (Morocco, Tifinagh phonetic) + tifinagh-extended-phonetic ma: Berber (Morocco, Tifinagh extended phonetic) + french cm: French (Cameroon) + qwerty cm: English (Cameroon qwerty) + azerty cm: French (Cameroon azerty) + dvorak cm: English (Cameroon Dvorak) + fr-dvorak ca: French (Canada, Dvorak) + fr-legacy ca: French (Canada, legacy) + multix ca: Canadian Multilingual + multi ca: Canadian Multilingual (first part) + multi-2gr ca: Canadian Multilingual (second part) + ike ca: Inuktitut + eng ca: English (Canada) + tib cn: Tibetan + tib_asciinum cn: Tibetan (with ASCII numerals) + uig cn: Uyghur + alternatequotes hr: Croatian (use guillemets for quotes) + unicode hr: Croatian (use Croatian digraphs) + unicodeus hr: Croatian (US keyboard with Croatian digraphs) + us hr: Croatian (US keyboard with Croatian letters) + bksl cz: Czech (with <\|> key) + qwerty cz: Czech (qwerty) + qwerty_bksl cz: Czech (qwerty, extended Backslash) + ucw cz: Czech (UCW layout, accented letters only) + dvorak-ucw cz: Czech (US Dvorak with CZ UCW support) + nodeadkeys dk: Danish (eliminate dead keys) + mac dk: Danish (Macintosh) + mac_nodeadkeys dk: Danish (Macintosh, eliminate dead keys) + dvorak dk: Danish (Dvorak) + sundeadkeys nl: Dutch (Sun dead keys) + mac nl: Dutch (Macintosh) + std nl: Dutch (standard) + nodeadkeys ee: Estonian (eliminate dead keys) + dvorak ee: Estonian (Dvorak) + us ee: Estonian (US keyboard with Estonian letters) + pes_keypad ir: Persian (with Persian Keypad) + ku ir: Kurdish (Iran, Latin Q) + ku_f ir: Kurdish (Iran, F) + ku_alt ir: Kurdish (Iran, Latin Alt-Q) + ku_ara ir: Kurdish (Iran, Arabic-Latin) + ku iq: Kurdish (Iraq, Latin Q) + ku_f iq: Kurdish (Iraq, F) + ku_alt iq: Kurdish (Iraq, Latin Alt-Q) + ku_ara iq: Kurdish (Iraq, Arabic-Latin) + nodeadkeys fo: Faroese (eliminate dead keys) + classic fi: Finnish (classic) + nodeadkeys fi: Finnish (classic, eliminate dead keys) + smi fi: Northern Saami (Finland) + mac fi: Finnish (Macintosh) + nodeadkeys fr: French (eliminate dead keys) + sundeadkeys fr: French (Sun dead keys) + oss fr: French (alternative) + oss_latin9 fr: French (alternative, latin-9 only) + oss_nodeadkeys fr: French (alternative, eliminate dead keys) + oss_sundeadkeys fr: French (alternative, Sun dead keys) + latin9 fr: French (legacy, alternative) + latin9_nodeadkeys fr: French (legacy, alternative, eliminate dead keys) + latin9_sundeadkeys fr: French (legacy, alternative, Sun dead keys) + bepo fr: French (Bepo, ergonomic, Dvorak way) + bepo_latin9 fr: French (Bepo, ergonomic, Dvorak way, latin-9 only) + dvorak fr: French (Dvorak) + mac fr: French (Macintosh) + bre fr: French (Breton) + oci fr: Occitan + geo fr: Georgian (France, AZERTY Tskapo) + generic gh: English (Ghana, multilingual) + akan gh: Akan + ewe gh: Ewe + fula gh: Fula + ga gh: Ga + hausa gh: Hausa + avn gh: Avatime + gillbt gh: English (Ghana, GILLBT) + ergonomic ge: Georgian (ergonomic) + mess ge: Georgian (MESS) + ru ge: Russian (Georgia) + os ge: Ossetian (Georgia) + deadacute de: German (dead acute) + deadgraveacute de: German (dead grave acute) + nodeadkeys de: German (eliminate dead keys) + ro de: Romanian (Germany) + ro_nodeadkeys de: Romanian (Germany, eliminate dead keys) + dvorak de: German (Dvorak) + sundeadkeys de: German (Sun dead keys) + neo de: German (Neo 2) + mac de: German (Macintosh) + mac_nodeadkeys de: German (Macintosh, eliminate dead keys) + dsb de: Lower Sorbian + dsb_qwertz de: Lower Sorbian (qwertz) + qwerty de: German (qwerty) + ru de: Russian (Germany, phonetic) + simple gr: Greek (simple) + extended gr: Greek (extended) + nodeadkeys gr: Greek (eliminate dead keys) + polytonic gr: Greek (polytonic) + standard hu: Hungarian (standard) + nodeadkeys hu: Hungarian (eliminate dead keys) + qwerty hu: Hungarian (qwerty) + 101_qwertz_comma_dead hu: Hungarian (101/qwertz/comma/dead keys) + 101_qwertz_comma_nodead hu: Hungarian (101/qwertz/comma/eliminate dead keys) + 101_qwertz_dot_dead hu: Hungarian (101/qwertz/dot/dead keys) + 101_qwertz_dot_nodead hu: Hungarian (101/qwertz/dot/eliminate dead keys) + 101_qwerty_comma_dead hu: Hungarian (101/qwerty/comma/dead keys) + 101_qwerty_comma_nodead hu: Hungarian (101/qwerty/comma/eliminate dead keys) + 101_qwerty_dot_dead hu: Hungarian (101/qwerty/dot/dead keys) + 101_qwerty_dot_nodead hu: Hungarian (101/qwerty/dot/eliminate dead keys) + 102_qwertz_comma_dead hu: Hungarian (102/qwertz/comma/dead keys) + 102_qwertz_comma_nodead hu: Hungarian (102/qwertz/comma/eliminate dead keys) + 102_qwertz_dot_dead hu: Hungarian (102/qwertz/dot/dead keys) + 102_qwertz_dot_nodead hu: Hungarian (102/qwertz/dot/eliminate dead keys) + 102_qwerty_comma_dead hu: Hungarian (102/qwerty/comma/dead keys) + 102_qwerty_comma_nodead hu: Hungarian (102/qwerty/comma/eliminate dead keys) + 102_qwerty_dot_dead hu: Hungarian (102/qwerty/dot/dead keys) + 102_qwerty_dot_nodead hu: Hungarian (102/qwerty/dot/eliminate dead keys) + Sundeadkeys is: Icelandic (Sun dead keys) + nodeadkeys is: Icelandic (eliminate dead keys) + mac is: Icelandic (Macintosh) + dvorak is: Icelandic (Dvorak) + lyx il: Hebrew (lyx) + phonetic il: Hebrew (phonetic) + biblical il: Hebrew (Biblical, Tiro) + nodeadkeys it: Italian (eliminate dead keys) + mac it: Italian (Macintosh) + us it: Italian (US keyboard with Italian letters) + geo it: Georgian (Italy) + kana jp: Japanese (Kana) + kana86 jp: Japanese (Kana 86) + OADG109A jp: Japanese (OADG 109A) + mac jp: Japanese (Macintosh) + phonetic kg: Kyrgyz (phonetic) + ruskaz kz: Russian (Kazakhstan, with Kazakh) + kazrus kz: Kazakh (with Russian) + stea la: Lao (STEA proposed standard layout) + nodeadkeys latam: Spanish (Latin American, eliminate dead keys) + deadtilde latam: Spanish (Latin American, include dead tilde) + sundeadkeys latam: Spanish (Latin American, Sun dead keys) + std lt: Lithuanian (standard) + us lt: Lithuanian (US keyboard with Lithuanian letters) + ibm lt: Lithuanian (IBM LST 1205-92) + lekp lt: Lithuanian (LEKP) + lekpa lt: Lithuanian (LEKPa) + apostrophe lv: Latvian (apostrophe variant) + tilde lv: Latvian (tilde variant) + fkey lv: Latvian (F variant) + modern lv: Latvian (modern) + ergonomic lv: Latvian (ergonomic, ŪGJRMV) + adapted lv: Latvian (adapted) + cyrillic me: Montenegrin (Cyrillic) + cyrillicyz me: Montenegrin (Cyrillic, Z and ZHE swapped) + latinunicode me: Montenegrin (Latin Unicode) + latinyz me: Montenegrin (Latin qwerty) + latinunicodeyz me: Montenegrin (Latin Unicode qwerty) + cyrillicalternatequotes me: Montenegrin (Cyrillic with guillemets) + latinalternatequotes me: Montenegrin (Latin with guillemets) + nodeadkeys mk: Macedonian (eliminate dead keys) + us mt: Maltese (with US layout) + nodeadkeys no: Norwegian (eliminate dead keys) + dvorak no: Norwegian (Dvorak) + smi no: Northern Saami (Norway) + smi_nodeadkeys no: Northern Saami (Norway, eliminate dead keys) + mac no: Norwegian (Macintosh) + mac_nodeadkeys no: Norwegian (Macintosh, eliminate dead keys) + qwertz pl: Polish (qwertz) + dvorak pl: Polish (Dvorak) + dvorak_quotes pl: Polish (Dvorak, Polish quotes on quotemark key) + dvorak_altquotes pl: Polish (Dvorak, Polish quotes on key 1) + csb pl: Kashubian + ru_phonetic_dvorak pl: Russian (Poland, phonetic Dvorak) + dvp pl: Polish (programmer Dvorak) + nodeadkeys pt: Portuguese (eliminate dead keys) + sundeadkeys pt: Portuguese (Sun dead keys) + mac pt: Portuguese (Macintosh) + mac_nodeadkeys pt: Portuguese (Macintosh, eliminate dead keys) + mac_sundeadkeys pt: Portuguese (Macintosh, Sun dead keys) + nativo pt: Portuguese (Nativo) + nativo-us pt: Portuguese (Nativo for USA keyboards) + nativo-epo pt: Esperanto (Portugal, Nativo) + cedilla ro: Romanian (cedilla) + std ro: Romanian (standard) + std_cedilla ro: Romanian (standard cedilla) + winkeys ro: Romanian (WinKeys) + phonetic ru: Russian (phonetic) + phonetic_winkeys ru: Russian (phonetic WinKeys) + typewriter ru: Russian (typewriter) + legacy ru: Russian (legacy) + typewriter-legacy ru: Russian (typewriter, legacy) + tt ru: Tatar + os_legacy ru: Ossetian (legacy) + os_winkeys ru: Ossetian (WinKeys) + cv ru: Chuvash + cv_latin ru: Chuvash (Latin) + udm ru: Udmurt + kom ru: Komi + sah ru: Yakut + xal ru: Kalmyk + dos ru: Russian (DOS) + srp ru: Serbian (Russia) + bak ru: Bashkirian + chm ru: Mari + yz rs: Serbian (Z and ZHE swapped) + latin rs: Serbian (Latin) + latinunicode rs: Serbian (Latin Unicode) + latinyz rs: Serbian (Latin qwerty) + latinunicodeyz rs: Serbian (Latin Unicode qwerty) + alternatequotes rs: Serbian (with guillemets) + latinalternatequotes rs: Serbian (Latin with guillemets) + rue rs: Pannonian Rusyn (homophonic) + alternatequotes si: Slovenian (use guillemets for quotes) + us si: Slovenian (US keyboard with Slovenian letters) + bksl sk: Slovak (extended Backslash) + qwerty sk: Slovak (qwerty) + qwerty_bksl sk: Slovak (qwerty, extended Backslash) + nodeadkeys es: Spanish (eliminate dead keys) + deadtilde es: Spanish (include dead tilde) + sundeadkeys es: Spanish (Sun dead keys) + dvorak es: Spanish (Dvorak) + ast es: Asturian (Spain, with bottom-dot H and bottom-dot L) + cat es: Catalan (Spain, with middle-dot L) + mac es: Spanish (Macintosh) + nodeadkeys se: Swedish (eliminate dead keys) + dvorak se: Swedish (Dvorak) + rus se: Russian (Sweden, phonetic) + rus_nodeadkeys se: Russian (Sweden, phonetic, eliminate dead keys) + smi se: Northern Saami (Sweden) + mac se: Swedish (Macintosh) + svdvorak se: Swedish (Svdvorak) + swl se: Swedish Sign Language + legacy ch: German (Switzerland, legacy) + de_nodeadkeys ch: German (Switzerland, eliminate dead keys) + de_sundeadkeys ch: German (Switzerland, Sun dead keys) + fr ch: French (Switzerland) + fr_nodeadkeys ch: French (Switzerland, eliminate dead keys) + fr_sundeadkeys ch: French (Switzerland, Sun dead keys) + fr_mac ch: French (Switzerland, Macintosh) + de_mac ch: German (Switzerland, Macintosh) + syc sy: Syriac + syc_phonetic sy: Syriac (phonetic) + ku sy: Kurdish (Syria, Latin Q) + ku_f sy: Kurdish (Syria, F) + ku_alt sy: Kurdish (Syria, Latin Alt-Q) + legacy tj: Tajik (legacy) + tam_unicode lk: Tamil (Sri Lanka, Unicode) + tam_TAB lk: Tamil (Sri Lanka, TAB Typewriter) + tis th: Thai (TIS-820.2538) + pat th: Thai (Pattachote) + f tr: Turkish (F) + alt tr: Turkish (Alt-Q) + sundeadkeys tr: Turkish (Sun dead keys) + ku tr: Kurdish (Turkey, Latin Q) + ku_f tr: Kurdish (Turkey, F) + ku_alt tr: Kurdish (Turkey, Latin Alt-Q) + intl tr: Turkish (international with dead keys) + crh tr: Crimean Tatar (Turkish Q) + crh_f tr: Crimean Tatar (Turkish F) + crh_alt tr: Crimean Tatar (Turkish Alt-Q) + indigenous tw: Taiwanese (indigenous) + saisiyat tw: Saisiyat (Taiwan) + phonetic ua: Ukrainian (phonetic) + typewriter ua: Ukrainian (typewriter) + winkeys ua: Ukrainian (WinKeys) + legacy ua: Ukrainian (legacy) + rstu ua: Ukrainian (standard RSTU) + rstu_ru ua: Russian (Ukraine, standard RSTU) + homophonic ua: Ukrainian (homophonic) + extd gb: English (UK, extended WinKeys) + intl gb: English (UK, international with dead keys) + dvorak gb: English (UK, Dvorak) + dvorakukp gb: English (UK, Dvorak with UK punctuation) + mac gb: English (UK, Macintosh) + mac_intl gb: English (UK, Macintosh international) + colemak gb: English (UK, Colemak) + latin uz: Uzbek (Latin) + kr104 kr: Korean (101/104 key compatible) + CloGaelach ie: CloGaelach + UnicodeExpert ie: Irish (UnicodeExpert) + ogam ie: Ogham + ogam_is434 ie: Ogham (IS434) + urd-crulp pk: Urdu (Pakistan, CRULP) + urd-nla pk: Urdu (Pakistan, NLA) + ara pk: Arabic (Pakistan) + snd pk: Sindhi + legacy epo: Esperanto (displaced semicolon and quote, obsolete) + igbo ng: Igbo + yoruba ng: Yoruba + hausa ng: Hausa + left_hand brai: Braille (left hand) + right_hand brai: Braille (right hand) + alt tm: Turkmen (Alt-Q) + fr-oss ml: French (Mali, alternative) + us-mac ml: English (Mali, US Macintosh) + us-intl ml: English (Mali, US international) + kik ke: Kikuyu + qwerty-bay ph: Filipino (QWERTY Baybayin) + capewell-dvorak ph: Filipino (Capewell-Dvorak Latin) + capewell-dvorak-bay ph: Filipino (Capewell-Dvorak Baybayin) + capewell-qwerf2k6 ph: Filipino (Capewell-QWERF 2006 Latin) + capewell-qwerf2k6-bay ph: Filipino (Capewell-QWERF 2006 Baybayin) + colemak ph: Filipino (Colemak Latin) + colemak-bay ph: Filipino (Colemak Baybayin) + dvorak ph: Filipino (Dvorak Latin) + dvorak-bay ph: Filipino (Dvorak Baybayin) + +! option + grp Key(s) to change layout + grp:switch Right Alt (while pressed) + grp:lswitch Left Alt (while pressed) + grp:lwin_switch Left Win (while pressed) + grp:rwin_switch Right Win (while pressed) + grp:win_switch Any Win key (while pressed) + grp:caps_switch Caps Lock (while pressed), Alt+Caps Lock does the original capslock action + grp:rctrl_switch Right Ctrl (while pressed) + grp:toggle Right Alt + grp:lalt_toggle Left Alt + grp:caps_toggle Caps Lock + grp:shift_caps_toggle Shift+Caps Lock + grp:shift_caps_switch Caps Lock (to first layout), Shift+Caps Lock (to last layout) + grp:win_menu_switch Left Win (to first layout), Right Win/Menu (to last layout) + grp:lctrl_rctrl_switch Left Ctrl (to first layout), Right Ctrl (to last layout) + grp:alt_caps_toggle Alt+Caps Lock + grp:shifts_toggle Both Shift keys together + grp:alts_toggle Both Alt keys together + grp:ctrls_toggle Both Ctrl keys together + grp:ctrl_shift_toggle Ctrl+Shift + grp:lctrl_lshift_toggle Left Ctrl+Left Shift + grp:rctrl_rshift_toggle Right Ctrl+Right Shift + grp:ctrl_alt_toggle Alt+Ctrl + grp:alt_shift_toggle Alt+Shift + grp:alt_space_toggle Alt+Space + grp:menu_toggle Menu + grp:lwin_toggle Left Win + grp:rwin_toggle Right Win + grp:lshift_toggle Left Shift + grp:rshift_toggle Right Shift + grp:lctrl_toggle Left Ctrl + grp:rctrl_toggle Right Ctrl + grp:sclk_toggle Scroll Lock + grp:lctrl_lwin_rctrl_menu LeftCtrl+LeftWin (to first layout), RightCtrl+Menu (to second layout) + lv3 Key to choose 3rd level + lv3:switch Right Ctrl + lv3:menu_switch Menu + lv3:win_switch Any Win key + lv3:lwin_switch Left Win + lv3:rwin_switch Right Win + lv3:alt_switch Any Alt key + lv3:lalt_switch Left Alt + lv3:ralt_switch Right Alt + lv3:ralt_switch_multikey Right Alt, Shift+Right Alt key is Multi_Key + lv3:ralt_alt Right Alt key never chooses 3rd level + lv3:enter_switch Enter on keypad + lv3:caps_switch Caps Lock + lv3:bksl_switch Backslash + lv3:lsgt_switch <Less/Greater> + lv3:caps_switch_latch Caps Lock (chooses 3rd level, latches when pressed together with another 3rd-level-chooser) + lv3:bksl_switch_latch Backslash (chooses 3rd level, latches when pressed together with another 3rd-level-chooser) + lv3:lsgt_switch_latch <Less/Greater> (chooses 3rd level, latches when pressed together with another 3rd-level-chooser) + ctrl Ctrl key position + ctrl:nocaps Make Caps Lock an additional Ctrl + ctrl:lctrl_meta Meta on Left Ctrl + ctrl:swapcaps Swap Ctrl and Caps Lock + ctrl:ctrl_ac At left of 'A' + ctrl:ctrl_aa At bottom left + ctrl:ctrl_ra Right Ctrl as Right Alt + ctrl:ctrl_menu Right Ctrl is mapped to Menu + grp_led Use keyboard LED to show alternative layout + grp_led:num Num Lock + grp_led:caps Caps Lock + grp_led:scroll Scroll Lock + keypad Numeric keypad layout selection + keypad:legacy Legacy + keypad:oss Unicode additions (arrows and math operators) + keypad:future Unicode additions (arrows and math operators). Math operators on default level + keypad:legacy_wang Legacy Wang 724 + keypad:oss_wang Wang 724 keypad with Unicode additions (arrows and math operators) + keypad:future_wang Wang 724 keypad with Unicode additions (arrows and math operators). Math operators on default level + keypad:hex Hexadecimal + keypad:atm ATM/phone-style + kpdl Numeric keypad delete key behaviour + kpdl:dot Legacy key with dot + kpdl:comma Legacy key with comma + kpdl:dotoss Four-level key with dot + kpdl:dotoss_latin9 Four-level key with dot, latin-9 restriction + kpdl:commaoss Four-level key with comma + kpdl:momayyezoss Four-level key with momayyez + kpdl:kposs Four-level key with abstract separators + kpdl:semi Semi-colon on third level + caps Caps Lock key behavior + caps:internal Caps Lock uses internal capitalization. Shift "pauses" Caps Lock + caps:internal_nocancel Caps Lock uses internal capitalization. Shift doesn't affect Caps Lock + caps:shift Caps Lock acts as Shift with locking. Shift "pauses" Caps Lock + caps:shift_nocancel Caps Lock acts as Shift with locking. Shift doesn't affect Caps Lock + caps:capslock Caps Lock toggles normal capitalization of alphabetic characters + caps:numlock Make Caps Lock an additional Num Lock + caps:swapescape Swap ESC and Caps Lock + caps:escape Make Caps Lock an additional ESC + caps:backspace Make Caps Lock an additional Backspace + caps:super Make Caps Lock an additional Super + caps:hyper Make Caps Lock an additional Hyper + caps:shiftlock Caps Lock toggles Shift so all keys are affected + caps:none Caps Lock is disabled + caps:ctrl_modifier Make Caps Lock an additional Control but keep the Caps_Lock keysym + altwin Alt/Win key behavior + altwin:menu Add the standard behavior to Menu key + altwin:meta_alt Alt and Meta are on Alt keys + altwin:ctrl_win Control is mapped to Win keys (and the usual Ctrl keys) + altwin:ctrl_alt_win Control is mapped to Alt keys, Alt is mapped to Win keys + altwin:meta_win Meta is mapped to Win keys + altwin:left_meta_win Meta is mapped to Left Win + altwin:hyper_win Hyper is mapped to Win-keys + altwin:alt_super_win Alt is mapped to Right Win, Super to Menu + altwin:swap_lalt_lwin Left Alt is swapped with Left Win + Compose key Compose key position + compose:ralt Right Alt + compose:lwin Left Win + compose:rwin Right Win + compose:menu Menu + compose:lctrl Left Ctrl + compose:rctrl Right Ctrl + compose:caps Caps Lock + compose:102 <Less/Greater> + compose:paus Pause + compose:prsc PrtSc + compose:sclk Scroll Lock + compat Miscellaneous compatibility options + numpad:pc Default numeric keypad keys + numpad:mac Numeric keypad keys work as with Macintosh + numpad:microsoft Shift with numeric keypad keys works as in MS Windows + numpad:shift3 Shift does not cancel Num Lock, chooses 3rd level instead + srvrkeys:none Special keys (Ctrl+Alt+<key>) handled in a server + apple:alupckeys Apple Aluminium Keyboard: emulate PC keys (Print, Scroll Lock, Pause, Num Lock) + shift:breaks_caps Shift cancels Caps Lock + misc:typo Enable extra typographic characters + shift:both_capslock Both Shift-Keys together toggle Caps Lock + shift:both_capslock_cancel Both Shift-Keys together activate Caps Lock, one Shift-Key deactivates + shift:both_shiftlock Both Shift-Keys together toggle ShiftLock + keypad:pointerkeys Toggle PointerKeys with Shift + NumLock. + eurosign Adding currency signs to certain keys + eurosign:e Euro on E + eurosign:2 Euro on 2 + eurosign:4 Euro on 4 + eurosign:5 Euro on 5 + rupeesign:4 Rupee on 4 + lv5 Key to choose 5th level + lv5:lsgt_switch_lock <Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser + lv5:ralt_switch_lock Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser + lv5:lwin_switch_lock Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser + lv5:rwin_switch_lock Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser + lv5:lsgt_switch_lock_cancel <Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock + lv5:ralt_switch_lock_cancel Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock + lv5:lwin_switch_lock_cancel Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock + lv5:rwin_switch_lock_cancel Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock + lv5:lsgt_switch_lock_cancel <Less/Greater> chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock + lv5:ralt_switch_lock_cancel Right Alt chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock + nbsp Using space key to input non-breakable space character + nbsp:none Usual space at any level + nbsp:level2 Non-breakable space character at second level + nbsp:level3 Non-breakable space character at third level + nbsp:level3s Non-breakable space character at third level, nothing at fourth level + nbsp:level3n Non-breakable space character at third level, thin non-breakable space character at fourth level + nbsp:level4 Non-breakable space character at fourth level + nbsp:level4n Non-breakable space character at fourth level, thin non-breakable space character at sixth level + nbsp:level4nl Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift) + nbsp:zwnj2 Zero-width non-joiner character at second level + nbsp:zwnj2zwj3 Zero-width non-joiner character at second level, zero-width joiner character at third level + nbsp:zwnj2zwj3nb4 Zero-width non-joiner character at second level, zero-width joiner character at third level, non-breakable space character at fourth level + nbsp:zwnj2nb3 Zero-width non-joiner character at second level, non-breakable space character at third level + nbsp:zwnj2nb3s Zero-width non-joiner character at second level, non-breakable space character at third level, nothing at fourth level + nbsp:zwnj2nb3zwj4 Zero-width non-joiner character at second level, non-breakable space character at third level, zero-width joiner at fourth level + nbsp:zwnj2nb3nnb4 Zero-width non-joiner character at second level, non-breakable space character at third level, thin non-breakable space at fourth level + nbsp:zwnj3zwj4 Zero-width non-joiner character at third level, zero-width joiner at fourth level + japan Japanese keyboard options + japan:kana_lock Kana Lock key is locking + japan:nicola_f_bs NICOLA-F style Backspace + esperanto Adding Esperanto circumflexes (supersigno) + esperanto:qwerty To the corresponding key in a Qwerty keyboard. + esperanto:dvorak To the corresponding key in a Dvorak keyboard. + terminate Key sequence to kill the X server + terminate:ctrl_alt_bksp Control + Alt + Backspace diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/Makefile new file mode 100644 index 000000000..962bfeee3 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/Makefile @@ -0,0 +1,40 @@ +# $NetBSD: Makefile,v 1.9 2013/05/31 23:28:26 mrg Exp $ + +.include + +XKBNAME= symbols + +FILES= af al altwin am apl ara at az \ + ba bd be bg br brai bt bw by \ + ca capslock cd ch cm cn compose ctrl cz \ + de dk \ + ee empty epo es et eurosign \ + fi fo fr \ + gb ge gh gn gr group \ + hr hu \ + ie il in inet iq ir is it \ + jp \ + ke keypad kg kh kpdl kr kz \ + la latam latin level3 level5 lk lt lv \ + ma mao md me mk ml mm mn mt mv \ + nbsp ng nl no np \ + olpc \ + pc ph pk pl pt \ + ro rs ru rupeesign \ + se shift si sk sn srvr_ctrl sy \ + terminate th tj tm tr tw typo tz \ + ua us uz \ + vn \ + za + +SUBDIR= digital_vndr fujitsu_vndr hp_vndr macintosh_vndr \ + nec_vndr nokia_vndr sgi_vndr sharp_vndr sony_vndr sun_vndr \ + xfree68_vndr + +XKBDIR= 1 + +.include "../Makefile.xkbdata" + +.include +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/digital_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/digital_vndr/Makefile new file mode 100644 index 000000000..0fa10269f --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/digital_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:22 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/digital_vndr +FILES= lk pc us vt + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/digital_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/fujitsu_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/fujitsu_vndr/Makefile new file mode 100644 index 000000000..c616765a7 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/fujitsu_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:22 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/fujitsu_vndr +FILES= jp us + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/fujitsu_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/hp_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/hp_vndr/Makefile new file mode 100644 index 000000000..7a08b3d76 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/hp_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:22 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/hp_vndr +FILES= us + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/hp_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/macintosh_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/macintosh_vndr/Makefile new file mode 100644 index 000000000..c3dea1a64 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/macintosh_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.2 2010/05/28 12:38:35 ghen Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/macintosh_vndr +FILES= apple ch de dk fi fr gb it jp nl no pt se us + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/macintosh_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/nec_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/nec_vndr/Makefile new file mode 100644 index 000000000..6a68c7d2c --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/nec_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:22 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/nec_vndr +FILES= jp + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/nec_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/nokia_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/nokia_vndr/Makefile new file mode 100644 index 000000000..56ce666a4 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/nokia_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2010/05/28 12:38:35 ghen Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/nokia_vndr +FILES= rx-44 rx-51 su-8w + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/nokia_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/sgi_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/sgi_vndr/Makefile new file mode 100644 index 000000000..4feaa568d --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/sgi_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:23 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/sgi_vndr +FILES= jp + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/sgi_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/sharp_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/sharp_vndr/Makefile new file mode 100644 index 000000000..72d0b1761 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/sharp_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.3 2010/05/25 13:13:55 nonaka Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/sharp_vndr +FILES= sl-c3x00 ws003sh ws007sh ws011sh ws020sh + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/sharp_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/sony_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/sony_vndr/Makefile new file mode 100644 index 000000000..0630a5181 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/sony_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:23 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/sony_vndr +FILES= us + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/sony_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/sun_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/sun_vndr/Makefile new file mode 100644 index 000000000..7dc304161 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/sun_vndr/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.3 2013/05/31 23:28:26 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/sun_vndr +FILES= ara be br ca ch cz de dk ee es fi fr gb gr it jp kr \ + lt lv nl no pl pt ro ru se sk solaris tr tw ua us + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/sun_vndr + +.include +.include + diff --git a/external/mit/xorg/lib/xkeyboard-config/symbols/xfree68_vndr/Makefile b/external/mit/xorg/lib/xkeyboard-config/symbols/xfree68_vndr/Makefile new file mode 100644 index 000000000..1c87c8672 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/symbols/xfree68_vndr/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:23 mrg Exp $ + +.include + +FILESDIR= ${X11LIBDIR}/xkb/symbols/xfree68_vndr +FILES= amiga ataritt + +.PATH: ${X11SRCDIR.xkeyboard-config}/symbols/xfree68_vndr + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/torture/Makefile b/external/mit/xorg/lib/xkeyboard-config/torture/Makefile new file mode 100644 index 000000000..ef6712fe3 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/torture/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 01:49:23 mrg Exp $ + +.include + +XKBNAME= torture +FILES= indicator indicator1 indicator2 indicator3 mod_compat \ + mod_compat1 mod_compat2 mod_compat3 mod_compat4 \ + sym_interp sym_interp1 sym_interp2 sym_interp3 \ + sym_interp4 types + +.include "../Makefile.xkbdata" + +.include +.include diff --git a/external/mit/xorg/lib/xkeyboard-config/types/Makefile b/external/mit/xorg/lib/xkeyboard-config/types/Makefile new file mode 100644 index 000000000..05d18bc38 --- /dev/null +++ b/external/mit/xorg/lib/xkeyboard-config/types/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.2 2010/05/28 12:38:35 ghen Exp $ + +.include + +XKBNAME= types +FILES= README basic cancel caps complete default extra \ + iso9995 level5 mousekeys nokia numpad pc + +XKBDIR= 1 + +.include "../Makefile.xkbdata" + +.include +.include diff --git a/external/mit/xorg/server/Makefile b/external/mit/xorg/server/Makefile new file mode 100644 index 000000000..c90cf52f9 --- /dev/null +++ b/external/mit/xorg/server/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.8 2013/06/12 21:35:29 mrg Exp $ + +# Makefile for modular-xorg-server and drivers + +.include + +.include "xorg-server/Makefile.common" + +SUBDIR= xorg-server + +# We only make drivers if we make the actual Xorg server, +# as opposed to Xvfb and Xnest. +.if ${MKXORG_SERVER} != "no" +SUBDIR+= drivers +.endif + +.include diff --git a/external/mit/xorg/server/Makefile.inc b/external/mit/xorg/server/Makefile.inc new file mode 100644 index 000000000..afffa0828 --- /dev/null +++ b/external/mit/xorg/server/Makefile.inc @@ -0,0 +1,4 @@ +# LSC: Workaround clang optimization for function calls from shared libraries. +DBG+= -O0 + +.include "../Makefile.inc" diff --git a/external/mit/xorg/server/drivers/Makefile b/external/mit/xorg/server/drivers/Makefile new file mode 100644 index 000000000..47fa0b465 --- /dev/null +++ b/external/mit/xorg/server/drivers/Makefile @@ -0,0 +1,290 @@ +# $NetBSD: Makefile,v 1.63 2012/07/19 19:23:52 macallan Exp $ + +# xf86-input drivers + +SUBDIR= \ + xf86-input-keyboard \ + xf86-input-mouse \ + #MINIX: xf86-input-ws + +.if ${MACHINE_ARCH} == "i386" || \ + ${MACHINE_ARCH} == "x86_64" +SUBDIR+= \ + xf86-input-vmmouse + +.if ${MACHINE_ARCH} == "i386" +SUBDIR+= \ + xf86-input-elographics +.endif + +.endif + + +# xf86-video drivers + +.if ${MACHINE_ARCH} == "i386" || \ + ${MACHINE_ARCH} == "x86_64" +SUBDIR+= \ + xf86-video-apm \ + xf86-video-ark \ + xf86-video-ast \ + xf86-video-ati \ + xf86-video-chips \ + xf86-video-cirrus \ + xf86-video-cirrus_alpine \ + xf86-video-cirrus_laguna \ + xf86-video-glint \ + xf86-video-i128 \ + xf86-video-i740 \ + +# needs porting for xorg-server 1.6 +# xf86-video-imstt \ + +SUBDIR+= \ + xf86-video-intel \ + xf86-video-mach64 \ + xf86-video-mga \ + xf86-video-neomagic \ + xf86-video-nv \ + xf86-video-openchrome \ + xf86-video-r128 \ + xf86-video-radeon \ + xf86-video-radeonhd \ + xf86-video-s3 \ + xf86-video-s3virge \ + xf86-video-savage \ + xf86-video-siliconmotion \ + xf86-video-sis \ + xf86-video-tdfx \ + xf86-video-tga \ + xf86-video-trident \ + xf86-video-tseng \ + xf86-video-vmware \ + xf86-video-vesa \ + xf86-video-xgi +# xf86-video-rendition + +# does not compile yet on MINIX +# xf86-video-wsfb \ + +.if ${MACHINE_ARCH} == "i386" +SUBDIR+= \ + xf86-video-geode +.endif # ${MACHINE_ARCH} == "i386" + +.endif # ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" + +.if ${MACHINE} == "alpha" +SUBDIR+= \ + xf86-video-apm \ + xf86-video-ark \ + xf86-video-ast \ + xf86-video-ati \ + xf86-video-chips \ + xf86-video-cirrus \ + xf86-video-cirrus_alpine \ + xf86-video-cirrus_laguna \ + xf86-video-glint \ + xf86-video-i128 \ + xf86-video-i740 \ + xf86-video-mach64 \ + xf86-video-mga \ + xf86-video-nv \ + xf86-video-r128 \ + xf86-video-radeon \ + xf86-video-radeonhd \ + xf86-video-s3 \ + xf86-video-s3virge \ + xf86-video-savage \ + xf86-video-siliconmotion \ + xf86-video-sis \ + xf86-video-tdfx \ + xf86-video-tga \ + xf86-video-trident \ + xf86-video-tseng \ + xf86-video-wsfb +# xf86-video-imstt +.endif # ${MACHINE} == "alpha" + +.if ${MACHINE} == "bebox" +SUBDIR+= \ + xf86-video-cirrus \ + xf86-video-cirrus_alpine \ + xf86-video-mga \ + xf86-video-s3 \ + xf86-video-s3virge +.endif # ${MACHINE} == "bebox" + +.if ${MACHINE} == "cats" +SUBDIR+= \ + xf86-video-apm \ + xf86-video-ark \ + xf86-video-ast \ + xf86-video-ati \ + xf86-video-chips \ + xf86-video-cirrus \ + xf86-video-cirrus_alpine \ + xf86-video-cirrus_laguna \ + xf86-video-glint \ + xf86-video-i128 \ + xf86-video-i740 \ + xf86-video-mga \ + xf86-video-neomagic \ + xf86-video-nv \ + xf86-video-radeon \ + xf86-video-radeonhd \ + xf86-video-s3 \ + xf86-video-s3virge \ + xf86-video-savage \ + xf86-video-siliconmotion \ + xf86-video-tdfx \ + xf86-video-tga \ + xf86-video-trident \ + xf86-video-tseng \ + xf86-video-vesa \ + xf86-video-wsfb +.endif # ${MACHINE} == "cats" + +.if ${MACHINE} == "dreamcast" +SUBDIR+= \ + xf86-video-wsfb +.endif # ${MACHINE} == "dreamcast" + +.if ${MACHINE} == "evbarm" +SUBDIR+= \ + #xf86-video-wsfb +.endif # ${MACHINE} == "evbarm" + +.if ${MACHINE} == "evbmips" +SUBDIR+= \ + xf86-video-siliconmotion \ + xf86-video-sis \ + xf86-video-wsfb +.endif # ${MACHINE} == "evbmips" + +.if ${MACHINE} == "ews4800mips" +SUBDIR+= \ + xf86-video-wsfb +.endif # ${MACHINE} == "ews4800mips" + +.if ${MACHINE} == "hp300" +SUBDIR+= \ + xf86-video-wsfb +.endif # ${MACHINE} == "hp300" + +.if ${MACHINE} == "hpcarm" || \ + ${MACHINE} == "hpcmips" || \ + ${MACHINE} == "hpcsh" +SUBDIR+= \ + xf86-video-wsfb +.endif # ${MACHINE} == "hpcarm" || ${MACHINE} == "hpcmips" || ${MACHINE} == "hpcsh" + +.if ${MACHINE} == "luna68k" +SUBDIR+= \ + xf86-video-wsfb +.endif # ${MACHINE} == "luna68k" + +.if ${MACHINE} == "macppc" +SUBDIR+= \ + xf86-video-ati \ + xf86-video-chips \ + xf86-video-mach64 \ + xf86-video-mga \ + xf86-video-nv \ + xf86-video-radeon \ + xf86-video-r128 \ + xf86-video-tdfx \ + xf86-video-wsfb +# xf86-video-imstt +.endif # ${MACHINE} == "macppc" + +.if ${MACHINE} == "netwinder" +SUBDIR+= \ + xf86-video-wsfb +# xf86-video-igs +.endif # ${MACHINE} == "netwinder" + +.if ${MACHINE} == "newsmips" +SUBDIR+= \ + xf86-video-wsfb +.endif # ${MACHINE} == "newsmips" + +.if ${MACHINE} == "ofppc" +SUBDIR+= \ + xf86-video-ati \ + xf86-video-chips \ + xf86-video-mach64 \ + xf86-video-mga \ + xf86-video-nv \ + xf86-video-radeon \ + xf86-video-r128 \ + xf86-video-tdfx \ + xf86-video-wsfb +.endif # ${MACHINE} == "ofppc" + +.if ${MACHINE} == "prep" +SUBDIR+= \ + xf86-video-cirrus \ + xf86-video-cirrus_alpine \ + xf86-video-mga \ + xf86-video-s3 +.endif # ${MACHINE} == "prep" + +.if ${MACHINE} == "sgimips" +SUBDIR+= \ + xf86-video-crime \ + xf86-video-newport \ + xf86-video-wsfb +.endif # ${MACHINE} == "sgimips" + +.if ${MACHINE} == "shark" +SUBDIR+= \ + xf86-video-chips \ + xf86-video-igs \ + xf86-video-wsfb +.endif # ${MACHINE} == "shark" + +.if ${MACHINE} == "sparc" || \ + ${MACHINE} == "sparc64" +SUBDIR+= \ + xf86-video-ag10e \ + xf86-video-ati \ + xf86-video-glint \ + xf86-video-mach64 \ + xf86-video-mga \ + xf86-video-r128 \ + xf86-video-radeon \ + xf86-video-suncg6 \ + xf86-video-sunffb \ + xf86-video-sunleo \ + xf86-video-wsfb +.if ${MACHINE} == "sparc" +SUBDIR+= \ + xf86-video-pnozz \ + xf86-video-suncg14 \ + xf86-video-suntcx +.endif # ${MACHINE} == "sparc" +.endif # ${MACHINE} == "sparc" || ${MACHINE} == "sparc64" + +.if ${MACHINE} == "vax" +SUBDIR+= \ + xf86-video-wsfb +.endif # ${MACHINE} == "vax" + +.if ${MACHINE} == "zaurus" +SUBDIR+= \ + xf86-video-wsfb +.endif # ${MACHINE} == "zaurus" + +# broken with xorg-server 1.6 +# x86 +# xf86-video-nsc \ +# xf86-video-vga \ +# alpha +# xf86-video-vga \ +# bebox +# xf86-video-vga +# prep +# xf86-video-vga + +.include diff --git a/external/mit/xorg/server/drivers/Makefile.inc b/external/mit/xorg/server/drivers/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/server/drivers/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/server/drivers/Makefile.xf86-driver b/external/mit/xorg/server/drivers/Makefile.xf86-driver new file mode 100644 index 000000000..6798b4674 --- /dev/null +++ b/external/mit/xorg/server/drivers/Makefile.xf86-driver @@ -0,0 +1,51 @@ +# $NetBSD: Makefile.xf86-driver,v 1.19 2010/11/23 08:22:29 mrg Exp $ + +LIBISMODULE= yes +SHLIB_MAJOR= ${PACKAGE_MAJOR} + +.include +.include + +LIB= ${DRIVER_NAME} +LIBDIR= ${X11USRLIBDIR}/modules/drivers + +# Extract version from configure script if not set in makefile. +# +.if defined(DRIVER_VERSION) +PACKAGE_VERSION= ${DRIVER_VERSION} +.else +PRINT_PACKAGE_VERSION= ${TOOL_AWK} '/^PACKAGE_VERSION=/ { \ + match($$1, "[0-9]+\\.[0-9]+\\.[0-9]+"); \ + version = substr($$1, RSTART, RLENGTH); \ + } END { print version }' \ + ${X11SRCDIR.${DRIVER}}/configure + +PACKAGE_VERSION!= ${PRINT_PACKAGE_VERSION} +.endif + +PACKAGE_MAJOR= ${PACKAGE_VERSION:R:R} +PACKAGE_MINOR= ${PACKAGE_VERSION:R:E} +PACKAGE_PATCH= ${PACKAGE_VERSION:E} + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/dri \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include \ + ${X11FLAGS.EXTENSION} \ + ${X11FLAGS.SERVER} \ + -DHAVE_XORG_SERVER_1_1_0 \ + -DSERVER_1_5 \ + -DXSERVER_LIBPCIACCESS \ + -DXFree86LOADER \ + -DHAVE_XEXTPROTO_71 + +CPPFLAGS+= -DPACKAGE_VERSION_MAJOR=${PACKAGE_MAJOR} +CPPFLAGS+= -DPACKAGE_VERSION_MINOR=${PACKAGE_MINOR} +CPPFLAGS+= -DPACKAGE_VERSION_PATCHLEVEL=${PACKAGE_PATCH} +CPPFLAGS+= -DXORG_VERSION_CURRENT=${XORG_VERSION_CURRENT} + +.PATH: ${X11SRCDIR.${DRIVER}}/src +.PATH: ${X11SRCDIR.${DRIVER}}/man + +.include diff --git a/external/mit/xorg/server/drivers/xf86-input-elographics/Makefile b/external/mit/xorg/server/drivers/xf86-input-elographics/Makefile new file mode 100644 index 000000000..130f25612 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-input-elographics/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2009/11/28 17:27:30 mbalmer Exp $ + +DRIVER= xf86-input-elographics +DRIVER_NAME= elographics_drv + +SRCS= xf86Elo.c +MAN= elographics.4 + +CPPFLAGS+= -DHAVE_CONFIG_H \ + -I${X11SRCDIR.${DRIVER}}/../include \ + +COPTS.xf86Elo.c= -Wno-error # XXX deprecated + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-input-keyboard/Makefile b/external/mit/xorg/server/drivers/xf86-input-keyboard/Makefile new file mode 100644 index 000000000..2cb6cc6e4 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-input-keyboard/Makefile @@ -0,0 +1,34 @@ +# $NetBSD: Makefile,v 1.15 2013/01/12 18:32:12 macallan Exp $ + +DRIVER= xf86-input-keyboard +DRIVER_NAME= kbd_drv + +SRCS= kbd.c bsd_KbdMap.c bsd_kbd.c at_scancode.c +MAN= kbd.4 + +.include +.if !defined(__MINIX) +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || ${MACHINE} == "cats" +CPPFLAGS+= -DPCVT_SUPPORT +.endif + +# turns out we can't use wskbd everywhere without a couple more translation +# tables in the X driver so make it the default only where we know it will work + +.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE} == "sparc" || \ + ${MACHINE} == "sparc64" || ${MACHINE} == "sgimips" || \ + ${MACHINE} == "shark" || ${MACHINE} == "vax" || \ + ${MACHINE} == "evbarm" +CPPFLAGS+= -DDEFAULT_TO_WSKBD +.endif + +CPPFLAGS+= -DWSCONS_SUPPORT +.endif # !defined(__MINIX) +CPPFLAGS+= -DXKB +CPPFLAGS.kbd.c= -D__XKBDEFRULES__=${__XKBDEFRULES__} + +X11EXTRAMANDEFS+= -e 's,__xkb_path__,${X11LIBDIR}/xkb,g' + +COPTS.kbd.c= -Wno-error # XXX deprecated + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-input-mouse/Makefile b/external/mit/xorg/server/drivers/xf86-input-mouse/Makefile new file mode 100644 index 000000000..b6260c1f5 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-input-mouse/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.6 2013/06/05 07:26:36 mrg Exp $ + +WARNS?= 2 + +DRIVER= xf86-input-mouse +DRIVER_NAME= mouse_drv + +SRCS= mouse.c pnp.c bsd_mouse.c +MAN= mousedrv.4 + +CPPFLAGS+= -DHAVE_CONFIG_H \ + -I${X11SRCDIR.${DRIVER}}/include \ + -I${X11SRCDIR.${DRIVER}}/../include + +INCSDIR= ${X11INCDIR}/xorg +INCS= xf86-mouse-properties.h + +PKGCONFIG= xorg-mouse +PKGDIST.xorg-mouse= ${X11SRCDIR.${DRIVER}} + +.include "../Makefile.xf86-driver" + +.PATH: ${X11SRCDIR.${DRIVER}}/include +.PATH: ${X11SRCDIR.${DRIVER}} diff --git a/external/mit/xorg/server/drivers/xf86-input-synaptics/Makefile b/external/mit/xorg/server/drivers/xf86-input-synaptics/Makefile new file mode 100644 index 000000000..4b716b972 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-input-synaptics/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2011/01/29 02:32:36 mrg Exp $ + +DRIVER= xf86-input-synaptics +DRIVER_NAME= synaptics_drv + +SRCS= synaptics.c alpscomm.c ps2comm.c properties.c +#SRCS+= psmcomm.c + +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/include +CPPFLAGS+= -DHAVE_CONFIG_H -I${X11SRCDIR.${DRIVER}}/../include + +MAN= synaptics.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-input-vmmouse/Makefile b/external/mit/xorg/server/drivers/xf86-input-vmmouse/Makefile new file mode 100644 index 000000000..d28318017 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-input-vmmouse/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.5 2011/10/19 23:07:34 jmcneill Exp $ + +DRIVER= xf86-input-vmmouse +DRIVER_NAME= vmmouse_drv + +SRCS= vmmouse.c vmmouse_client.c vmmouse_proto.c +MAN= vmmouse.4 +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/shared +CPPFLAGS+= -DXINPUT -DHAVE_XORG_SERVER_1_5_0 +CPPFLAGS+= -DABS_VALUATOR_AXES -DNO_MOUSE_MODULE + +COPTS.vmmouse.c= -Wno-error # XXX deprecated + +.include "../Makefile.xf86-driver" +.PATH: ${X11SRCDIR.${DRIVER}}/shared diff --git a/external/mit/xorg/server/drivers/xf86-input-void/Makefile b/external/mit/xorg/server/drivers/xf86-input-void/Makefile new file mode 100644 index 000000000..fbf2fdfe9 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-input-void/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.1 2008/08/02 06:32:02 mrg Exp $ + +DRIVER= xf86-input-void +DRIVER_NAME= void_drv + +SRCS= void.c +MAN= void.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-input-ws/Makefile b/external/mit/xorg/server/drivers/xf86-input-ws/Makefile new file mode 100644 index 000000000..fbfeb9a5e --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-input-ws/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2012/03/22 23:46:27 joerg Exp $ + +WARNS?= 2 + +DRIVER= xf86-input-ws +DRIVER_NAME= ws_drv + +SRCS= ws.c emumb.c +MAN= ws.4 + +CPPFLAGS+= -DHAVE_CONFIG_H \ + -I${X11SRCDIR.${DRIVER}}/../include \ + -I${X11SRCDIR.${DRIVER}}/include + +CWARNFLAGS.clang+= -Wno-parentheses-equality + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-ag10e/Makefile b/external/mit/xorg/server/drivers/xf86-video-ag10e/Makefile new file mode 100644 index 000000000..232733ffd --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-ag10e/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.1 2008/11/11 03:37:27 macallan Exp $ + +DRIVER= xf86-video-ag10e +DRIVER_NAME= ag10e_drv + +SRCS= ag10e_accel.c ag10e_cursor.c ag10e_driver.c +MAN= ag10e.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-apm/Makefile b/external/mit/xorg/server/drivers/xf86-video-apm/Makefile new file mode 100644 index 000000000..80e2cb53a --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-apm/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.2 2008/08/03 07:32:03 rtr Exp $ + +DRIVER= xf86-video-apm +DRIVER_NAME= apm_drv + +SRCS= apm_accel.c apm_cursor.c apm_dga.c apm_driver.c apm_i2c.c +MAN= apm.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-ark/Makefile b/external/mit/xorg/server/drivers/xf86-video-ark/Makefile new file mode 100644 index 000000000..8ec5c28a0 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-ark/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.4 2009/06/10 01:59:09 mrg Exp $ + +DRIVER= xf86-video-ark +DRIVER_NAME= ark_drv + +SRCS= ark_accel.c ark_driver.c + +CPPFLAGS+= -DPACKAGE_VERSION=\"${PACKAGE_VERSION}\" + +#LSC: Clang/Minix3 +NOCLANGERROR?= yes + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-ast/Makefile b/external/mit/xorg/server/drivers/xf86-video-ast/Makefile new file mode 100644 index 000000000..83aa68cbc --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-ast/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.4 2011/08/11 23:15:39 joerg Exp $ + +DRIVER= xf86-video-ast +DRIVER_NAME= ast_drv + +SRCS= ast_2dtool.c ast_accel.c ast_cursor.c ast_driver.c +SRCS+= ast_mode.c ast_tool.c ast_vgatool.c + +CWARNFLAGS.clang+= -Wno-format + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-ati/Makefile b/external/mit/xorg/server/drivers/xf86-video-ati/Makefile new file mode 100644 index 000000000..7b9f59607 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-ati/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.4 2008/08/03 14:47:26 rtr Exp $ + +DRIVER= xf86-video-ati +DRIVER_NAME= ati_drv + +SRCS= ati.c atimodule.c +MAN= ati.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-chips/Makefile b/external/mit/xorg/server/drivers/xf86-video-chips/Makefile new file mode 100644 index 000000000..061df0768 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-chips/Makefile @@ -0,0 +1,22 @@ +# $NetBSD: Makefile,v 1.6 2011/05/15 22:55:01 christos Exp $ + +DRIVER= xf86-video-chips +DRIVER_NAME= chips_drv + +SRCS= ct_accel.c ct_bank.c ct_cursor.c ct_ddc.c ct_dga.c +SRCS+= ct_driver.c ct_regs.c ct_shadow.c ct_video.c +SRCS+= ct_accelmm.c ct_accelhi.c +MAN= chips.4 + +.if ${MACHINE} == "shark" +CPPFLAGS+= -DHAVE_ISA +.endif + +CPPFLAGS.ct_driver.c= -DVERSION=${PACKAGE_MAJOR} -I${X11SRCDIR.xorg-server} +CPPFLAGS.ct_accelmm.c= -DCHIPS_MMIO -I${X11SRCDIR.${DRIVER}}/src +CPPFLAGS.ct_accelhi.c= -DCHIPS_MMIO -DCHIPS_HIQV -I${X11SRCDIR.${DRIVER}}/src + +BUILDSYMLINKS= ct_accel.c ct_accelmm.c \ + ct_accel.c ct_accelhi.c + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-cirrus/Makefile b/external/mit/xorg/server/drivers/xf86-video-cirrus/Makefile new file mode 100644 index 000000000..a0f97f116 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-cirrus/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.3 2008/08/03 09:24:14 rtr Exp $ + +DRIVER= xf86-video-cirrus +DRIVER_NAME= cirrus_drv + +SRCS= cir_dga.c cir_driver.c CirrusClk.c cir_shadow.c +MAN= cirrus.4 + +CPPFLAGS.cir_driver.c= -DVERSION=${PACKAGE_MAJOR} + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-cirrus_alpine/Makefile b/external/mit/xorg/server/drivers/xf86-video-cirrus_alpine/Makefile new file mode 100644 index 000000000..22e5c26ee --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-cirrus_alpine/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.3 2008/10/27 20:29:10 veego Exp $ + +# XXX move this under ../xf86-video-cirrus + +DRIVER= xf86-video-cirrus +DRIVER_NAME= cirrus_alpine + +SRCS= alp_driver.c alp.h alp_hwcurs.c alp_i2c.c alp_xaa.c +SRCS+= alp_xaam.c + +#CPPFLAGS.cir_driver.c= -DVERSION=${PACKAGE_MAJOR} + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-cirrus_laguna/Makefile b/external/mit/xorg/server/drivers/xf86-video-cirrus_laguna/Makefile new file mode 100644 index 000000000..3efe2fe9a --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-cirrus_laguna/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.3 2008/10/27 20:29:10 veego Exp $ + +# XXX move this under ../xf86-video-cirrus + +DRIVER= xf86-video-cirrus +DRIVER_NAME= cirrus_laguna + +SRCS= lg_driver.c lg_hwcurs.c lg_i2c.c lg_xaa.c + +CPPFLAGS.lg_driver.c= -Wno-error # XXX + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-crime/Makefile b/external/mit/xorg/server/drivers/xf86-video-crime/Makefile new file mode 100644 index 000000000..8d0968c67 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-crime/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.2 2011/05/23 02:48:48 christos Exp $ + +DRIVER= xf86-video-crime +DRIVER_NAME= crime_drv + +SRCS= crime_driver.c crime_cursor.c crime_accel.c +MAN= crime.4 + +CFLAGS+= -march=mips3 +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/fb + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-geode/Makefile b/external/mit/xorg/server/drivers/xf86-video-geode/Makefile new file mode 100644 index 000000000..5742d9321 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-geode/Makefile @@ -0,0 +1,49 @@ +# $NetBSD: Makefile,v 1.2 2011/05/18 20:55:09 plunky Exp $ + +DRIVER= xf86-video-geode +DRIVER_NAME= geode_drv + +SRCS= \ + geode_driver.c \ + geode_common.c \ + geode_dcon.c \ + geode_ddc.c \ + geode_msr.c \ + gx_driver.c\ + gx_accel.c \ + gx_cursor.c \ + gx_video.c \ + gx_regacc.c \ + gx_rotate.c \ + gx_randr.c \ + durango.c \ + panel.c \ + lx_driver.c \ + lx_cursor.c \ + lx_memory.c \ + lx_panel.c \ + lx_output.c \ + lx_display.c \ + lx_video.c \ + lx_exa.c \ + cimarron.c +NOMAN= # defined + +CPPFLAGS+= -DHAVE_GX -DHAVE_LX -DAMD_V4L2_VIDEO -DOPT_ACCEL -DPNL_SUP +# This enables multi-mmap support; no idea why it is Linux 2.6 specific +CPPFLAGS+= -DLINUX_2_6 + +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/src/cim \ + -I${X11SRCDIR.${DRIVER}}/src/gfx \ + -I${X11SRCDIR.${DRIVER}}/src/panel + +CPPFLAGS+= -DHAVE_CONFIG_H -I${X11SRCDIR.${DRIVER}}/../include + +# XXX ugh +CPPFLAGS+= -Doff64_t=off_t -Dlseek64=lseek + +COPTS.gx_randr.c+= -Wno-error # XXX +COPTS.lx_memory.c+= -Wno-error # XXX +COPTS.panel.c+= -Wno-error # XXX -- huh? don't get this one + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-glint/Makefile b/external/mit/xorg/server/drivers/xf86-video-glint/Makefile new file mode 100644 index 000000000..090f58713 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-glint/Makefile @@ -0,0 +1,28 @@ +# $NetBSD: Makefile,v 1.11 2013/06/02 07:41:35 mrg Exp $ + +DRIVER= xf86-video-glint +DRIVER_NAME= glint_drv + +SRCS= glint_dga.c glint_driver.c glint_shadow.c +SRCS+= IBMramdac.c pm2_accel.c pm2_dac.c pm2ramdac.c pm2v_dac.c +SRCS+= pm2_video.c pm2vramdac.c pm3_accel.c pm3_dac.c pm3_video.c +SRCS+= pm_accel.c pm_dac.c sx_accel.c TIramdac.c tx_accel.c tx_dac.c +MAN= glint.4 + +.if ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "sparc" +CPPFLAGS+= -DSPARC_MMIO_IS_BE +.endif + +.if ${MACHINE_ARCH} == "powerpc" +CPPFLAGS+= -DPPC_MMIO_IS_BE +.endif + +CPPFLAGS+= -DHAVE_CONFIG_H -I${X11SRCDIR.${DRIVER}}/../include +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm + +COPTS.glint_driver.c= -Wno-error # XXX xf86dgastr.h + +CWARNFLAGS.clang+= -Wno-format + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-i128/Makefile b/external/mit/xorg/server/drivers/xf86-video-i128/Makefile new file mode 100644 index 000000000..098d95fb8 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-i128/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/08/03 07:32:04 rtr Exp $ + +DRIVER= xf86-video-i128 +DRIVER_NAME= i128_drv + +SRCS= i128accel.c i128dga.c i128exa.c i128_driver.c +SRCS+= i128IBMDAC.c i128init.c +MAN= i128.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-i740/Makefile b/external/mit/xorg/server/drivers/xf86-video-i740/Makefile new file mode 100644 index 000000000..c6c9aae8a --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-i740/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.3 2013/06/02 08:57:17 mrg Exp $ + +DRIVER= xf86-video-i740 +DRIVER_NAME= i740_drv + +SRCS= i740_accel.c i740_cursor.c i740_dga.c i740_driver.c +SRCS+= i740_i2c.c i740_io.c i740_video.c +MAN= i740.4 + +CPPFLAGS+= -DHAVE_XAA_H + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-igs/Makefile b/external/mit/xorg/server/drivers/xf86-video-igs/Makefile new file mode 100644 index 000000000..a7ee1c009 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-igs/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2009/11/10 21:44:11 macallan Exp $ + +DRIVER= xf86-video-igs +DRIVER_NAME= igs_drv + +SRCS= igs_driver.c igs_cursor.c igs_accel.c +MAN= igs.4 + +CPPFLAGS+= -DHAVE_CONFIG_H -I${X11SRCDIR.${DRIVER}}/../include + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-imstt/Makefile b/external/mit/xorg/server/drivers/xf86-video-imstt/Makefile new file mode 100644 index 000000000..cdec72fad --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-imstt/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.2 2008/08/03 07:32:04 rtr Exp $ + +DRIVER= xf86-video-imstt +DRIVER_NAME= imstt_drv + +SRCS= imstt_accel.c imstt_driver.c +MAN= imstt.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-intel/Makefile b/external/mit/xorg/server/drivers/xf86-video-intel/Makefile new file mode 100644 index 000000000..c3843ad09 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-intel/Makefile @@ -0,0 +1,37 @@ +# $NetBSD: Makefile,v 1.11 2013/10/16 15:28:27 martin Exp $ + +DRIVER= xf86-video-intel +DRIVER_NAME= intel_drv + +SRCS= drmmode_display.c i810_accel.c i810_cursor.c i810_dga.c +SRCS+= i810_dri.c i810_driver.c i810_io.c i810_memory.c i810_video.c +SRCS+= i810_wmark.c i830_3d.c i830_accel.c i830_bios.c +SRCS+= i830_batchbuffer.c i830_crt.c i830_cursor.c i830_debug.c +SRCS+= i830_display.c i830_quirks.c i830_driver.c i830_dvo.c +SRCS+= i830_hdmi.c i830_i2c.c i830_io.c i830_lvds.c i830_memory.c +SRCS+= i830_modes.c i830_video.c i830_sdvo.c i830_tv.c +SRCS+= i915_3d.c i915_video.c i965_video.c +SRCS+= i830_xaa.c i830_render.c i915_render.c i965_render.c +SRCS+= i830_dri.c i830_exa.c +SRCS+= i830_hwmc.c i915_hwmc.c i965_hwmc.c +MAN= intel.4 + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm +CPPFLAGS+= -DI830_XV -DI830_USE_XAA -DI830_USE_EXA -DINTEL_XVMC + +LDADD+= -ldrm_intel + +.include "../Makefile.xf86-driver" + +SUBDIR= ch7017 ch7xxx ivch sil164 tfp410 + +CWARNFLAGS.clang+= -Wno-parentheses -Wno-tautological-compare \ + -Wno-empty-body -Wno-error + +#LSC: Clang/Minix3 +DBG= -O0 +NOCLANGERROR?= yes + +.include diff --git a/external/mit/xorg/server/drivers/xf86-video-intel/ch7017/Makefile b/external/mit/xorg/server/drivers/xf86-video-intel/ch7017/Makefile new file mode 100644 index 000000000..0e61408d3 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-intel/ch7017/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2010/05/23 01:59:13 mrg Exp $ + +DRIVER= xf86-video-intel +DRIVER_NAME= ch7017_drv + + +SRCS= ch7017_module.c ch7017.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri + +.include "../../Makefile.xf86-driver" + +#LSC: Clang/Minix3 +NOCLANGERROR?= yes + +.PATH: ${X11SRCDIR.${DRIVER}}/src/ch7017 diff --git a/external/mit/xorg/server/drivers/xf86-video-intel/ch7xxx/Makefile b/external/mit/xorg/server/drivers/xf86-video-intel/ch7xxx/Makefile new file mode 100644 index 000000000..338bb214c --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-intel/ch7xxx/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2010/05/23 01:59:13 mrg Exp $ + +DRIVER= xf86-video-intel +DRIVER_NAME= ch7xxx_drv + + +SRCS= ch7xxx_module.c ch7xxx.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri + +.include "../../Makefile.xf86-driver" + +#LSC: Clang/Minix3 +NOCLANGERROR?= yes + +.PATH: ${X11SRCDIR.${DRIVER}}/src/ch7xxx diff --git a/external/mit/xorg/server/drivers/xf86-video-intel/ivch/Makefile b/external/mit/xorg/server/drivers/xf86-video-intel/ivch/Makefile new file mode 100644 index 000000000..8c8525a56 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-intel/ivch/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2010/05/23 01:59:13 mrg Exp $ + +DRIVER= xf86-video-intel +DRIVER_NAME= ivch_drv + + +SRCS= ivch_module.c ivch.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri + +.include "../../Makefile.xf86-driver" + +#LSC: Clang/Minix3 +NOCLANGERROR?= yes + +.PATH: ${X11SRCDIR.${DRIVER}}/src/ivch diff --git a/external/mit/xorg/server/drivers/xf86-video-intel/sil164/Makefile b/external/mit/xorg/server/drivers/xf86-video-intel/sil164/Makefile new file mode 100644 index 000000000..2242d008f --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-intel/sil164/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2010/05/23 01:59:13 mrg Exp $ + +DRIVER= xf86-video-intel +DRIVER_NAME= sil164_drv + + +SRCS= sil164_module.c sil164.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri + +.include "../../Makefile.xf86-driver" + +#LSC: Clang/Minix3 +NOCLANGERROR?= yes + +.PATH: ${X11SRCDIR.${DRIVER}}/src/sil164 diff --git a/external/mit/xorg/server/drivers/xf86-video-intel/tfp410/Makefile b/external/mit/xorg/server/drivers/xf86-video-intel/tfp410/Makefile new file mode 100644 index 000000000..2817a94be --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-intel/tfp410/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2010/05/23 01:59:13 mrg Exp $ + +DRIVER= xf86-video-intel +DRIVER_NAME= tfp410_drv + + +SRCS= tfp410_module.c tfp410.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri + +.include "../../Makefile.xf86-driver" + +#LSC: Clang/Minix3 +NOCLANGERROR?= yes + +.PATH: ${X11SRCDIR.${DRIVER}}/src/tfp410 diff --git a/external/mit/xorg/server/drivers/xf86-video-mach64/Makefile b/external/mit/xorg/server/drivers/xf86-video-mach64/Makefile new file mode 100644 index 000000000..9a48c526a --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-mach64/Makefile @@ -0,0 +1,32 @@ +# $NetBSD: Makefile,v 1.7 2013/11/06 14:53:29 macallan Exp $ + +DRIVER= xf86-video-mach64 +DRIVER_NAME= mach64_drv + +SRCS= atibus.c atichip.c atiprobe.c atividmem.c \ + atiadjust.c atiaudio.c aticlock.c aticonfig.c \ + aticonsole.c atidac.c atidecoder.c atidsp.c \ + atii2c.c atilock.c atimach64.c atimach64accel.c \ + atimach64cursor.c atimach64i2c.c atimach64io.c \ + atimach64xv.c atimode.c atipreinit.c atiprint.c \ + atirgb514.c atiscreen.c atituner.c atiutil.c \ + ativalid.c atiload.c atimisc.c atimach64probe.c \ + ${SRCS.cpio} ${SRCS.dga} ${SRCS.exa} #${SRCS.dri} + +SRCS.cpio= ativga.c ativgaio.c atibank.c atiwonder.c atiwonderio.c +SRCS.dga= atidga.c +SRCS.dri= atidri.c +SRCS.exa= atimach64exa.c + +CPPFLAGS+= -DUSE_XAA -DUSE_EXA + +.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "sparc64" || \ + ${MACHINE_ARCH} == "sparc" +CPPFLAGS+= -DAVOID_CPIO +.endif + +MAN= # defined + +CWARNFLAGS.clang+= -Wno-pointer-sign + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-mga/Makefile b/external/mit/xorg/server/drivers/xf86-video-mga/Makefile new file mode 100644 index 000000000..90fadb52c --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-mga/Makefile @@ -0,0 +1,37 @@ +# $NetBSD: Makefile,v 1.11 2013/06/02 08:57:17 mrg Exp $ + +.include + +DRIVER= xf86-video-mga +DRIVER_NAME= mga_drv + +SRCS= mga_arc.c mga_bios.c mga_dac3026.c mga_dacG.c +SRCS+= mga_dga.c mga_dh.c mga_driver.c mga_esc.c mga_g450pll.c +SRCS+= mga_halmod.c mga_hwcurs.c mga_merge.c mga_shadow.c +SRCS+= mga_vga.c mga_video.c +MAN= mga.4 + +.if ${X11DRI} != "no" +#SRCS+= mga_dri.c +.endif + +#if USE_EXA +SRCS+= mga_exa.c +CPPFLAGS+= -DUSE_EXA +#endif + +#if USE_XAA +SRCS+= mga_storm.c +CPPFLAGS+= -DUSE_XAA -DHAVE_XAA_H +#endif + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +#CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm + +CPPFLAGS.mga_driver.c= -Wno-error # XXX fix me please +CPPFLAGS.mga_dacG.c= -Wno-error # XXX fix me please + +CWARNFLAGS.clang+= -Wno-conversion -Wno-format -Wno-empty-body + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-neomagic/Makefile b/external/mit/xorg/server/drivers/xf86-video-neomagic/Makefile new file mode 100644 index 000000000..bfa16a0e2 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-neomagic/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.5 2013/06/02 08:57:17 mrg Exp $ + +DRIVER= xf86-video-neomagic +DRIVER_NAME= neomagic_drv + +SRCS= neo_2070.c neo_2090.c neo_2097.c neo_2200.c +SRCS+= neo_cursor.c neo_dga.c neo_driver.c neo_i2c.c +SRCS+= neo_shadow.c neo_video.c +MAN= neomagic.4 + +COPTS.neo_driver.c= -Wno-error # XXX xf86dgastr.h + +CPPFLAGS+= -DHAVE_XAA_H + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-newport/Makefile b/external/mit/xorg/server/drivers/xf86-video-newport/Makefile new file mode 100644 index 000000000..310e442d9 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-newport/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1 2009/02/14 03:15:15 macallan Exp $ + +DRIVER= xf86-video-newport +DRIVER_NAME= newport_drv + +SRCS= newport_accel.c newport_cmap.c newport_cursor.c \ + newport_driver.c newport_regs.c newport_shadow.c + +CPPFLAGS+= ${X11FLAGS.DRI} + +MAN= newport.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-nsc/Makefile b/external/mit/xorg/server/drivers/xf86-video-nsc/Makefile new file mode 100644 index 000000000..c434e1f6d --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-nsc/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.4 2009/06/12 04:40:22 mrg Exp $ + +DRIVER= xf86-video-nsc +DRIVER_NAME= nsc_drv + +SRCS= durango.c nsc_driver.c nsc_galstub.c +SRCS+= nsc_gx1_accel.c nsc_gx1_cursor.c nsc_gx1_dga.c +SRCS+= nsc_gx1_driver.c nsc_gx1_shadow.c nsc_gx1_video.c +SRCS+= nsc_gx2_accel.c nsc_gx2_cursor.c nsc_gx2_dga.c +SRCS+= nsc_gx2_driver.c nsc_gx2_shadow.c nsc_gx2_video.c +SRCS+= panel.c +MAN= nsc.4 + +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/src/gfx +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/src/panel + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-nv/Makefile b/external/mit/xorg/server/drivers/xf86-video-nv/Makefile new file mode 100644 index 000000000..898ab701b --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-nv/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.6 2013/06/14 04:43:38 mrg Exp $ + +DRIVER= xf86-video-nv +DRIVER_NAME= nv_drv + +SRCS= nv_cursor.c nv_dac.c nv_dga.c nv_driver.c nv_hw.c +SRCS+= nv_setup.c nv_shadow.c nv_video.c nv_xaa.c riva_cursor.c +SRCS+= riva_dac.c riva_dga.c riva_driver.c riva_hw.c +SRCS+= riva_setup.c riva_shadow.c riva_xaa.c g80_cursor.c +SRCS+= g80_dac.c g80_display.c g80_dma.c g80_driver.c g80_exa.c +SRCS+= g80_output.c g80_sor.c g80_xaa.c +MAN= nv.4 + +.if ${MACHINE} == "macppc" +CPPFLAGS+= -DAVOID_VGAHW +.endif + +CPPFLAGS+= -DHAVE_XAA_H + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-nvxbox/Makefile b/external/mit/xorg/server/drivers/xf86-video-nvxbox/Makefile new file mode 100644 index 000000000..5d9712d3e --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-nvxbox/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2008/10/12 03:09:10 rtr Exp $ + +DRIVER= xf86-video-nvxbox +DRIVER_NAME= nvxbox_drv + +SRCS= nv_dac.c nv_driver.c nv_setup.c nv_xaa.c \ + nv_cursor.c nv_dga.c nv_shadow.c nv_video.c \ + riva_hw.c + +MAN= # XXX dist is not nvxbox.man??? nvxbox.4 + +COPTS.nv_video.c= -Wno-error + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-openchrome/Makefile b/external/mit/xorg/server/drivers/xf86-video-openchrome/Makefile new file mode 100644 index 000000000..c0de203b8 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-openchrome/Makefile @@ -0,0 +1,40 @@ +# $NetBSD: Makefile,v 1.5 2013/06/01 21:21:36 mrg Exp $ + +DRIVER= xf86-video-openchrome +DRIVER_NAME= openchrome_drv + +SRCS= \ + via_3d.c \ + via_bandwidth.c \ + via_ch7xxx.c \ + via_display.c \ + via_driver.c \ + via_i2c.c \ + via_id.c \ + via_lvds.c \ + via_memcpy.c \ + via_vbe.c \ + via_vgahw.c \ + via_vt162x.c + +# DRI +SRCS+= \ + via_dri.c \ + via_xvmc.c + +MAN= openchrome.4 + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/src +CPPFLAGS+= -DHAVE_CONFIG_H -I${X11SRCDIR.${DRIVER}}/../include + +.include "../Makefile.xf86-driver" + +# XXX +.if defined(HAVE_GCC) +COPTS.via_dri.c+= -Wno-error +.endif + +CWARNFLAGS.clang+= -Wno-tautological-compare diff --git a/external/mit/xorg/server/drivers/xf86-video-pnozz/Makefile b/external/mit/xorg/server/drivers/xf86-video-pnozz/Makefile new file mode 100644 index 000000000..97aa790c5 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-pnozz/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.1 2009/08/26 22:30:46 macallan Exp $ + +DRIVER= xf86-video-pnozz +DRIVER_NAME= pnozz_drv + +SRCS= pnozz_driver.c pnozz_cursor.c pnozz_accel.c + +CPPFLAGS+= ${X11FLAGS.DRI} + +MAN= pnozz.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-r128/Makefile b/external/mit/xorg/server/drivers/xf86-video-r128/Makefile new file mode 100644 index 000000000..2ca364139 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-r128/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.7 2013/06/03 08:51:18 mrg Exp $ + +DRIVER= xf86-video-r128 +DRIVER_NAME= r128_drv + +SRCS= r128_accel.c r128_cursor.c r128_dga.c r128_driver.c \ + r128_video.c r128_misc.c r128_probe.c r128_dri.c + +#SRCS+= r128_exa.c r128_exa_render.c +#CPPFLAGS+= -DUSE_EXA + +MAN= r128.4 + +.if ${MACHINE_ARCH} == "powerpc" || ${MACHINE} == "sparc64" +CPPFLAGS+= -DAVOID_FBDEV +.endif + +# Enable VGA support (esp. hw state save/restore) on i386 / amd64 platforms +.if ${MACHINE} == "amd64" || ${MACHINE} == "i386" +CPPFLAGS+= -DWITH_VGAHW +.endif + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm + +CPPFLAGS+= -DHAVE_XEXTPROTO_71 \ + -DHAVE_XAA_H -DR128DRI + +CWARNFLAGS.clang+= -Wno-format -Wno-pointer-sign + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-radeon/Makefile b/external/mit/xorg/server/drivers/xf86-video-radeon/Makefile new file mode 100644 index 000000000..066d36cff --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-radeon/Makefile @@ -0,0 +1,50 @@ +# $NetBSD: Makefile,v 1.14 2012/06/12 12:26:42 rjs Exp $ + +.include + +DRIVER= xf86-video-ati +DRIVER_NAME= radeon_drv + +.PATH: ${X11SRCDIR.${DRIVER}}/src/AtomBios +SRCS.ATOMBIOS= \ + CD_Operations.c \ + Decoder.c \ + hwserv_drv.c + +.if ${X11DRI} != "no" +SRCS.DRI= radeon_dri.c +CPPFLAGS+= ${X11FLAGS.DRI} +.endif + +#RADEON_KMS_SRCS=radeon_dri2.c radeon_kms.c drmmode_display.c radeon_vbo.c + +SRCS.EXA= radeon_exa.c r600_exa.c r6xx_accel.c \ + r600_textured_videofuncs.c r600_shader.c \ + radeon_exa_shared.c \ + evergreen_exa.c evergreen_accel.c evergreen_shader.c \ + evergreen_textured_videofuncs.c \ + cayman_accel.c cayman_shader.c + +SRCS= radeon_accel.c radeon_cursor.c \ + radeon_driver.c radeon_video.c radeon_bios.c \ + radeon_mm_i2c.c radeon_vip.c radeon_misc.c radeon_probe.c \ + legacy_crtc.c legacy_output.c radeon_textured_video.c \ + radeon_crtc.c radeon_output.c radeon_modes.c radeon_tv.c \ + radeon_legacy_memory.c radeon_pm.c radeon_xvmc.c \ + $(SRCS.ATOMBIOS) radeon_atombios.c radeon_atomwrapper.c \ + $(SRCS.DRI) $(SRCS.EXA) atombios_output.c atombios_crtc.c +MAN= radeon.4 + +CPPFLAGS+= -DDISABLE_EASF -DENABLE_ALL_SERVICE_FUNCTIONS \ + -DATOM_BIOS -DATOM_BIOS_PARSER -DDRIVER_PARSER \ + -DHAVE_CONFIG_H +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/src/AtomBios/includes \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/dri \ + -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${X11SRCDIR.${DRIVER}}/../include + +# XXX +COPTS+= -Wno-error + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-radeonhd/Makefile b/external/mit/xorg/server/drivers/xf86-video-radeonhd/Makefile new file mode 100644 index 000000000..98e53dfb9 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-radeonhd/Makefile @@ -0,0 +1,45 @@ +# $NetBSD: Makefile,v 1.7 2010/05/22 23:04:01 mrg Exp $ + +.include + +DRIVER= xf86-video-radeonhd +DRIVER_NAME= radeonhd_drv + +.PATH: ${X11SRCDIR.${DRIVER}}/src/AtomBios +SRCS.ATOMBIOS= CD_Operations.c Decoder.c hwserv_drv.c + +.if ${X11DRI} != "no" +SRCS.DRI= rhd_dri.c r6xx_accel.c r600_exa.c +SRCS.DRI+= r600_textured_videofuncs.c +CPPFLAGS+= -DUSE_DRI +CPPFLAGS+= ${X11FLAGS.DRI} +.endif + +SRCS.EXA= r5xx_exa.c radeon_exa_render.c + +SRCS= r5xx_accel.c r5xx_xaa.c r600_shader.c radeon_3d.c +SRCS+= radeon_textured_videofuncs.c rhd_atombios.c rhd_atomcrtc.c +SRCS+= rhd_atomout.c rhd_atompll.c rhd_audio.c rhd_biosscratch.c +SRCS+= rhd_connector.c rhd_crtc.c rhd_cs.c rhd_cursor.c rhd_dac.c +SRCS+= rhd_ddia.c rhd_dig.c rhd_driver.c rhd_edid.c rhd_hdmi.c +SRCS+= rhd_helper.c rhd_i2c.c rhd_id.c rhd_lut.c rhd_lvtma.c +SRCS+= rhd_mc.c rhd_modes.c rhd_monitor.c rhd_output.c rhd_pll.c +SRCS+= rhd_randr.c rhd_shadow.c rhd_tmds.c rhd_vga.c rhd_video.c +SRCS+= rhd_pm.c rhd_acpi.c + +SRCS+= $(SRCS.EXA) $(SRCS.DRI) rhd_atomwrapper.c $(SRCS.ATOMBIOS) +MAN= radeonhd.4 + +CPPFLAGS+= -DDRIVER_PARSER -DDISABLE_EASF -DENABLE_ALL_SERVICE_FUNCTIONS + +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/src/AtomBios/includes \ + -I${DESTDIR}${X11INCDIR}/libdrm +CPPFLAGS+= -DHAVE_CONFIG_H -I${X11SRCDIR.${DRIVER}}/../include + +# XXX +COPTS= -Wno-error + +#LSC: Clang/Minix3 +DBG= -O0 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-rendition/Makefile b/external/mit/xorg/server/drivers/xf86-video-rendition/Makefile new file mode 100644 index 000000000..ee69bc947 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-rendition/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.3 2008/08/03 09:24:14 rtr Exp $ + +DRIVER= xf86-video-rendition +DRIVER_NAME= rendition_drv + +SRCS= accelX.c hwcursor.c rendition.c rendition_shadow.c +SRCS+= v1krisc.c vboard.c vloaduc.c vmisc.c vmodes.c vramdac.c +MAN= rendition.4 + +CPPFLAGS.vboard.c= -DMODULEDIR=\"${X11USRLIBDIR}/modules/\" + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-s3/Makefile b/external/mit/xorg/server/drivers/xf86-video-s3/Makefile new file mode 100644 index 000000000..5f2739765 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-s3/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.11 2013/06/03 08:51:18 mrg Exp $ + +DRIVER= xf86-video-s3 +DRIVER_NAME= s3_drv +DRIVER_VERSION= 0.6.3 + +SRCS= s3_bios.c s3_cursor.c s3_dga.c s3_driver.c s3_IBMRGB.c \ + s3_Ti.c s3_Trio64DAC.c s3_video.c s3_accel.c \ + s3_accel_newmmio.c s3_shadow.c +SRCS+= s3_GENDAC.c +MAN= s3.4 + +# PLEASE NOTE: s3_accel.c is compiled two times with different +# cpp macros for PIO and NEWMMIO support. Check Makefile.am +# before upgrading the driver. +# +BUILDSYMLINKS= s3_accel.c s3_accel_newmmio.c +CPPFLAGS.s3_accel_newmmio.c+= -DS3_NEWMMIO=1 \ + -I${X11SRCDIR.xf86-video-s3}/src +CPPFLAGS.s3_video.c+= -DS3_NEWMMIO=1 \ + +CPPFLAGS+= -DPACKAGE_VERSION=\"${PACKAGE_VERSION}\" +CPPFLAGS+= -DHAVE_XAA_H + +CWARNFLAGS.clang+= -Wno-parentheses + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-s3virge/Makefile b/external/mit/xorg/server/drivers/xf86-video-s3virge/Makefile new file mode 100644 index 000000000..9f8d63c69 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-s3virge/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.4 2011/08/11 23:15:40 joerg Exp $ + +DRIVER= xf86-video-s3virge +DRIVER_NAME= s3virge_drv + +SRCS= s3v_accel.c s3v_dac.c s3v_dga.c s3v_driver.c s3v_hwcurs.c +SRCS+= s3v_i2c.c s3v_shadow.c s3v_xv.c +MAN= s3virge.4 + +CPPFLAGS+= -DPACKAGE_VERSION=\"${PACKAGE_VERSION}\" + +CWARNFLAGS.clang+= -Wno-parentheses + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-savage/Makefile b/external/mit/xorg/server/drivers/xf86-video-savage/Makefile new file mode 100644 index 000000000..cb59284f4 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-savage/Makefile @@ -0,0 +1,34 @@ +# $NetBSD: Makefile,v 1.12 2013/06/03 09:23:07 mrg Exp $ + +DRIVER= xf86-video-savage +DRIVER_NAME= savage_drv + +SRCS= \ + savage_accel.c \ + savage_xaa.c \ + savage_exa.c \ + savage_cursor.c \ + savage_dga.c \ + savage_driver.c \ + savage_i2c.c \ + savage_shadow.c \ + savage_streams.c \ + savage_vbe.c \ + savage_video.c \ + savage_hwmc.c \ + savage_dri.c +MAN= savage.4 + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm + +CPPFLAGS+= -DHAVE_XAA_H -DHAVE_XEXTPROTO_71 -DSAVAGEDRI + +CPPFLAGS.savage_driver.c= -DPACKAGE_VERSION=\"${PACKAGE_MAJOR}\" +CPPFLAGS.savage_exa.c= -Wno-error # volatile -> mempcy + +CWARNFLAGS.clang+= -Wno-parentheses -Wno-format \ + -Wno-constant-logical-operand + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-siliconmotion/Makefile b/external/mit/xorg/server/drivers/xf86-video-siliconmotion/Makefile new file mode 100644 index 000000000..00961346d --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-siliconmotion/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.6 2013/06/03 09:12:28 mrg Exp $ + +DRIVER= xf86-video-siliconmotion +DRIVER_NAME= siliconmotion_drv + +SRCS= smi_501.c smi_accel.c smi_xaa.c smi_exa.c smi_dac.c +SRCS+= smi_driver.c smi_i2c.c smi_video.c +SRCS+= smi_crtc.c smilynx_crtc.c smi_output.c +SRCS+= smilynx_output.c smilynx_hw.c smilynx.h +SRCS+= smi501_crtc.c smi501_output.c +MAN= siliconmotion.4 + +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/../include -DHAVE_CONFIG_H + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-sis/Makefile b/external/mit/xorg/server/drivers/xf86-video-sis/Makefile new file mode 100644 index 000000000..81ad110e4 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-sis/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.10 2011/08/11 23:15:40 joerg Exp $ + +DRIVER= xf86-video-sis +DRIVER_NAME= sis_drv + +SRCS= init301.c init.c initextx.c sis300_accel.c +SRCS+= sis310_accel.c sis6326_video.c sis_accel.c sis_cursor.c +SRCS+= sis_dac.c sis_dga.c sis_driver.c sis_memcpy.c sis_opt.c +SRCS+= sis_setup.c sis_shadow.c sis_utility.c sis_vb.c +SRCS+= sis_vga.c sis_video.c +MAN= sis.4 + +CPPFLAGS+= -DHAVE_CONFIG_H -I${X11SRCDIR.${DRIVER}}/../include +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/src +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm + +# XXX +COPTS.sis_driver.c= -Wno-error + +X11MANCPP= yes + +CWARNFLAGS.clang+= -Wno-parentheses + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-suncg14/Makefile b/external/mit/xorg/server/drivers/xf86-video-suncg14/Makefile new file mode 100644 index 000000000..aae4d3034 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-suncg14/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.5 2013/06/25 12:27:41 macallan Exp $ + +DRIVER= xf86-video-suncg14 +DRIVER_NAME= suncg14_drv + +SRCS= cg14_driver.c cg14_cursor.c cg14_accel.c cg14_render.c +MAN= suncg14.4 + +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/../include +CPPFLAGS+= -DHAVE_XAA_H + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-suncg6/Makefile b/external/mit/xorg/server/drivers/xf86-video-suncg6/Makefile new file mode 100644 index 000000000..c2afb8c3c --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-suncg6/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.3 2013/06/04 22:45:08 mrg Exp $ + +DRIVER= xf86-video-suncg6 +DRIVER_NAME= suncg6_drv + +SRCS= cg6_driver.c cg6_cursor.c cg6_accel.c + +CPPFLAGS+= ${X11FLAGS.DRI} +CPPFLAGS+= -DHAVE_XAA_H + +MAN= suncg6.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-sunffb/Makefile b/external/mit/xorg/server/drivers/xf86-video-sunffb/Makefile new file mode 100644 index 000000000..055c18fc2 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-sunffb/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.4 2013/06/04 22:45:08 mrg Exp $ + +DRIVER= xf86-video-sunffb +DRIVER_NAME= sunffb_drv + +SRCS= ffb_accel.c ffb_dac.c ffb_driver.c ffb_wid.c ffb_attr.c \ + ffb_ddc.c ffb_cursor.c ffb_dga.c \ + VISmoveImage.s ffb_asm.s + +.if ${MACHINE_ARCH} == "sparc64" +AFLAGS+= -x assembler-with-cpp -Wa,-Av9a +.endif + +.if ${MACHINE_ARCH} == "sparc" +AFLAGS+= -x assembler-with-cpp -Wa,-Av8plusa +COPTS= -mv8plus +.endif + +CPPFLAGS+= ${X11FLAGS.DRI} -DUSE_VIS +CPPFLAGS+= -DHAVE_XAA_H + +MAN= sunffb.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-sunleo/Makefile b/external/mit/xorg/server/drivers/xf86-video-sunleo/Makefile new file mode 100644 index 000000000..f11ee58f9 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-sunleo/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.2 2013/06/04 22:45:08 mrg Exp $ + +DRIVER= xf86-video-sunleo +DRIVER_NAME= sunleo_drv + +SRCS= leo_accel.c leo_cursor.c leo_driver.c + +CPPFLAGS+= ${X11FLAGS.DRI} +CPPFLAGS+= -DHAVE_XAA_H + +MAN= sunleo.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-suntcx/Makefile b/external/mit/xorg/server/drivers/xf86-video-suntcx/Makefile new file mode 100644 index 000000000..d600e333d --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-suntcx/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.2 2013/06/04 22:45:08 mrg Exp $ + +DRIVER= xf86-video-suntcx +DRIVER_NAME= suntcx_drv + +SRCS= tcx_driver.c tcx_cursor.c tcx_accel.c + +CPPFLAGS+= ${X11FLAGS.DRI} +CPPFLAGS+= -DHAVE_XAA_H + +MAN= suntcx.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-tdfx/Makefile b/external/mit/xorg/server/drivers/xf86-video-tdfx/Makefile new file mode 100644 index 000000000..9472bdb93 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-tdfx/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.11 2013/06/03 10:24:24 mrg Exp $ + +DRIVER= xf86-video-tdfx +DRIVER_NAME= tdfx_drv + +SRCS= tdfx_accel.c tdfx_dga.c tdfx_driver.c tdfx_hwcurs.c +SRCS+= tdfx_io.c tdfx_priv.c tdfx_sli.c tdfx_video.c +SRCS+= tdfx_dri.c +MAN= tdfx.4 + +.if ${MACHINE_ARCH} == "i386" || \ + ${MACHINE_ARCH} == "x86_64" +CPPFLAGS+= -DUSE_INT10 +CPPFLAGS+= -DUSE_PCIVGAIO +.endif +CPPFLAGS+= -DHAVE_XAA_H +CPPFLAGS+= -DTDFXDRI + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm + +COPTS.tdfx_driver.c= -Wno-error # XXX deprecated + +CWARNFLAGS.clang+= -Wno-format -Wno-pointer-sign + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-tga/Makefile b/external/mit/xorg/server/drivers/xf86-video-tga/Makefile new file mode 100644 index 000000000..05d39a470 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-tga/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.7 2013/06/03 10:03:14 mrg Exp $ + +DRIVER= xf86-video-tga +DRIVER_NAME= tga_drv + +SRCS= BT463ramdac.c BTramdac.c IBM561ramdac.c ICS1562.c +SRCS+= tga_accel.c tga_cursor.c tga_dac.c tga_driver.c +SRCS+= tga_line.c tga_seg.c + +CPPFLAGS+= -DHAVE_XAA_H + +COPTS.tga_driver.c= -Wno-error # XXX xf86dgastr.h + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-trident/Makefile b/external/mit/xorg/server/drivers/xf86-video-trident/Makefile new file mode 100644 index 000000000..7c1491ab0 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-trident/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.6 2012/03/22 23:46:27 joerg Exp $ + +DRIVER= xf86-video-trident +DRIVER_NAME= trident_drv + +SRCS= blade_accel.c blade_accel_exa.c image_accel.c +SRCS+= trident_accel.c trident_bank.c trident_dac.c +SRCS+= trident_dga.c trident_driver.c tridenthelper.c +SRCS+= trident_i2c.c trident_shadow.c +SRCS+= trident_tv.c trident_video.c tvga_dac.c xp_accel.c +SRCS+= xp4_accel.c xp4_accel_exa.c +MAN= trident.4 + +COPTS.trident_driver.c= -Wno-error # XXX xf86dgastr.h + +CWARNFLAGS.clang+= -Wno-return-type -Wno-empty-body + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-tseng/Makefile b/external/mit/xorg/server/drivers/xf86-video-tseng/Makefile new file mode 100644 index 000000000..89ec2a938 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-tseng/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.4 2011/08/11 23:15:41 joerg Exp $ + +DRIVER= xf86-video-tseng +DRIVER_NAME= tseng_drv + +SRCS= tseng_accel.c tseng_cursor.c tseng_dga.c +SRCS+= tseng_driver.c tseng_mode.c +MAN= tseng.4 + +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/../include + +CWARNFLAGS.clang+= -Wno-pointer-sign + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-vesa/Makefile b/external/mit/xorg/server/drivers/xf86-video-vesa/Makefile new file mode 100644 index 000000000..3c5386c49 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-vesa/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.4 2008/08/30 04:44:34 mrg Exp $ + +DRIVER= xf86-video-vesa +DRIVER_NAME= vesa_drv + +SRCS= vesa.c +MAN= vesa.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-vga/Makefile b/external/mit/xorg/server/drivers/xf86-video-vga/Makefile new file mode 100644 index 000000000..feb777c85 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-vga/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.2 2008/08/03 07:32:04 rtr Exp $ + +DRIVER= xf86-video-vga +DRIVER_NAME= vga_drv + +SRCS= generic.c +MAN= vga.4 + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-vmware/Makefile b/external/mit/xorg/server/drivers/xf86-video-vmware/Makefile new file mode 100644 index 000000000..0a63a60c4 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-vmware/Makefile @@ -0,0 +1,23 @@ +# $NetBSD: Makefile,v 1.9 2013/06/05 08:42:21 mrg Exp $ + +DRIVER= xf86-video-vmware +DRIVER_NAME= vmware_drv + +SRCS= \ + bits2pixels.c \ + vmware.c \ + vmwarecurs.c \ + vmwarectrl.c \ + vmwarexinerama.c \ + vmwarevideo.c \ + vmwaremodes.c \ + vmware_bootstrap.c \ + vmware_common.c + +MAN= vmware.4 + +CPPFLAGS+= -DXORG_VERSION_CURRENT=${XORG_VERSION_CURRENT} +CPPFLAGS+= -I${X11SRCDIR.${DRIVER}}/../include -DHAVE_CONFIG_H \ + -I${DESTDIR}${X11INCDIR}/libdrm + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-wsfb/Makefile b/external/mit/xorg/server/drivers/xf86-video-wsfb/Makefile new file mode 100644 index 000000000..945de91d6 --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-wsfb/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.4 2009/06/12 01:59:04 mrg Exp $ + +DRIVER= xf86-video-wsfb +DRIVER_NAME= wsfb_drv + +SRCS= wsfb_driver.c wsfb_cursor.c +MAN= wsfb.4 + +CPPFLAGS+= -DHAVE_CONFIG_H -I${X11SRCDIR.${DRIVER}}/../include + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/drivers/xf86-video-xgi/Makefile b/external/mit/xorg/server/drivers/xf86-video-xgi/Makefile new file mode 100644 index 000000000..15274125f --- /dev/null +++ b/external/mit/xorg/server/drivers/xf86-video-xgi/Makefile @@ -0,0 +1,34 @@ +# $NetBSD: Makefile,v 1.2 2012/11/18 08:24:02 apb Exp $ + +DRIVER= xf86-video-xgi +DRIVER_NAME= xgi_drv + +SRCS= init.c vb_ext.c vb_i2c.c vb_setmode.c xgi_accel.c +#SRC+= vb_init.c +SRCS+= xgi_cursor.c xgi_dac.c xgi_dga.c xgi_driver.c xgi_opt.c +SRCS+= xgi_setup.c xgi_vb.c xgi_vga.c xgi_video.c xgi_videohw.c + +MAN= xgi.4 + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11/dri +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/libdrm +# for now, I'd like to see this thing work first +CPPFLAGS+= -DHAVE_UNISTD_H -Wno-deprecated-declarations + +# vb_struct.h contains this declaration: +# +# typedef struct _XGI_CRT1TableStruct +# { +# UCHAR CR[15]; +# } XGI_CRT1TableStruct; +# +# but code in init.c and vb_setmode.c reads elements beyond the end of +# the array and writes the result into hardware registers. It's not +# clear how to fix this, so just disable the -Warray-bounds warning to +# allow the build to complete. +# +COPTS.init.c= -Wno-array-bounds +COPTS.vb_setmode.c= -Wno-array-bounds + +.include "../Makefile.xf86-driver" diff --git a/external/mit/xorg/server/xorg-server/GL/GLcore/Makefile b/external/mit/xorg/server/xorg-server/GL/GLcore/Makefile new file mode 100644 index 000000000..99090a5de --- /dev/null +++ b/external/mit/xorg/server/xorg-server/GL/GLcore/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.1 2008/09/26 06:57:03 rtr Exp $ + +LIBISPRIVATE=yes + +.include "../../Makefile.serverlib" + +LIB= GLcore +SRCS= ${SRCS.GLcore} + +.include "Makefile.GLcore" diff --git a/external/mit/xorg/server/xorg-server/GL/GLcore/Makefile.GLcore b/external/mit/xorg/server/xorg-server/GL/GLcore/Makefile.GLcore new file mode 100644 index 000000000..eb642607e --- /dev/null +++ b/external/mit/xorg/server/xorg-server/GL/GLcore/Makefile.GLcore @@ -0,0 +1,239 @@ +# $NetBSD: Makefile.GLcore,v 1.3 2010/07/19 05:34:27 mrg Exp $ + +SRCS.GLcore= \ + ${SRCS.main} \ + ${SRCS.math} \ + ${SRCS.swrast} \ + ${SRCS.swrast_setup} \ + ${SRCS.tnl} \ + ${SRCS.shader} \ + ${SRCS.grammar} \ + ${SRCS.slang} \ + ${SRCS.vbo} \ + ${SRCS.X} + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/main +SRCS.main= \ + accum.c \ + api_arrayelt.c \ + api_loopback.c \ + api_noop.c \ + api_validate.c \ + arrayobj.c \ + attrib.c \ + blend.c \ + bufferobj.c \ + buffers.c \ + clip.c \ + colortab.c \ + context.c \ + convolve.c \ + debug.c \ + depth.c \ + depthstencil.c \ + dlist.c \ + drawpix.c \ + enable.c \ + enums.c \ + eval.c \ + execmem.c \ + extensions.c \ + fbobject.c \ + feedback.c \ + fog.c \ + framebuffer.c \ + get.c \ + getstring.c \ + hash.c \ + hint.c \ + histogram.c \ + image.c \ + imports.c \ + light.c \ + lines.c \ + matrix.c \ + mipmap.c \ + mm.c \ + pixel.c \ + points.c \ + polygon.c \ + queryobj.c \ + rastpos.c \ + rbadaptors.c \ + renderbuffer.c \ + shaders.c \ + state.c \ + stencil.c \ + texcompress.c \ + texcompress_fxt1.c \ + texcompress_s3tc.c \ + texenvprogram.c \ + texformat.c \ + teximage.c \ + texobj.c \ + texrender.c \ + texstate.c \ + texstore.c \ + varray.c \ + vtxfmt.c + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/math +SRCS.math= \ + m_debug_clip.c \ + m_debug_norm.c \ + m_debug_xform.c \ + m_eval.c \ + m_matrix.c \ + m_translate.c \ + m_vector.c \ + m_xform.c + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/swrast +SRCS.swrast= \ + s_aaline.c \ + s_aatriangle.c \ + s_accum.c \ + s_alpha.c \ + s_atifragshader.c \ + s_bitmap.c \ + s_blend.c \ + s_blit.c \ + s_buffers.c \ + s_context.c \ + s_copypix.c \ + s_depth.c \ + s_drawpix.c \ + s_feedback.c \ + s_fog.c \ + s_fragprog.c \ + s_imaging.c \ + s_lines.c \ + s_logic.c \ + s_masking.c \ + s_points.c \ + s_readpix.c \ + s_span.c \ + s_stencil.c \ + s_texcombine.c \ + s_texfilter.c \ + s_texstore.c \ + s_triangle.c \ + s_zoom.c + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/swrast_setup +SRCS.swrast_setup= \ + ss_context.c \ + ss_triangle.c + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/tnl +SRCS.tnl= \ + t_context.c \ + t_draw.c \ + t_pipeline.c \ + t_vb_cull.c \ + t_vb_fog.c \ + t_vb_light.c \ + t_vb_normals.c \ + t_vb_points.c \ + t_vb_program.c \ + t_vb_render.c \ + t_vb_texgen.c \ + t_vb_texmat.c \ + t_vb_vertex.c \ + t_vertex.c \ + t_vertex_generic.c \ + t_vertex_sse.c \ + t_vp_build.c + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/shader +SRCS.shader= \ + arbprogparse.c \ + arbprogram.c \ + atifragshader.c \ + nvfragparse.c \ + nvprogram.c \ + nvvertparse.c \ + prog_debug.c \ + prog_execute.c \ + prog_instruction.c \ + prog_parameter.c \ + prog_print.c \ + prog_statevars.c \ + program.c \ + programopt.c \ + shader_api.c + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/shader/grammar +SRCS.grammar= \ + grammar_mesa.c +SRCS.grammar= + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/shader/slang +SRCS.slang= \ + slang_builtin.c \ + slang_codegen.c \ + slang_compile.c \ + slang_compile_function.c \ + slang_compile_operation.c \ + slang_compile_struct.c \ + slang_compile_variable.c \ + slang_emit.c \ + slang_ir.c \ + slang_label.c \ + slang_link.c \ + slang_log.c \ + slang_mem.c \ + slang_print.c \ + slang_simplify.c \ + slang_storage.c \ + slang_typeinfo.c \ + slang_utility.c \ + slang_vartable.c + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/vbo +SRCS.vbo= \ + vbo_context.c \ + vbo_exec.c \ + vbo_exec_api.c \ + vbo_exec_array.c \ + vbo_exec_draw.c \ + vbo_exec_eval.c \ + vbo_rebase.c \ + vbo_save.c \ + vbo_save_api.c \ + vbo_save_draw.c \ + vbo_save_loopback.c \ + vbo_split.c \ + vbo_split_copy.c \ + vbo_split_inplace.c + +COPTS.vbo_save_draw.c= -Wno-error + +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/drivers/common +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/drivers/x11 +SRCS.X= \ + driverfuncs.c \ + xm_api.c \ + xm_buffer.c \ + xm_dd.c \ + xm_image.c \ + xm_line.c \ + xm_span.c \ + xm_tri.c + +CPPFLAGS+= \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.MesaLib}/src/mesa \ + -I${X11SRCDIR.MesaLib}/src/mesa/glapi \ + -I${X11SRCDIR.MesaLib}/src/mesa/main \ + -I${X11SRCDIR.MesaLib}/src/mesa/shader \ + -I${X11SRCDIR.MesaLib}/src/mesa/shader/slang \ + -I${X11SRCDIR.xorg-server}/include + +CPPFLAGS+= \ + ${X11FLAGS.DIX} + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/GL/Makefile b/external/mit/xorg/server/xorg-server/GL/Makefile new file mode 100644 index 000000000..fc95b2f56 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/GL/Makefile @@ -0,0 +1,7 @@ +# $NetBSD: Makefile,v 1.2 2008/09/26 06:57:03 rtr Exp $ + +.include + +SUBDIR= GLcore glx + +.include diff --git a/external/mit/xorg/server/xorg-server/GL/glx/Makefile b/external/mit/xorg/server/xorg-server/GL/glx/Makefile new file mode 100644 index 000000000..a16df2ff7 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/GL/glx/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/09/25 14:15:06 rtr Exp $ + +LIBISPRIVATE=yes + +.include "../../Makefile.serverlib" + +LIB= glx +SRCS= ${SRCS.glx} + +.include "Makefile.glx" diff --git a/external/mit/xorg/server/xorg-server/GL/glx/Makefile.glx b/external/mit/xorg/server/xorg-server/GL/glx/Makefile.glx new file mode 100644 index 000000000..fe90e7999 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/GL/glx/Makefile.glx @@ -0,0 +1,63 @@ +# $NetBSD: Makefile.glx,v 1.6 2010/07/19 05:34:27 mrg Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/GL/glx +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/glapi +.PATH: ${X11SRCDIR.MesaLib}/src/glx + +SRCS.glx= \ + glxcmds.c \ + glxcmdsswap.c \ + glxext.c \ + glxglcore.c \ + glxscreens.c \ + glxutil.c \ + glxvisuals.c \ + indirect_dispatch.c \ + indirect_dispatch_swap.c \ + indirect_program.c \ + indirect_reqsize.c \ + indirect_size_get.c \ + indirect_table.c \ + indirect_texture_compression.c \ + indirect_util.c \ + render2.c \ + render2swap.c \ + renderpix.c \ + renderpixswap.c \ + rensize.c \ + single2.c \ + single2swap.c \ + singlepix.c \ + singlepixswap.c \ + singlesize.c \ + swap_interval.c \ + xfont.c + +SRCS.glx+= \ + glapi.c \ + glcontextmodes.c \ + glthread.c + +COPTS.glxcmds.c= -Wno-error +COPTS.indirect_dispatch.c= -Wno-error +COPTS.indirect_dispatch_swap.c= -Wno-error + +CPPFLAGS+= \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/GL/glx \ + -I${X11SRCDIR.MesaLib}/include \ + -I${X11SRCDIR.MesaLib}/src/glx \ + -I${X11SRCDIR.MesaLib}/src/mesa/main \ + -I${X11SRCDIR.MesaLib}/src/mesa/glapi \ + -I${DESTDIR}${X11INCDIR}/drm \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 + +CPPFLAGS+= \ + -DGLXEXT \ + -DGLX_USE_MESA \ + ${X11FLAGS.DIX} + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/Makefile b/external/mit/xorg/server/xorg-server/Makefile new file mode 100644 index 000000000..cab1f802e --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.20 2013/06/12 21:35:29 mrg Exp $ + +.include + +.include "Makefile.common" + +.if ${XSERVER_NEEDS_XFONT} != "no" +SUBDIR.xfont=Xfont fontbase +.else +SUBDIR.xfont= +.endif + +SUBDIR= doc include .WAIT +SUBDIR+= glx +SUBDIR+= dix fb mi Xext miext os randr render +SUBDIR+= Xi xkb xkbstubs dbe record xfixes +SUBDIR+= damageext composite config .WAIT +SUBDIR+= hw + +.PATH: ${X11SRCDIR.xorg-server} + +PKGCONFIG= xorg-server + +.include +.include +.include diff --git a/external/mit/xorg/server/xorg-server/Makefile.Xserver b/external/mit/xorg/server/xorg-server/Makefile.Xserver new file mode 100644 index 000000000..956bae252 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Makefile.Xserver @@ -0,0 +1,85 @@ +# $NetBSD: Makefile.Xserver,v 1.13 2012/10/03 21:50:14 gsutre Exp $ + +.for _SL in \ + mi \ + config \ + fb \ + xfixes \ + Xext \ + Xext/Xextbuiltin \ + dbe \ + record \ + render \ + randr \ + damageext \ + miext/damage \ + miext/shadow \ + miext/cw \ + miext/sync \ + Xi \ + xkb \ + xkbstubs \ + composite \ + dix/xpstubs \ + os \ + dix \ + config \ + glx \ + hw/xnest \ + hw/xfree86/common \ + hw/xfree86/ddc \ + hw/xfree86/dixmods \ + hw/xfree86/dixmods/dbe \ + hw/xfree86/dixmods/extmod \ + hw/xfree86/dixmods/fb \ + hw/xfree86/dixmods/freetype \ + hw/xfree86/dixmods/record \ + hw/xfree86/dixmods/shadow \ + hw/xfree86/dixmods/type1 \ + hw/xfree86/dixmods/wfb \ + hw/xfree86/dixmods/xorgxkb \ + hw/xfree86/dixmods/xtrap \ + hw/xfree86/doc \ + hw/xfree86/dri \ + hw/xfree86/dri2 \ + hw/xfree86/dummy \ + hw/xfree86/i2c \ + hw/xfree86/init \ + hw/xfree86/int10 \ + hw/xfree86/loader \ + hw/xfree86/xorgos \ + hw/xfree86/rac \ + hw/xfree86/ramdac \ + hw/xfree86/scanpci \ + hw/xfree86/shadowfb \ + hw/xfree86/utils \ + hw/xfree86/vbe \ + hw/xfree86/vgahw \ + hw/xfree86/x86emu \ + hw/xfree86/xaa \ + hw/xfree86/xf8_16bpp \ + hw/xfree86/xf8_32bpp \ + hw/xfree86/xf86config \ + hw/xfree86/xf86modes + +.if !defined(LIBDIR.${_SL}) +LIBDIR.${_SL}!= cd ${NETBSDSRCDIR}/external/mit/xorg/server/xorg-server/${_SL} && ${PRINTOBJDIR} +.MAKEOVERRIDES+=LIBDIR.${_SL} +.endif +LDADD.${_SL}= ${LIBDIR.${_SL}}/lib${_SL:T}.a +DPADD.${_SL}= ${LIBDIR.${_SL}}/lib${_SL:T}.a +.endfor + +LDADD.XORG_CORE= ${LDADD.dix} ${LDADD.config} +DPADD.XORG_CORE= ${DPADD.dix} ${DPADD.config} + +# X servers need all symbols exported +LDFLAGS+= -Wl,--export-dynamic + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include + +LDADD+= -lm +DPADD+= ${LIBM} diff --git a/external/mit/xorg/server/xorg-server/Makefile.common b/external/mit/xorg/server/xorg-server/Makefile.common new file mode 100644 index 000000000..8be5389dc --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Makefile.common @@ -0,0 +1,93 @@ +# $NetBSD: Makefile.common,v 1.26 2013/06/12 21:35:29 mrg Exp $ + +# These define parts of the Xserver tree that are to be +# conditionally compiled for different platforms. See +# below for descriptions of each variable. + +.include + + +# XFree86 servers all need XFONT as well. +.if ${MKXORG_SERVER} != "no" +XSERVER_NEEDS_XFONT= yes +XSERVER_XFREE86= yes +.endif + +.if ${MACHINE} == "acorn32" +XSERVER_XARM32VIDC= yes +.endif + +.if ${MACHINE} == "alpha" +XSERVER_XALPHANETBSD= yes +XSERVER_XDECNETBSD= yes +.endif + +.if ${MACHINE} == "amiga" +XSERVER_XAMIGA= yes +.endif + +.if ${MACHINE} == "atari" +#XSERVER_XFREE68= yes +.endif + +.if ${MACHINE} == "mac68k" +XSERVER_XMAC68K= yes +.endif + +.if ${MACHINE} == "macppc" +XSERVER_XMACPPC= yes +.endif + +.if ${MACHINE} == "pmax" +XSERVER_XDECNETBSD= yes +XSERVER_XPMAX= no # XXX should be yes but may be obsoleted +.endif + +.if ${MACHINE} == "sparc" || ${MACHINE} == "sparc64" +XSERVER_XSUN= yes +XSERVER_XSUNMONO= yes +XSERVER_XSUN24= yes +.endif + +.if ${MACHINE} == "sun3" +XSERVER_XSUN= yes +XSERVER_XSUNMONO= yes +.endif + +.if ${MACHINE} == "x68k" +XSERVER_X68K= yes +.endif + + +# Does this server need Xfont/fontbase libraries? +XSERVER_NEEDS_XFONT?= no + +# Does this platform build XFree86 X server? +XSERVER_XFREE86?= no + +# Does this platform build the XalphaNetBSD server? +XSERVER_XALPHANETBSD?= no +# Does this platform build the Xamiga server? +XSERVER_XAMIGA?= no +# Does this platform build the Xarm32VIDC server? +XSERVER_XARM32VIDC?= no +# Does this platform build the XdecNetBSD server? +XSERVER_XDECNETBSD?= no +# Does this platform build the Xfree68 servers? +XSERVER_XFREE68?= no +# Does this platform build the Xmac68k X server? +XSERVER_XMAC68K?= no +# Does this platform build Xmacppc X server? +XSERVER_XMACPPC?= no +# Does this platform build the Xnewsmips server? +XSERVER_XNEWSMIPS?= no +# Does this platform build Xpmax X servers? +XSERVER_XPMAX?= no +# Does this platform build Xsun* X servers? +XSERVER_XSUN?= no +XSERVER_XSUNMONO?= no +XSERVER_XSUN24?= no +# Does this platform build X68k X servers? +XSERVER_X68K?= no +# Does this platform build Xvfb X server? +XSERVER_XVFB?= yes diff --git a/external/mit/xorg/server/xorg-server/Makefile.inc b/external/mit/xorg/server/xorg-server/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/server/xorg-server/Makefile.serverlib b/external/mit/xorg/server/xorg-server/Makefile.serverlib new file mode 100644 index 000000000..38ceedcc8 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Makefile.serverlib @@ -0,0 +1,19 @@ +# $NetBSD: Makefile.serverlib,v 1.4 2008/08/24 13:43:57 rtr Exp $ + +NOLINT= 1 +NOPROFILE= 1 + +.include # for NETBSDSRCDIR +.include + +.if ${TARGET_ENDIANNESS} == "1234" +X_BYTE_ORDER=X_LITTLE_ENDIAN +.elif ${TARGET_ENDIANNESS} == "4321" +X_BYTE_ORDER=X_BIG_ENDIAN +.else +X_BYTE_ORDER=0 +.endif + +CPPFLAGS+= ${X11FLAGS.SERVER} +CPPFLAGS+= -DXORG_VERSION_CURRENT=${XORG_VERSION_CURRENT} + diff --git a/external/mit/xorg/server/xorg-server/Makefile.servermod b/external/mit/xorg/server/xorg-server/Makefile.servermod new file mode 100644 index 000000000..2895f317e --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Makefile.servermod @@ -0,0 +1,17 @@ +# $NetBSD: Makefile.servermod,v 1.2 2008/08/10 11:56:06 rtr Exp $ + +.if defined(XMODULEDIR) +SHLIB_MAJOR=0 +.endif + +# if these aren't defined the module being built is not installed +# instead it is statically linked into the xserver +.if !defined(XMODULEDIR) && !defined(XMODULE) +libinstall:: +moduleinstall:: +.endif + +# x11 modules that are installed need the X11FLAGS.LOADABLE's defined +.if defined(XMODULEDIR) +CPPFLAGS+= ${X11FLAGS.LOADABLE} +.endif diff --git a/external/mit/xorg/server/xorg-server/XTrap/Makefile b/external/mit/xorg/server/xorg-server/XTrap/Makefile new file mode 100644 index 000000000..df4557901 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/XTrap/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:25:03 rtr Exp $ + +LIBISPRIVATE= yes + +.include "../Makefile.serverlib" + +LIB= XTrap +SRCS= ${SRCS.XTrap} + +.include "Makefile.xtrap" diff --git a/external/mit/xorg/server/xorg-server/XTrap/Makefile.xtrap b/external/mit/xorg/server/xorg-server/XTrap/Makefile.xtrap new file mode 100644 index 000000000..24646dea2 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/XTrap/Makefile.xtrap @@ -0,0 +1,17 @@ +# $NetBSD: Makefile.xtrap,v 1.4 2008/08/24 13:25:03 rtr Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/XTrap +SRCS.XTrap= xtrapddmi.c xtrapdi.c xtrapdiswp.c xtrapditbl.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/Xext + +# XXX +COPTS.xtrapdi.c= -Wno-error + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/Xext/Makefile b/external/mit/xorg/server/xorg-server/Xext/Makefile new file mode 100644 index 000000000..c99793423 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Xext/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.5 2008/08/09 06:48:17 rtr Exp $ + +LIBISPRIVATE= yes +LIB= Xext + +.include "../Makefile.serverlib" + +.include "Makefile.Xextbuiltin" +.include "Makefile.Xextmodule" + +SRCS= ${SRCS.Xextbuiltin} ${SRCS.Xextmodule} + +SUBDIR= Xextbuiltin Xextmodule + +.include +.include "Makefile.Xext" diff --git a/external/mit/xorg/server/xorg-server/Xext/Makefile.Xext b/external/mit/xorg/server/xorg-server/Xext/Makefile.Xext new file mode 100644 index 000000000..17490e0ee --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Xext/Makefile.Xext @@ -0,0 +1,33 @@ +# $NetBSD: Makefile.Xext,v 1.11 2011/08/02 09:11:37 mrg Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/Xext + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/Xext +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/pixman-1 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/xorg +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/Xi +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/xfixes +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/miext/sync +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/composite +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/damageext +CPPFLAGS+= -DHAVE_DIX_CONFIG_H + +COPTS.panoramiX.c+= -Wno-error +COPTS.panoramiXprocs.c+= -Wno-error +COPTS.saver.c+= -Wno-error +COPTS.security.c+= -Wno-error +COPTS.shape.c+= -Wno-error +COPTS.shm.c+= -Wno-error +COPTS.sync.c+= -Wno-error +COPTS.xf86bigfont.c+= -Wno-error +COPTS.xres.c= -Wno-error +COPTS.xvdisp.c+= -Wno-error +COPTS.xvmain.c+= -Wno-error +COPTS.xvmc.c+= -Wno-error +COPTS.bigreq.c+= -Wno-error # XXX bigreqstr.h +COPTS.xcmisc.c+= -Wno-error # XXX xcmiscstr.h + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/Xext/Makefile.Xextbuiltin b/external/mit/xorg/server/xorg-server/Xext/Makefile.Xextbuiltin new file mode 100644 index 000000000..742ea5aad --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Xext/Makefile.Xextbuiltin @@ -0,0 +1,9 @@ +# $NetBSD: Makefile.Xextbuiltin,v 1.6 2009/06/12 01:59:04 mrg Exp $ + +SRCS.Xextbuiltin= bigreq.c geext.c shape.c sleepuntil.c \ + sync.c xcmisc.c xtest.c +SRCS.Xextbuiltin+= shm.c +SRCS.Xextbuiltin+= panoramiX.c panoramiXprocs.c panoramiXSwap.c +SRCS.Xextbuiltin+= xace.c +SRCS.Xextbuiltin+= security.c +SRCS.Xextbuiltin+= xf86bigfont.c diff --git a/external/mit/xorg/server/xorg-server/Xext/Makefile.Xextmodule b/external/mit/xorg/server/xorg-server/Xext/Makefile.Xextmodule new file mode 100644 index 000000000..00cbf837c --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Xext/Makefile.Xextmodule @@ -0,0 +1,6 @@ +# $NetBSD: Makefile.Xextmodule,v 1.9 2010/11/23 08:22:29 mrg Exp $ + +SRCS.Xextmodule= xvmain.c xvdisp.c xvmc.c +SRCS.Xextmodule+= xres.c +SRCS.Xextmodule+= saver.c +SRCS.Xextmodule+= dpms.c diff --git a/external/mit/xorg/server/xorg-server/Xext/Xextbuiltin/Makefile b/external/mit/xorg/server/xorg-server/Xext/Xextbuiltin/Makefile new file mode 100644 index 000000000..a7cfeb1ae --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Xext/Xextbuiltin/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.4 2008/08/09 05:26:41 rtr Exp $ + +LIBISPRIVATE= yes +LIB= Xextbuiltin + +.include "../../Makefile.serverlib" +.include "../Makefile.Xextbuiltin" + +SRCS= ${SRCS.Xextbuiltin} + +.include "../Makefile.Xext" diff --git a/external/mit/xorg/server/xorg-server/Xext/Xextmodule/Makefile b/external/mit/xorg/server/xorg-server/Xext/Xextmodule/Makefile new file mode 100644 index 000000000..3d6e9c0a1 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Xext/Xextmodule/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.7 2013/09/12 15:36:14 joerg Exp $ + +LIBISPRIVATE= yes +LIB= Xextmodule + +COPTS+= ${PICFLAGS} + +.include "../../Makefile.serverlib" +.include "../Makefile.Xextmodule" + +SRCS= ${SRCS.Xextmodule} shape.c ${SRCS.Xext} + +.include "../Makefile.Xext" diff --git a/external/mit/xorg/server/xorg-server/Xi/Makefile b/external/mit/xorg/server/xorg-server/Xi/Makefile new file mode 100644 index 000000000..ddd34e9bd --- /dev/null +++ b/external/mit/xorg/server/xorg-server/Xi/Makefile @@ -0,0 +1,42 @@ +# $NetBSD: Makefile,v 1.4 2011/08/11 23:15:41 joerg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= Xi + +.PATH: ${X11SRCDIR.xorg-server}/${LIB} + +SRCS= allowev.c chgdctl.c chgfctl.c chgkbd.c chgkmap.c chgprop.c \ + chgptr.c closedev.c devbell.c exevents.c extinit.c \ + getbmap.c getdctl.c getfctl.c getfocus.c getkmap.c \ + getmmap.c getprop.c getselev.c getvers.c grabdev.c \ + grabdevb.c grabdevk.c gtmotion.c listdev.c opendev.c \ + queryst.c selectev.c sendexev.c setbmap.c setdval.c \ + setfocus.c setmmap.c setmode.c ungrdev.c ungrdevb.c \ + ungrdevk.c \ + xiallowev.c \ + xichangecursor.c \ + xichangehierarchy.c \ + xigetclientpointer.c \ + xigrabdev.c \ + xipassivegrab.c \ + xiproperty.c \ + xiquerydevice.c \ + xiquerypointer.c \ + xiqueryversion.c \ + xiselectev.c \ + xisetclientpointer.c \ + xisetdevfocus.c \ + xiwarppointer.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/../include +CPPFLAGS+= ${X11FLAGS.DIX} + +CWARNFLAGS.clang+= -Wno-tautological-compare + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/afb/Makefile b/external/mit/xorg/server/xorg-server/afb/Makefile new file mode 100644 index 000000000..b86298e5d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/afb/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.1 2008/08/02 20:41:29 mrg Exp $ + +.include "../Makefile.serverlib" + +.if ${MKX11LOADABLE} != "no" +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions +SRCS= afbmodule.c +.endif + +.include "../Makefile.servermod" +.include "Makefile.afb" diff --git a/external/mit/xorg/server/xorg-server/afb/Makefile.afb b/external/mit/xorg/server/xorg-server/afb/Makefile.afb new file mode 100644 index 000000000..d601e25aa --- /dev/null +++ b/external/mit/xorg/server/xorg-server/afb/Makefile.afb @@ -0,0 +1,38 @@ +# $NetBSD: Makefile.afb,v 1.3 2008/08/15 15:55:05 rtr Exp $ + +LIB= afb + +.PATH: ${X11SRCDIR.xorg-server}/${LIB} +SRCS+= afbbltC.c afbbltX.c afbbltCI.c afbbltO.c afbbltG.c \ + afbtileC.c afbtileG.c afbseg.c \ + afbgc.c afbwindow.c afbfont.c afbfillrct.c afbpntwin.c \ + afbpixmap.c afbimage.c afbline.c afbbres.c afbhrzvert.c \ + afbbresd.c afbpushpxl.c afbply1rct.c afbzerarc.c afbfillarc.c \ + afbfillsp.c afbsetsp.c afbscrinit.c afbplygblt.c afbclip.c \ + afbgetsp.c afbpolypnt.c afbbitblt.c afbcmap.c afbimggblt.c \ + afbpntarea.c afbmisc.c afbbstore.c afbtegblt.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/${LIB} \ + -I${X11SRCDIR.xorg-server}/cfb \ + -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 + +# XXX some path so that "../../mfb/mfbblt.c" works +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86 + +# XXX +COPTS.afbfillsp.c+= -Wno-error +COPTS.afbgetsp.c+= -Wno-error +COPTS.afbpntarea.c+= -Wno-error +COPTS.afbsetsp.c+= -Wno-error +COPTS.afbtegblt.c+= -Wno-error +COPTS.afbtileC.c+= -Wno-error +COPTS.afbtileG.c+= -Wno-error + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/cfb/Makefile b/external/mit/xorg/server/xorg-server/cfb/Makefile new file mode 100644 index 000000000..5bf2678c7 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/cfb/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:23:33 rtr Exp $ + +LIBISPRIVATE= yes +PIXELSIZE= 8 + +.include "../Makefile.serverlib" + +LIB= cfb +SRCS= ${SRCS.cfb} + +.include "Makefile.cfb" + diff --git a/external/mit/xorg/server/xorg-server/cfb/Makefile.cfb b/external/mit/xorg/server/xorg-server/cfb/Makefile.cfb new file mode 100644 index 000000000..8f028f6ec --- /dev/null +++ b/external/mit/xorg/server/xorg-server/cfb/Makefile.cfb @@ -0,0 +1,119 @@ +# $NetBSD: Makefile.cfb,v 1.4 2008/10/24 19:47:24 macallan Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/cfb +SRCS.cfb+= cfbseg.c cfbfillarcC.c cfbfillarcG.c cfbzerarcC.c \ + cfbzerarcX.c cfbzerarcG.c cfbbltC.c cfbbltX.c \ + cfbbltO.c cfbbltG.c cfbsolidC.c cfbsolidX.c \ + cfbsolidG.c cfbtileoddC.c cfbtileoddG.c cfbtile32C.c \ + cfbtile32G.c cfb8lineCO.c cfb8lineCP.c cfb8lineX.c \ + cfb8lineG.c cfb8segCS.c cfb8segC.c cfb8segX.c \ + cfb8setG.c cfbply1rctC.c cfbply1rctG.c + +SRCS.cfb+= cfbgc.c cfbrrop.c cfbwindow.c cfbpntwin.c \ + cfbmskbits.c cfbpixmap.c cfbbitblt.c cfbfillsp.c \ + cfbsetsp.c cfbscrinit.c cfballpriv.c cfbgetsp.c \ + cfbfillrct.c cfbigblt8.c cfbglblt8.c cfbtegblt.c \ + cfbbstore.c cfbpolypnt.c cfbbres.c cfbline.c \ + cfbhrzvert.c cfbbresd.c cfbimage.c cfbcppl.c \ + cfbcmap.c + +X11XSERVERDIR= ${X11SRCDIR.xorg-server} + +.if 0 +BUILDSYMLINKS= cfbline.c cfbseg.c \ + cfbfillarc.c cfbfillarcC.c \ + cfbfillarc.c cfbfillarcG.c \ + cfbzerarc.c cfbzerarcC.c \ + cfbzerarc.c cfbzerarcX.c \ + cfbzerarc.c cfbzerarcG.c \ + cfbblt.c cfbbltC.c \ + cfbblt.c cfbbltX.c \ + cfbblt.c cfbbltO.c \ + cfbblt.c cfbbltG.c \ + cfbsolid.c cfbsolidC.c \ + cfbsolid.c cfbsolidX.c \ + cfbsolid.c cfbsolidG.c \ + cfbtileodd.c cfbtileoddC.c \ + cfbtileodd.c cfbtileoddG.c \ + cfbtile32.c cfbtile32C.c \ + cfbtile32.c cfbtile32G.c \ + cfb8line.c cfb8lineCO.c \ + cfb8line.c cfb8lineCP.c \ + cfb8line.c cfb8lineX.c \ + cfb8line.c cfb8lineG.c \ + cfb8line.c cfb8segCS.c \ + cfb8line.c cfb8segC.c \ + cfb8line.c cfb8segX.c \ + cfb8line.c cfb8segG.c \ + cfbply1rct.c cfbply1rctC.c \ + cfbply1rct.c cfbply1rctG.c \ + ${X11XSERVERDIR}/cfb32/cfbmodule.c cfbmodule32.c +.endif + + +.if ${PIXELSIZE} == 8 # { +SRCS.cfb+= cfb8bit.c cfbteblt8.c cfbglrop8.c cfbpush8.c cfbrctstp8.c +.if 0 +BUILDSYMLINKS+= cfbglblt8.c cfbglrop8.c +.endif +.endif # } + +.include "../Makefile.common" + +.if ${XSERVER_XAMIGA} != "no" +CPPFLAGS+= -DFORCE_SEPARATE_PRIVATE +.endif + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/cfb \ + -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/Xext + +# XXX some path so that "../../mfb/mfbblt.c" works +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86 + +CPPFLAGS+= -DPSZ=${PIXELSIZE} -DXFREE86 + + +.if 0 +CPPFLAGS.cfb8lineCO.c= -DRROP=GXcopy +CPPFLAGS.cfb8lineCP.c= -DRROP=GXcopy -DPREVIOUS +CPPFLAGS.cfb8lineG.c= -DRROP=GXset +CPPFLAGS.cfb8lineX.c= -DRROP=GXxor +CPPFLAGS.cfb8segC.c= -DRROP=GXcopy -DPOLYSEGMENT +CPPFLAGS.cfb8segCS.c= -DRROP=GXcopy -DPOLYSEGMENT -DWIDTH_SHIFT +CPPFLAGS.cfb8segG.c= -DRROP=GXset -DPOLYSEGMENT +CPPFLAGS.cfb8segX.c= -DRROP=GXxor -DPOLYSEGMENT +CPPFLAGS.cfbbltC.c= -DMROP=Mcopy +CPPFLAGS.cfbbltG.c= -DMROP=0 +CPPFLAGS.cfbbltO.c= -DMROP=Mor +CPPFLAGS.cfbbltX.c= -DMROP=Mxor +CPPFLAGS.cfbcmap.c= ${X11FLAGS.EXTENSION} -DGLXEXT -DGLX_USE_MESA +CPPFLAGS.cfbfillarcC.c= -DRROP=GXcopy +CPPFLAGS.cfbfillarcG.c= -DRROP=GXset +CPPFLAGS.cfbglrop8.c= -DGLYPHROP +CPPFLAGS.cfbply1rctC.c= -DRROP=GXcopy +CPPFLAGS.cfbply1rctG.c= -DRROP=GXset +CPPFLAGS.cfbseg.c= -DPOLYSEGMENT +CPPFLAGS.cfbsolidC.c= -DRROP=GXcopy +CPPFLAGS.cfbsolidG.c= -DRROP=GXset +CPPFLAGS.cfbsolidX.c= -DRROP=GXxor +CPPFLAGS.cfbtile32C.c= -DMROP=Mcopy +CPPFLAGS.cfbtile32G.c= -DMROP=0 +CPPFLAGS.cfbtileoddC.c= -DMROP=Mcopy +CPPFLAGS.cfbtileoddG.c= -DMROP=0 +CPPFLAGS.cfbzerarcC.c= -DRROP=GXcopy +CPPFLAGS.cfbzerarcG.c= -DRROP=GXset +CPPFLAGS.cfbzerarcX.c= -DRROP=GXxor +.endif + +# XXX +COPTS.cfbgc.c= -Wno-error +COPTS.cfbscrinit.c= -Wno-error + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/cfb32/Makefile b/external/mit/xorg/server/xorg-server/cfb32/Makefile new file mode 100644 index 000000000..6f5058dd8 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/cfb32/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:24:12 rtr Exp $ + +LIBISPRIVATE= yes +PIXELSIZE= 32 + +.include "../Makefile.serverlib" + +LIB= cfb32 +SRCS= ${SRCS.cfb} + +.include "../cfb/Makefile.cfb" diff --git a/external/mit/xorg/server/xorg-server/composite/Makefile b/external/mit/xorg/server/xorg-server/composite/Makefile new file mode 100644 index 000000000..eb5bd1d4b --- /dev/null +++ b/external/mit/xorg/server/xorg-server/composite/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.4 2009/08/22 02:40:26 mrg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= composite +.PATH: ${X11SRCDIR.xorg-server}/composite + +SRCS= compalloc.c compext.c compint.h compinit.c compwindow.c \ + compoverlay.c + +CPPFLAGS+= ${X11FLAGS.PERVASIVE_EXTENSION} ${X11FLAGS.DIX} ${X11INCS.DIX} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/render \ + -I${X11SRCDIR.xorg-server}/xfixes \ + -I${X11SRCDIR.xorg-server}/damageext \ + -I${X11SRCDIR.xorg-server}/miext/damage \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include \ + +# XXX +COPTS.compwindow.c= -Wno-error +COPTS.compext.c= -Wno-error +COPTS.compinit.c= -Wno-error + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/config/Makefile b/external/mit/xorg/server/xorg-server/config/Makefile new file mode 100644 index 000000000..4ec113cce --- /dev/null +++ b/external/mit/xorg/server/xorg-server/config/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.1 2008/08/02 21:44:14 mrg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= config +.PATH: ${X11SRCDIR.xorg-server}/config + +SRCS= config.c + +CPPFLAGS+= ${X11FLAGS.DIX} +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/damageext/Makefile b/external/mit/xorg/server/xorg-server/damageext/Makefile new file mode 100644 index 000000000..16ec09d59 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/damageext/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.3 2011/01/15 13:54:52 jmcneill Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= damageext +.PATH: ${X11SRCDIR.xorg-server}/damageext + +SRCS= damageext.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/xfixes \ + -I${X11SRCDIR.xorg-server}/damagext \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include \ + ${X11FLAGS.DIX} ${X11INCS.DIX} + +COPTS.damageext.c+= -Wno-error + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/dbe/Makefile b/external/mit/xorg/server/xorg-server/dbe/Makefile new file mode 100644 index 000000000..d4319319d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/dbe/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.3 2009/08/22 02:40:27 mrg Exp $ + +LIBISPRIVATE= yes + +.include "../Makefile.serverlib" + +LIB= dbe +SRCS= ${SRCS.dbe} + +COPTS.dbe.c= -Wno-error + +.include "Makefile.dbe" diff --git a/external/mit/xorg/server/xorg-server/dbe/Makefile.dbe b/external/mit/xorg/server/xorg-server/dbe/Makefile.dbe new file mode 100644 index 000000000..6d7b04efd --- /dev/null +++ b/external/mit/xorg/server/xorg-server/dbe/Makefile.dbe @@ -0,0 +1,14 @@ +# $NetBSD: Makefile.dbe,v 1.6 2011/01/15 13:54:53 jmcneill Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/dbe +SRCS.dbe= dbe.c midbe.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include \ + ${X11FLAGS.DIX} ${X11INCS.DIX} + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/dix/Makefile b/external/mit/xorg/server/xorg-server/dix/Makefile new file mode 100644 index 000000000..d768f7830 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/dix/Makefile @@ -0,0 +1,50 @@ +# $NetBSD: Makefile,v 1.12 2012/03/22 23:46:28 joerg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" +.include "Makefile.common" + +LIB= dix + +.PATH: ${X11SRCDIR.xorg-server}/dix +SRCS= atom.c colormap.c cursor.c devices.c dispatch.c dixfonts.c \ + dixutils.c events.c extension.c ffs.c gc.c getevents.c \ + globals.c glyphcurs.c grabs.c initatoms.c main.c pixmap.c \ + privates.c property.c resource.c swaprep.c swapreq.c \ + tables.c window.c \ + deprecated.c enterleave.c ptrveloc.c registry.c selection.c \ + eventconvert.c inpututils.c region.c + + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/pixman-1 +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/xorg +CPPFLAGS+= ${X11FLAGS.PERVASIVE_EXTENSION} +CPPFLAGS+= ${X11FLAGS.DIX} ${X11INCS.DIX} + +CPPFLAGS.globals.c= -DCOMPILEDDEFAULTFONTPATH=\"${X11DEFAULTFONTPATH:ts,}\" \ + -DRGB_DB=\"${X11LIBDIR}/rgb\" + +# XXX make user variables +CPPFLAGS.dispatch.c= -DVENDOR_NAME="\"The Xorg Foundation\"" +CPPFLAGS.main.c= -DVENDOR_STRING="\"The Xorg Group\"" \ + -DVENDOR_RELEASE=${XORG_VERSION_CURRENT} \ + -DVENDOR_NAME="\"The Xorg Foundation\"" + +FILES= protocol.txt +FILESDIR= ${X11ROOTDIR}/lib/xorg + +COPTS.dixutils.c= -Wno-error +COPTS.colormap.c= -Wno-error +COPTS.cursor.c= -Wno-error +COPTS.deprecated.c= -Wno-error +COPTS.dispatch.c= -Wno-error +COPTS.dixfonts.c= -Wno-error +COPTS.events.c= -Wno-error +COPTS.resource.c= -Wno-error +COPTS.window.c= -Wno-error +COPTS.inpututils.c= -Wno-error + +CWARNFLAGS.clang+= -Wno-switch + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/dix/Makefile.common b/external/mit/xorg/server/xorg-server/dix/Makefile.common new file mode 100644 index 000000000..b4c59425d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/dix/Makefile.common @@ -0,0 +1,7 @@ +# $NetBSD: Makefile.common,v 1.2 2009/06/18 02:45:46 mrg Exp $ + +X11DEFAULTFONTPATH= ${X11FONTDIR}/misc/ \ + ${X11FONTDIR}/TTF/ \ + ${X11FONTDIR}/Type1/ \ + ${X11FONTDIR}/75dpi/ \ + ${X11FONTDIR}/100dpi/ diff --git a/external/mit/xorg/server/xorg-server/dix/xpstubs/Makefile b/external/mit/xorg/server/xorg-server/dix/xpstubs/Makefile new file mode 100644 index 000000000..182767380 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/dix/xpstubs/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/08/03 03:17:16 mrg Exp $ + +.include "../../Makefile.serverlib" +.include "../../Makefile.servermod" + +LIB= xpstubs + +.PATH: ${X11SRCDIR.xorg-server}/dix +SRCS= xpstubs.c + +CPPFLAGS+= ${X11FLAGS.DIX} ${X11INCS.DIX} \ + -I${DESTDIR}${X11INCDIR}/xorg + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/doc/Makefile b/external/mit/xorg/server/xorg-server/doc/Makefile new file mode 100644 index 000000000..e77605b02 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/doc/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.4 2011/08/02 07:41:00 mrg Exp $ + +.include + +.include "../dix/Makefile.common" + +.PATH: ${X11SRCDIR.xorg-server}/doc +.PATH: ${X11SRCDIR.xorg-server}/doc/man +MAN= Xserver.1 +X11EXTRAMANDEFS+= -e 's%__default_font_path__%${X11DEFAULTFONTPATH:ts,:S/,/, /g}%g' + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/exa/Makefile b/external/mit/xorg/server/xorg-server/exa/Makefile new file mode 100644 index 000000000..1cce22dd8 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/exa/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/09/01 10:18:03 rtr Exp $ + +LIBISPRIVATE= yes + +.include "../Makefile.serverlib" + +LIB= exa +SRCS= ${SRCS.exa} + +.include "Makefile.exa" diff --git a/external/mit/xorg/server/xorg-server/exa/Makefile.exa b/external/mit/xorg/server/xorg-server/exa/Makefile.exa new file mode 100644 index 000000000..8445ce5e1 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/exa/Makefile.exa @@ -0,0 +1,33 @@ +# $NetBSD: Makefile.exa,v 1.5 2011/01/15 13:54:53 jmcneill Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/exa + +SRCS.exa=\ + exa.c \ + exa_classic.c \ + exa_migration_classic.c \ + exa_driver.c \ + exa_mixed.c \ + exa_migration_mixed.c \ + exa_accel.c \ + exa_glyphs.c \ + exa_offscreen.c \ + exa_render.c \ + exa_unaccel.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/exa \ + -I${X11SRCDIR.xorg-server}/fb \ + -I${X11SRCDIR.xorg-server}/miext/cw \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include \ + ${X11FLAGS.DIX} ${X11INCS.DIX} + +.if !defined(XMODULEDIR) +.include +LIBDIR= ${XMODULEDIR} +.include +.endif diff --git a/external/mit/xorg/server/xorg-server/fb/Makefile b/external/mit/xorg/server/xorg-server/fb/Makefile new file mode 100644 index 000000000..5cc401178 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/fb/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/08/09 11:14:52 rtr Exp $ + +LIBISPRIVATE= yes + +.include "../Makefile.serverlib" + +LIB= fb +SRCS= ${SRCS.fb} + +.include "Makefile.fb" diff --git a/external/mit/xorg/server/xorg-server/fb/Makefile.fb b/external/mit/xorg/server/xorg-server/fb/Makefile.fb new file mode 100644 index 000000000..0a019271e --- /dev/null +++ b/external/mit/xorg/server/xorg-server/fb/Makefile.fb @@ -0,0 +1,27 @@ +# $NetBSD: Makefile.fb,v 1.8 2011/08/02 09:11:37 mrg Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/fb +SRCS.fb= fb24_32.c fballpriv.c fbarc.c fbbits.c fbblt.c \ + fbbltone.c fbcopy.c \ + fbfill.c fbfillrect.c fbfillsp.c fbgc.c fbgetsp.c \ + fbglyph.c fbimage.c fbline.c fboverlay.c \ + fbpict.c fbpixmap.c fbpoint.c fbpush.c fbscreen.c \ + fbseg.c fbsetsp.c fbsolid.c fbstipple.c fbtile.c \ + fbtrap.c fbutil.c fbwindow.c + +CPPFLAGS+= ${X11FLAGS.DIX} ${X11INCS.DIX} -DHAVE_DIX_CONFIG_H + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +CPPFLAGS+= -DHAVE_DIX_CONFIG_H + +# XXX +COPTS.fbpict.c= -Wno-error +COPTS.fbwindow.c= -Wno-error +COPTS.colormap.c= -Wno-error +COPTS.fboverlay.c= -Wno-error # XXX shmstr.h + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/glx/Makefile b/external/mit/xorg/server/xorg-server/glx/Makefile new file mode 100644 index 000000000..272fa74fd --- /dev/null +++ b/external/mit/xorg/server/xorg-server/glx/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.1 2009/06/11 05:43:16 mrg Exp $ + +LIBISPRIVATE=yes + +.include "../Makefile.serverlib" + +LIB= glx +SRCS= ${SRCS.glx} + +.include "Makefile.glx" diff --git a/external/mit/xorg/server/xorg-server/glx/Makefile.glx b/external/mit/xorg/server/xorg-server/glx/Makefile.glx new file mode 100644 index 000000000..62a85a4ac --- /dev/null +++ b/external/mit/xorg/server/xorg-server/glx/Makefile.glx @@ -0,0 +1,72 @@ +# $NetBSD: Makefile.glx,v 1.10 2012/10/03 21:50:14 gsutre Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/glx +.PATH: ${X11SRCDIR.MesaLib}/src/mesa/glapi +.PATH: ${X11SRCDIR.MesaLib}/src/glx + +SRCS.glx= \ + indirect_dispatch.c \ + indirect_dispatch_swap.c \ + indirect_reqsize.c \ + indirect_size_get.c \ + indirect_table.c \ + glapi.c \ + glapi_gentable.c \ + glthread.c \ + glxdri.c \ + glxdri2.c \ + extension_string.c \ + indirect_util.c \ + indirect_program.c \ + indirect_texture_compression.c \ + glxcmds.c \ + glxcmdsswap.c \ + glxext.c \ + glxdriswrast.c \ + glxdricommon.c \ + glxscreens.c \ + render2.c \ + render2swap.c \ + renderpix.c \ + renderpixswap.c \ + rensize.c \ + single2.c \ + single2swap.c \ + singlepix.c \ + singlepixswap.c \ + singlesize.c \ + swap_interval.c \ + xfont.c + +COPTS.glxcmds.c= -Wno-error +COPTS.indirect_dispatch.c= -Wno-error +COPTS.indirect_dispatch_swap.c= -Wno-error +COPTS.glxscreens.c= -Wno-error +COPTS.xfont.c= -Wno-error + +CPPFLAGS+= \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/glx \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/dri \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/dri2 \ + -I${X11SRCDIR.MesaLib}/include \ + -I${X11SRCDIR.MesaLib}/src/glx \ + -I${X11SRCDIR.MesaLib}/src/mesa \ + -I${X11SRCDIR.MesaLib}/src/mesa/main \ + -I${X11SRCDIR.MesaLib}/src/mesa/glapi \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= \ + -DGLXEXT \ + -DGLX_USE_MESA \ + -I${X11SRCDIR.xorg-server}/../include \ + ${X11FLAGS.DIX} ${X11INCS.DIX} + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/Makefile b/external/mit/xorg/server/xorg-server/hw/Makefile new file mode 100644 index 000000000..bdeb4257c --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/Makefile @@ -0,0 +1,65 @@ +# $NetBSD: Makefile,v 1.4 2009/02/14 10:46:06 abs Exp $ + +.include "../Makefile.common" + +#MINIX: vfb not yet supported +SUBDIR= xnest +.if ${XSERVER_XFREE86} != "no" +SUBDIR+= xfree86 +.endif + +.if 0 +.if ${XSERVER_X68K} != "no" +SUBDIR+=netbsd/x68k +.endif + +.if ${XSERVER_XALPHANETBSD} != "no" +SUBDIR+=netbsd/alpha +.endif + +.if ${XSERVER_XAMIGA} != "no" +SUBDIR+=netbsd/amiga +.endif + +.if ${XSERVER_XARM32VIDC} != "no" +SUBDIR+=netbsd/arm32vidc +.endif + +.if ${XSERVER_XDECNETBSD} != "no" +SUBDIR+=netbsd/dec +.endif + +.if ${XSERVER_XDREAMCAST} != "no" +SUBDIR+=netbsd/dreamcast +.endif + +.if ${XSERVER_XFREE86} != "no" +SUBDIR+=xfree86 +.endif + +.if ${XSERVER_XHPC} != "no" +SUBDIR+=netbsd/hpc +.endif + +.if ${XSERVER_XMAC68K} != "no" +SUBDIR+=netbsd/mac68k +.endif + +.if ${XSERVER_XMACPPC} != "no" +SUBDIR+=netbsd/macppc +.endif + +.if ${XSERVER_XNEWSMIPS} != "no" +SUBDIR+=netbsd/newsmips +.endif + +.if ${XSERVER_XSUN} != "no" +SUBDIR+=sun +.endif + +.if ${XSERVER_XVFB} != "no" +SUBDIR+=vfb +.endif +.endif + +.include diff --git a/external/mit/xorg/server/xorg-server/hw/Makefile.inc b/external/mit/xorg/server/xorg-server/hw/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/server/xorg-server/hw/vfb/Makefile b/external/mit/xorg/server/xorg-server/hw/vfb/Makefile new file mode 100644 index 000000000..e719a237d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/vfb/Makefile @@ -0,0 +1,135 @@ +# $NetBSD: Makefile,v 1.11 2011/08/02 09:11:38 mrg Exp $ + +.include + +.include "../../Makefile.Xserver" + +PROG= Xvfb + +.PATH: ${X11SRCDIR.xorg-server}/hw/vfb +.PATH: ${X11SRCDIR.xorg-server}/hw/vfb/man +.PATH: ${X11SRCDIR.xorg-server}/Xext +.PATH: ${X11SRCDIR.xorg-server}/Xi +.PATH: ${X11SRCDIR.xorg-server}/mi +SRCS= InitInput.c InitOutput.c dpmsstubs.c miinitext.c stubs.c + +.PATH: ${X11SRCDIR.xorg-server}/fb +SRCS+= fbcmap_mi.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.xorg-server}/fb \ + -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/os \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/render \ + -DHAVE_DIX_CONFIG_H \ + -DNO_HW_ONLY_EXTS \ + -DNO_MODULE_EXTS \ + -UGLXEXT + +CPPFLAGS+= ${X11FLAGS.OS_DEFINES} ${X11FLAGS.DIX} \ + -DHAS_SHM -DHAS_MMAP -UXFree86LOADER + +.include "../../Makefile.common" + +.if ${XSERVER_XFREE86} == "no" +CPPFLAGS+= -UDDXTIME +.endif + +CPPFLAGS.InitInput.c= ${X11FLAGS.EXTENSION} \ + -UGLXEXT +CPPFLAGS.miinitext.c= ${X11FLAGS.EXTENSION} \ + -DNO_HW_ONLY_EXTS -DNO_MODULE_EXTS \ + -UXFree86LOADER \ + -UGLXEXT +CPPFLAGS.dpmsstubs.c= ${X11FLAGS.EXTENSION} \ + -UGLXEXT + +COPTS.InitInput.c= -Wno-error +COPTS.InitOutput.c= -Wno-error + +LDADD+= ${LDADD.dix} \ + ${LDADD.fb} \ + ${LDADD.mi} \ + ${LDADD.xfixes} \ + ${LDADD.Xext} \ + ${LDADD.config} \ + ${LDADD.dbe} \ + ${LDADD.record} \ + ${LDADD.randr} \ + ${LDADD.render} \ + ${LDADD.damageext} \ + ${LDADD.miext/damage} \ + ${LDADD.miext/shadow} \ + ${LDADD.miext/sync} \ + ${LDADD.Xi} \ + ${LDADD.xkb} \ + ${LDADD.xkbstubs} \ + ${LDADD.composite} \ + ${LDADD.os} \ + ${LDADD.glx} \ + -lXfont \ + -lfreetype \ + -lXau \ + -lfontenc \ + ${LIBCWRAPPER} \ + -lpixman-1 \ + -lXdmcp \ + -lz \ + -lm \ + -lcrypto + +DPADD+= ${DPADD.dix} \ + ${DPADD.fb} \ + ${DPADD.mi} \ + ${DPADD.xfixes} \ + ${DPADD.Xext} \ + ${DPADD.config} \ + ${DPADD.dbe} \ + ${DPADD.record} \ + ${DPADD.render} \ + ${DPADD.randr} \ + ${DPADD.damageext} \ + ${DPADD.miext/damage} \ + ${DPADD.miext/shadow} \ + ${DPADD.miext/sync} \ + ${DPADD.Xi} \ + ${DPADD.xkb} \ + ${DPADD.xkbstubs} \ + ${DPADD.composite} \ + ${DPADD.os} \ + ${DPADD.glx} \ + ${LIBXFONT} \ + ${LIBFREETYPE} \ + ${LIBXAU} \ + ${LIBFONTENC} \ + ${LIBPIXMAN1} \ + ${LIBXDMCP} \ + ${LIBZ} \ + ${LIBM} \ + ${LIBCRYPTO} + +.if ${MACHINE_ARCH} == "i386" +LDADD+= -li386 +DPADD+= ${LIBI386} +.endif + +.if ${MACHINE_ARCH} == "x86_64" +LDADD+= -lx86_64 +DPADD+= ${LIBX86_64} +.endif + +.if ${MACHINE_ARCH} == "alpha" +LDADD+= -lalpha +DPADD+= ${LIBALPHA} +.endif + +COPTS.miinitext.c+= -Wno-error # XXX xf86bigfstr.h + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/vfb/Makefile.inc b/external/mit/xorg/server/xorg-server/hw/vfb/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/vfb/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile new file mode 100644 index 000000000..f1b8fe651 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.33 2011/08/02 09:11:38 mrg Exp $ + +SUBDIR= common init ddc dixmods doc dri dri2 i2c loader \ + xf86modes exa \ + xorgos ramdac shadowfb vbe vgahw \ + x86emu xaa xf86config + +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" || ${MACHINE_ARCH} == "powerpc" +SUBDIR+= int10 +.endif + +SUBDIR+= .WAIT utils + +SUBDIR+= .WAIT Xorg + +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile.inc b/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/Xorg/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/Xorg/Makefile new file mode 100644 index 000000000..1957d34c6 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/Xorg/Makefile @@ -0,0 +1,137 @@ +# $NetBSD: Makefile,v 1.5 2012/10/03 21:50:14 gsutre Exp $ + +.include + +.include "../../../Makefile.Xserver" + +PROG= Xorg +BINMODE= 4711 + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86 +SRCS= xorg.c libxorg.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.xc}/include/fonts \ + -I${X11SRCDIR.xorg-server}/fb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/os \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/render \ + -DHAVE_DIX_CONFIG_H + +CPPFLAGS+= ${X11FLAGS.OS_DEFINES} ${X11FLAGS.DIX} \ + ${X11FLAGS.EXTENSION} + +LDFLAGS+= -rdynamic + +LDADD+= -Wl,--whole-archive +LDADD+= ${LDADD.dix} +LDADD+= ${LDADD.hw/xfree86/init} +LDADD+= ${LDADD.config} +LDADD+= ${LDADD.hw/xfree86/loader} +LDADD+= ${LDADD.hw/xfree86/common} +LDADD+= ${LDADD.hw/xfree86/xorgos} +#LDADD+= ${LDADD.osandcommon} +LDADD+= ${LDADD.hw/xfree86/xf86config} +LDADD+= ${LDADD.hw/xfree86/dixmods} +LDADD+= ${LDADD.hw/xfree86/xf86modes} +LDADD+= ${LDADD.hw/xfree86/ramdac} +LDADD+= ${LDADD.hw/xfree86/ddc} +LDADD+= ${LDADD.hw/xfree86/i2c} +LDADD+= ${LDADD.composite} +LDADD+= ${LDADD.mi} +LDADD+= ${LDADD.xfixes} +LDADD+= ${LDADD.Xext/Xextbuiltin} +LDADD+= ${LDADD.render} +LDADD+= ${LDADD.randr} +LDADD+= ${LDADD.damageext} +LDADD+= ${LDADD.miext/damage} +LDADD+= ${LDADD.miext/shadow} +LDADD+= ${LDADD.miext/cw} +LDADD+= ${LDADD.miext/sync} +LDADD+= ${LDADD.Xi} +LDADD+= ${LDADD.xkb} +LDADD+= ${LDADD.os} +LDADD+= ${LDADD.glx} +LDADD+= ${LDADD.hw/xfree86/dri} +LDADD+= ${LDADD.hw/xfree86/dri2} +LDADD+= ${LDADD.hw/xfree86/dixmods/fb} +LDADD+= ${LDADD.hw/xfree86/dixmods/xorgxkb} +LDADD+= -lpixman-1 -lXfont -lfreetype -lXau -lfontenc -lXdmcp +LDADD+= -lpciaccess -ldrm +.if !defined(__MINIX) +LDADD+= -lcrypto +.endif # !defined(__MINIX) +LDADD+= -Wl,--no-whole-archive + +.if !defined(__MINIX) +.if ${MACHINE_ARCH} == "i386" +LDADD+= -li386 +DPADD+= ${LIBI386} +.elif ${MACHINE_ARCH} == "x86_64" +LDADD+= -lx86_64 +DPADD+= ${LIBX86_64} +.elif ${MACHINE_ARCH} == "alpha" +LDADD+= -lalpha +DPADD+= ${LIBALPHA} +.endif +.endif # !defined(__MINIX) + +LDADD+= -lm + +DPADD+= ${DPADD.dix} \ + ${DPADD.fb} \ + ${DPADD.mi} \ + ${DPADD.xfixes} \ + ${DPADD.Xext} \ + ${DPADD.config} \ + ${DPADD.dbe} \ + ${DPADD.record} \ + ${DPADD.render} \ + ${DPADD.randr} \ + ${DPADD.damageext} \ + ${DPADD.miext/damage} \ + ${DPADD.miext/shadow} \ + ${DPADD.miext/cw} \ + ${DPADD.miext/sync} \ + ${DPADD.Xi} \ + ${DPADD.xkb} \ + ${DPADD.composite} \ + ${DPADD.os} \ + ${DPADD.glx} \ + ${DPADD.hw/xfree86/dri} \ + ${DPADD.hw/xfree86/dri2} \ + ${DPADD.hw/xfree86/dixmods/fb} \ + ${DPADD.hw/xfree86/fb} \ + ${DPADD.hw/xfree86/init} \ + ${DPADD.hw/xfree86/common} \ + ${DPADD.hw/xfree86/loader} \ + ${DPADD.hw/xfree86/xf86config} \ + ${DPADD.hw/xfree86/dixmods} \ + ${DPADD.hw/xfree86/xf86modes} \ + ${DPADD.hw/xfree86/ramdac} \ + ${DPADD.hw/xfree86/ddc} \ + ${DPADD.hw/xfree86/i2c} \ + ${LIBCWRAPPER} \ + ${LIBXFONT} ${LIBFREETYPE} ${LIBXAU} ${LIBFONTENC} \ + ${LIBPIXMAN1} ${LIBXDMCP} ${LIBZ} ${LIBM} ${LIBPCIACCESS} \ + # LSC: For MINIX + #${LIBCRYPTO} + +SYMLINKS= ${X11BINDIR}/Xorg ${X11BINDIR}/X + +# Done in ../doc +MKMAN= no + +FILES= xorg-server.m4 +FILESDIR= ${X11ROOTDIR}/share/aclocal + +.PATH: ${X11SRCDIR.xorg-server} + +.include +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/common/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/common/Makefile new file mode 100644 index 000000000..4eaef779c --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/common/Makefile @@ -0,0 +1,153 @@ +# $NetBSD: Makefile,v 1.18 2011/04/13 16:18:14 macallan Exp $ + +.include # MINIX: for __MINIX +.include # for HOST_SH + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= common + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/common +SRCS.xv= xf86xv.c xf86xvmc.c +SRCS.bus= xf86pciBus.c xf86fbBus.c xf86noBus.c +SRCS.randr= xf86RandR.c + +SRCS= xf86Configure.c xf86ShowOpts.c xf86Bus.c xf86Config.c \ + xf86Cursor.c xf86DGA.c xf86DPMS.c \ + xf86Events.c xf86Globals.c xf86AutoConfig.c \ + xf86Option.c \ + xf86VidMode.c xf86fbman.c xf86cmap.c \ + xf86Helper.c xf86PM.c xf86Xinput.c xisb.c \ + xf86Mode.c xorgHelper.c \ + ${SRCS.xv} ${SRCS.bus} ${SRCS.randr} \ + xf86DefModeSet.c \ + xf86VGAarbiter.c + +.if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64" +SRCS.bus+= xf86sbusBus.c +.endif + +# Rebuild xf86Build.h on every make +# +CLEANFILES+= xf86Build.h +xf86Build.h: .PHONY + ${_MKTARGET_CREATE} + echo "#define BUILD_DATE `date +%Y%m%d`" > ${.TARGET} + +# We don't use DPSRCS+=xf86Build.h because we don't want the entire +# library to be rebuilt each time +# +xf86Init.c xf86Init.o: xf86Build.h + +CLEANFILES+= xf86DefModeSet.c +xf86DefModeSet.c: + ${_MKTARGET_CREATE} + cat \ + ${X11SRCDIR.xorg-server}/hw/xfree86/common/vesamodes \ + ${X11SRCDIR.xorg-server}/hw/xfree86/common/extramodes | \ + ${TOOL_AWK} -f ${X11SRCDIR.xorg-server}/hw/xfree86/common/modeline2c.awk > ${.TARGET} + @echo >> ${.TARGET} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/os \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xi \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/ddc \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/modes \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/i2c \ + -I${X11SRCDIR.xorg-server}/hw/xfree86 \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/parser \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/loader \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/vgahw \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/rac \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/vbe \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/int10 \ + -I${X11SRCDIR.xorg-server}/render \ + -I${X11SRCDIR.xorg-server}/randr \ + -I. \ + -I${X11SRCDIR.xorg-server}/../include \ + -D__${MACHINE} + +.if !defined(__MINIX) +CPPFLAGS+= ${X11FLAGS.EXTENSION} ${X11FLAGS.OS_DEFINES} \ + ${X11FLAGS.DIX} \ + -DXFree86LOADER -DWSCONS_SUPPORT -D__XKBDEFRULES__='"xorg"' \ + -D__XSERVERNAME__='"Xorg"' -D__XCONFIGFILE__='"xorg.conf"' \ + -D__VENDORDWEBSUPPORT__='"http://wiki.X.Org"' \ + -DXVENDORNAME='"The X.Org Foundation"' \ + -DHAVE_XORG_CONFIG_H \ + -DHAVE_PCI_DEVICE_IS_BOOT_VGA +.else +CPPFLAGS+= ${X11FLAGS.EXTENSION} ${X11FLAGS.OS_DEFINES} \ + ${X11FLAGS.DIX} \ + -DXFree86LOADER -D__XKBDEFRULES__='"xorg"' \ + -D__XSERVERNAME__='"Xorg"' -D__XCONFIGFILE__='"xorg.conf"' \ + -D__VENDORDWEBSUPPORT__='"http://wiki.X.Org"' \ + -DXVENDORNAME='"The X.Org Foundation"' \ + -DHAVE_XORG_CONFIG_H \ + -DHAVE_PCI_DEVICE_IS_BOOT_VGA +.endif # !defined(__MINIX) + +.if ${MACHINE_ARCH} == "i386" +.if !defined(__MINIX) +CPPFLAGS+= -DPCCONS_SUPPORT -DPCVT_SUPPORT +.else +CPPFLAGS+= -DPCCONS_SUPPORT +.endif # !defined(__MINIX) +.endif + +.if ${MACHINE} == "cats" || ${MACHINE} == "ofppc" +CPPFLAGS+= -DPCVT_SUPPORT +.endif + +OS_RELEASE!= ${HOST_SH} ${NETBSDSRCDIR}/sys/conf/osrelease.sh + +DRIVERS= mga glint nv tga s3 s3virge sis rendition neomagic \ + i740 tdfx savage cirrus vmware tseng trident chips \ + apm i128 +DRIVERS+= ati i810 ark cyrix siliconmotion via fbdev vesa \ + dummy + +IDRIVERS= mouse keyboard acecad calcomp citron digitaledge \ + dmc dynapro elographics tek4957 microtouch \ + mutouch penmount spaceorb summa wacom void \ + magellan hyperpen jamstudio fpit palmax + +CPPFLAGS.xf86Bus.c= -DBUILDERADDR='"xfree86@xfree86.org"' +CPPFLAGS.xf86Init.c= -DOSNAME='"NetBSD/${MACHINE} ${OS_RELEASE} -"' \ + -DXORG_RELEASE='"Release 1.4.2"' \ + -DBUILDERADDR='"xorg@xorg.org"' \ + -DOSVENDOR='" The NetBSD Foundation, Inc."' +CPPFLAGS.xf86Globals.c= -DDEFAULT_LOGPREFIX='"/var/log/Xorg."' \ + -DDEFAULT_MODULE_PATH='"${X11USRLIBDIR}/modules"' +CPPFLAGS.xf86Configure.c= -DXF86CONFIGFILE='"xorg.conf"' +CPPFLAGS.xf86Config.c= -DDRIVERS='"${DRIVERS}"' \ + -DIDRIVERS='"${IDRIVERS}"' \ + -DPROJECTROOT='"${X11ROOTDIR}"' +CPPFLAGS.xf86AutoConfig.c= -DPROJECTROOT='"${X11ROOTDIR}"' \ + -DBINDIR='"${X11BINDIR}"' \ + -DDRIVERS='"${DRIVERS}"' \ + -DIDRIVERS='"${IDRIVERS}"' + +COPTS.xf86AutoConfig.c= -Wno-error +COPTS.xf86Config.c= -Wno-error +COPTS.xf86Cursor.c= -Wno-error +COPTS.xf86RandR.c= -Wno-error +COPTS.xf86Helper.c= -Wno-error +COPTS.xf86cmap.c= -Wno-error +COPTS.xf86Cursor.c= -Wno-error # XXX xf86dgastr.h +COPTS.xf86DGA.c= -Wno-error # XXX xf86dgastr.h + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/ddc/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/ddc/Makefile new file mode 100644 index 000000000..4a2be6b94 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/ddc/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.5 2011/08/11 23:15:41 joerg Exp $ + +LIBISPRIVATE=yes + +.include "../../../Makefile.serverlib" + +LIB= ddc + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= ddc.c interpret_edid.c print_edid.c ddcProperty.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/i2c + +CWARNFLAGS.clang+= -Wno-format + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/GLcore/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/GLcore/Makefile new file mode 100644 index 000000000..0108bf037 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/GLcore/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1 2008/09/26 06:57:03 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= GLcore + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.GLcore} GLcoremodule.c + +.include "../../../../GL/GLcore/Makefile.GLcore" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/Makefile new file mode 100644 index 000000000..77e56dde7 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/Makefile @@ -0,0 +1,39 @@ +# $NetBSD: Makefile,v 1.9 2010/05/22 05:45:01 mrg Exp $ + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= dixmods + +.PATH: ${X11SRCDIR.xorg-server}/mi +SRCS= miinitext.c + +CPPFLAGS+= \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/loader + +CPPFLAGS+= \ + ${X11FLAGS.EXTENSION} \ + -DHAVE_DIX_CONFIG_H \ + -DXFree86LOADER + +SUBDIR = \ + dbe \ + extmod \ + fb \ + glx \ + record \ + shadow \ + wfb \ + xorgxkb + +COPTS.miinitext.c= -Wno-error # XXX xf86bigfstr.h + +.include +LIBDIR= ${XMODULEDIR} +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/Makefile.dixmod b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/Makefile.dixmod new file mode 100644 index 000000000..652c129e2 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/Makefile.dixmod @@ -0,0 +1,24 @@ +# $NetBSD: Makefile.dixmod,v 1.6 2010/11/23 08:22:31 mrg Exp $ + +.include + +MKLINT= no + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/dbe \ + -I${X11SRCDIR.xorg-server}/glx \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= ${X11FLAGS.DIX} + +.include +LIBDIR=${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/afb/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/afb/Makefile new file mode 100644 index 000000000..5fa21d053 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/afb/Makefile @@ -0,0 +1,7 @@ +# $NetBSD: Makefile,v 1.1 2008/08/06 07:16:40 mrg Exp $ + +LIB= afb + +SRCS= afbmodule.c + +.include "../Makefile.dixmod" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/cfb/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/cfb/Makefile new file mode 100644 index 000000000..8c31d9832 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/cfb/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:23:33 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions +PIXELSIZE= 8 + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= cfb + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.cfb} cfbmodule.c + +.include "../../../../cfb/Makefile.cfb" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/cfb32/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/cfb32/Makefile new file mode 100644 index 000000000..72a4d64d4 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/cfb32/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:24:12 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions +PIXELSIZE= 32 + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= cfb32 + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.cfb} cfb32module.c + +.include "../../../../cfb/Makefile.cfb" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/dbe/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/dbe/Makefile new file mode 100644 index 000000000..72fb42d4c --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/dbe/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.5 2010/11/23 08:22:31 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= dbe + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.dbe} dbemodule.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/xorg +CPPFLAGS+= -DHAVE_XORG_CONFIG_H ${X11INCS.DIX} + +COPTS.dbe.c+= -Wno-error + +.include "../../../../dbe/Makefile.dbe" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/extmod/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/extmod/Makefile new file mode 100644 index 000000000..56adcedbc --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/extmod/Makefile @@ -0,0 +1,45 @@ +# $NetBSD: Makefile,v 1.10 2010/11/23 08:22:32 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= extmod + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod +SRCS= xf86dga2.c \ + xvmod.c \ + xf86vmode.c \ + modinit.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/afb \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/mfb \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/cfb \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/dbe \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/hw/xfree86/loader \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/miext/shadow \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +CPPFLAGS+= ${X11FLAGS.DIX} ${X11INCS.DIX} \ + -DHAVE_XORG_CONFIG_H + +# XXX +CPPFLAGS.xf86RandR12.c= -Wno-error +CPPFLAGS.xf86dga2.c= -Wno-error +CPPFLAGS.xf86vmode.c= -Wno-error # XXX xf86vmstr.h + +XEXTMODULEOBJDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/server/xorg-server/Xext/Xextmodule && ${PRINTOBJDIR} +LIBXEXTMODULE= ${XEXTMODULEOBJDIR}/libXextmodule.a + +LDADD= -L${XEXTMODULEOBJDIR} -lXextmodule +DPADD= ${LIBXEXTMODULE} + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/fb/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/fb/Makefile new file mode 100644 index 000000000..2811c8cc9 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/fb/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.2 2008/08/09 11:16:02 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= fb + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.fb} fbmodule.c fbcmap_mi.c + +.include "../../../../fb/Makefile.fb" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/freetype/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/freetype/Makefile new file mode 100644 index 000000000..0d0e084ee --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/freetype/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.3 2009/06/11 05:43:16 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/fonts + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= freetype + +SRCS= # ftmodule.c + +.include "../Makefile.dixmod" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/glx/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/glx/Makefile new file mode 100644 index 000000000..24b9c4412 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/glx/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2009/06/12 01:59:05 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= glx + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.glx} glxmodule.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/${LIB} + +.include "../../../../glx/Makefile.glx" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/mfb/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/mfb/Makefile new file mode 100644 index 000000000..b4d29d234 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/mfb/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.3 2008/08/26 04:05:35 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= mfb + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.mfb} mfbmodule.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/xorg + +.include "../../../../mfb/Makefile.mfb" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/record/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/record/Makefile new file mode 100644 index 000000000..7c481b911 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/record/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.2 2008/08/10 06:43:29 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= record + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.record} recordmod.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/common + +.include "../../../../record/Makefile.record" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/shadow/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/shadow/Makefile new file mode 100644 index 000000000..45b332316 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/shadow/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:37:33 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= shadow + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.shadow} shmodule.c + +.include "../../../../miext/shadow/Makefile.shadow" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/type1/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/type1/Makefile new file mode 100644 index 000000000..5f7712264 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/type1/Makefile @@ -0,0 +1,12 @@ +# $NetBSD: Makefile,v 1.2 2008/08/10 06:30:21 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/fonts + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= type1 + +SRCS= type1mod.c + +.include "../Makefile.dixmod" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/wfb/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/wfb/Makefile new file mode 100644 index 000000000..11480bc1e --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/wfb/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.2 2009/06/12 01:59:05 mrg Exp $ + +LIB= wfb + +SRCS= fbmodule.c fbcmap_mi.c + +CPPFLAGS+= -DFB_ACCESS_WRAPPER \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/fb + +.include "../Makefile.dixmod" + +.PATH: ${X11SRCDIR.xorg-server}/fb diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/xorgxkb/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/xorgxkb/Makefile new file mode 100644 index 000000000..8e41d0c3d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/xorgxkb/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.2 2009/06/12 01:59:05 mrg Exp $ + +LIB= xorgxkb + +SRCS= xkbVT.c xkbPrivate.c xkbKillSrv.c + +CPPFLAGS= -I${X11SRCDIR.xorg-server}/Xext + +.include "../Makefile.dixmod" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/xtrap/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/xtrap/Makefile new file mode 100644 index 000000000..566a1333f --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dixmods/xtrap/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.4 2008/08/29 04:30:07 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../../Makefile.serverlib" +.include "../../../../Makefile.servermod" + +LIB= xtrap + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dixmods +SRCS= ${SRCS.XTrap} xf86XTrapModule.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/xorg + +.include "../../../../XTrap/Makefile.xtrap" diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/doc/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/doc/Makefile new file mode 100644 index 000000000..fa3835699 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/doc/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.6 2011/08/02 07:41:01 mrg Exp $ + +.include + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/doc +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/doc/man + +FILES= README.modes + +FILESDIR= ${X11USRLIBDIR}/X11/doc + +MAN= Xorg.1 xorg.conf.5 +# xorg.conf.d.5? + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dri/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dri/Makefile new file mode 100644 index 000000000..c27803ed7 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dri/Makefile @@ -0,0 +1,45 @@ +# $NetBSD: Makefile,v 1.10 2010/11/23 08:22:32 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= dri + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= dri.c drimodule.c xf86dri.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/glx \ + -I${X11SRCDIR.xorg-server}/GL/include \ + -I${X11SRCDIR.xorg-server}/modes \ + -I${X11SRCDIR.xorg-server}/ddc \ + -I${X11SRCDIR.xorg-server}/i2c \ + -I${X11SRCDIR.xorg-server}/parser \ + -I${X11SRCDIR.xorg-server}/ramdac \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.MesaLib}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/dri \ + -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= -DXF86DRI \ + ${X11FLAGS.DIX} + +CPPFLAGS.dri.c= -Wno-error +CPPFLAGS.drimodule.c= -Wno-error # XXX xf86dristr.h +CPPFLAGS.xf86dri.c= -Wno-error # XXX xf86dristr.h + +LIBDPLIBS= drm ${.CURDIR}/../../../../../lib/libdrm + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dri2/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dri2/Makefile new file mode 100644 index 000000000..f08ca262e --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dri2/Makefile @@ -0,0 +1,44 @@ +# $NetBSD: Makefile,v 1.6 2010/11/23 08:22:32 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules/extensions + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= dri2 + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= dri2.c dri2ext.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/xfixes \ + -I${X11SRCDIR.xorg-server}/glx \ + -I${X11SRCDIR.xorg-server}/GL/include \ + -I${X11SRCDIR.xorg-server}/modes \ + -I${X11SRCDIR.xorg-server}/ddc \ + -I${X11SRCDIR.xorg-server}/i2c \ + -I${X11SRCDIR.xorg-server}/parser \ + -I${X11SRCDIR.xorg-server}/ramdac \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.MesaLib}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/dri \ + -I${DESTDIR}${X11INCDIR}/libdrm \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= -DXF86DRI \ + ${X11FLAGS.DIX} + +LIBDPLIBS= drm ${.CURDIR}/../../../../../lib/libdrm + +COPTS.dri2ext.c+= -Wno-error + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/dummy/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/dummy/Makefile new file mode 100644 index 000000000..e91c2b970 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/dummy/Makefile @@ -0,0 +1,35 @@ +# $NetBSD: Makefile,v 1.4 2009/06/12 01:59:05 mrg Exp $ + +MKX11LOADABLE=no + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= dummy + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/dummylib +SRCS= dixprivates.c fatalerror.c logvwrite.c \ + verrorf.c xalloc.c \ + xf86allocscripi.c xf86addrestolist.c xf86drvmsg.c \ + xf86drvmsgverb.c xf86errorf.c xf86errorfverb.c \ + xf86getverb.c xf86info.c xf86msg.c \ + xf86msgverb.c xf86opt.c xf86screens.c xf86servisinit.c \ + xf86verbose.c + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/os-support/shared/ +SRCS+= sigiostubs.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/dummylib \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +COPTS.fatalerror.c+= -Wno-error +COPTS.xf86info.c+= -Wno-error + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/exa/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/exa/Makefile new file mode 100644 index 000000000..0228ac0e8 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/exa/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.7 2011/08/02 07:41:01 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" +.include "../../../exa/Makefile.exa" + +LIB= exa +MAN= exa.4 + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/exa +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/exa/man +SRCS+= ${SRCS.exa} examodule.c + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/i2c/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/i2c/Makefile new file mode 100644 index 000000000..f5f50eb00 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/i2c/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.5 2010/11/23 08:22:32 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= i2c + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= xf86i2c.c # xf86i2cmodule.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR} \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/hw/xfree86 \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= ${X11FLAGS.DIX} + +.include +LIBDIR= ${XMODULEDIR} +.include + diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/init/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/init/Makefile new file mode 100644 index 000000000..dfdffb305 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/init/Makefile @@ -0,0 +1,75 @@ +# $NetBSD: Makefile,v 1.8 2011/02/21 04:42:17 mrg Exp $ + +.include # for HOST_SH + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= init + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/common +SRCS= xf86Init.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/os \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xi \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/ddc \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/i2c \ + -I${X11SRCDIR.xorg-server}/hw/xfree86 \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/parser \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/loader \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/vgahw \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/rac \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/scanpci \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/vbe \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/int10 \ + -I${X11SRCDIR.xorg-server}/render \ + -I${X11SRCDIR.xorg-server}/randr \ + -I${X11SRCDIR.xorg-server}/../include \ + -I. + +.if !defined(__MINIX) +CPPFLAGS+= ${X11FLAGS.EXTENSION} ${X11FLAGS.OS_DEFINES} \ + ${X11FLAGS.DIX} \ + -DXFree86LOADER -DWSCONS_SUPPORT -D__XKBDEFRULES__='"xorg"' \ + -D__XSERVERNAME__='"Xorg"' -D__XCONFIGFILE__='"xorg.conf"' \ + -D__VENDORDWEBSUPPORT__='"http://wiki.X.Org"' \ + -DXVENDORNAME='"The X.Org Foundation"' \ + -DHAVE_XORG_CONFIG_H +.else +CPPFLAGS+= ${X11FLAGS.EXTENSION} ${X11FLAGS.OS_DEFINES} \ + ${X11FLAGS.DIX} \ + -DXFree86LOADER -D__XKBDEFRULES__='"xorg"' \ + -D__XSERVERNAME__='"Xorg"' -D__XCONFIGFILE__='"xorg.conf"' \ + -D__VENDORDWEBSUPPORT__='"http://wiki.X.Org"' \ + -DXVENDORNAME='"The X.Org Foundation"' \ + -DHAVE_XORG_CONFIG_H +.endif # !defined(__MINIX) + +.if ${MACHINE_ARCH} == "i386" +CPPFLAGS+= -DPCCONS_SUPPORT -DPCVT_SUPPORT +.endif + +.if ${MACHINE} == "cats" || ${MACHINE} == "ofppc" +CPPFLAGS+= -DPCVT_SUPPORT +.endif + +CPPFLAGS.xf86Init.c= -DOSNAME='"NetBSD/${MACHINE} ${OS_RELEASE} -"' \ + -DXORG_RELEASE='"Release 1.4.2"' \ + -DBUILDERADDR='"xorg@xorg.org"' \ + -DDEFAULT_MODULE_PATH=\"${X11USRLIBDIR}/modules\" \ + -DDEFAULT_LIBRARY_PATH=\"${X11USRLIBDIR}\" + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/int10/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/int10/Makefile new file mode 100644 index 000000000..78168d5f8 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/int10/Makefile @@ -0,0 +1,44 @@ +# $NetBSD: Makefile,v 1.8 2011/08/11 23:15:41 joerg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= int10 + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/int10 +SRCS= x86emu.c generic.c xf86x86emu.c xf86int10.c helper_mem.c \ + helper_exec.c xf86int10module.c + +CPPFLAGS+= -D__DRIVER__ -DFORCE_POST -D_CEXPORT= -DNO_LONG_LONG \ + -D_X86EMU -DNO_SYS_HEADERS + +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +CPPFLAGS+= -D_PC +.endif + +# do not muck around in IO space trying to enable / disable non-PCI VGAs +.if ${MACHINE} == "macppc" || ${MACHINE} == "sparc64" +CPPFLAGS+= -DNO_LEGACY_VGA +.endif + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/x86emu \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 + +COPTS.xf86x86emu.c= -Wno-error # XXX? + +CWARNFLAGS.clang+= -Wno-format + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/loader/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/loader/Makefile new file mode 100644 index 000000000..b6155de9f --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/loader/Makefile @@ -0,0 +1,57 @@ +# $NetBSD: Makefile,v 1.12 2012/03/27 00:36:06 joerg Exp $ + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= loader +LOADERDIR= ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +.PATH: ${LOADERDIR} + +SRCS= loader.c loadext.c loadmod.c os.c sdksyms.c + +.if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64" +#SRCS+= SparcMulDiv.S +.endif + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/parser \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/vbe \ + -I${X11SRCDIR.xorg-server}/miext/cw \ + -I${X11SRCDIR.xorg-server}/miext/sync \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/int10 \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/ddc \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/i2c \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/modes \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/ramdac \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/os \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/xfixes \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +CPPFLAGS+= ${X11FLAGS.OS_DEFINES} -DDLOPEN_SUPPORT -DHAS_SHM \ + -DIN_LOADER \ + ${x11FLAGS.DIX} + +.if ${MACHINE_ARCH} == "x86_64" +CPPFLAGS+= -DUseMMAP +.endif + +CPPFLAGS.loadmod.c= ${X11FLAGS.EXTENSION} -DDEFAULT_MODULE_PATH=\"${X11USRLIBDIR}/modules\" +CPPFLAGS.sdksyms.c= ${X11FLAGS.EXTENSION} + +#COPTS.sdksyms.c= -Wno-error +COPTS.loadmod.c= -Wno-error + +sdksyms.c: sdksyms.sh + CPP=${CPP:Q} AWK=${TOOL_AWK:Q} ${HOST_SH} $(LOADERDIR)/sdksyms.sh $(X11SRCDIR.xorg-server) ${CFLAGS} ${CPPFLAGS} +sdksyms.d: sdksyms.c +CLEANFILES+= sdksyms.c + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/pcidata/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/pcidata/Makefile new file mode 100644 index 000000000..46c5da58a --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/pcidata/Makefile @@ -0,0 +1,38 @@ +# $NetBSD: Makefile,v 1.5 2009/06/12 01:59:06 mrg Exp $ + +# XXX this one is installed in modular-xorg-server + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= pcidata + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/scanpci +SRCS= xf86PciData.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/os \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xi \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/parser \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/loader \ + -I${X11SRCDIR.xorg-server}/rac \ + -I. + +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +FILES= pci.ids +FILESDIR= ${X11ROOTDIR}/share/pciids +.endif + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/rac/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/rac/Makefile new file mode 100644 index 000000000..4794aa7df --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/rac/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.1 2008/08/05 05:25:49 mrg Exp $ + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= rac + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= xf86RAC.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +CPPFLAGS+= ${X11FLAGS.DIX} + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/ramdac/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/ramdac/Makefile new file mode 100644 index 000000000..1cb1662fe --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/ramdac/Makefile @@ -0,0 +1,29 @@ +# $NetBSD: Makefile,v 1.5 2010/11/23 08:22:33 mrg Exp $ + +#XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= ramdac + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= xf86RamDac.c xf86RamDacCmap.c \ + xf86Cursor.c xf86HWCurs.c IBM.c BT.c TI.c \ + xf86BitOrder.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= ${X11FLAGS.DIX} + +CPPFLAGS.xf86BitOrder.c= -DRAMDAC_MODULE + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/scanpci/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/scanpci/Makefile new file mode 100644 index 000000000..933335da1 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/scanpci/Makefile @@ -0,0 +1,34 @@ +# $NetBSD: Makefile,v 1.4 2008/08/24 13:47:05 rtr Exp $ + +# XXX this one is installed in modular-xorg-server + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= scanpci + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/scanpci +SRCS= xf86ScanPci.c +DPSRCS+=xf86PciIds.h + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/os \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xi \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/parser \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/loader \ + -I${X11SRCDIR.xorg-server}/rac \ + -I. + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/shadowfb/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/shadowfb/Makefile new file mode 100644 index 000000000..39ff2f694 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/shadowfb/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.4 2009/06/12 01:59:06 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= shadowfb +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= sfbmodule.c shadow.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/render \ + -I${DESTDIR}${X11INCDIR}/X11/extensions + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/utils/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/Makefile new file mode 100644 index 000000000..9e3d69bc8 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.15 2011/02/21 04:42:17 mrg Exp $ + +SUBDIR= cvt gtf +#SUBDIR= cvt gtf xorgconfig + +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +#SUBDIR+=ioport pcitweak scanpci +.endif + +.if ${MACHINE} == "cats" || ${MACHINE} == "macppc" || \ + ${MACHINE} == "netwinder" || ${MACHINE_ARCH} == "sparc" || \ + ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "alpha" || \ + ${MACHINE} == "prep" || ${MACHINE} == "bebox" || \ + ${MACHINE} == "ofppc" +#SUBDIR+=pcitweak scanpci +.endif + +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/utils/Makefile.utils b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/Makefile.utils new file mode 100644 index 000000000..15c2e685f --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/Makefile.utils @@ -0,0 +1,14 @@ +# $NetBSD: Makefile.utils,v 1.5 2008/08/15 15:55:06 rtr Exp $ + +.include + +#SCANPCIINCDIR!= cd ${NETBSDSRCDIR}/x11/Xserver/hw/xfree86/bin/xf86cfg && ${PRINTOBJDIR} +#XF86OBJDIR!= cd ${NETBSDSRCDIR}/x11/Xserver/hw/xfree86/xf86config && ${PRINTOBJDIR} +#XLOADEROBJDIR!= cd ${NETBSDSRCDIR}/x11/Xserver/hw/xfree86/xloader && ${PRINTOBJDIR} +DUMMYOBJDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/server/xorg-server/hw/xfree86/dummy && ${PRINTOBJDIR} +SCANPCIOBJDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/server/xorg-server/hw/xfree86/scanpci && ${PRINTOBJDIR} +XORGOSOBJDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/server/xorg-server/hw/xfree86/xorgos && ${PRINTOBJDIR} + +LIBDUMMY= ${DUMMYOBJDIR}/libdummy.a +LIBXORGOS= ${XORGOSOBJDIR}/libxorgos.a +LIBSCANPCI= ${SCANPCIOBJDIR}/libscanpci.a diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/utils/cvt/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/cvt/Makefile new file mode 100644 index 000000000..51309606b --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/cvt/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.7 2011/08/02 09:11:38 mrg Exp $ + +PROG= cvt +SRCS= cvt.c xf86cvt.c xprintf.c +MAN= cvt.1 + +.include "../Makefile.utils" + +CPPFLAGS+= ${X11FLAGS.DIX} -DHAVE_XORG_CONFIG_H \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/../include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/ddc \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/parser + +LDADD+= -lm +DPADD+= ${LIBM} + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/utils/${PROG} +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/utils/man +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/modes +.PATH: ${X11SRCDIR.xorg-server}/os + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/utils/gtf/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/gtf/Makefile new file mode 100644 index 000000000..ed579099d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/gtf/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.3 2011/08/02 07:41:01 mrg Exp $ + +.include + +PROG= gtf +MAN= gtf.1 + +CPPFLAGS+= -DHAVE_XORG_CONFIG_H \ + -I${X11SRCDIR.xorg-server}/../include + +LDADD+= -lm +DPADD+= ${LIBM} + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/utils/${PROG} +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/utils/man + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/utils/ioport/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/ioport/Makefile new file mode 100644 index 000000000..3637e7ad0 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/ioport/Makefile @@ -0,0 +1,43 @@ +# $NetBSD: Makefile,v 1.6 2010/11/23 08:22:33 mrg Exp $ + +.include + +PROG= ioport +# XXX NOMAN no workie? +MKMAN= no + +.include "../Makefile.utils" + +CPPFLAGS+= -DHAVE_XORG_CONFIG_H \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include + + +LDADD= -L${XORGOSOBJDIR} -lxorgos \ + -L${DUMMYOBJDIR} -lm + +DPADD= ${LIBXORGOS} ${LIBM} + +.if ${MACHINE_ARCH} == "i386" +LDADD+= -li386 +DPADD+= ${LIBI386} +.elif ${MACHINE_ARCH} == "x86_64" +LDADD+= -lx86_64 +DPADD+= ${LIBX86_64} +.elif ${MACHINE_ARCH} == "alpha" +LDADD+= -lalpha +DPADD+= ${LIBALPHA} +.endif + +LINKS= ${X11BINDIR}/ioport ${X11BINDIR}/inb \ + ${X11BINDIR}/ioport ${X11BINDIR}/inw \ + ${X11BINDIR}/ioport ${X11BINDIR}/inl \ + ${X11BINDIR}/ioport ${X11BINDIR}/outb \ + ${X11BINDIR}/ioport ${X11BINDIR}/outw \ + ${X11BINDIR}/ioport ${X11BINDIR}/outl + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/utils/${PROG} + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/utils/pcitweak/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/pcitweak/Makefile new file mode 100644 index 000000000..d152eb62e --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/pcitweak/Makefile @@ -0,0 +1,34 @@ +# $NetBSD: Makefile,v 1.6 2010/11/23 08:22:34 mrg Exp $ + +.include + +PROG= pcitweak +MAN= pcitweak.1 + +.include "../Makefile.utils" + +CPPFLAGS+= -DHAVE_XORG_CONFIG_H \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include + +LDADD= -L${XORGOSOBJDIR} -lxorgos \ + -L${DUMMYOBJDIR} -lm + +DPADD= ${LIBXORGOS} ${LIBM} + +.if ${MACHINE_ARCH} == "i386" +LDADD+= -li386 +DPADD+= ${LIBI386} +.elif ${MACHINE_ARCH} == "x86_64" +LDADD+= -lx86_64 +DPADD+= ${LIBX86_64} +.elif ${MACHINE_ARCH} == "alpha" +LDADD+= -lalpha +DPADD+= ${LIBALPHA} +.endif + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/utils/${PROG} + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/utils/scanpci/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/scanpci/Makefile new file mode 100644 index 000000000..e080d9a85 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/scanpci/Makefile @@ -0,0 +1,37 @@ +# $NetBSD: Makefile,v 1.7 2010/11/23 08:22:34 mrg Exp $ + +.include + +PROG= scanpci +MAN= scanpci.1 + +.include "../Makefile.utils" + +CPPFLAGS+= -DHAVE_XORG_CONFIG_H \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/scanpci + +LDADD= -L${SCANPCIOBJDIR} -lscanpci \ + -Wl,-rpath,${X11USRLIBDIR}/modules \ + -L${XORGOSOBJDIR} -lxorgos \ + -L${DUMMYOBJDIR} -lm + +DPADD= ${LIBSCANPCI} ${LIBXORGOS} ${LIBM} + +.if ${MACHINE_ARCH} == "i386" +LDADD+= -li386 +DPADD+= ${LIBI386} +.elif ${MACHINE_ARCH} == "x86_64" +LDADD+= -lx86_64 +DPADD+= ${LIBX86_64} +.elif ${MACHINE_ARCH} == "alpha" +LDADD+= -lalpha +DPADD+= ${LIBALPHA} +.endif + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/utils/${PROG} + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/utils/xorgconfig/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/xorgconfig/Makefile new file mode 100644 index 000000000..0d26770a5 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/utils/xorgconfig/Makefile @@ -0,0 +1,46 @@ +# $NetBSD: Makefile,v 1.8 2011/02/21 04:42:17 mrg Exp $ + +.include + +PROG= xorgconfig + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/utils/xorgconfig + +SRCS= xorgconfig.c cards.c + +LDADD= -lxkbfile -lXext -lX11 +DPADD= ${LIBXKBFILE} ${LIBXEXT} ${LIBX11} + +.if !defined(__MINIX) +CPPFLAGS+= -DCARD_DATABASE_FILE='"${X11USRLIBDIR}/X11/Cards"' \ + -DXKB_RULES_DIR=\"${X11USRLIBDIR}/X11/xkb/rules\" \ + -DXVERSION=${XORG_VERSION_CURRENT} \ + -DWSCONS_SUPPORT -D__XKBDEFRULES__='"xorg"' \ + -D__XCONFIGFILE__='"xorg.conf"' \ + -D__XSERVERNAME__='"Xorg"' \ + -D__XKBDEFRULES__='"xorg"' \ + -DXVENDORNAME='"The X.Org Foundation"' \ + -DFILEMANSUFFIX=\"5\" \ + -DXVERSIONSTRING=\"1.4.2\" +.else +CPPFLAGS+= -DCARD_DATABASE_FILE='"${X11USRLIBDIR}/X11/Cards"' \ + -DXKB_RULES_DIR=\"${X11USRLIBDIR}/X11/xkb/rules\" \ + -DXVERSION=${XORG_VERSION_CURRENT} \ + -D__XKBDEFRULES__='"xorg"' \ + -D__XCONFIGFILE__='"xorg.conf"' \ + -D__XSERVERNAME__='"Xorg"' \ + -D__XKBDEFRULES__='"xorg"' \ + -DXVENDORNAME='"The X.Org Foundation"' \ + -DFILEMANSUFFIX=\"5\" \ + -DXVERSIONSTRING=\"1.4.2\" +.endif # !defined(__MINIX) + +.if ${MACHINE_ARCH} == "i386" || ${MACHINE} == "cats" || ${MACHINE} == "ofppc" +CPPFLAGS+= -DPCVT_SUPPORT +.endif + +FILES+= Cards +FILESDIR_Cards= ${X11USRLIBDIR}/X11 + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/vbe/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/vbe/Makefile new file mode 100644 index 000000000..3c9022615 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/vbe/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.4 2009/06/12 01:59:06 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= vbe + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= vbe.c vbeModes.c vbe_module.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/ddc \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/i2c \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/int10 + +# XXX +COPTS.vbe.c= -Wno-error + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/vgahw/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/vgahw/Makefile new file mode 100644 index 000000000..5a0b53ccd --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/vgahw/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.4 2009/06/12 01:59:06 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= vgahw + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= vgaHW.c vgaHWmodule.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/vgahw \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/cfb \ + -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/ddc \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/i2c + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/x86emu/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/x86emu/Makefile new file mode 100644 index 000000000..3466cb05e --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/x86emu/Makefile @@ -0,0 +1,26 @@ +# $NetBSD: Makefile,v 1.2 2008/08/15 15:55:06 rtr Exp $ + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= xf86emu + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/x86emu +SRCS= debug.c \ + decode.c \ + fpu.c \ + ops2.c \ + ops.c \ + prim_ops.c \ + sys.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/x86emu \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +CPPFLAGS+= ${X11FLAGS.DIX} + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/xaa/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/xaa/Makefile new file mode 100644 index 000000000..a63dd082d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/xaa/Makefile @@ -0,0 +1,78 @@ +# $NetBSD: Makefile,v 1.7 2011/08/02 09:11:38 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= xaa + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} + +SRCS= xaaInit.c xaaGC.c xaaInitAccel.c xaaFallback.c \ + xaaBitBlt.c xaaCpyArea.c xaaGCmisc.c xaaCpyWin.c \ + xaaCpyPlane.c xaaFillRect.c xaaTEText.c xaaNonTEText.c \ + xaaPCache.c xaaSpans.c xaaROP.c xaaImage.c \ + xaaRect.c xaaLineMisc.c xaaBitOrder.c \ + xaaFillPoly.c xaaWideLine.c xaaTables.c xaaFillArc.c \ + xaaLine.c xaaDashLine.c xaaOverlay.c xaaOffscreen.c \ + xaaOverlayDF.c xaaStateChange.c xaaPict.c + +SRCS+= l-xaaBitmap.c l-xaaStipple.c l-xaaTEGlyph.c \ + l3-xaaBitmap.c l3-xaaStipple.c \ + m-xaaBitmap.c m-xaaStipple.c m-xaaTEGlyph.c \ + m3-xaaBitmap.c m3-xaaStipple.c \ + lf-xaaBitmap.c lf-xaaStipple.c lf-xaaTEGlyph.c \ + lf3-xaaBitmap.c lf3-xaaStipple.c \ + mf-xaaBitmap.c mf-xaaStipple.c mf-xaaTEGlyph.c \ + mf3-xaaBitmap.c mf3-xaaStipple.c \ + s-xaaLine.c s-xaaDashLine.c \ + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/include/extensions \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/miext/cw \ + -I${X11SRCDIR.xorg-server}/render \ + -I${X11SRCDIR.xorg-server}/../include + +# XXX to find files lokoing for "../../../../hw/something" +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod \ + +CPPFLAGS+= ${X11FLAGS.DIX} + +.if 0 +CPPFLAGS.lsb_fixed_xaaBitmap.c= -DLSBFIRST -DFIXEDBASE +CPPFLAGS.lsb_fixed_xaaBitmap3.c= -DLSBFIRST -DFIXEDBASE -DTRIPLE_BITS +CPPFLAGS.lsb_fixed_xaaStipple.c= -DLSBFIRST -DFIXEDBASE +CPPFLAGS.lsb_fixed_xaaStipple3.c= -DLSBFIRST -DFIXEDBASE -DTRIPLE_BITS +CPPFLAGS.lsb_fixed_xaaTEGlyph.c= -DLSBFIRST -DFIXEDBASE +CPPFLAGS.lsb_xaaBitmap.c= -DLSBFIRST +CPPFLAGS.lsb_xaaBitmap3.c= -DLSBFIRST -DTRIPLE_BITS +CPPFLAGS.lsb_xaaStipple.c= -DLSBFIRST +CPPFLAGS.lsb_xaaStipple3.c= -DLSBFIRST -DTRIPLE_BITS +CPPFLAGS.lsb_xaaTEGlyph.c= -DLSBFIRST +CPPFLAGS.msb_fixed_xaaBitmap.c= -DMSBFIRST -DFIXEDBASE +CPPFLAGS.msb_fixed_xaaBitmap3.c= -DMSBFIRST -DFIXEDBASE -DTRIPLE_BITS +CPPFLAGS.msb_fixed_xaaStipple.c= -DMSBFIRST -DFIXEDBASE +CPPFLAGS.msb_fixed_xaaStipple3.c= -DMSBFIRST -DFIXEDBASE -DTRIPLE_BITS +CPPFLAGS.msb_fixed_xaaTEGlyph.c= -DMSBFIRST -DFIXEDBASE +CPPFLAGS.msb_xaaBitmap.c= -DMSBFIRST +CPPFLAGS.msb_xaaBitmap3.c= -DMSBFIRST -DTRIPLE_BITS +CPPFLAGS.msb_xaaStipple.c= -DMSBFIRST +CPPFLAGS.msb_xaaStipple3.c= -DMSBFIRST -DTRIPLE_BITS +CPPFLAGS.msb_xaaTEGlyph.c= -DMSBFIRST +CPPFLAGS.xaaSeg.c= -DPOLYSEGMENT +CPPFLAGS.xaaDashSeg.c= -DPOLYSEGMENT +.endif + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/xf1bpp/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/xf1bpp/Makefile new file mode 100644 index 000000000..d91e4faf4 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/xf1bpp/Makefile @@ -0,0 +1,80 @@ +# $NetBSD: Makefile,v 1.3 2008/08/24 13:47:05 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= xf1bpp + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= mfbseg.c \ + mfbpgbwht.c \ + mfbpgbblak.c \ + mfbpgbinv.c \ + mfbigbwht.c \ + mfbigbblak.c \ + mfbpawhite.c \ + mfbpablack.c \ + mfbpainv.c \ + mfbtewhite.c \ + mfbteblack.c \ + mfbplywhite.c \ + mfbplyblack.c \ + mfbplyinv.c \ + mfbbltC.c \ + mfbbltX.c \ + mfbbltCI.c \ + mfbbltO.c \ + mfbbltG.c \ + mfbtileC.c \ + mfbtileG.c + +SRCS+= maskbits.c \ + mfbbitblt.c \ + mfbbres.c \ + mfbbresd.c \ + mfbbstore.c \ + mfbclip.c \ + mfbcmap.c \ + mfbfillarc.c \ + mfbfillrct.c \ + mfbfillsp.c \ + mfbfont.c \ + mfbgc.c \ + mfbgetsp.c \ + mfbhrzvert.c \ + mfbimage.c \ + mfbline.c \ + mfbmisc.c \ + mfbpixmap.c \ + mfbpntwin.c \ + mfbpolypnt.c \ + mfbpushpxl.c \ + mfbscrclse.c \ + mfbscrinit.c \ + mfbsetsp.c \ + mfbwindow.c \ + mfbzerarc.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86 \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +# XXX for ../../../../ files +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod + +COPTS.mfbclip.c= -Wno-error +COPTS.mfbfont.c= -Wno-error +COPTS.mfbmisc.c= -Wno-error +COPTS.mfbpushpxl.c= -Wno-error + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/xf4bpp/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/xf4bpp/Makefile new file mode 100644 index 000000000..c3d3af59f --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/xf4bpp/Makefile @@ -0,0 +1,71 @@ +# $NetBSD: Makefile,v 1.3 2008/08/24 13:47:05 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= xf4bpp + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= ppcArea.c \ + ppcBStore.c \ + ppcClip.c \ + ppcCpArea.c \ + ppcCReduce.c \ + ppcDepth.c \ + ppcFillRct.c \ + ppcWinFS.c \ + ppcPixFS.c \ + ppcGC.c \ + ppcGetSp.c \ + ppcImg.c \ + ppcPixmap.c \ + ppcPntWin.c \ + ppcPolyPnt.c \ + ppcQuery.c \ + ppcRslvC.c \ + ppcSetSp.c \ + ppcWindow.c \ + ppcIO.c \ + emulOpStip.c \ + emulRepAre.c \ + emulTile.c \ + vgaGC.c \ + vgaBitBlt.c \ + vgaImages.c \ + vgaStipple.c \ + vgaSolid.c \ + offscreen.c \ + wm3.c \ + mfbimggblt.c \ + mfbline.c \ + mfbseg.c \ + mfbhrzvert.c \ + mfbbres.c \ + mfbbresd.c \ + mfbfillarc.c \ + mfbzerarc.c \ + vgamodule.c + + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/xf1bpp \ + -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/cfb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +CPPFLAGS+= -DXF86VGA16 + +# XXX for ../../../../ files +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/xf86config/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/xf86config/Makefile new file mode 100644 index 000000000..e87d1e816 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/xf86config/Makefile @@ -0,0 +1,31 @@ +# $NetBSD: Makefile,v 1.4 2011/08/11 23:15:41 joerg Exp $ + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= xf86config + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/parser +SRCS= DRI.c Device.c Extensions.c Files.c Flags.c Input.c Layout.c \ + Module.c Monitor.c Pointer.c Screen.c Vendor.c Video.c read.c \ + scan.c write.c \ + InputClass.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xi \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/parser \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= ${X11FLAGS.DIX} +CPPFLAGS+= -DPROJECTROOT='"${X11ROOTDIR}"' + +CWARNFLAGS.clang+= -Wno-format + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/xf86modes/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/xf86modes/Makefile new file mode 100644 index 000000000..b729ed99d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/xf86modes/Makefile @@ -0,0 +1,50 @@ +# $NetBSD: Makefile,v 1.5 2011/08/11 23:15:41 joerg Exp $ + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= xf86modes + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/modes +SRCS=\ + xf86Crtc.c \ + xf86Cursors.c \ + xf86cvt.c \ + xf86gtf.c \ + xf86DisplayIDModes.c \ + xf86EdidModes.c \ + xf86Modes.c \ + xf86RandR12.c \ + xf86Rotate.c \ + xf86DiDGA.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/ddc \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/i2c \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/loader \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/rac \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/parser \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/scanpci \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/vbe \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/int10 \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/vgahw \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/ramdac \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/xfixes \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= ${X11FLAGS.DIX} \ + -DHAVE_XORG_CONFIG_H + +# XXX +CPPFLAGS.xf86RandR12.c= -Wno-error + +CWARNFLAGS.clang+= -Wno-format + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/xf8_16bpp/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/xf8_16bpp/Makefile new file mode 100644 index 000000000..78a5c5fea --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/xf8_16bpp/Makefile @@ -0,0 +1,25 @@ +# $NetBSD: Makefile,v 1.4 2009/06/12 01:59:07 mrg Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= xf8_16bpp + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= xf8_16module.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/xf8_32bpp/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/xf8_32bpp/Makefile new file mode 100644 index 000000000..9e80b2634 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/xf8_32bpp/Makefile @@ -0,0 +1,45 @@ +# $NetBSD: Makefile,v 1.3 2008/08/24 13:47:05 rtr Exp $ + +XMODULEDIR= ${X11USRLIBDIR}/modules + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= xf8_32bpp + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} +SRCS= cfbbstore.c \ + cfbcpyarea.c \ + cfbcpyplane.c \ + cfbgcmisc.c \ + cfbimage.c \ + cfbpntwin.c \ + cfbscrinit.c \ + cfbwindow.c \ + xf86overlay.c \ + cfb8_32module.c \ + cfbgc8.c \ + cfbgc32.c \ + cfbgcunder.c + + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/xf1bpp \ + -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/cfb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xext + +# XXX for ../../../../ files +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/dixmods/extmod + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xfree86/xorgos/Makefile b/external/mit/xorg/server/xorg-server/hw/xfree86/xorgos/Makefile new file mode 100644 index 000000000..978029cbf --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xfree86/xorgos/Makefile @@ -0,0 +1,186 @@ +# $NetBSD: Makefile,v 1.36 2013/11/27 02:04:48 macallan Exp $ + +.include "../../../Makefile.serverlib" +.include "../../../Makefile.servermod" + +LIB= xorgos + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/os-support +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bsd +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/os-support/shared +SRCS.bsd= \ + bsd_VTsw.c bsd_bell.c bsd_init.c bsd_pci.c \ + kmod_noop.c \ + posix_tty.c sigio.c vidmem.c + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/os-support/linux +.if ${MACHINE_ARCH} == "x86_64" +SRCS.bsd+= pm_noop.c +.endif +.if ${MACHINE_ARCH} == "i386" +.if !defined(__MINIX) +SRCS.bsd+= bsd_apm.c +.else +SRCS.bsd+= pm_noop.c +.endif # !defined(__MINIX) +.endif +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +.if !defined(__MINIX) +SRCS.bsd+= i386_video.c lnx_agp.c +.else +SRCS.bsd+= i386_video.c agp_noop.c +.endif # !defined(__MINIX) +.for _FN in ${SRCS.bsd} +.if !defined(__MINIX) +.if ${MACHINE_ARCH} == "i386" +CPPFLAGS.${_FN}+= -DPCCONS_SUPPORT -DHAS_APERTURE_DRV +.endif +CPPFLAGS.${_FN}+= -DUSE_I386_IOPL -DPCVT_SUPPORT -DWSCONS_SUPPORT \ + -DUSESTDRES -DHAVE_SYSV_IPC \ + -DHAS_MTRR_BUILTIN +.else +CPPFLAGS.${_FN}= -DUSESTDRES -DHAVE_SYSV_IPC +.endif # !defined(__MINIX) +.endfor +.endif + +.if ${MACHINE} == "macppc" || ${MACHINE} == "prep" || ${MACHINE} == "bebox" || ${MACHINE} == "ofppc" +SRCS.bsd+= ppc_video.c pm_noop.c lnx_agp.c +.for _FN in ${SRCS.bsd} +CPPFLAGS.${_FN}= -DWSCONS_SUPPORT -DPCVT_SUPPORT -DUSESTDRES -DHAVE_SYSV_IPC +.endfor +.endif + +.if ${MACHINE_ARCH} == "alpha" +SRCS.bsd+= alpha_video.c bsd_ev56.c pm_noop.c agp_noop.c +.for _FN in ${SRCS.bsd} +CPPFLAGS.${_FN}= -DWSCONS_SUPPORT -DUSESTDRES -DHAVE_SYSV_IPC -DUSE_ALPHA_PIO +.endfor +.endif + +.if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64" +SRCS.bsd+= ppc_video.c pm_noop.c agp_noop.c +SRCS.bus+= netbsdSbus.c +.for _FN in ${SRCS.bsd} +CPPFLAGS.${_FN}= -DWSCONS_SUPPORT -DPCVT_SUPPORT -DUSESTDRES -DHAVE_SYSV_IPC +.endfor +.endif + +.if ${MACHINE} == "ews4800mips" || \ + ${MACHINE} == "hpcmips" || \ + ${MACHINE} == "newsmips" || \ + ${MACHINE} == "sgimips" || \ + ${MACHINE} == "evbmips" +SRCS.bsd+= ppc_video.c pm_noop.c agp_noop.c +.for _FN in ${SRCS.bsd} +CPPFLAGS.${_FN}= -DWSCONS_SUPPORT -DPCVT_SUPPORT -DUSESTDRES -DHAVE_SYSV_IPC +.endfor +.endif + +.if ${MACHINE} == "cats" || \ + ${MACHINE} == "evbarm" || \ + ${MACHINE} == "hpcarm" || \ + ${MACHINE} == "shark" || \ + ${MACHINE} == "netwinder" || \ + ${MACHINE} == "zaurus" +SRCS.bsd+= ppc_video.c pm_noop.c agp_noop.c +.for _FN in ${SRCS.bsd} +.if !defined(__MINIX) +CPPFLAGS.${_FN}= -DWSCONS_SUPPORT -DPCVT_SUPPORT -DUSESTDRES -DHAVE_SYSV_IPC +.else +CPPFLAGS.${_FN}= -DUSESTDRES -DHAVE_SYSV_IPC +.endif # !defined(__MINIX) +.endfor +.endif + +.if ${MACHINE} == "shark" +CPPFLAGS.ppc_video.c += -DPCI_MAGIC_IO_RANGE=0xf0000000 +.endif + +.if ${MACHINE} == "dreamcast" || \ + ${MACHINE} == "hpcsh" +SRCS.bsd+= ppc_video.c pm_noop.c agp_noop.c +.for _FN in ${SRCS.bsd} +CPPFLAGS.${_FN}= -DWSCONS_SUPPORT -DUSESTDRES -DHAVE_SYSV_IPC +.endfor +.endif + +.if ${MACHINE} == "hp300" || \ + ${MACHINE} == "luna68k" +SRCS.bsd+= ppc_video.c pm_noop.c agp_noop.c +.for _FN in ${SRCS.bsd} +CPPFLAGS.${_FN}= -DWSCONS_SUPPORT -DUSESTDRES -DHAVE_SYSV_IPC +.endfor +.endif + +.if ${MACHINE} == "vax" +SRCS.bsd+= ppc_video.c pm_noop.c agp_noop.c +.for _FN in ${SRCS.bsd} +CPPFLAGS.${_FN}= -DWSCONS_SUPPORT -DUSESTDRES -DHAVE_SYSV_IPC +.endfor +.endif + +# some platforms will probably need ioperm_noop.c + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus +SRCS.bus+= Pci.c + +.if ${MACHINE} == "macppc" || ${MACHINE} == "cats" || \ + ${MACHINE} == "sgimips" || ${MACHINE} == "shark" || \ + ${MACHINE} == "netwinder" || ${MACHINE_ARCH} == "sparc" || \ + ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "alpha" || \ + ${MACHINE} == "prep" || ${MACHINE} == "bebox" || ${MACHINE} == "ofppc" +#SRCS.bus+= netbsdPci.c +.endif + +.if ${MACHINE} == "sparc" || ${MACHINE} == "sparc64" || \ + ${MACHINE_ARCH} == "powerpc" || ${MACHINE} == "netwinder" +#CPPFLAGS.netbsdPci.c+= -DPCI_VIA_TTYE0 +.endif + +# XXX .S not built from automake either +.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "x86_64" +#SRCS.misc+= CBUSmemcpy.c CIODelay.c CSlowBcopy.c +#CPPFLAGS.BUSmemcpy.S= -DUSE_GAS +#CPPFLAGS.IODelay.S= -DUSE_GAS +#CPPFLAGS.SlowBcopy.S= -DUSE_GAS +.endif + +.if ${MACHINE} == "macppc" || ${MACHINE} == "cats" || \ + ${MACHINE} == "sgimips" || ${MACHINE_ARCH} == "sparc64" || \ + ${MACHINE_ARCH} == "sparc" || ${MACHINE} == "netwinder" || \ + ${MACHINE} == "shark" || ${MACHINE} == "ofppc" || \ + ${MACHINE_ARCH} == "alpha" || ${MACHINE} == "prep" || \ + ${MACHINE} == "bebox" +#SRCS.misc+= CBUSmemcpy.c CIODelay.c CSlowBcopy.c +.endif + +.PATH: ${X11SRCDIR.xorg-server}/hw/xfree86/os-support/misc +SRCS.misc+= SlowBcopy.c + +# XXX namespace collision so avoid it, only has to be done for non-i386. +#BUILDSYMLINKS= BUSmemcpy.c CBUSmemcpy.c \ +# IODelay.c CIODelay.c \ +# SlowBcopy.c CSlowBcopy.c + +SRCS= ${SRCS.bsd} ${SRCS.bus} ${SRCS.misc} xorgos.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bsd \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/bus \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/misc \ + -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support/shared \ + -I${X11SRCDIR.xc}/extras/drm/shared +.if ${X11DRI} != "no" +CPPFLAGS+= ${X11FLAGS.DRI} +.endif + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xnest/Makefile b/external/mit/xorg/server/xorg-server/hw/xnest/Makefile new file mode 100644 index 000000000..8daac903c --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xnest/Makefile @@ -0,0 +1,120 @@ +# $NetBSD: Makefile,v 1.14 2011/08/02 09:11:38 mrg Exp $ + +.include + +PROG= Xnest + +.include "../../Makefile.serverlib" +.include "../../Makefile.servermod" + +.PATH: ${X11SRCDIR.xorg-server}/hw/xnest +.PATH: ${X11SRCDIR.xorg-server}/hw/xnest/man +.PATH: ${X11SRCDIR.xorg-server}/Xext +.PATH: ${X11SRCDIR.xorg-server}/Xi +.PATH: ${X11SRCDIR.xorg-server}/mi +.PATH: ${X11SRCDIR.xorg-server}/fb +SRCS= Args.c Color.c Cursor.c Display.c Events.c Font.c \ + GC.c GCOps.c Handlers.c Init.c Keyboard.c \ + Pixmap.c Pointer.c Screen.c Visual.c Window.c \ + dpmsstubs.c stubs.c miinitext.c \ + fbcmap_mi.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xnest \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/os \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include \ + -I${X11INCS.DIX} + +CPPFLAGS+= ${X11FLAGS.OS_DEFINES} \ + ${X11FLAGS.EXTENSION} \ + ${X11FLAGS.DIX} \ + -DNO_HW_ONLY_EXTS -UXFree86LOADER -UMITSHM \ + -D__XKBDEFRULES__='"xorg"' + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xnest \ + -DHAVE_XNEST_CONFIG_H \ + -UGLXEXT + +CPPFLAGS.Events.c= -Wno-error +CPPFLAGS.Screen.c= -Wno-error +CPPFLAGS.Color.c= -Wno-error +CPPFLAGS.Window.c= -Wno-error +CPPFLAGS.miinitext.c= -UDPMSExtension + +.include "../../Makefile.Xserver" + +LDADD+= ${LDADD.dix} \ + ${LDADD.fb} \ + ${LDADD.mi} \ + ${LDADD.config} \ + ${LDADD.xfixes} \ + ${LDADD.Xext} \ + ${LDADD.dbe} \ + ${LDADD.record} \ + ${LDADD.randr} \ + ${LDADD.render} \ + ${LDADD.damageext} \ + ${LDADD.miext/damage} \ + ${LDADD.cw/cw} \ + ${LDADD.miext/shadow} \ + ${LDADD.miext/sync} \ + ${LDADD.Xi} \ + ${LDADD.xkb} \ + ${LDADD.xkbstubs} \ + ${LDADD.composite} \ + ${LDADD.os} \ + ${LDADD.glx} \ + -lXfont -lXext -lfontenc \ + -lpixman-1 -lX11 -lXau \ + -lXdmcp -lfreetype -lm #MINIX -lcrypto + +DPADD+= ${LDADD.dix} \ + ${DPADD.fb} \ + ${DPADD.mi} \ + ${DPADD.config} \ + ${DPADD.xfixes} \ + ${DPADD.Xext} \ + ${DPADD.dbe} \ + ${DPADD.record} \ + ${DPADD.render} \ + ${DPADD.randr} \ + ${DPADD.damageext} \ + ${DPADD.miext/damage} \ + ${DPADD.cw/cw} \ + ${DPADD.miext/shadow} \ + ${DPADD.miext/sync} \ + ${DPADD.Xi} \ + ${DPADD.xkb} \ + ${DPADD.composite} \ + ${DPADD.os} \ + ${DPADD.glx} \ + ${LIBXFONT} ${LIBXEXT} ${LIBFONTENC} \ + ${LIBPIXMAN-1} ${LIBX11} ${LIBXAU} \ + ${LIBXDMCP} ${LIBFREETYPE} ${LIBM} #MINIX ${LIBCRYPTO} + +.if !defined(__MINIX) +.if ${MACHINE_ARCH} == "i386" +LDADD+= -li386 +DPADD+= ${LIBI386} +.endif +.endif # !defined(__MINIX) + +.if ${MACHINE_ARCH} == "x86_64" +LDADD+= -lx86_64 +DPADD+= ${LIBX86_64} +.endif + +.if ${MACHINE_ARCH} == "alpha" +LDADD+= -lalpha +DPADD+= ${LIBALPHA} +.endif + +COPTS.miinitext.c+= -Wno-error # XXX xf86bigfstr.h + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/hw/xnest/Makefile.inc b/external/mit/xorg/server/xorg-server/hw/xnest/Makefile.inc new file mode 100644 index 000000000..01b5f2341 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/hw/xnest/Makefile.inc @@ -0,0 +1 @@ +.include "../Makefile.inc" diff --git a/external/mit/xorg/server/xorg-server/include/Makefile b/external/mit/xorg/server/xorg-server/include/Makefile new file mode 100644 index 000000000..b9e842fc9 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/include/Makefile @@ -0,0 +1,59 @@ +# $NetBSD: Makefile,v 1.10 2011/08/02 07:56:33 mrg Exp $ + +.include + +XORGSRC= ${X11SRCDIR.xorg-server} + +XORGINC_SUBDIR= Xext dbe exa fb include mi \ + miext/damage miext/shadow randr render xkb record +XF86_SUBDIR= common ddc dixmods/extmod dri fbdevhw i2c int10 modes \ + os-support os-support/bus parser rac ramdac shadowfb \ + vbe vgahw xaa xf1bpp xf4bpp xf8_16bpp xf8_32bpp dri2 + +.for _dir in ${XORGINC_SUBDIR} +.PATH: ${XORGSRC}/${_dir} +.endfor + +.for _dir in ${XF86_SUBDIR} +.PATH: ${XORGSRC}/hw/xfree86/${_dir} +.endfor + +.PATH: ${XORGSRC}/../include + +INCSDIR=${X11INCDIR}/xorg +INCS= BT.h IBM.h TI.h XIstubs.h Xprintf.h \ + bt829.h \ + callback.h closestr.h closure.h colormap.h \ + colormapst.h compiler.h cursor.h cursorstr.h damage.h damagestr.h \ + dbestruct.h dgaproc.h dix.h dixevents.h dixfont.h dixfontstr.h \ + dixgrabs.h dixstruct.h dri.h dristruct.h edid.h exa.h exevents.h \ + eventconvert.h events.h eventstr.h list.h \ + extension.h extinit.h extnsionst.h fb.h fbdevhw.h fboverlay.h \ + fbrop.h fi1236.h fourcc.h gc.h gcstruct.h geext.h globals.h \ + glyphstr.h i2c_def.h input.h inputstr.h inpututils.h \ + mi.h mibstore.h micmap.h micoord.h mifillarc.h mifpoly.h \ + migc.h miline.h mipict.h mipointer.h mipointrst.h misc.h miscstruct.h \ + mispans.h mistruct.h miwideline.h mizerarc.h msp3430.h opaque.h \ + os.h picture.h picturestr.h pixmap.h pixmapstr.h property.h \ + protocol-versions.h \ + propertyst.h randrstr.h region.h regionstr.h resource.h \ + rgb.h sarea.h screenint.h scrnintstr.h selection.h servermd.h \ + shadow.h shadowfb.h site.h swaprep.h swapreq.h tda8425.h tda9850.h \ + tda9885.h uda1380.h validate.h vbe.h vbeModes.h vgaHW.h \ + window.h windowstr.h xaa.h xaalocal.h xaarop.h \ + xkbDflts.h xkb.h set.h \ + xf86.h xf86Crtc.h xf86Cursor.h xf86DDC.h \ + xf86Modes.h xf86Module.h \ + xf86Opt.h xf86Optrec.h xf86Parser.h xf86Pci.h xf86PciInfo.h \ + xf86Priv.h xf86Privstr.h xf86RamDac.h xf86RandR12.h \ + xf86Rename.h xf86Xinput.h xf86_OSlib.h \ + xf86_OSproc.h xf86cmap.h xf86fbman.h \ + xf86i2c.h xf86int10.h xf86sbusBus.h xf86str.h xf86xv.h \ + xkbstr.h xkbrules.h xserver-properties.h \ + dixaccess.h privates.h ptrveloc.h registry.h xkbfile.h \ + xf86xvmc.h xf86xvpriv.h xisb.h xorg-server.h xorgVersion.h xvdix.h \ + xvmcext.h hotplug.h xkbsrv.h dix-config.h dri2.h rrtransform.h \ + xsha1.h version-config.h + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/mfb/Makefile b/external/mit/xorg/server/xorg-server/mfb/Makefile new file mode 100644 index 000000000..5bb6b2493 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/mfb/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:30:20 rtr Exp $ + +LIBISPRIVATE= yes + +.include "../Makefile.serverlib" + +LIB= mfb +SRCS= ${SRCS.mfb} + +.include "Makefile.mfb" diff --git a/external/mit/xorg/server/xorg-server/mfb/Makefile.mfb b/external/mit/xorg/server/xorg-server/mfb/Makefile.mfb new file mode 100644 index 000000000..42b951312 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/mfb/Makefile.mfb @@ -0,0 +1,37 @@ +# $NetBSD: Makefile.mfb,v 1.3 2008/08/24 13:30:20 rtr Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/mfb +SRCS.mfb= mfbseg.c mfbpgbwht.c mfbpgbblak.c mfbpgbinv.c mfbigbwht.c \ + mfbigbblak.c mfbpawhite.c mfbpablack.c mfbpainv.c \ + mfbtewhite.c mfbteblack.c mfbbltC.c mfbbltX.c mfbbltCI.c \ + mfbbltO.c mfbbltG.c mfbtileC.c mfbtileG.c mfbplywhite.c \ + mfbplyblack.c mfbplyinv.c mfbgc.c mfbwindow.c mfbfont.c \ + mfbfillrct.c mfbpntwin.c maskbits.c mfbpixmap.c \ + mfbimage.c mfbline.c mfbbres.c mfbhrzvert.c mfbbresd.c \ + mfbpushpxl.c mfbzerarc.c mfbfillarc.c mfbfillsp.c \ + mfbsetsp.c mfbscrinit.c mfbscrclse.c mfbclip.c mfbbitblt.c \ + mfbgetsp.c mfbpolypnt.c mfbcmap.c mfbmisc.c mfbbstore.c + +CPPFLAGS+= ${X11FLAGS.DIX} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/mfb \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include + +# XXX some path so that "../../mfb/mfbblt.c" works +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86 + + +# XXX +COPTS.mfbclip.c+= -Wno-error +COPTS.mfbfont.c+= -Wno-error +COPTS.mfbmisc.c+= -Wno-error +COPTS.mfbpushpxl.c+= -Wno-error + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/mi/Makefile b/external/mit/xorg/server/xorg-server/mi/Makefile new file mode 100644 index 000000000..03aa0b1bf --- /dev/null +++ b/external/mit/xorg/server/xorg-server/mi/Makefile @@ -0,0 +1,48 @@ +# $NetBSD: Makefile,v 1.9 2011/08/02 09:11:38 mrg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= mi + +.PATH: ${X11SRCDIR.xorg-server}/mi +SRCS= miarc.c mibitblt.c micopy.c \ + micmap.c micursor.c midash.c midispcur.c mieq.c \ + miexpose.c mifillarc.c mifillrct.c mifpolycon.c \ + migc.c miglblt.c mioverlay.c mipointer.c mipoly.c \ + mipolycon.c mipolygen.c mipolypnt.c mipolyrect.c \ + mipolyseg.c mipolytext.c mipolyutil.c mipushpxl.c \ + miscrinit.c mispans.c misprite.c \ + mivaltree.c miwideline.c miwindow.c mizerarc.c \ + mizerclip.c mizerline.c + +# XXX the order is important since there are headers with the same +# name but differ depending on location +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/../include \ + -I${X11SRCDIR.xorg-server}/render \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/miext/damage \ + -I${X11SRCDIR.xorg-server}/Xi \ + -I${X11SRCDIR.xorg-server}/hw/xnest \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + ${X11FLAGS.DIX} \ + -DHAVE_XNEST_CONFIG_H + +CPPFLAGS.miscrinit.c= ${X11FLAGS.EXTENSION} + +.if 0 +.if ${MACHINE_ARCH} == "sparc" || ${MACHINE_ARCH} == "sparc64" || ${MACHINE} == "mac68k" +SRCS+= miinitext.c +CPPFLAGS.miinitext.c= ${X11FLAGS.EXTENSION} +CPPFLAGS.miinitext.c+= -UXF86MISC -UXINPUT -UXF86VIDMODE -UXFreeXDGA +CPPFLAGS.miscrinit.c+= -UXF86MISC -UXINPUT -UXF86VIDMODE -UXFreeXDGA +.endif +.endif + +COPTS.micmap.c+= -Wno-error +COPTS.miexpose.c+= -Wno-error + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/miext/Makefile b/external/mit/xorg/server/xorg-server/miext/Makefile new file mode 100644 index 000000000..5c4d1177f --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.3 2011/08/02 07:41:02 mrg Exp $ + +SUBDIR= damage shadow cw sync # rootless + +.include diff --git a/external/mit/xorg/server/xorg-server/miext/cw/Makefile b/external/mit/xorg/server/xorg-server/miext/cw/Makefile new file mode 100644 index 000000000..482ea898b --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/cw/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:40:13 rtr Exp $ + +LIBISPRIVATE= yes + +.include "../../Makefile.serverlib" + +LIB= cw +SRCS= ${SRCS.cw} + +.include "Makefile.cw" diff --git a/external/mit/xorg/server/xorg-server/miext/cw/Makefile.cw b/external/mit/xorg/server/xorg-server/miext/cw/Makefile.cw new file mode 100644 index 000000000..c2729e66c --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/cw/Makefile.cw @@ -0,0 +1,15 @@ +# $NetBSD: Makefile.cw,v 1.3 2008/08/24 13:40:13 rtr Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/miext/cw +SRCS.cw= cw.c cw_ops.c cw_render.c + +CPPFLAGS+= ${X11FLAGS.PERVASIVE_EXTENSION} \ + ${X11FLAGS.DIX} ${X11INCS.DIX} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/miext/damage/Makefile b/external/mit/xorg/server/xorg-server/miext/damage/Makefile new file mode 100644 index 000000000..8fd537040 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/damage/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:40:13 rtr Exp $ + +LIBISPRIVATE= yes + +.include "../../Makefile.serverlib" + +LIB= damage +SRCS= ${SRCS.damage} + +.include "Makefile.damage" + diff --git a/external/mit/xorg/server/xorg-server/miext/damage/Makefile.damage b/external/mit/xorg/server/xorg-server/miext/damage/Makefile.damage new file mode 100644 index 000000000..0921a7d7d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/damage/Makefile.damage @@ -0,0 +1,15 @@ +# $NetBSD: Makefile.damage,v 1.3 2008/08/24 13:40:13 rtr Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/miext/damage +SRCS.damage= damage.c + +CPPFLAGS+= ${X11FLAGS.PERVASIVE_EXTENSION} \ + ${X11FLAGS.DIX} ${X11INCS.DIX} + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/miext/cw + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/miext/rootless/Makefile b/external/mit/xorg/server/xorg-server/miext/rootless/Makefile new file mode 100644 index 000000000..bb412aa9d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/rootless/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:40:13 rtr Exp $ + +LIBISPRIVATE= yes + +.include "../../Makefile.serverlib" + +LIB= rootless +SRCS= ${SRCS.rootless} + +.include "Makefile.rootless" diff --git a/external/mit/xorg/server/xorg-server/miext/rootless/Makefile.rootless b/external/mit/xorg/server/xorg-server/miext/rootless/Makefile.rootless new file mode 100644 index 000000000..bc1094d88 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/rootless/Makefile.rootless @@ -0,0 +1,16 @@ +# $NetBSD: Makefile.rootless,v 1.2 2008/08/24 13:40:13 rtr Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/miext/rootless +SRCS.rootless+= rootlessCommon.c rootlessGC.c rootlessScreen.c \ + rootlessValTree.c rootlessWindow.c + +CPPFLAGS+= ${X11FLAGS.PERVASIVE_EXTENSION} \ + ${X11FLAGS.DIX} ${X11INCS.DIX} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/miext/cw \ + -I${DESTDIR}${X11INCDIR}/pixman-1 + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/miext/shadow/Makefile b/external/mit/xorg/server/xorg-server/miext/shadow/Makefile new file mode 100644 index 000000000..66fc25185 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/shadow/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/08/24 13:37:33 rtr Exp $ + +LIBISPRIVATE= yes + +.include "../../Makefile.serverlib" + +LIB= shadow +SRCS= ${SRCS.shadow} + +.include "Makefile.shadow" diff --git a/external/mit/xorg/server/xorg-server/miext/shadow/Makefile.shadow b/external/mit/xorg/server/xorg-server/miext/shadow/Makefile.shadow new file mode 100644 index 000000000..4492e5cf3 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/shadow/Makefile.shadow @@ -0,0 +1,21 @@ +# $NetBSD: Makefile.shadow,v 1.3 2008/08/24 13:37:33 rtr Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/miext/shadow +SRCS.shadow+= shadow.c shalloc.c shpacked.c shplanar8.c shplanar.c \ + shrot16pack_180.c shrot16pack_270.c shrot16pack_270YX.c \ + shrot16pack_90.c shrot16pack_90YX.c shrot16pack.c \ + shrot32pack_180.c shrot32pack_270.c shrot32pack_90.c \ + shrot32pack.c shrot8pack_180.c shrot8pack_270.c \ + shrot8pack_90.c shrot8pack.c shrotate.c + +CPPFLAGS+= ${X11FLAGS.PERVASIVE_EXTENSION} \ + ${X11FLAGS.DIX} ${X11INCS.DIX} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${X11SRCDIR.xorg-server}/miext/cw \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/miext/sync/Makefile b/external/mit/xorg/server/xorg-server/miext/sync/Makefile new file mode 100644 index 000000000..eec917073 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/sync/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.1 2011/08/02 07:41:02 mrg Exp $ + +LIBISPRIVATE= yes + +.include "../../Makefile.serverlib" + +LIB= sync +SRCS= ${SRCS.sync} + +.include "Makefile.sync" diff --git a/external/mit/xorg/server/xorg-server/miext/sync/Makefile.sync b/external/mit/xorg/server/xorg-server/miext/sync/Makefile.sync new file mode 100644 index 000000000..779d92cc5 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/miext/sync/Makefile.sync @@ -0,0 +1,15 @@ +# $NetBSD: Makefile.sync,v 1.1 2011/08/02 07:41:02 mrg Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/miext/sync +SRCS.sync= misync.c + +CPPFLAGS+= ${X11FLAGS.PERVASIVE_EXTENSION} \ + ${X11FLAGS.DIX} ${X11INCS.DIX} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/hw/xfree86/os-support \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/os/Makefile b/external/mit/xorg/server/xorg-server/os/Makefile new file mode 100644 index 000000000..96aa8c06c --- /dev/null +++ b/external/mit/xorg/server/xorg-server/os/Makefile @@ -0,0 +1,67 @@ +# $NetBSD: Makefile,v 1.9 2011/08/02 09:11:38 mrg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= os + +.PATH: ${X11SRCDIR.xorg-server}/os +SRCS= WaitFor.c access.c auth.c connection.c io.c mitauth.c \ + oscolor.c osinit.c utils.c xdmauth.c \ + xstrans.c xprintf.c log.c xdmcp.c \ + rpcauth.c backtrace.c xprintf.c xsha1.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/render \ + -I${X11SRCDIR.xorg-server}/lbx \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= ${X11FLAGS.DIX} \ + ${X11FLAGS.CONNECTION} \ + ${X11FLAGS.EXTENSION} \ + -DHASXDMAUTH \ + ${X11FLAGS.OS_DEFINES} \ + -DUSE_RGB_TXT \ + -UDDXTIME \ + -DHAVE_SHA1_IN_LIBC + +.include "../Makefile.common" + +.if 0 +# XXX The XFree86 Xserver has its own GetTimeInMillis(), however if we are +# building XFree86 and Xmacppc or Xsun* we want both copies. The copy +# here is linked into the non XFree86 server. +#.if ${XSERVER_XFREE86} == "no" || \ +# ${XSERVER_XMACPPC} != "no" || \ +# ${XSERVER_XSUN} != "no" +SRCS+= GetTimeInMillis.c +SRCS+= ddxInitGlobals.c +#.endif + +XDMCP_DEFINES= -DXDMCP -DXDMCP_NO_IPV6 + +CPPFLAGS.WaitFor.c= ${X11FLAGS.EXTENSION} +CPPFLAGS.access.c= ${XDMCP_DEFINES} -DBSD44SOCKETS -DHAS_GETIFADDRS +CPPFLAGS.auth.c= ${XDMCP_DEFINES} -DHAVE_ARC4RANDOM +CPPFLAGS.connection.c= ${XDMCP_DEFINES} -DBSD44SOCKETS +CPPFLAGS.io.c= ${X11FLAGS.EXTENSION} +CPPFLAGS.lbxio.c= ${X11FLAGS.EXTENSION} +CPPFLAGS.oscolor.c= -DNDBM +CPPFLAGS.osinit.c= -DADMPATH=\"/var/log/X\%smsgs\" +CPPFLAGS.transport.c= -DBSD44SOCKETS -I${X11SRCDIR.xc}/lib/xtrans +CPPFLAGS.utils.c= ${XDMCP_DEFINES} ${X11FLAGS.EXTENSION} +CPPFLAGS.xdmauth.c= ${XDMCP_DEFINES} +CPPFLAGS.xdmcp.c= ${XDMCP_DEFINES} -DBSD44SOCKETS +.endif + +COPTS.xdmauth.c= -Wno-error # XXX +COPTS.xstrans.c= -Wno-error # XXX +COPTS.access.c= -Wno-error # XXX bigreqstr.h +COPTS.io.c= -Wno-error # XXX bigreqstr.h + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/randr/Makefile b/external/mit/xorg/server/xorg-server/randr/Makefile new file mode 100644 index 000000000..e5c56ca52 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/randr/Makefile @@ -0,0 +1,28 @@ +# $NetBSD: Makefile,v 1.5 2011/08/02 09:11:39 mrg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= randr + +.PATH: ${X11SRCDIR.xorg-server}/randr +SRCS= randr.c randrstr.h rrcrtc.c rrdispatch.c \ + rrinfo.c rrmode.c rroutput.c rrpointer.c rrproperty.c \ + rrscreen.c rrsdispatch.c rrtransform.c +SRCS+= rrxinerama.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/../include +CPPFLAGS+= ${X11FLAGS.DIX} + +COPTS.randr.c+= -Wno-error +COPTS.rrcrtc.c+= -Wno-error +COPTS.rrdispatch.c+= -Wno-error +COPTS.rrmode.c+= -Wno-error +COPTS.rroutput.c+= -Wno-error +COPTS.rrproperty.c+= -Wno-error + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/record/Makefile b/external/mit/xorg/server/xorg-server/record/Makefile new file mode 100644 index 000000000..ef794b10d --- /dev/null +++ b/external/mit/xorg/server/xorg-server/record/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2008/08/10 06:42:39 rtr Exp $ + +LIBISPRIVATE= yes + +.include "../Makefile.serverlib" + +LIB= record +SRCS= ${SRCS.record} + +.include "Makefile.record" diff --git a/external/mit/xorg/server/xorg-server/record/Makefile.record b/external/mit/xorg/server/xorg-server/record/Makefile.record new file mode 100644 index 000000000..dd56d6df8 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/record/Makefile.record @@ -0,0 +1,18 @@ +# $NetBSD: Makefile.record,v 1.3 2008/08/24 13:47:05 rtr Exp $ + +.PATH: ${X11SRCDIR.xorg-server}/record +SRCS.record= record.c set.c + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/Xext + +CPPFLAGS+= -DNDEBUG + +# XXX +COPTS.record.c= -Wno-error + +.include +LIBDIR= ${XMODULEDIR} +.include diff --git a/external/mit/xorg/server/xorg-server/render/Makefile b/external/mit/xorg/server/xorg-server/render/Makefile new file mode 100644 index 000000000..6b350424f --- /dev/null +++ b/external/mit/xorg/server/xorg-server/render/Makefile @@ -0,0 +1,24 @@ +# $NetBSD: Makefile,v 1.4 2011/08/02 09:11:39 mrg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= render + +.PATH: ${X11SRCDIR.xorg-server}/render +SRCS= animcur.c filter.c glyph.c matrix.c miindex.c mipict.c \ + mirect.c mitrap.c mitri.c picture.c render.c + +CPPFLAGS+= -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${DESTDIR}${X11INCDIR}/xorg \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/../include +CPPFLAGS+= ${X11FLAGS.DIX} + +COPTS.miglyph.c=-Wno-error # XXX gcc 3.3 +COPTS.mirect.c= -Wno-error # XXX gcc 3.3 +COPTS.picture.c= -Wno-error +COPTS.render.c= -Wno-error + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/xfixes/Makefile b/external/mit/xorg/server/xorg-server/xfixes/Makefile new file mode 100644 index 000000000..9ae9c9178 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/xfixes/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.3 2009/08/22 02:40:28 mrg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= xfixes + +.PATH: ${X11SRCDIR.xorg-server}/xfixes +SRCS= cursor.c region.c saveset.c select.c xfixes.c + +CPPFLAGS+= ${X11FLAGS.PERVASIVE_EXTENSION} ${X11FLAGS.DIX} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/fixes \ + -I${X11SRCDIR.xorg-server}/render \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/../include + +# XXX +COPTS.cursor.c+= -Wno-error +COPTS.region.c+= -Wno-error +COPTS.select.c+= -Wno-error + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/xkb/Makefile b/external/mit/xorg/server/xorg-server/xkb/Makefile new file mode 100644 index 000000000..43fadc4ba --- /dev/null +++ b/external/mit/xorg/server/xorg-server/xkb/Makefile @@ -0,0 +1,54 @@ +# $NetBSD: Makefile,v 1.8 2010/11/23 08:22:35 mrg Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= xkb + +.PATH: ${X11SRCDIR.xorg-server}/${LIB} +.PATH: ${X11SRCDIR.X11}/src +.PATH: ${X11SRCDIR.xkbfile}/src +DDXSRCS= ddxBeep.c ddxCtrls.c \ + ddxLEDs.c ddxLoad.c \ + ddxList.c +DIXSRCS= xkb.c xkbUtils.c xkbEvents.c xkbAccessX.c xkbSwap.c \ + xkbLEDs.c xkbInit.c xkbActions.c xkbPrKeyEv.c +XKBFILESRCS= maprules.c xkmread.c xkbtext.c xkbfmisc.c \ + xkbout.c +X11SRCS= XKBMisc.c XKBAlloc.c XKBGAlloc.c XKBMAlloc.c + +SRCS= ${DDXSRCS} ${DIXSRCS} ${XKBFILESRCS} ${X11SRCS} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/Xext/extmod \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/Xi \ + -I${X11SRCDIR.xorg-server}/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/../include + +# For ${XKBROOTDIR} and ${XKBCOMPDIR} +.include "../../../bin/xkbcomp/Makefile.common" + +# XXX: ddxLoad.c expects XKM_OUTPUT_DIR to have a trailing '/'. + +CPPFLAGS+= -DXKB_IN_SERVER -DHAVE_XKB_CONFIG_H \ + -DXKB_BASE_DIRECTORY=\"${XKBROOTDIR}\" \ + -DXKB_BIN_DIRECTORY=\"${X11BINDIR}\" \ + -DXKM_OUTPUT_DIR=\"${XKBCOMPDIR}/\" \ + -DXKB_DFLT_DISABLED=0 + +COPTS.XKBAlloc.c= -Wno-error # XXX gcc 3.3 +COPTS.XKBMAlloc.c= -Wno-error # XXX gcc 3.3 +COPTS.xkb.c= -Wno-error # XXX gcc 3.3 +COPTS.xkbUtils.c= -Wno-error # XXX gcc 3.3 + +CLEANFILES+= ${BUILDOBJS} +realall: ${BUILDOBJS} + +.include +.include diff --git a/external/mit/xorg/server/xorg-server/xkbstubs/Makefile b/external/mit/xorg/server/xorg-server/xkbstubs/Makefile new file mode 100644 index 000000000..627ffd6b0 --- /dev/null +++ b/external/mit/xorg/server/xorg-server/xkbstubs/Makefile @@ -0,0 +1,30 @@ +# $NetBSD: Makefile,v 1.1 2008/12/22 01:04:27 jmcneill Exp $ + +.include "../Makefile.serverlib" +.include "../Makefile.servermod" + +LIB= xkbstubs + +.PATH: ${X11SRCDIR.xorg-server}/xkb +DDXSRCS= ddxVT.c ddxPrivate.c ddxKillSrv.c + +SRCS= ${DDXSRCS} + +CPPFLAGS+= -I${X11SRCDIR.xorg-server}/include \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I${DESTDIR}${X11INCDIR}/X11/extensions \ + -I${DESTDIR}${X11INCDIR}/pixman-1 \ + -I${X11SRCDIR.xorg-server}/Xext \ + -I${X11SRCDIR.xorg-server}/Xext/extmod \ + -I${X11SRCDIR.xorg-server}/mi \ + -I${X11SRCDIR.xorg-server}/${LIB} \ + -I${X11SRCDIR.xorg-server}/hw/xfree86/common \ + -I${X11SRCDIR.xorg-server}/../include + +CPPFLAGS+= -DXKB_IN_SERVER -DHAVE_XKB_CONFIG_H + +CLEANFILES+= ${BUILDOBJS} +realall: ${BUILDOBJS} + +.include +.include diff --git a/external/mit/xorg/share/Makefile b/external/mit/xorg/share/Makefile new file mode 100644 index 000000000..a79fbbf8d --- /dev/null +++ b/external/mit/xorg/share/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.2 2010/11/18 18:47:35 tron Exp $ + +.include + +SUBDIR= cf +.if ${MKSHARE} != "no" || \ + make(clean) || make(cleandir) || make(distclean) || make(obj) +SUBDIR+=fonts man nls +.endif + +.include diff --git a/external/mit/xorg/share/cf/Makefile b/external/mit/xorg/share/cf/Makefile new file mode 100644 index 000000000..40a79abca --- /dev/null +++ b/external/mit/xorg/share/cf/Makefile @@ -0,0 +1,47 @@ +# $NetBSD: Makefile,v 1.9 2011/09/29 09:44:08 dholland Exp $ + +.include + +.PATH: ${X11SRCDIR.xorg-cf-files} + +FILESDIR=${X11LIBDIR}/config + +FILES= Amoeba.cf DGUX.cf FreeBSD.cf Imake.cf Imake.rules Imake.tmpl \ + Library.tmpl Mips.cf Motif.rules Motif.tmpl NetBSD.cf Oki.cf \ + OpenBSD.cf QNX4.cf QNX4.rules Server.tmpl ServerLib.tmpl \ + Threads.tmpl Win32.cf Win32.rules WinLib.tmpl X11.rules \ + X11.tmpl apollo.cf bsd.cf bsdLib.rules bsdLib.tmpl bsdi.cf \ + cde.rules cde.tmpl convex.cf cray.cf cygwin.cf cygwin.rules \ + cygwin.tmpl darwin.cf darwinLib.rules darwinLib.tmpl \ + fujitsu.cf generic.cf gnu.cf gnuLib.rules gnuLib.tmpl hp.cf \ + hpLib.rules hpLib.tmpl ibm.cf ibmLib.rules ibmLib.tmpl \ + isc.cf linux.cf lnxLib.rules lnxLib.tmpl lnxdoc.rules \ + lnxdoc.tmpl luna.cf lynx.cf macII.cf mach.cf minix.cf \ + moto.cf ncr.cf nec.cf necLib.rules necLib.tmpl noop.rules \ + nto.cf nto.rules oldlib.rules os2.cf os2.rules os2Lib.rules \ + os2Lib.tmpl osf1.cf osfLib.rules osfLib.tmpl pegasus.cf \ + sco.cf sco5.cf scoLib.rules sequent.cf sgi.cf sgiLib.rules \ + sgiLib.tmpl sony.cf sun.cf sunLib.rules sunLib.tmpl \ + sv3Lib.rules sv3Lib.tmpl sv4Lib.rules sv4Lib.tmpl svr3.cf \ + svr4.cf ultrix.cf usl.cf x386.cf xf86.rules \ + xf86.tmpl xf86site.def xfree86.cf xorg.cf xorgversion.def + +# Note: acts as '#define InstallEmptyHostDef' +# +FILES+= date.def host.def xorgsite.def + +# Handle site.def specificly because it is provided in dist +# +FILES+= netbsd.site.def +FILESNAME_netbsd.site.def= site.def +CLEANFILES+= netbsd.site.def + +netbsd.site.def: site.def.in + ${_MKTARGET_CREATE} + ${TOOL_SED} -e 's,@prefix@,${X11ROOTDIR},' <${.ALLSRC} |\ + ${TOOL_SED} -e 's,@FONTROOTDIR@,${X11ROOTDIR}/share/fonts/X11,' |\ + ${TOOL_SED} -e 's,@ENCODINGSDIR@,\$${FONTROOTDIR}/encodings,' \ + >${.TARGET} +realall: netbsd.site.def + +.include diff --git a/external/mit/xorg/share/cf/date.def b/external/mit/xorg/share/cf/date.def new file mode 100644 index 000000000..e69de29bb diff --git a/external/mit/xorg/share/cf/host.def b/external/mit/xorg/share/cf/host.def new file mode 100644 index 000000000..e69de29bb diff --git a/external/mit/xorg/share/cf/xorgsite.def b/external/mit/xorg/share/cf/xorgsite.def new file mode 100644 index 000000000..13ca4aad9 --- /dev/null +++ b/external/mit/xorg/share/cf/xorgsite.def @@ -0,0 +1,9 @@ +/* $NetBSD: xorgsite.def,v 1.2 2011/12/13 04:32:32 dholland Exp $ */ + +#define HasSecureRPC NO +#define InstallXdmConfig YES +#define InstallXinitConfig YES +#define UseGccMakeDepend NO + +#define BuildExpatLibrary YES +#define BuildFreetype2Library YES diff --git a/external/mit/xorg/share/fonts/100dpi/Makefile b/external/mit/xorg/share/fonts/100dpi/Makefile new file mode 100644 index 000000000..1e2605bab --- /dev/null +++ b/external/mit/xorg/share/fonts/100dpi/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2010/04/11 02:41:39 jakllsch Exp $ + +SUBDIR= font-adobe-100dpi font-adobe-symbol-100dpi font-adobe-utopia-100dpi \ + font-bh-100dpi font-bh-lucidatypewriter-100dpi font-bitstream-100dpi + +FONTSUBDIR= 100dpi + +.include "../Makefile.fontdir" + +.include diff --git a/external/mit/xorg/share/fonts/100dpi/font-adobe-100dpi/Makefile b/external/mit/xorg/share/fonts/100dpi/font-adobe-100dpi/Makefile new file mode 100644 index 000000000..d8b6a328f --- /dev/null +++ b/external/mit/xorg/share/fonts/100dpi/font-adobe-100dpi/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 100dpi +FONTSRCPKG= font-adobe-100dpi + +.include "../../Makefile.dpi" +FILES= ${ADOBE_FILES} +UCSFILES= ${ADOBE_UCSFILES} + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/100dpi/font-adobe-symbol-100dpi/Makefile b/external/mit/xorg/share/fonts/100dpi/font-adobe-symbol-100dpi/Makefile new file mode 100644 index 000000000..48f61c54e --- /dev/null +++ b/external/mit/xorg/share/fonts/100dpi/font-adobe-symbol-100dpi/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2010/04/11 02:41:39 jakllsch Exp $ + +.include + +FONTSUBDIR= 100dpi +FONTSRCPKG= font-adobe-100dpi + +.include "../../Makefile.dpi" +FILES= ${ADOBE_SYMBOL_FILES} + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/100dpi/font-adobe-utopia-100dpi/Makefile b/external/mit/xorg/share/fonts/100dpi/font-adobe-utopia-100dpi/Makefile new file mode 100644 index 000000000..ef64625b4 --- /dev/null +++ b/external/mit/xorg/share/fonts/100dpi/font-adobe-utopia-100dpi/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 100dpi +FONTSRCPKG= font-adobe-utopia-100dpi + +.include "../../Makefile.dpi" +FILES= ${ADOBE_UTOPIA_FILES} +UCSFILES= ${ADOBE_UTOPIA_UCSFILES} + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/100dpi/font-bh-100dpi/Makefile b/external/mit/xorg/share/fonts/100dpi/font-bh-100dpi/Makefile new file mode 100644 index 000000000..e85437637 --- /dev/null +++ b/external/mit/xorg/share/fonts/100dpi/font-bh-100dpi/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 100dpi +FONTSRCPKG= font-bh-100dpi + +.include "../../Makefile.dpi" +FILES= ${BH_FILES} +UCSFILES= ${BH_UCSFILES} + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/100dpi/font-bh-lucidatypewriter-100dpi/Makefile b/external/mit/xorg/share/fonts/100dpi/font-bh-lucidatypewriter-100dpi/Makefile new file mode 100644 index 000000000..2cd3f9304 --- /dev/null +++ b/external/mit/xorg/share/fonts/100dpi/font-bh-lucidatypewriter-100dpi/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 100dpi +FONTSRCPKG= font-bh-lucidatypewriter-100dpi + +.include "../../Makefile.dpi" +FILES= ${BH_LUCIDATYPEWRITER_FILES} +UCSFILES= ${BH_LUCIDATYPEWRITER_UCSFILES} + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/100dpi/font-bitstream-100dpi/Makefile b/external/mit/xorg/share/fonts/100dpi/font-bitstream-100dpi/Makefile new file mode 100644 index 000000000..f8b48f79a --- /dev/null +++ b/external/mit/xorg/share/fonts/100dpi/font-bitstream-100dpi/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 100dpi +FONTSRCPKG= font-bitstream-100dpi + +.include "../../Makefile.dpi" +FILES= ${BITSTREAM_FILES} + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/75dpi/Makefile b/external/mit/xorg/share/fonts/75dpi/Makefile new file mode 100644 index 000000000..d2c50411d --- /dev/null +++ b/external/mit/xorg/share/fonts/75dpi/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2010/04/11 02:41:39 jakllsch Exp $ + +SUBDIR= font-adobe-75dpi font-adobe-symbol-75dpi font-adobe-utopia-75dpi \ + font-bh-75dpi font-bh-lucidatypewriter-75dpi font-bitstream-75dpi + +FONTSUBDIR= 75dpi + +.include "../Makefile.fontdir" + +.include diff --git a/external/mit/xorg/share/fonts/75dpi/font-adobe-75dpi/Makefile b/external/mit/xorg/share/fonts/75dpi/font-adobe-75dpi/Makefile new file mode 100644 index 000000000..e9f654b42 --- /dev/null +++ b/external/mit/xorg/share/fonts/75dpi/font-adobe-75dpi/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 75dpi +FONTSRCPKG= font-adobe-75dpi + +.include "../../Makefile.dpi" +FILES= ${ADOBE_FILES} +UCSFILES= ${ADOBE_UCSFILES} + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/75dpi/font-adobe-symbol-75dpi/Makefile b/external/mit/xorg/share/fonts/75dpi/font-adobe-symbol-75dpi/Makefile new file mode 100644 index 000000000..cdc46316d --- /dev/null +++ b/external/mit/xorg/share/fonts/75dpi/font-adobe-symbol-75dpi/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2010/04/11 02:41:39 jakllsch Exp $ + +.include + +FONTSUBDIR= 75dpi +FONTSRCPKG= font-adobe-75dpi + +.include "../../Makefile.dpi" +FILES= ${ADOBE_SYMBOL_FILES} + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/75dpi/font-adobe-utopia-75dpi/Makefile b/external/mit/xorg/share/fonts/75dpi/font-adobe-utopia-75dpi/Makefile new file mode 100644 index 000000000..e742c347f --- /dev/null +++ b/external/mit/xorg/share/fonts/75dpi/font-adobe-utopia-75dpi/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 75dpi +FONTSRCPKG= font-adobe-utopia-75dpi + +.include "../../Makefile.dpi" +FILES= ${ADOBE_UTOPIA_FILES} +UCSFILES= ${ADOBE_UTOPIA_UCSFILES} + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/75dpi/font-bh-75dpi/Makefile b/external/mit/xorg/share/fonts/75dpi/font-bh-75dpi/Makefile new file mode 100644 index 000000000..47d08ec12 --- /dev/null +++ b/external/mit/xorg/share/fonts/75dpi/font-bh-75dpi/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 75dpi +FONTSRCPKG= font-bh-75dpi + +.include "../../Makefile.dpi" +FILES= ${BH_FILES} +UCSFILES= ${BH_UCSFILES} + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/75dpi/font-bh-lucidatypewriter-75dpi/Makefile b/external/mit/xorg/share/fonts/75dpi/font-bh-lucidatypewriter-75dpi/Makefile new file mode 100644 index 000000000..cace8586d --- /dev/null +++ b/external/mit/xorg/share/fonts/75dpi/font-bh-lucidatypewriter-75dpi/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 75dpi +FONTSRCPKG= font-bh-lucidatypewriter-75dpi + +.include "../../Makefile.dpi" +FILES= ${BH_LUCIDATYPEWRITER_FILES} +UCSFILES= ${BH_LUCIDATYPEWRITER_UCSFILES} + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/75dpi/font-bitstream-75dpi/Makefile b/external/mit/xorg/share/fonts/75dpi/font-bitstream-75dpi/Makefile new file mode 100644 index 000000000..d4d64c02c --- /dev/null +++ b/external/mit/xorg/share/fonts/75dpi/font-bitstream-75dpi/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= 75dpi +FONTSRCPKG= font-bitstream-75dpi + +.include "../../Makefile.dpi" +FILES= ${BITSTREAM_FILES} + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/Makefile b/external/mit/xorg/share/fonts/Makefile new file mode 100644 index 000000000..0b6dde822 --- /dev/null +++ b/external/mit/xorg/share/fonts/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.5 2009/06/18 06:36:59 mrg Exp $ + +.include + +.if ${MKX11FONTS} != "no" + +SUBDIR= encodings .WAIT \ + font-alias font-util \ + 100dpi 75dpi Type1 TTF misc + +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/fc-cache/Makefile.fc-cache" + +.endif + +.include diff --git a/external/mit/xorg/share/fonts/Makefile.bdf b/external/mit/xorg/share/fonts/Makefile.bdf new file mode 100644 index 000000000..b1a781ffc --- /dev/null +++ b/external/mit/xorg/share/fonts/Makefile.bdf @@ -0,0 +1,57 @@ +# $NetBSD: Makefile.bdf,v 1.2 2009/03/31 21:18:36 perry Exp $ + +# Font files built using this makefile are cleaned in two ways: +# +# * temporary build files are cleaned by 'make clean' (via CLEANFILES). +# +# * Actual finished BDF and PCF files (BDFFILES and PCFFILES, +# respectively) are removed only by "cleandir" because they +# take a long time to build. (See the 'cleanfonts' target.) +# +# Also, we *must* split these operations into multiple 'rm' commands +# because of the number of files being removed. Trying to 'rm' all of +# these files with one command will cause some host systems to fail +# (rm arg list too long). + +FILESDIR= ${X11FONTDIR}/${FONTSUBDIR} +.PATH: ${X11SRCDIR.${FONTSRCPKG}} + +FONTSUFFIX= .gz +FONTGZIP= | gzip ${GZIPLEVEL:U-9} -ncf + +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/bdftopcf/Makefile.bdftopcf" +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/ucs2any/Makefile.ucs2any" + +.for _F _M in ${UCSFILES} # { +${_F}-${_M}.bdf: ${_F}.bdf + ${_MKTARGET_CREATE} + ${UCS2ANY} ${.ALLSRC} ${DESTDIR}${X11FONTDIR}/util/map-${_M} ${_M} + +BDFFILES+= ${_F}-${_M}.bdf +.endfor # } + +.SUFFIXES: .bdf .pcf${FONTSUFFIX} + +.bdf.pcf${FONTSUFFIX}: + ${_MKTARGET_CREATE} + rm -f ${.TARGET} + ${BDFTOPCF} -t ${.IMPSRC} ${FONTGZIP} > ${.TARGET}.tmp \ + && mv ${.TARGET}.tmp ${.TARGET} + +PCFFILES+= ${BDFFILES:S/.bdf$/.pcf${FONTSUFFIX}/} +CLEANFILES+= ${BDFFILES:S/.bdf$/.pcf${FONTSUFFIX}.tmp/} + +FILES+= ${PCFFILES} +.if exists(fonts.alias) +FILES+= fonts.alias +.endif + +realall: ${PCFFILES} + +cleandir: cleanfonts + +cleanfonts: .PHONY .NOTMAIN + rm -f ${BDFFILES} + rm -f ${PCFFILES} + +.include "../../Makefile.font" diff --git a/external/mit/xorg/share/fonts/Makefile.dpi b/external/mit/xorg/share/fonts/Makefile.dpi new file mode 100644 index 000000000..56c695d5c --- /dev/null +++ b/external/mit/xorg/share/fonts/Makefile.dpi @@ -0,0 +1,82 @@ +# $NetBSD: Makefile.dpi,v 1.2 2010/04/11 02:41:38 jakllsch Exp $ + +# Files installed by both 75dpi and 100dpi packages. + + +DPI_ISO= ISO8859-1 ISO8859-2 ISO8859-3 ISO8859-4 ISO8859-9 \ + ISO8859-10 ISO8859-13 ISO8859-14 ISO8859-15 + +ADOBE_SRCS= courB08 courB10 courB12 courB14 courB18 courB24 \ + courBO08 courBO10 courBO12 courBO14 courBO18 courBO24 \ + courO08 courO10 courO12 courO14 courO18 courO24 \ + courR08 courR10 courR12 courR14 courR18 courR24 \ + helvB08 helvB10 helvB12 helvB14 helvB18 helvB24 \ + helvBO08 helvBO10 helvBO12 helvBO14 helvBO18 helvBO24 \ + helvO08 helvO10 helvO12 helvO14 helvO18 helvO24 \ + helvR08 helvR10 helvR12 helvR14 helvR18 helvR24 \ + ncenB08 ncenB10 ncenB12 ncenB14 ncenB18 ncenB24 \ + ncenBI08 ncenBI10 ncenBI12 ncenBI14 ncenBI18 ncenBI24 \ + ncenI08 ncenI10 ncenI12 ncenI14 ncenI18 ncenI24 \ + ncenR08 ncenR10 ncenR12 ncenR14 ncenR18 ncenR24 \ + timB08 timB10 timB12 timB14 timB18 timB24 \ + timBI08 timBI10 timBI12 timBI14 timBI18 timBI24 \ + timI08 timI10 timI12 timI14 timI18 timI24 \ + timR08 timR10 timR12 timR14 timR18 timR24 +.for _s in ${ADOBE_SRCS} +ADOBE_FILES+= ${_s}.bdf +.for _i in ${DPI_ISO} +ADOBE_UCSFILES+= ${_s} ${_i} +.endfor +.endfor + + +ADOBE_UTOPIA_SRCS= UTBI__10 UTBI__12 UTBI__14 UTBI__18 UTBI__24 \ + UTB___10 UTB___12 UTB___14 UTB___18 UTB___24 \ + UTI___10 UTI___12 UTI___14 UTI___18 UTI___24 \ + UTRG__10 UTRG__12 UTRG__14 UTRG__18 UTRG__24 +.for _s in ${ADOBE_UTOPIA_SRCS} +ADOBE_UTOPIA_FILES+= ${_s}.bdf +.for _i in ${DPI_ISO} +ADOBE_UTOPIA_UCSFILES+= ${_s} ${_i} +.endfor +.endfor + +ADOBE_SYMBOL_SRCS= symb08 symb10 symb12 symb14 symb18 symb24 +.for _s in ${ADOBE_SYMBOL_SRCS} +ADOBE_SYMBOL_FILES+= ${_s}.bdf +.endfor + +BH_SRCS= luBIS08 luBIS10 luBIS12 luBIS14 luBIS18 luBIS19 luBIS24 \ + luBS08 luBS10 luBS12 luBS14 luBS18 luBS19 luBS24 \ + luIS08 luIS10 luIS12 luIS14 luIS18 luIS19 luIS24 \ + luRS08 luRS10 luRS12 luRS14 luRS18 luRS19 luRS24 \ + lubB08 lubB10 lubB12 lubB14 lubB18 lubB19 lubB24 \ + lubBI08 lubBI10 lubBI12 lubBI14 lubBI18 lubBI19 lubBI24 \ + lubI08 lubI10 lubI12 lubI14 lubI18 lubI19 lubI24 \ + lubR08 lubR10 lubR12 lubR14 lubR18 lubR19 lubR24 +.for _s in ${BH_SRCS} +BH_FILES+= ${_s}.bdf +.for _i in ${DPI_ISO} +BH_UCSFILES+= ${_s} ${_i} +.endfor +.endfor + + +BH_LUCIDATYPEWRITER_SRCS= \ + lutBS08 lutBS10 lutBS12 lutBS14 lutBS18 lutBS19 lutBS24 \ + lutRS08 lutRS10 lutRS12 lutRS14 lutRS18 lutRS19 lutRS24 +.for _s in ${BH_LUCIDATYPEWRITER_SRCS} +BH_LUCIDATYPEWRITER_FILES+= ${_s}.bdf +.for _i in ${DPI_ISO} +BH_LUCIDATYPEWRITER_UCSFILES+= ${_s} ${_i} +.endfor +.endfor + + +BITSTREAM_FILES=charB08.bdf charB10.bdf charB12.bdf charB14.bdf \ + charB18.bdf charB24.bdf charBI08.bdf charBI10.bdf \ + charBI12.bdf charBI14.bdf charBI18.bdf charBI24.bdf \ + charI08.bdf charI10.bdf charI12.bdf charI14.bdf \ + charI18.bdf charI24.bdf charR08.bdf charR10.bdf \ + charR12.bdf charR14.bdf charR18.bdf charR24.bdf \ + tech14.bdf techB14.bdf term14.bdf termB14.bdf diff --git a/external/mit/xorg/share/fonts/Makefile.fccache b/external/mit/xorg/share/fonts/Makefile.fccache new file mode 100644 index 000000000..603636691 --- /dev/null +++ b/external/mit/xorg/share/fonts/Makefile.fccache @@ -0,0 +1,21 @@ +# $NetBSD: Makefile.fccache,v 1.3 2011/09/12 13:38:43 apb Exp $ + +.ifndef _MAKEFILE_FCCACHE_ +_MAKEFILE_FCCACHE_=1 + +.include + +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/fc-cache/Makefile.fc-cache" + +afterinstall: + ${_MKMSG_CREATE} ${DESTDIR}${X11FONTDIR}/fonts.cache-1 + ${FCCACHE} -fv ${DESTDIR}${X11FONTDIR} +.if ${MKUNPRIVED} != "no" + cd ${DESTDIR} \ + && find .${X11FONTDIR} -name fonts.cache-1 \ + | ${TOOL_SED} -e \ + 's/$$/ type=file mode=0444 uname=${BINOWN} gname=${BINGRP}/' \ + | ${METALOG.add} +.endif + +.endif # _MAKEFILE_FCCACHE_ diff --git a/external/mit/xorg/share/fonts/Makefile.font b/external/mit/xorg/share/fonts/Makefile.font new file mode 100644 index 000000000..c3f5d6689 --- /dev/null +++ b/external/mit/xorg/share/fonts/Makefile.font @@ -0,0 +1,4 @@ +# $NetBSD: Makefile.font,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +FILESDIR= ${X11FONTDIR}/${FONTSUBDIR} +.PATH: ${X11SRCDIR.${FONTSRCPKG}} diff --git a/external/mit/xorg/share/fonts/Makefile.fontdir b/external/mit/xorg/share/fonts/Makefile.fontdir new file mode 100644 index 000000000..15a687102 --- /dev/null +++ b/external/mit/xorg/share/fonts/Makefile.fontdir @@ -0,0 +1,6 @@ +# $NetBSD: Makefile.fontdir,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +FILESDIR= ${X11FONTDIR}/${FONTSUBDIR} +.PATH: ${X11SRCDIR.${FONTSRCPKG}} + +.include "../Makefile.mkfontscale" diff --git a/external/mit/xorg/share/fonts/Makefile.mkfontscale b/external/mit/xorg/share/fonts/Makefile.mkfontscale new file mode 100644 index 000000000..d961575b9 --- /dev/null +++ b/external/mit/xorg/share/fonts/Makefile.mkfontscale @@ -0,0 +1,43 @@ +# $NetBSD: Makefile.mkfontscale,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +# Note: needs "install" run in ./encodings first +# It depends upon FILESDIR being set. +# + +.ifndef _MAKEFILE_MKFONTSCALE_ +_MAKEFILE_MKFONTSCALE_=1 + +.include + +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/fc-cache/Makefile.fc-cache" + +MKFONTSCALEDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/tools/mkfontscale && ${PRINTOBJDIR} +MKFONTSCALE= ${MKFONTSCALEDIR}/mkfontscale + +afterinstall: create.fonts.dir create.fonts.scale +.if ${MKUNPRIVED} != "no" + echo ".${FILESDIR}/fonts.dir type=file mode=0444 uname=root gname=operator" \ + | ${METALOG.add} + echo ".${FILESDIR}/fonts.scale type=file mode=0444 uname=root gname=operator" \ + | ${METALOG.add} +.endif + ${_MKMSG_INSTALL} ${DESTDIR}${FILESDIR}/encodings.dir + ${INSTALL_FILE} -o ${BINOWN} -g ${BINGRP} -m ${NONBINMODE} \ + ${DESTDIR}${X11FONTDIR}/encodings/encodings.dir \ + ${DESTDIR}${FILESDIR}/encodings.dir + +create.fonts.dir: create.fonts.scale + ${_MKMSG_CREATE} ${DESTDIR}${FILESDIR}/fonts.dir + rm -f ${DESTDIR}${FILESDIR}/fonts.dir + ${MKFONTSCALE} -b -s -l ${DESTDIR}${FILESDIR} + +.if !target(create.fonts.scale) +create.fonts.scale: + ${_MKMSG_CREATE} ${DESTDIR}${FILESDIR}/fonts.scale + rm -f ${DESTDIR}${FILESDIR}/fonts.scale + ${MKFONTSCALE} ${DESTDIR}${FILESDIR} +.endif + +.PHONY: create.fonts.dir create.fonts.scale + +.endif # _MAKEFILE_MKFONTSCALE_ diff --git a/external/mit/xorg/share/fonts/TTF/Makefile b/external/mit/xorg/share/fonts/TTF/Makefile new file mode 100644 index 000000000..933145714 --- /dev/null +++ b/external/mit/xorg/share/fonts/TTF/Makefile @@ -0,0 +1,9 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +SUBDIR= font-bh-ttf ttf-bitstream-vera + +FONTSUBDIR= TTF + +.include "../Makefile.fontdir" + +.include diff --git a/external/mit/xorg/share/fonts/TTF/font-bh-ttf/Makefile b/external/mit/xorg/share/fonts/TTF/font-bh-ttf/Makefile new file mode 100644 index 000000000..f4b4aefaa --- /dev/null +++ b/external/mit/xorg/share/fonts/TTF/font-bh-ttf/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= TTF +FONTSRCPKG= font-bh-ttf + +FILES= luximb.ttf luximbi.ttf luximr.ttf luximri.ttf \ + luxirb.ttf luxirbi.ttf luxirr.ttf luxirri.ttf \ + luxisb.ttf luxisbi.ttf luxisr.ttf luxisri.ttf + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/TTF/ttf-bitstream-vera/Makefile b/external/mit/xorg/share/fonts/TTF/ttf-bitstream-vera/Makefile new file mode 100644 index 000000000..f6603ac6c --- /dev/null +++ b/external/mit/xorg/share/fonts/TTF/ttf-bitstream-vera/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= TTF +FONTSRCPKG= ttf-bitstream-vera + +FILES= Vera.ttf VeraBI.ttf VeraBd.ttf VeraIt.ttf \ + VeraMoBI.ttf VeraMoBd.ttf VeraMoIt.ttf VeraMono.ttf \ + VeraSe.ttf VeraSeBd.ttf + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/Type1/Makefile b/external/mit/xorg/share/fonts/Type1/Makefile new file mode 100644 index 000000000..a56459c37 --- /dev/null +++ b/external/mit/xorg/share/fonts/Type1/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +SUBDIR= font-adobe-utopia-type1 font-bh-type1 \ + font-bitstream-type1 font-ibm-type1 + +FONTSUBDIR= Type1 + +.include "../Makefile.fontdir" + +.include diff --git a/external/mit/xorg/share/fonts/Type1/font-adobe-utopia-type1/Makefile b/external/mit/xorg/share/fonts/Type1/font-adobe-utopia-type1/Makefile new file mode 100644 index 000000000..266a497d0 --- /dev/null +++ b/external/mit/xorg/share/fonts/Type1/font-adobe-utopia-type1/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= Type1 +FONTSRCPKG= font-adobe-utopia-type1 + +FILES= UTBI____.afm UTBI____.pfa UTB_____.afm UTB_____.pfa \ + UTI_____.afm UTI_____.pfa UTRG____.afm UTRG____.pfa + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/Type1/font-bh-type1/Makefile b/external/mit/xorg/share/fonts/Type1/font-bh-type1/Makefile new file mode 100644 index 000000000..0365026e8 --- /dev/null +++ b/external/mit/xorg/share/fonts/Type1/font-bh-type1/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= Type1 +FONTSRCPKG= font-bh-type1 + +FILES= l047013t.afm l047013t.pfa l047016t.afm l047016t.pfa \ + l047033t.afm l047033t.pfa l047036t.afm l047036t.pfa \ + l048013t.afm l048013t.pfa l048016t.afm l048016t.pfa \ + l048033t.afm l048033t.pfa l048036t.afm l048036t.pfa \ + l049013t.afm l049013t.pfa l049016t.afm l049016t.pfa \ + l049033t.afm l049033t.pfa l049036t.afm l049036t.pfa + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/Type1/font-bitstream-type1/Makefile b/external/mit/xorg/share/fonts/Type1/font-bitstream-type1/Makefile new file mode 100644 index 000000000..613c8f693 --- /dev/null +++ b/external/mit/xorg/share/fonts/Type1/font-bitstream-type1/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= Type1 +FONTSRCPKG= font-bitstream-type1 + +FILES= c0419bt_.afm c0419bt_.pfb c0582bt_.afm c0582bt_.pfb \ + c0583bt_.afm c0583bt_.pfb c0611bt_.afm c0611bt_.pfb \ + c0632bt_.afm c0632bt_.pfb c0633bt_.afm c0633bt_.pfb \ + c0648bt_.afm c0648bt_.pfb c0649bt_.afm c0649bt_.pfb + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/Type1/font-ibm-type1/Makefile b/external/mit/xorg/share/fonts/Type1/font-ibm-type1/Makefile new file mode 100644 index 000000000..33e9b7955 --- /dev/null +++ b/external/mit/xorg/share/fonts/Type1/font-ibm-type1/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= Type1 +FONTSRCPKG= font-ibm-type1 + +FILES= cour.afm cour.pfa courb.afm courb.pfa \ + courbi.afm courbi.pfa couri.afm couri.pfa + +.include "../../Makefile.font" + +.include +.include diff --git a/external/mit/xorg/share/fonts/encodings/Makefile b/external/mit/xorg/share/fonts/encodings/Makefile new file mode 100644 index 000000000..35174ffa9 --- /dev/null +++ b/external/mit/xorg/share/fonts/encodings/Makefile @@ -0,0 +1,29 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +ENCDIR= encodings +ENCARGS=-e large + +GZFILES=adobe-dingbats.enc.gz adobe-standard.enc.gz adobe-symbol.enc.gz \ + armscii-8.enc.gz ascii-0.enc.gz dec-special.enc.gz \ + ibm-cp437.enc.gz ibm-cp850.enc.gz ibm-cp852.enc.gz ibm-cp866.enc.gz \ + iso8859-11.enc.gz iso8859-13.enc.gz iso8859-16.enc.gz iso8859-6.16.enc.gz \ + iso8859-6.8x.enc.gz \ + microsoft-cp1250.enc.gz microsoft-cp1251.enc.gz microsoft-cp1252.enc.gz \ + microsoft-cp1253.enc.gz microsoft-cp1254.enc.gz microsoft-cp1255.enc.gz \ + microsoft-cp1256.enc.gz microsoft-cp1257.enc.gz microsoft-cp1258.enc.gz \ + microsoft-win3.1.enc.gz \ + mulearabic-0.enc.gz mulearabic-1.enc.gz mulearabic-2.enc.gz \ + mulelao-1.enc.gz suneu-greek.enc.gz tcvn-0.enc.gz tis620-2.enc.gz \ + viscii1.1-1.enc.gz + +SUBDIR= large + +.include "Makefile.enc" + +.PATH: ${X11SRCDIR.encodings} + +.include +.include +.include diff --git a/external/mit/xorg/share/fonts/encodings/Makefile.enc b/external/mit/xorg/share/fonts/encodings/Makefile.enc new file mode 100644 index 000000000..79b7bfae7 --- /dev/null +++ b/external/mit/xorg/share/fonts/encodings/Makefile.enc @@ -0,0 +1,30 @@ +# $NetBSD: Makefile.enc,v 1.2 2009/03/31 21:21:48 perry Exp $ + +FILESDIR= ${X11FONTDIR}/${ENCDIR} + +FILES+= ${GZFILES} +CLEANFILES+= ${GZFILES} +CLEANFILES+= ${GZFILES:S/.gz$/.gz.tmp/} + +.SUFFIXES: .enc .enc.gz +.enc.enc.gz: + ${_MKTARGET_CREATE} + gzip -9nfc ${.IMPSRC} > ${.TARGET}.tmp && mv ${.TARGET}.tmp ${.TARGET} + + +realall: ${FILES} + +MKFONTSCALEDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/tools/mkfontscale && ${PRINTOBJDIR} +MKFONTSCALE= ${MKFONTSCALEDIR}/mkfontscale + +afterinstall: + ${_MKMSG_CREATE} ${DESTDIR}${FILESDIR}/encodings.dir + (cd ${DESTDIR}${FILESDIR} && \ + rm -f encodings.dir ; \ + ${MKFONTSCALE} -b -s -l -n -r -p ${X11FONTDIR}/${ENCDIR}/ -e . ${ENCARGS} . ; \ + ) +.if ${MKUNPRIVED} != "no" + echo ".${FILESDIR}/encodings.dir type=file mode=0644 uname=${BINOWN} gname=${BINGRP}" \ + | ${METALOG.add} +.endif + diff --git a/external/mit/xorg/share/fonts/encodings/large/Makefile b/external/mit/xorg/share/fonts/encodings/large/Makefile new file mode 100644 index 000000000..aad467365 --- /dev/null +++ b/external/mit/xorg/share/fonts/encodings/large/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +ENCDIR= encodings/large + +GZFILES= big5.eten-0.enc.gz big5hkscs-0.enc.gz \ + cns11643-1.enc.gz cns11643-2.enc.gz cns11643-3.enc.gz \ + gb18030-0.enc.gz gb18030.2000-0.enc.gz gb18030.2000-1.enc.gz gb2312.1980-0.enc.gz \ + gbk-0.enc.gz \ + jisx0201.1976-0.enc.gz jisx0208.1990-0.enc.gz jisx0212.1990-0.enc.gz \ + ksc5601.1987-0.enc.gz ksc5601.1992-3.enc.gz \ + sun.unicode.india-0.enc.gz + +.PATH: ${X11SRCDIR.encodings}/large + +.include "../Makefile.enc" + +.include +.include diff --git a/external/mit/xorg/share/fonts/font-alias/100dpi/Makefile b/external/mit/xorg/share/fonts/font-alias/100dpi/Makefile new file mode 100644 index 000000000..753a17e5a --- /dev/null +++ b/external/mit/xorg/share/fonts/font-alias/100dpi/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +ALIASSUBDIR= 100dpi + +.include "../Makefile.alias" diff --git a/external/mit/xorg/share/fonts/font-alias/75dpi/Makefile b/external/mit/xorg/share/fonts/font-alias/75dpi/Makefile new file mode 100644 index 000000000..dd6918226 --- /dev/null +++ b/external/mit/xorg/share/fonts/font-alias/75dpi/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +ALIASSUBDIR= 75dpi + +.include "../Makefile.alias" diff --git a/external/mit/xorg/share/fonts/font-alias/Makefile b/external/mit/xorg/share/fonts/font-alias/Makefile new file mode 100644 index 000000000..0b3798923 --- /dev/null +++ b/external/mit/xorg/share/fonts/font-alias/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +SUBDIR= 100dpi 75dpi cyrillic misc + +.include diff --git a/external/mit/xorg/share/fonts/font-alias/Makefile.alias b/external/mit/xorg/share/fonts/font-alias/Makefile.alias new file mode 100644 index 000000000..7e1b932cd --- /dev/null +++ b/external/mit/xorg/share/fonts/font-alias/Makefile.alias @@ -0,0 +1,9 @@ +# $NetBSD: Makefile.alias,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +FILES= fonts.alias +FILESDIR= ${X11FONTDIR}/${ALIASSUBDIR} + +.include +.include + +.PATH: ${X11SRCDIR.font-alias}/${ALIASSUBDIR} diff --git a/external/mit/xorg/share/fonts/font-alias/cyrillic/Makefile b/external/mit/xorg/share/fonts/font-alias/cyrillic/Makefile new file mode 100644 index 000000000..41b7965d9 --- /dev/null +++ b/external/mit/xorg/share/fonts/font-alias/cyrillic/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +ALIASSUBDIR= cyrillic + +.include "../Makefile.alias" diff --git a/external/mit/xorg/share/fonts/font-alias/misc/Makefile b/external/mit/xorg/share/fonts/font-alias/misc/Makefile new file mode 100644 index 000000000..2127bbab3 --- /dev/null +++ b/external/mit/xorg/share/fonts/font-alias/misc/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +ALIASSUBDIR= misc + +.include "../Makefile.alias" diff --git a/external/mit/xorg/share/fonts/font-util/Makefile b/external/mit/xorg/share/fonts/font-util/Makefile new file mode 100644 index 000000000..1933fddb2 --- /dev/null +++ b/external/mit/xorg/share/fonts/font-util/Makefile @@ -0,0 +1,20 @@ +# $NetBSD: Makefile,v 1.3 2010/11/21 01:25:33 mrg Exp $ + +.include + +INCSDIR=${X11FONTDIR}/util +INCS= map-ISO8859-1 map-ISO8859-2 map-ISO8859-3 map-ISO8859-4 \ + map-ISO8859-5 map-ISO8859-6 map-ISO8859-7 map-ISO8859-8 \ + map-ISO8859-9 map-ISO8859-10 map-ISO8859-11 map-ISO8859-13 \ + map-ISO8859-14 map-ISO8859-15 map-ISO8859-16 map-JISX0201.1976-0 \ + map-KOI8-R + +.include "../Makefile.font" + +PKGCONFIG= fontutil +PKGDIST= font-util + +.include +.include + +.PATH: ${X11SRCDIR.font-util} ${X11SRCDIR.font-util}/man diff --git a/external/mit/xorg/share/fonts/misc/Makefile b/external/mit/xorg/share/fonts/misc/Makefile new file mode 100644 index 000000000..cbe23392d --- /dev/null +++ b/external/mit/xorg/share/fonts/misc/Makefile @@ -0,0 +1,10 @@ +# $NetBSD: Makefile,v 1.2 2009/01/25 23:11:16 tron Exp $ + +SUBDIR= font-cursor-misc font-daewoo-misc font-dec-misc font-isas-misc \ + font-jis-misc font-misc-misc font-mutt-misc font-sony-misc + +FONTSUBDIR= misc + +.include "../Makefile.fontdir" + +.include diff --git a/external/mit/xorg/share/fonts/misc/font-cursor-misc/Makefile b/external/mit/xorg/share/fonts/misc/font-cursor-misc/Makefile new file mode 100644 index 000000000..0922fe6ee --- /dev/null +++ b/external/mit/xorg/share/fonts/misc/font-cursor-misc/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= misc +FONTSRCPKG= font-cursor-misc + +.PATH: ${X11SRCDIR.${FONTSRCPKG}} +BDFFILES+= cursor.bdf + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/misc/font-daewoo-misc/Makefile b/external/mit/xorg/share/fonts/misc/font-daewoo-misc/Makefile new file mode 100644 index 000000000..71d17278c --- /dev/null +++ b/external/mit/xorg/share/fonts/misc/font-daewoo-misc/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= misc +FONTSRCPKG= font-daewoo-misc + +.PATH: ${X11SRCDIR.${FONTSRCPKG}} +BDFFILES+= hanglg16.bdf hanglm16.bdf hanglm24.bdf + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/misc/font-dec-misc/Makefile b/external/mit/xorg/share/fonts/misc/font-dec-misc/Makefile new file mode 100644 index 000000000..7a5380bca --- /dev/null +++ b/external/mit/xorg/share/fonts/misc/font-dec-misc/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= misc +FONTSRCPKG= font-dec-misc + +.PATH: ${X11SRCDIR.${FONTSRCPKG}} +BDFFILES+= deccurs.bdf decsess.bdf + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/misc/font-isas-misc/Makefile b/external/mit/xorg/share/fonts/misc/font-isas-misc/Makefile new file mode 100644 index 000000000..9df64be50 --- /dev/null +++ b/external/mit/xorg/share/fonts/misc/font-isas-misc/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= misc +FONTSRCPKG= font-isas-misc + +.PATH: ${X11SRCDIR.${FONTSRCPKG}} +BDFFILES+= gb16fs.bdf gb16st.bdf gb24st.bdf + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/misc/font-jis-misc/Makefile b/external/mit/xorg/share/fonts/misc/font-jis-misc/Makefile new file mode 100644 index 000000000..892b713ad --- /dev/null +++ b/external/mit/xorg/share/fonts/misc/font-jis-misc/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= misc +FONTSRCPKG= font-jis-misc + +.PATH: ${X11SRCDIR.${FONTSRCPKG}} +BDFFILES+= jiskan16.bdf jiskan24.bdf + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/misc/font-misc-misc/Makefile b/external/mit/xorg/share/fonts/misc/font-misc-misc/Makefile new file mode 100644 index 000000000..334050d6f --- /dev/null +++ b/external/mit/xorg/share/fonts/misc/font-misc-misc/Makefile @@ -0,0 +1,62 @@ +# $NetBSD: Makefile,v 1.2 2012/08/20 15:38:58 tron Exp $ + +.include + +FONTSUBDIR= misc +FONTSRCPKG= font-misc-misc + +.PATH: ${X11SRCDIR.${FONTSRCPKG}} + +BDFFILES+= 12x13ja.bdf 18x18ja.bdf +BDFFILES+= 18x18ko.bdf + +BDFFILES+= k14.bdf nil2.bdf + +BDFFILES+= 4x6.bdf 5x7.bdf 5x8.bdf 6x10.bdf 6x12.bdf 6x13.bdf \ + 6x13B.bdf 6x13O.bdf 6x9.bdf 7x13.bdf 7x13B.bdf 7x13O.bdf \ + 7x14.bdf 7x14B.bdf 8x13.bdf 8x13B.bdf 8x13O.bdf 9x15.bdf \ + 9x15B.bdf 9x18.bdf 9x18B.bdf 10x20.bdf + +# Most fonts have 22 output types, but ISO8859-8 and ISO8859-11 are +# missing a few. +NO_ISO8859-8= 6x13O 7x13O 8x13O +.for _s in ${NO_ISO8859-8} +NO_UCSFILES+= ${_s}-ISO8859-8 +.endfor + +NO_ISO8859-11= 4x6 5x7 5x8 6x9 6x10 6x12 6x13B 6x13O 8x13 8x13B 8x13O 9x18B +.for _s in ${NO_ISO8859-11} +NO_UCSFILES+= ${_s}-ISO8859-11 +.endfor + +NO_KOI8-R= 6x13B 6x13O 7x13B 7x13O 7x14B 8x13B 8x13O 9x15B 9x18B +.for _s in ${NO_KOI8-R} +NO_UCSFILES+= ${_s}-KOI8-R +.endfor + +ISOLOCSTD= ISO8859-1 ISO8859-2 ISO8859-3 ISO8859-4 ISO8859-5 ISO8859-7 \ + ISO8859-8 ISO8859-9 ISO8859-10 ISO8859-11 ISO8859-13 \ + ISO8859-14 ISO8859-15 ISO8859-16 KOI8-R +# .. and those 22 outputs +ISOSIZESTD= 4x6 \ + 5x7 5x8 \ + 6x9 6x10 6x12 6x13 6x13B 6x13O \ + 7x13 7x13B 7x13O 7x14 7x14B \ + 8x13 8x13B 8x13O \ + 9x15 9x15B 9x18 9x18B \ + 10x20 + +.for _l in ${ISOLOCSTD} +.for _s in ${ISOSIZESTD} +.if empty(NO_UCSFILES:M${_s}-${_l}) +UCSFILES+= ${_s} ${_l} +.endif +.endfor +.endfor + +UCSFILES+= 7x14 JISX0201.1976-0 + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/misc/font-mutt-misc/Makefile b/external/mit/xorg/share/fonts/misc/font-mutt-misc/Makefile new file mode 100644 index 000000000..4ba82e182 --- /dev/null +++ b/external/mit/xorg/share/fonts/misc/font-mutt-misc/Makefile @@ -0,0 +1,15 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +.include + +FONTSUBDIR= misc +FONTSRCPKG= font-mutt-misc + +.PATH: ${X11SRCDIR.${FONTSRCPKG}} +BDFFILES+= cu-alt12.bdf cu-arabic12.bdf cu-devnag12.bdf cu-lig12.bdf \ + cu-pua12.bdf cu12.bdf cuarabic12.bdf cudevnag12.bdf + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/fonts/misc/font-sony-misc/Makefile b/external/mit/xorg/share/fonts/misc/font-sony-misc/Makefile new file mode 100644 index 000000000..f99aa9ece --- /dev/null +++ b/external/mit/xorg/share/fonts/misc/font-sony-misc/Makefile @@ -0,0 +1,14 @@ +# $NetBSD: Makefile,v 1.1 2009/01/25 23:11:16 tron Exp $ + +.include + +FONTSUBDIR= misc +FONTSRCPKG= font-sony-misc + +.PATH: ${X11SRCDIR.${FONTSRCPKG}} +BDFFILES+= 12x24.bdf 12x24rk.bdf 8x16.bdf 8x16rk.bdf + +.include "../../Makefile.bdf" + +.include +.include diff --git a/external/mit/xorg/share/man/Makefile b/external/mit/xorg/share/man/Makefile new file mode 100644 index 000000000..9c9a370ad --- /dev/null +++ b/external/mit/xorg/share/man/Makefile @@ -0,0 +1,7 @@ +# $NetBSD: Makefile,v 1.1 2010/11/18 18:47:36 tron Exp $ + +.include + +SUBDIR= man7 + +.include diff --git a/external/mit/xorg/share/man/man7/Makefile b/external/mit/xorg/share/man/man7/Makefile new file mode 100644 index 000000000..2fe15b3fd --- /dev/null +++ b/external/mit/xorg/share/man/man7/Makefile @@ -0,0 +1,11 @@ +# $NetBSD: Makefile,v 1.3 2013/06/05 07:42:54 mrg Exp $ + +.include + +MAN= Consortium.7 Standards.7 X.7 XOrgFoundation.7 XProjectTeam.7 \ + Xsecurity.7 + +.PATH: ${X11SRCDIR.xorg-docs}/man + +.include +.include diff --git a/external/mit/xorg/share/nls/C/Makefile b/external/mit/xorg/share/nls/C/Makefile new file mode 100644 index 000000000..2ac08633e --- /dev/null +++ b/external/mit/xorg/share/nls/C/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= C + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/Makefile b/external/mit/xorg/share/nls/Makefile new file mode 100644 index 000000000..892eac33c --- /dev/null +++ b/external/mit/xorg/share/nls/Makefile @@ -0,0 +1,64 @@ +# $NetBSD: Makefile,v 1.3 2013/05/30 23:42:19 mrg Exp $ + +.include + +SUBDIR= \ + C \ + am_ET.UTF-8 armscii-8 \ + el_GR.UTF-8 \ + en_US.UTF-8 \ + georgian-academy georgian-ps \ + ibm-cp1133 iscii-dev isiri-3342 \ + iso8859-1 iso8859-2 iso8859-3 iso8859-4 iso8859-5 iso8859-6 \ + iso8859-7 iso8859-8 iso8859-9 iso8859-9e iso8859-10 iso8859-11 \ + iso8859-13 iso8859-14 iso8859-15 \ + ja ja.JIS ja.SJIS ja_JP.UTF-8 \ + ko ko_KR.UTF-8 koi8-c koi8-r koi8-u \ + microsoft-cp1251 microsoft-cp1255 microsoft-cp1256 mulelao-1 \ + nokhchi-1 \ + pt_BR.UTF-8 \ + tatar-cyr th_TH th_TH.UTF-8 tscii-0 \ + vi_VN.tcvn vi_VN.viscii \ + zh_CN zh_CN.UTF-8 zh_CN.gb18030 zh_CN.gbk zh_HK.UTF-8 \ + zh_HK.big5 zh_HK.big5hkscs zh_TW zh_TW.UTF-8 zh_TW.big5 + + +LTFILES=compose.dir locale.alias locale.dir + +FILESDIR= ${X11LIBDIR}/locale + +.for _F in ${LTFILES} +${_F}.lt: ${_F}.pre + ${_MKTARGET_CREATE} + rm -f ${.TARGET} + ( \ + ${CPP} -undef -traditional \ + < ${.ALLSRC} | ${X11TOOL_UNXCOMM} \ + | ${TOOL_SED} -e \ + '/^[^#][^ ]*:/s/://' -e '/^[^#].*[ ].*:/d'; \ + ${CPP} -undef -traditional \ + < ${.ALLSRC} | ${X11TOOL_UNXCOMM} ; \ + ) > ${.TARGET} + +FILES+= ${_F}.lt +FILESNAME_${_F}.lt= ${_F} +CLEANFILES+= ${_F}.lt +.endfor + +realall: ${FILES} + +.PATH: ${X11SRCDIR.X11}/nls + +.include +.include +.include + +# +# build all the silly subdirs +# +build_subdirs: +.for _dir in ${SUBDIR} + mkdir ${.CURDIR}/${_dir} + printf '# $$NetBSD: Makefile,v 1.3 2013/05/30 23:42:19 mrg Exp $$\n\nNLS_SUBDIR= ${_dir}\n\n.include "../Makefile.nls"\n' > ${.CURDIR}/${_dir}/Makefile + +.endfor diff --git a/external/mit/xorg/share/nls/Makefile.nls b/external/mit/xorg/share/nls/Makefile.nls new file mode 100644 index 000000000..b37943108 --- /dev/null +++ b/external/mit/xorg/share/nls/Makefile.nls @@ -0,0 +1,30 @@ +# $NetBSD: Makefile.nls,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +# install Compose XI18N_OBJS XLC_LOCALE for this subdir + +.include + +FILES= XI18N_OBJS +FILESDIR= ${X11LIBDIR}/locale/${NLS_SUBDIR} + +CTFILES= Compose XLC_LOCALE + +.PATH: ${X11SRCDIR.X11}/nls/${NLS_SUBDIR} + +.for _F in ${CTFILES} +${_F}.ct: ${_F}.pre + ${_MKTARGET_CREATE} + rm -f ${.TARGET} + ${CPP} -undef -traditional \ + < ${.ALLSRC} | ${X11TOOL_UNXCOMM} > ${.TARGET} + +FILES+= ${_F}.ct +FILESDIR_${_F}.ct= ${X11LIBDIR}/locale/${NLS_SUBDIR} +FILESNAME_${_F}.ct= ${_F:S/.pre$//} +CLEANFILES+= ${_F}.ct +.endfor + +realall: ${FILES} + +.include +.include diff --git a/external/mit/xorg/share/nls/am_ET.UTF-8/Makefile b/external/mit/xorg/share/nls/am_ET.UTF-8/Makefile new file mode 100644 index 000000000..7fa603358 --- /dev/null +++ b/external/mit/xorg/share/nls/am_ET.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= am_ET.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/armscii-8/Makefile b/external/mit/xorg/share/nls/armscii-8/Makefile new file mode 100644 index 000000000..4e57b872e --- /dev/null +++ b/external/mit/xorg/share/nls/armscii-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= armscii-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/el_GR.UTF-8/Makefile b/external/mit/xorg/share/nls/el_GR.UTF-8/Makefile new file mode 100644 index 000000000..ee4a08907 --- /dev/null +++ b/external/mit/xorg/share/nls/el_GR.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= el_GR.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/en_US.UTF-8/Makefile b/external/mit/xorg/share/nls/en_US.UTF-8/Makefile new file mode 100644 index 000000000..fff467782 --- /dev/null +++ b/external/mit/xorg/share/nls/en_US.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= en_US.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/georgian-academy/Makefile b/external/mit/xorg/share/nls/georgian-academy/Makefile new file mode 100644 index 000000000..c7a4eded1 --- /dev/null +++ b/external/mit/xorg/share/nls/georgian-academy/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= georgian-academy + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/georgian-ps/Makefile b/external/mit/xorg/share/nls/georgian-ps/Makefile new file mode 100644 index 000000000..e4570d232 --- /dev/null +++ b/external/mit/xorg/share/nls/georgian-ps/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= georgian-ps + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/ibm-cp1133/Makefile b/external/mit/xorg/share/nls/ibm-cp1133/Makefile new file mode 100644 index 000000000..859377820 --- /dev/null +++ b/external/mit/xorg/share/nls/ibm-cp1133/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= ibm-cp1133 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iscii-dev/Makefile b/external/mit/xorg/share/nls/iscii-dev/Makefile new file mode 100644 index 000000000..da651abb0 --- /dev/null +++ b/external/mit/xorg/share/nls/iscii-dev/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iscii-dev + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/isiri-3342/Makefile b/external/mit/xorg/share/nls/isiri-3342/Makefile new file mode 100644 index 000000000..ba16b81da --- /dev/null +++ b/external/mit/xorg/share/nls/isiri-3342/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= isiri-3342 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-1/Makefile b/external/mit/xorg/share/nls/iso8859-1/Makefile new file mode 100644 index 000000000..d895ac350 --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-1/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-1 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-10/Makefile b/external/mit/xorg/share/nls/iso8859-10/Makefile new file mode 100644 index 000000000..b92690dca --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-10/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-10 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-11/Makefile b/external/mit/xorg/share/nls/iso8859-11/Makefile new file mode 100644 index 000000000..7aaba095b --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-11/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-11 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-13/Makefile b/external/mit/xorg/share/nls/iso8859-13/Makefile new file mode 100644 index 000000000..30e481ae3 --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-13/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-13 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-14/Makefile b/external/mit/xorg/share/nls/iso8859-14/Makefile new file mode 100644 index 000000000..81defd844 --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-14/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-14 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-15/Makefile b/external/mit/xorg/share/nls/iso8859-15/Makefile new file mode 100644 index 000000000..49f1d93dc --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-15/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-15 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-2/Makefile b/external/mit/xorg/share/nls/iso8859-2/Makefile new file mode 100644 index 000000000..d6c45bf11 --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-2/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-2 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-3/Makefile b/external/mit/xorg/share/nls/iso8859-3/Makefile new file mode 100644 index 000000000..ac78b9af6 --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-3/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-3 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-4/Makefile b/external/mit/xorg/share/nls/iso8859-4/Makefile new file mode 100644 index 000000000..3dcc1c8ce --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-4/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-4 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-5/Makefile b/external/mit/xorg/share/nls/iso8859-5/Makefile new file mode 100644 index 000000000..a8914e64b --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-5/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-5 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-6/Makefile b/external/mit/xorg/share/nls/iso8859-6/Makefile new file mode 100644 index 000000000..8e473e2d9 --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-6/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-6 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-7/Makefile b/external/mit/xorg/share/nls/iso8859-7/Makefile new file mode 100644 index 000000000..b249c495f --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-7/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-7 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-8/Makefile b/external/mit/xorg/share/nls/iso8859-8/Makefile new file mode 100644 index 000000000..07714cd1f --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-9/Makefile b/external/mit/xorg/share/nls/iso8859-9/Makefile new file mode 100644 index 000000000..6c1b0b970 --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-9/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-9 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/iso8859-9e/Makefile b/external/mit/xorg/share/nls/iso8859-9e/Makefile new file mode 100644 index 000000000..f5dc60277 --- /dev/null +++ b/external/mit/xorg/share/nls/iso8859-9e/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= iso8859-9e + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/ja.JIS/Makefile b/external/mit/xorg/share/nls/ja.JIS/Makefile new file mode 100644 index 000000000..df7b2cc53 --- /dev/null +++ b/external/mit/xorg/share/nls/ja.JIS/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= ja.JIS + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/ja.SJIS/Makefile b/external/mit/xorg/share/nls/ja.SJIS/Makefile new file mode 100644 index 000000000..c563a3137 --- /dev/null +++ b/external/mit/xorg/share/nls/ja.SJIS/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= ja.SJIS + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/ja/Makefile b/external/mit/xorg/share/nls/ja/Makefile new file mode 100644 index 000000000..53c9e0196 --- /dev/null +++ b/external/mit/xorg/share/nls/ja/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= ja + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/ja_JP.UTF-8/Makefile b/external/mit/xorg/share/nls/ja_JP.UTF-8/Makefile new file mode 100644 index 000000000..9d360d94f --- /dev/null +++ b/external/mit/xorg/share/nls/ja_JP.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= ja_JP.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/ko/Makefile b/external/mit/xorg/share/nls/ko/Makefile new file mode 100644 index 000000000..3eebb8102 --- /dev/null +++ b/external/mit/xorg/share/nls/ko/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= ko + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/ko_KR.UTF-8/Makefile b/external/mit/xorg/share/nls/ko_KR.UTF-8/Makefile new file mode 100644 index 000000000..d5bfa619a --- /dev/null +++ b/external/mit/xorg/share/nls/ko_KR.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= ko_KR.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/koi8-c/Makefile b/external/mit/xorg/share/nls/koi8-c/Makefile new file mode 100644 index 000000000..299294b9e --- /dev/null +++ b/external/mit/xorg/share/nls/koi8-c/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= koi8-c + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/koi8-r/Makefile b/external/mit/xorg/share/nls/koi8-r/Makefile new file mode 100644 index 000000000..ae51f7407 --- /dev/null +++ b/external/mit/xorg/share/nls/koi8-r/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= koi8-r + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/koi8-u/Makefile b/external/mit/xorg/share/nls/koi8-u/Makefile new file mode 100644 index 000000000..e577d651a --- /dev/null +++ b/external/mit/xorg/share/nls/koi8-u/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= koi8-u + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/microsoft-cp1251/Makefile b/external/mit/xorg/share/nls/microsoft-cp1251/Makefile new file mode 100644 index 000000000..a4b56d8cc --- /dev/null +++ b/external/mit/xorg/share/nls/microsoft-cp1251/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= microsoft-cp1251 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/microsoft-cp1255/Makefile b/external/mit/xorg/share/nls/microsoft-cp1255/Makefile new file mode 100644 index 000000000..e9e6e618c --- /dev/null +++ b/external/mit/xorg/share/nls/microsoft-cp1255/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= microsoft-cp1255 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/microsoft-cp1256/Makefile b/external/mit/xorg/share/nls/microsoft-cp1256/Makefile new file mode 100644 index 000000000..7687b8d56 --- /dev/null +++ b/external/mit/xorg/share/nls/microsoft-cp1256/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= microsoft-cp1256 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/mulelao-1/Makefile b/external/mit/xorg/share/nls/mulelao-1/Makefile new file mode 100644 index 000000000..b2cb9f6dd --- /dev/null +++ b/external/mit/xorg/share/nls/mulelao-1/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= mulelao-1 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/nokhchi-1/Makefile b/external/mit/xorg/share/nls/nokhchi-1/Makefile new file mode 100644 index 000000000..e515416f0 --- /dev/null +++ b/external/mit/xorg/share/nls/nokhchi-1/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= nokhchi-1 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/pt_BR.UTF-8/Makefile b/external/mit/xorg/share/nls/pt_BR.UTF-8/Makefile new file mode 100644 index 000000000..fef6e7080 --- /dev/null +++ b/external/mit/xorg/share/nls/pt_BR.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= pt_BR.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/tatar-cyr/Makefile b/external/mit/xorg/share/nls/tatar-cyr/Makefile new file mode 100644 index 000000000..93186efac --- /dev/null +++ b/external/mit/xorg/share/nls/tatar-cyr/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= tatar-cyr + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/th_TH.UTF-8/Makefile b/external/mit/xorg/share/nls/th_TH.UTF-8/Makefile new file mode 100644 index 000000000..f68361f58 --- /dev/null +++ b/external/mit/xorg/share/nls/th_TH.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= th_TH.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/th_TH/Makefile b/external/mit/xorg/share/nls/th_TH/Makefile new file mode 100644 index 000000000..9d1474b38 --- /dev/null +++ b/external/mit/xorg/share/nls/th_TH/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= th_TH + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/tscii-0/Makefile b/external/mit/xorg/share/nls/tscii-0/Makefile new file mode 100644 index 000000000..96b9affff --- /dev/null +++ b/external/mit/xorg/share/nls/tscii-0/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= tscii-0 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/vi_VN.tcvn/Makefile b/external/mit/xorg/share/nls/vi_VN.tcvn/Makefile new file mode 100644 index 000000000..f99309e58 --- /dev/null +++ b/external/mit/xorg/share/nls/vi_VN.tcvn/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= vi_VN.tcvn + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/vi_VN.viscii/Makefile b/external/mit/xorg/share/nls/vi_VN.viscii/Makefile new file mode 100644 index 000000000..b98a3cf10 --- /dev/null +++ b/external/mit/xorg/share/nls/vi_VN.viscii/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= vi_VN.viscii + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_CN.UTF-8/Makefile b/external/mit/xorg/share/nls/zh_CN.UTF-8/Makefile new file mode 100644 index 000000000..f9de74796 --- /dev/null +++ b/external/mit/xorg/share/nls/zh_CN.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_CN.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_CN.gb18030/Makefile b/external/mit/xorg/share/nls/zh_CN.gb18030/Makefile new file mode 100644 index 000000000..436bd4044 --- /dev/null +++ b/external/mit/xorg/share/nls/zh_CN.gb18030/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_CN.gb18030 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_CN.gbk/Makefile b/external/mit/xorg/share/nls/zh_CN.gbk/Makefile new file mode 100644 index 000000000..e0f1f2c56 --- /dev/null +++ b/external/mit/xorg/share/nls/zh_CN.gbk/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_CN.gbk + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_CN/Makefile b/external/mit/xorg/share/nls/zh_CN/Makefile new file mode 100644 index 000000000..46df7e0ef --- /dev/null +++ b/external/mit/xorg/share/nls/zh_CN/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_CN + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_HK.UTF-8/Makefile b/external/mit/xorg/share/nls/zh_HK.UTF-8/Makefile new file mode 100644 index 000000000..c8d5ed471 --- /dev/null +++ b/external/mit/xorg/share/nls/zh_HK.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_HK.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_HK.big5/Makefile b/external/mit/xorg/share/nls/zh_HK.big5/Makefile new file mode 100644 index 000000000..65ebbe475 --- /dev/null +++ b/external/mit/xorg/share/nls/zh_HK.big5/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_HK.big5 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_HK.big5hkscs/Makefile b/external/mit/xorg/share/nls/zh_HK.big5hkscs/Makefile new file mode 100644 index 000000000..95351cbe6 --- /dev/null +++ b/external/mit/xorg/share/nls/zh_HK.big5hkscs/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_HK.big5hkscs + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_TW.UTF-8/Makefile b/external/mit/xorg/share/nls/zh_TW.UTF-8/Makefile new file mode 100644 index 000000000..e7c272276 --- /dev/null +++ b/external/mit/xorg/share/nls/zh_TW.UTF-8/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_TW.UTF-8 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_TW.big5/Makefile b/external/mit/xorg/share/nls/zh_TW.big5/Makefile new file mode 100644 index 000000000..bf20ba474 --- /dev/null +++ b/external/mit/xorg/share/nls/zh_TW.big5/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_TW.big5 + +.include "../Makefile.nls" diff --git a/external/mit/xorg/share/nls/zh_TW/Makefile b/external/mit/xorg/share/nls/zh_TW/Makefile new file mode 100644 index 000000000..34c8f9b09 --- /dev/null +++ b/external/mit/xorg/share/nls/zh_TW/Makefile @@ -0,0 +1,5 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NLS_SUBDIR= zh_TW + +.include "../Makefile.nls" diff --git a/external/mit/xorg/tools/Makefile b/external/mit/xorg/tools/Makefile new file mode 100644 index 000000000..9c61f4206 --- /dev/null +++ b/external/mit/xorg/tools/Makefile @@ -0,0 +1,17 @@ +# $NetBSD: Makefile,v 1.3 2010/07/19 05:34:27 mrg Exp $ + +.include + +# These are used by the 'includes' phase, +# and can't assume that ${DESTDIR}${X11INCDIR} has been populated. + +SUBDIR+= makestrs .WAIT + +# The rest of the tools can rely upon 'includes' + +# XXX pswrap/gen_matypes -- missing + +SUBDIR+=bdftopcf fc-cache ucs2any glsl +SUBDIR+=makekeys mkfontscale .WAIT xkbcomp + +.include diff --git a/external/mit/xorg/tools/bdftopcf/Makefile b/external/mit/xorg/tools/bdftopcf/Makefile new file mode 100644 index 000000000..f2a12854c --- /dev/null +++ b/external/mit/xorg/tools/bdftopcf/Makefile @@ -0,0 +1,36 @@ +# $NetBSD: Makefile,v 1.6 2013/05/31 05:24:50 mrg Exp $ + +NOMAN= 1 + +.include + +HOSTPROG= bdftopcf +.PATH: ${X11SRCDIR.bdftopcf} + +FREETYPE= ${X11SRCDIR.freetype} + +SRCS= bdftopcf.c + +HOST_CPPFLAGS+= -I${DESTDIR}${X11INCDIR} \ + -I${DESTDIR}${X11INCDIR} \ + -I${DESTDIR}${X11INCDIR}/X11/fonts \ + -I${DESTDIR}${X11INCDIR}/freetype2 \ + -I${X11SRCDIR.Xfont}/src/stubs \ + -DBDFFORMAT -DPCFFORMAT -DSNFFORMAT -DX_GZIP_FONT_COMPRESSION \ + -DFONT_ENCODINGS_DIRECTORY=\"${X11FONTDIR}/encodings/encodings.dir\" \ + -DPACKAGE_STRING="\"NetBSD tool bdftopcf 1.0.4\"" + +.PATH: ${X11SRCDIR.Xfont}/src/bitmap +SRCS+= bdfread.c bdfutils.c bitmap.c bitmaputil.c fontink.c \ + pcfread.c pcfwrite.c + +.PATH: ${X11SRCDIR.Xfont}/src/fontfile +SRCS+= bufio.c decompress.c defaults.c fileio.c filewr.c gunzip.c + +.PATH: ${X11SRCDIR.Xfont}/src/util +SRCS+= atom.c fontaccel.c private.c utilbitmap.c + +LDADD+= -lz + +.include +.include diff --git a/external/mit/xorg/tools/bdftopcf/Makefile.bdftopcf b/external/mit/xorg/tools/bdftopcf/Makefile.bdftopcf new file mode 100644 index 000000000..2d7a5293f --- /dev/null +++ b/external/mit/xorg/tools/bdftopcf/Makefile.bdftopcf @@ -0,0 +1,7 @@ +# $NetBSD: Makefile.bdftopcf,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +BDFTOPCFDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/tools/bdftopcf && ${PRINTOBJDIR} +BDFTOPCF= ${BDFTOPCFDIR}/bdftopcf + +${BDFTOPCF}: + (cd ${NETBSDSRCDIR}/external/mit/xorg/tools/bdftopcf && ${MAKE}) diff --git a/external/mit/xorg/tools/fc-cache/Makefile b/external/mit/xorg/tools/fc-cache/Makefile new file mode 100644 index 000000000..217b3255c --- /dev/null +++ b/external/mit/xorg/tools/fc-cache/Makefile @@ -0,0 +1,120 @@ +# $NetBSD: Makefile,v 1.8 2013/06/03 20:23:40 mrg Exp $ + +NOMAN= 1 + +.include + +HOSTPROG= fc-cache + +FONTCONFIG= ${X11SRCDIR.fontconfig} +FREETYPE= ${X11SRCDIR.freetype} +EXPAT= ${NETBSDSRCDIR}/external/mit/expat/dist + +.PATH: ${FONTCONFIG}/fc-cache +SRCS.fc-cache= fc-cache.c + +.PATH: ${FONTCONFIG}/src +SRCS.fontconfig= fcatomic.c fcblanks.c fccache.c fccfg.c \ + fccharset.c fcdbg.c fccompat.c fcdefault.c fcdir.c \ + fcfreetype.c fcfs.c fchash.c fcinit.c fclang.c \ + fclist.c fcmatch.c fcmatrix.c fcname.c fcobjs.c \ + fcpat.c fcserialize.c fcstat.c fcstr.c fcxml.c \ + ftglue.c + +.PATH: ${FREETYPE}/src/base +SRCS.freetype= ftapi.c ftbase.c ftbbox.c ftbdf.c ftdebug.c ftglyph.c \ + ftinit.c ftmm.c ftpfr.c ftstroke.c ftsynth.c ftsystem.c \ + fttype1.c ftwinfnt.c ftxf86.c ftbitmap.c + +.PATH: ${FREETYPE}/src/autofit +SRCS.freetype+= autofit.c + +.PATH: ${FREETYPE}/src/bdf +SRCS.freetype+= bdf.c + +.PATH: ${FREETYPE}/src/cff +SRCS.freetype+= cff.c + +.PATH: ${FREETYPE}/src/cid +SRCS.freetype+= type1cid.c + +.PATH: ${FREETYPE}/src/gzip +SRCS.freetype+= ftgzip.c + +#.PATH: ${FREETYPE}/src/bzip2 +#SRCS.freetype+= ftbzip2.c + +.PATH: ${FREETYPE}/src/lzw +SRCS.freetype+= ftlzw.c + +.PATH: ${FREETYPE}/src/pcf +SRCS.freetype+= pcf.c + +.PATH: ${FREETYPE}/src/pfr +SRCS.freetype+= pfr.c + +.PATH: ${FREETYPE}/src/psaux +SRCS.freetype+= psaux.c + +.PATH: ${FREETYPE}/src/pshinter +SRCS.freetype+= pshinter.c + +.PATH: ${FREETYPE}/src/psnames +SRCS.freetype+= psnames.c + +.PATH: ${FREETYPE}/src/raster +SRCS.freetype+= raster.c + +.PATH: ${FREETYPE}/src/sfnt +SRCS.freetype+= sfnt.c + +.PATH: ${FREETYPE}/src/smooth +SRCS.freetype+= smooth.c + +.PATH: ${FREETYPE}/src/truetype +SRCS.freetype+= truetype.c + +.PATH: ${FREETYPE}/src/type1 +SRCS.freetype+= type1.c + +.PATH: ${FREETYPE}/src/type42 +SRCS.freetype+= type42.c + +.PATH: ${FREETYPE}/src/winfonts +SRCS.freetype+= winfnt.c + +.PATH: ${EXPAT}/lib +SRCS.expat= xmlparse.c xmltok.c xmlrole.c + +SRCS= ${SRCS.fc-cache} ${SRCS.fontconfig} ${SRCS.freetype} ${SRCS.expat} + +# XXX FONTCONFIG_PATH was arbitrarily chosen +HOST_CPPFLAGS= -DFONTCONFIG_PATH='"${DESTDIR}/etc/X11/fonts"' \ + -DFC_DEFAULT_FONTS='"${X11FONTDIR}/Type1"' \ + -DFC_CACHEDIR='"${DESTDIR}/var/cache/fontconfig"' \ + -DHAVE_FT_BITMAP_SIZE_Y_PPEM \ + -DHAVE_FT_GET_BDF_PROPERTY \ + -DHAVE_FT_GET_NEXT_CHAR \ + -DHAVE_FT_GET_PS_FONT_INFO \ + -DHAVE_FT_GET_X11_FONT_FORMAT \ + -DHAVE_FT_HAS_PS_GLYPH_NAMES \ + -DHAVE_EXPAT -DXFREE86_FT2 -DHAVE_INTTYPES_H \ + -DFT2_BUILD_LIBRARY \ + -DXML_BYTE_ORDER=0 -DHAVE_MEMMOVE=1 \ + -DHAVE_STDINT_H -DHAVE_RANDOM -DDARWIN_NO_CARBON \ + -DHAVE_SYS_TYPES_H -DHAVE_FCNTL_H -DHAVE_SYS_STAT_H \ + -DHAVE_MKSTEMP \ + -DFLEXIBLE_ARRAY_MEMBER="/**/" +HOST_CPPFLAGS+= -DFT_CONFIG_OPTION_DISABLE_BZIP2 +HOST_CPPFLAGS+= -I${FONTCONFIG} -I${FREETYPE} \ + -I${FREETYPE}/include -I${EXPAT}/lib \ + -I${FONTCONFIG}/../include \ + -I${DESTDIR}${X11INCDIR} -I. + +LDADD= -lz +#LDADD+= -lbz2 + +.include "../../lib/fontconfig/src/Makefile.fcarch" + +.include +.include diff --git a/external/mit/xorg/tools/fc-cache/Makefile.fc-cache b/external/mit/xorg/tools/fc-cache/Makefile.fc-cache new file mode 100644 index 000000000..85b14f4b6 --- /dev/null +++ b/external/mit/xorg/tools/fc-cache/Makefile.fc-cache @@ -0,0 +1,7 @@ +# $NetBSD: Makefile.fc-cache,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +FCCACHEDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/tools/fc-cache && ${PRINTOBJDIR} +FCCACHE= ${FCCACHEDIR}/fc-cache + +${FCCACHE}: + (cd ${NETBSDSRCDIR}/external/mit/xorg/tools/fc-cache && ${MAKE}) diff --git a/external/mit/xorg/tools/gen_matypes/Makefile b/external/mit/xorg/tools/gen_matypes/Makefile new file mode 100644 index 000000000..5f487b442 --- /dev/null +++ b/external/mit/xorg/tools/gen_matypes/Makefile @@ -0,0 +1,16 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NOMAN= 1 + +.include + +.PATH: ${X11SRCDIR.xc}/extras/Mesa/src/mesa/x86 + +HOSTPROG= gen_matypes +HOST_CPPFLAGS+= -I${DESTDIR}${X11INCDIR} \ + -I${X11SRCDIR.xc}/extras/Mesa/src/mesa/glapi \ + -I${X11SRCDIR.xc}/extras/Mesa/include \ + -I${X11SRCDIR.xc}/extras/Mesa/src/mesa \ + -I${X11SRCDIR.xc}/extras/Mesa/src/mesa/main + +.include diff --git a/external/mit/xorg/tools/gen_matypes/Makefile.gen_matypes b/external/mit/xorg/tools/gen_matypes/Makefile.gen_matypes new file mode 100644 index 000000000..278837917 --- /dev/null +++ b/external/mit/xorg/tools/gen_matypes/Makefile.gen_matypes @@ -0,0 +1,7 @@ +# $NetBSD: Makefile.gen_matypes,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +GEN_MATYPESDIR!=cd ${NETBSDSRCDIR}/external/mit/xorg/tools/gen_matypes && ${PRINTOBJDIR} +GEN_MATYPES= ${GEN_MATYPESDIR}/gen_matypes + +${GEN_MATYPES}: + (cd ${NETBSDSRCDIR}/external/mit/xorg/tools/gen_matypes && ${MAKE}) diff --git a/external/mit/xorg/tools/getlibvers b/external/mit/xorg/tools/getlibvers new file mode 100755 index 000000000..c022083ed --- /dev/null +++ b/external/mit/xorg/tools/getlibvers @@ -0,0 +1,29 @@ +#! /bin/sh + +list='expat fontconfig freetype libFS libICE libSM libX11 libXScrnSaver libXTrap libXau libXcomposite libXcursor libXdamage libXdmcp libXevie libXext libXfixes libXfont libXft libXi libXinerama libXmu libXp libXpm libXrandr libXrender libXres libXt libXtst libXv libXvMC libXxf86dga libXxf86misc libXxf86vm libdrm libfontenc libxkbfile libxkbui' + +DISTFILES=${DISTFILES-/usr/pkgsrc/distfiles} + +for dist in $list; do + updist=$(echo $dist | tr a-z A-Z) + tarball=$(cd ${DISTFILES}; echo ${dist}-*tar*) + tarver=${tarball#${dist}-} + ext=bz2 + case $tarball in + *.tar.bz2) + ver=${tarver%.tar.bz2} + ;; + *.tar.gz) + ext=gz + ver=${tarver%.tar.gz} + ;; + *) + ver=x + echo "dunno what $dist is -- $tarball" 1>&2 + ;; + esac + if [ "$ver" != x ]; then + echo "${updist}_VERSION = ${ver}" + echo "${updist}_EXT = ${ext}" + fi +done diff --git a/external/mit/xorg/tools/glsl/Makefile b/external/mit/xorg/tools/glsl/Makefile new file mode 100644 index 000000000..38f33be74 --- /dev/null +++ b/external/mit/xorg/tools/glsl/Makefile @@ -0,0 +1,19 @@ +# $NetBSD: Makefile,v 1.1 2010/07/19 05:34:28 mrg Exp $ + +NOMAN= 1 + +.include + +.PATH: ${X11SRCDIR.MesaLib}/src/glsl/apps + +.include "Makefile.glslsrcs" + +HOSTPROG= glsl-compile + +SRCS= compile.c + +SRCS+= ${SRCS.pp} ${SRCS.cl} + +# also: process.c purify.c tokenise.c version.c + +.include diff --git a/external/mit/xorg/tools/glsl/Makefile.glsl b/external/mit/xorg/tools/glsl/Makefile.glsl new file mode 100644 index 000000000..2020d989f --- /dev/null +++ b/external/mit/xorg/tools/glsl/Makefile.glsl @@ -0,0 +1,7 @@ +# $NetBSD: Makefile.glsl,v 1.1 2010/07/19 05:34:28 mrg Exp $ + +GLSLDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/tools/glsl && ${PRINTOBJDIR} +GLSL= ${GLSLDIR}/glsl-compile + +${GLSL}: + (cd ${NETBSDSRCDIR}/external/mit/xorg/tools/glsl && ${MAKE}) diff --git a/external/mit/xorg/tools/glsl/Makefile.glslsrcs b/external/mit/xorg/tools/glsl/Makefile.glslsrcs new file mode 100644 index 000000000..0ba0cd913 --- /dev/null +++ b/external/mit/xorg/tools/glsl/Makefile.glslsrcs @@ -0,0 +1,24 @@ +# $NetBSD: Makefile.glslsrcs,v 1.1 2010/07/19 05:34:28 mrg Exp $ + +SRCS.pp= \ + sl_pp_context.c \ + sl_pp_define.c \ + sl_pp_dict.c \ + sl_pp_error.c \ + sl_pp_expression.c \ + sl_pp_extension.c \ + sl_pp_if.c \ + sl_pp_line.c \ + sl_pp_macro.c \ + sl_pp_pragma.c \ + sl_pp_process.c \ + sl_pp_purify.c \ + sl_pp_token.c \ + sl_pp_token_util.c \ + sl_pp_version.c + +SRCS.cl= \ + sl_cl_parse.c + +.PATH: ${X11SRCDIR.MesaLib}/src/glsl/pp +.PATH: ${X11SRCDIR.MesaLib}/src/glsl/cl diff --git a/external/mit/xorg/tools/makekeys/Makefile b/external/mit/xorg/tools/makekeys/Makefile new file mode 100644 index 000000000..adc44c6f7 --- /dev/null +++ b/external/mit/xorg/tools/makekeys/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ + +NOMAN= 1 + +.include + +.PATH: ${X11SRCDIR.X11}/src/util + +HOSTPROG= makekeys +HOST_CPPFLAGS+= -I${DESTDIR}${X11INCDIR} + +.include +.include diff --git a/external/mit/xorg/tools/makekeys/Makefile.makekeys b/external/mit/xorg/tools/makekeys/Makefile.makekeys new file mode 100644 index 000000000..9573fd0be --- /dev/null +++ b/external/mit/xorg/tools/makekeys/Makefile.makekeys @@ -0,0 +1,17 @@ +# $NetBSD: Makefile.makekeys,v 1.2 2010/11/22 00:52:33 mrg Exp $ + +MAKEKEYSDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/tools/makekeys && ${PRINTOBJDIR} +MAKEKEYS= ${MAKEKEYSDIR}/makekeys + +${MAKEKEYS}: + (cd ${NETBSDSRCDIR}/external/mit/xorg/tools/makekeys && ${MAKE}) + +DPSRCS+= ks_tables.h +CLEANFILES+= ks_tables.h + +KSDEF= ${DESTDIR}${X11INCDIR}/X11/keysymdef.h + +ks_tables.h: ${MAKEKEYS} ${KSDEF} + ${_MKTARGET_CREATE} + rm -f ${.TARGET} + ${MAKEKEYS} ${KSDEF} > ${.TARGET} diff --git a/external/mit/xorg/tools/makestrs/Makefile b/external/mit/xorg/tools/makestrs/Makefile new file mode 100644 index 000000000..85000152b --- /dev/null +++ b/external/mit/xorg/tools/makestrs/Makefile @@ -0,0 +1,18 @@ +# $NetBSD: Makefile,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +NOMAN= 1 + +.include + +.PATH: ${X11SRCDIR.Xt}/util + +HOSTPROG= makestrs +HOST_CPPFLAGS+= -I. -I${DESTDIR}${X11INCDIR} + +# Can't use -I${DESTDIR}${X11INCDIR} since pswrap is needed +# to create some header files. +# +BUILDSYMLINKS= ${X11SRCDIR.Xt}/include/X11 X11 +DPSRCS+= X11 + +.include diff --git a/external/mit/xorg/tools/makestrs/Makefile.makestrs b/external/mit/xorg/tools/makestrs/Makefile.makestrs new file mode 100644 index 000000000..255a55af9 --- /dev/null +++ b/external/mit/xorg/tools/makestrs/Makefile.makestrs @@ -0,0 +1,7 @@ +# $NetBSD: Makefile.makestrs,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +MAKESTRSDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/tools/makestrs && ${PRINTOBJDIR} +MAKESTRS= ${MAKESTRSDIR}/makestrs + +${MAKESTRS}: + (cd ${NETBSDSRCDIR}/external/mit/xorg/tools/makestrs && ${MAKE}) diff --git a/external/mit/xorg/tools/mkfontscale/Makefile b/external/mit/xorg/tools/mkfontscale/Makefile new file mode 100644 index 000000000..1e73a504d --- /dev/null +++ b/external/mit/xorg/tools/mkfontscale/Makefile @@ -0,0 +1,93 @@ +# $NetBSD: Makefile,v 1.4 2011/08/10 10:34:48 tsutsui Exp $ + +NOMAN= 1 + +.include + +HOSTPROG= mkfontscale + +FREETYPE= ${X11SRCDIR.freetype} + +.PATH: ${X11SRCDIR.${HOSTPROG}} +SRCS.mkfontscale= mkfontscale.c list.c hash.c ident.c + +.PATH: ${FREETYPE}/src/base +SRCS.freetype+= ftapi.c ftbase.c ftbbox.c ftbdf.c ftdebug.c ftglyph.c \ + ftinit.c ftmm.c ftpfr.c ftstroke.c ftsynth.c ftsystem.c \ + fttype1.c ftwinfnt.c ftxf86.c ftbitmap.c + +.PATH: ${FREETYPE}/src/autofit +SRCS.freetype+= autofit.c + +.PATH: ${FREETYPE}/src/bdf +SRCS.freetype+= bdf.c + +.PATH: ${FREETYPE}/src/cff +SRCS.freetype+= cff.c + +.PATH: ${FREETYPE}/src/cid +SRCS.freetype+= type1cid.c + +.PATH: ${FREETYPE}/src/gzip +SRCS.freetype+= ftgzip.c + +#.PATH: ${FREETYPE}/src/bzip2 +#SRCS.freetype+= ftbzip2.c + +.PATH: ${FREETYPE}/src/lzw +SRCS.freetype+= ftlzw.c + +.PATH: ${FREETYPE}/src/pcf +SRCS.freetype+= pcf.c + +.PATH: ${FREETYPE}/src/pfr +SRCS.freetype+= pfr.c + +.PATH: ${FREETYPE}/src/psaux +SRCS.freetype+= psaux.c + +.PATH: ${FREETYPE}/src/pshinter +SRCS.freetype+= pshinter.c + +.PATH: ${FREETYPE}/src/psnames +SRCS.freetype+= psnames.c + +.PATH: ${FREETYPE}/src/raster +SRCS.freetype+= raster.c + +.PATH: ${FREETYPE}/src/sfnt +SRCS.freetype+= sfnt.c + +.PATH: ${FREETYPE}/src/smooth +SRCS.freetype+= smooth.c + +.PATH: ${FREETYPE}/src/truetype +SRCS.freetype+= truetype.c + +.PATH: ${FREETYPE}/src/type1 +SRCS.freetype+= type1.c + +.PATH: ${FREETYPE}/src/type42 +SRCS.freetype+= type42.c + +.PATH: ${FREETYPE}/src/winfonts +SRCS.freetype+= winfnt.c + +.PATH: ${X11SRCDIR.fontenc}/src +SRCS.fontenc= fontenc.c encparse.c + +SRCS+= ${SRCS.mkfontscale} ${SRCS.freetype} ${SRCS.fontenc} + +LDADD= -lz +#LDADD+= -lbz2 + +HOST_CPPFLAGS= -DFONTENC_NO_LIBFONT -DXFREE86_FT2 -DFONTENC_NO_LIBFONT \ + -DFT2_BUILD_LIBRARY -DDARWIN_NO_CARBON \ + -DFONT_ENCODINGS_DIRECTORY=\"${X11FONTDIR}/encodings/encodings.dir\" +HOST_CPPFLAGS+= -DFT_CONFIG_OPTION_DISABLE_BZIP2 +HOST_CPPFLAGS+= -I${FREETYPE}/include -I${DESTDIR}${X11INCDIR} \ + -I${DESTDIR}${X11INCDIR}/freetype2 +# -I${X11SRCDIR.xc}/include/fonts + +.include +.include diff --git a/external/mit/xorg/tools/ucs2any/Makefile b/external/mit/xorg/tools/ucs2any/Makefile new file mode 100644 index 000000000..c974f4bea --- /dev/null +++ b/external/mit/xorg/tools/ucs2any/Makefile @@ -0,0 +1,13 @@ +# $NetBSD: Makefile,v 1.2 2008/09/13 21:37:07 hubertf Exp $ + +NOMAN= 1 + +.include + +HOSTPROG= ucs2any +.PATH: ${X11SRCDIR.font-util} + +HOST_CPPFLAGS= -DDARWIN_NO_CARBON + +.include +.include diff --git a/external/mit/xorg/tools/ucs2any/Makefile.ucs2any b/external/mit/xorg/tools/ucs2any/Makefile.ucs2any new file mode 100644 index 000000000..5eebd0327 --- /dev/null +++ b/external/mit/xorg/tools/ucs2any/Makefile.ucs2any @@ -0,0 +1,7 @@ +# $NetBSD: Makefile.ucs2any,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +UCS2ANYDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/tools/ucs2any && ${PRINTOBJDIR} +UCS2ANY= ${UCS2ANYDIR}/ucs2any + +${UCS2ANY}: + (cd ${NETBSDSRCDIR}/external/mit/xorg/tools/ucs2any && ${MAKE}) diff --git a/external/mit/xorg/tools/xkbcomp/Makefile b/external/mit/xorg/tools/xkbcomp/Makefile new file mode 100644 index 000000000..fcd2a3839 --- /dev/null +++ b/external/mit/xorg/tools/xkbcomp/Makefile @@ -0,0 +1,45 @@ +# $NetBSD: Makefile,v 1.4 2013/05/31 23:43:05 mrg Exp $ + +NOMAN= 1 + +.include + +HOSTPROG= xkbcomp +.PATH: ${X11SRCDIR.xkbcomp} +.PATH: ${X11SRCDIR.X11}/src + +SRCS= xkbcomp.c xkbscan.c expr.c vmod.c indicators.c misc.c \ + keymap.c keycodes.c keytypes.c compat.c action.c alias.c \ + symbols.c geometry.c xkbpath.c listing.c \ + xkbparse.y parseutils.c utils.c + +SRCS+= xkbcomp-stubs.c xkbcomp-KeyBind.c + +.PATH: ${X11SRCDIR.xkbfile}/src +SRCS+= xkbatom.c xkberrs.c xkbout.c xkmread.c xkbtext.c \ + cout.c xkmout.c + +SRCS+= xkbfile-xkbmisc.c + +.PATH: ${X11SRCDIR.X11}/src/xkb +SRCS+= KeysymStr.c StrKeysym.c Quarks.c Xrm.c +SRCS+= XKB.c XKBAlloc.c XKBGAlloc.c XKBMAlloc.c XKBMisc.c \ + XKBGeom.c XKBRdBuf.c + +HOST_CPPFLAGS+= -I${DESTDIR}${X11INCDIR} \ + -I${DESTDIR}${X11INCDIR}/X11 \ + -I. \ + -I${X11SRCDIR.X11}/src \ + -I${X11SRCDIR.X11}/src/xkb \ + -I${X11SRCDIR.xkbfile}/include/X11/extensions \ + -I${X11SRCDIR.${HOSTPROG}} \ + -DDFLT_XKB_CONFIG_ROOT=\"${X11LIBDIR}/xkb\" -DXKB \ + -DHAVE_STRCASECMP -DHAVE_STRDUP \ + -DPACKAGE_STRING="\"NetBSD tool xkbcomp 1.2.4\"" \ + -DPACKAGE_VERSION="\"1.2.4\"" + + +.include "${NETBSDSRCDIR}/external/mit/xorg/tools/makekeys/Makefile.makekeys" + +.include +.include diff --git a/external/mit/xorg/tools/xkbcomp/Makefile.xkbcomp b/external/mit/xorg/tools/xkbcomp/Makefile.xkbcomp new file mode 100644 index 000000000..806db94db --- /dev/null +++ b/external/mit/xorg/tools/xkbcomp/Makefile.xkbcomp @@ -0,0 +1,7 @@ +# $NetBSD: Makefile.xkbcomp,v 1.1.1.1 2008/07/29 05:01:22 mrg Exp $ + +XKBCOMPDIR!= cd ${NETBSDSRCDIR}/external/mit/xorg/tools/xkbcomp && ${PRINTOBJDIR} +XKBCOMP= ${XKBCOMPDIR}/xkbcomp + +${XKBCOMP}: + (cd ${NETBSDSRCDIR}/external/mit/xorg/tools/xkbcomp && ${MAKE}) diff --git a/external/mit/xorg/tools/xkbcomp/xkbcomp-KeyBind.c b/external/mit/xorg/tools/xkbcomp/xkbcomp-KeyBind.c new file mode 100644 index 000000000..bb4d28277 --- /dev/null +++ b/external/mit/xorg/tools/xkbcomp/xkbcomp-KeyBind.c @@ -0,0 +1,756 @@ +/* $NetBSD: xkbcomp-KeyBind.c,v 1.1.1.1 2008/07/29 05:01:23 mrg Exp $ */ + +/* $Xorg: KeyBind.c,v 1.4 2001/02/09 02:03:34 xorgcvs Exp $ */ +/* + +Copyright 1985, 1987, 1998 The Open Group + +Permission to use, copy, modify, distribute, and sell this software and its +documentation for any purpose is hereby granted without fee, provided that +the above copyright notice appear in all copies and that both that +copyright notice and this permission notice appear in supporting +documentation. + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of The Open Group shall not be +used in advertising or otherwise to promote the sale, use or other dealings +in this Software without prior written authorization from The Open Group. + +*/ +/* $XFree86: xc/lib/X11/KeyBind.c,v 1.5 2001/12/14 19:54:02 dawes Exp $ */ + +/* Beware, here be monsters (still under construction... - JG */ + +#define NEED_EVENTS +#include +#include +#define XK_MISCELLANY +#define XK_LATIN1 +#define XK_LATIN2 +#define XK_LATIN3 +#define XK_LATIN4 +#define XK_CYRILLIC +#define XK_GREEK +#define XK_ARMENIAN +#define XK_XKB_KEYS +#include +#include + +#include "XKBlib.h" + +#ifdef USE_OWN_COMPOSE +#include "imComp.h" + +#endif + +#ifdef XKB +#define XKeycodeToKeysym _XKeycodeToKeysym +#define XKeysymToKeycode _XKeysymToKeycode +#define XLookupKeysym _XLookupKeysym +#define XRefreshKeyboardMapping _XRefreshKeyboardMapping +#define XLookupString _XLookupString +/* XKBBind.c */ +#else +#define XkbKeysymToModifiers _XKeysymToModifiers +#endif + +#define AllMods (ShiftMask|LockMask|ControlMask| \ + Mod1Mask|Mod2Mask|Mod3Mask|Mod4Mask|Mod5Mask) + +#if 0 /* { */ + +static void ComputeMaskFromKeytrans(); +int _XKeyInitialize(); + +struct _XKeytrans { + struct _XKeytrans *next;/* next on list */ + char *string; /* string to return when the time comes */ + int len; /* length of string (since NULL is legit)*/ + KeySym key; /* keysym rebound */ + unsigned int state; /* modifier state */ + KeySym *modifiers; /* modifier keysyms you want */ + int mlen; /* length of modifier list */ +}; + +static KeySym +#if NeedFunctionPrototypes +KeyCodetoKeySym(register Display *dpy, KeyCode keycode, int col) +#else +KeyCodetoKeySym(dpy, keycode, col) + register Display *dpy; + KeyCode keycode; + int col; +#endif +{ + register int per = dpy->keysyms_per_keycode; + register KeySym *syms; + KeySym lsym, usym; + + if ((col < 0) || ((col >= per) && (col > 3)) || + ((int)keycode < dpy->min_keycode) || ((int)keycode > dpy->max_keycode)) + return NoSymbol; + + syms = &dpy->keysyms[(keycode - dpy->min_keycode) * per]; + if (col < 4) { + if (col > 1) { + while ((per > 2) && (syms[per - 1] == NoSymbol)) + per--; + if (per < 3) + col -= 2; + } + if ((per <= (col|1)) || (syms[col|1] == NoSymbol)) { + XConvertCase(syms[col&~1], &lsym, &usym); + if (!(col & 1)) + return lsym; + else if (usym == lsym) + return NoSymbol; + else + return usym; + } + } + return syms[col]; +} + +#if NeedFunctionPrototypes +KeySym +XKeycodeToKeysym(Display *dpy, +#if NeedWidePrototypes + unsigned int kc, +#else + KeyCode kc, +#endif + int col) +#else +KeySym +XKeycodeToKeysym(dpy, kc, col) + Display *dpy; + KeyCode kc; + int col; +#endif +{ + if ((! dpy->keysyms) && (! _XKeyInitialize(dpy))) + return NoSymbol; + return KeyCodetoKeySym(dpy, kc, col); +} + +KeyCode +XKeysymToKeycode(dpy, ks) + Display *dpy; + KeySym ks; +{ + register int i, j; + + if ((! dpy->keysyms) && (! _XKeyInitialize(dpy))) + return (KeyCode) 0; + for (j = 0; j < dpy->keysyms_per_keycode; j++) { + for (i = dpy->min_keycode; i <= dpy->max_keycode; i++) { + if (KeyCodetoKeySym(dpy, (KeyCode) i, j) == ks) + return i; + } + } + return 0; +} + +KeySym +XLookupKeysym(event, col) + register XKeyEvent *event; + int col; +{ + if ((! event->display->keysyms) && (! _XKeyInitialize(event->display))) + return NoSymbol; + return KeyCodetoKeySym(event->display, event->keycode, col); +} + +static void +ResetModMap(dpy) + Display *dpy; +{ + register XModifierKeymap *map; + register int i, j, n; + KeySym sym; + register struct _XKeytrans *p; + + map = dpy->modifiermap; + /* If any Lock key contains Caps_Lock, then interpret as Caps_Lock, + * else if any contains Shift_Lock, then interpret as Shift_Lock, + * else ignore Lock altogether. + */ + dpy->lock_meaning = NoSymbol; + /* Lock modifiers are in the second row of the matrix */ + n = 2 * map->max_keypermod; + for (i = map->max_keypermod; i < n; i++) { + for (j = 0; j < dpy->keysyms_per_keycode; j++) { + sym = KeyCodetoKeySym(dpy, map->modifiermap[i], j); + if (sym == XK_Caps_Lock) { + dpy->lock_meaning = XK_Caps_Lock; + break; + } else if (sym == XK_Shift_Lock) { + dpy->lock_meaning = XK_Shift_Lock; + } + else if (sym == XK_ISO_Lock) { + dpy->lock_meaning = XK_Caps_Lock; + break; + } + } + } + /* Now find any Mod modifier acting as the Group or Numlock modifier */ + dpy->mode_switch = 0; + dpy->num_lock = 0; + n *= 4; + for (i = 3*map->max_keypermod; i < n; i++) { + for (j = 0; j < dpy->keysyms_per_keycode; j++) { + sym = KeyCodetoKeySym(dpy, map->modifiermap[i], j); + if (sym == XK_Mode_switch) + dpy->mode_switch |= 1 << (i / map->max_keypermod); + if (sym == XK_Num_Lock) + dpy->num_lock |= 1 << (i / map->max_keypermod); + } + } + for (p = dpy->key_bindings; p; p = p->next) + ComputeMaskFromKeytrans(dpy, p); +} + +static int +InitModMap(dpy) + Display *dpy; +{ + register XModifierKeymap *map; + + if (! (map = XGetModifierMapping(dpy))) + return 0; + LockDisplay(dpy); + if (dpy->modifiermap) + XFreeModifiermap(dpy->modifiermap); + dpy->modifiermap = map; + dpy->free_funcs->modifiermap = XFreeModifiermap; + if (dpy->keysyms) + ResetModMap(dpy); + UnlockDisplay(dpy); + return 1; +} + +int +XRefreshKeyboardMapping(event) + register XMappingEvent *event; +{ + + if(event->request == MappingKeyboard) { + /* XXX should really only refresh what is necessary + * for now, make initialize test fail + */ + LockDisplay(event->display); + if (event->display->keysyms) { + Xfree ((char *)event->display->keysyms); + event->display->keysyms = NULL; + } + UnlockDisplay(event->display); + } + if(event->request == MappingModifier) { + LockDisplay(event->display); + if (event->display->modifiermap) { + XFreeModifiermap(event->display->modifiermap); + event->display->modifiermap = NULL; + } + UnlockDisplay(event->display); + /* go ahead and get it now, since initialize test may not fail */ + if (event->display->keysyms) + (void) InitModMap(event->display); + } + return 1; +} + +int +_XKeyInitialize(dpy) + Display *dpy; +{ + int per, n; + KeySym *keysyms; + + /* + * lets go get the keysyms from the server. + */ + if (!dpy->keysyms) { + n = dpy->max_keycode - dpy->min_keycode + 1; + keysyms = XGetKeyboardMapping (dpy, (KeyCode) dpy->min_keycode, + n, &per); + /* keysyms may be NULL */ + if (! keysyms) return 0; + + LockDisplay(dpy); + if (dpy->keysyms) + Xfree ((char *)dpy->keysyms); + dpy->keysyms = keysyms; + dpy->keysyms_per_keycode = per; + if (dpy->modifiermap) + ResetModMap(dpy); + UnlockDisplay(dpy); + } + if (!dpy->modifiermap) + return InitModMap(dpy); + return 1; +} + +#endif /* } */ + +void +XConvertCase(sym, lower, upper) + register KeySym sym; + KeySym *lower; + KeySym *upper; +{ + *lower = sym; + *upper = sym; + switch(sym >> 8) { + case 0: /* Latin 1 */ + if ((sym >= XK_A) && (sym <= XK_Z)) + *lower += (XK_a - XK_A); + else if ((sym >= XK_a) && (sym <= XK_z)) + *upper -= (XK_a - XK_A); + else if ((sym >= XK_Agrave) && (sym <= XK_Odiaeresis)) + *lower += (XK_agrave - XK_Agrave); + else if ((sym >= XK_agrave) && (sym <= XK_odiaeresis)) + *upper -= (XK_agrave - XK_Agrave); + else if ((sym >= XK_Ooblique) && (sym <= XK_Thorn)) + *lower += (XK_oslash - XK_Ooblique); + else if ((sym >= XK_oslash) && (sym <= XK_thorn)) + *upper -= (XK_oslash - XK_Ooblique); + break; + case 1: /* Latin 2 */ + /* Assume the KeySym is a legal value (ignore discontinuities) */ + if (sym == XK_Aogonek) + *lower = XK_aogonek; + else if (sym >= XK_Lstroke && sym <= XK_Sacute) + *lower += (XK_lstroke - XK_Lstroke); + else if (sym >= XK_Scaron && sym <= XK_Zacute) + *lower += (XK_scaron - XK_Scaron); + else if (sym >= XK_Zcaron && sym <= XK_Zabovedot) + *lower += (XK_zcaron - XK_Zcaron); + else if (sym == XK_aogonek) + *upper = XK_Aogonek; + else if (sym >= XK_lstroke && sym <= XK_sacute) + *upper -= (XK_lstroke - XK_Lstroke); + else if (sym >= XK_scaron && sym <= XK_zacute) + *upper -= (XK_scaron - XK_Scaron); + else if (sym >= XK_zcaron && sym <= XK_zabovedot) + *upper -= (XK_zcaron - XK_Zcaron); + else if (sym >= XK_Racute && sym <= XK_Tcedilla) + *lower += (XK_racute - XK_Racute); + else if (sym >= XK_racute && sym <= XK_tcedilla) + *upper -= (XK_racute - XK_Racute); + break; + case 2: /* Latin 3 */ + /* Assume the KeySym is a legal value (ignore discontinuities) */ + if (sym >= XK_Hstroke && sym <= XK_Hcircumflex) + *lower += (XK_hstroke - XK_Hstroke); + else if (sym >= XK_Gbreve && sym <= XK_Jcircumflex) + *lower += (XK_gbreve - XK_Gbreve); + else if (sym >= XK_hstroke && sym <= XK_hcircumflex) + *upper -= (XK_hstroke - XK_Hstroke); + else if (sym >= XK_gbreve && sym <= XK_jcircumflex) + *upper -= (XK_gbreve - XK_Gbreve); + else if (sym >= XK_Cabovedot && sym <= XK_Scircumflex) + *lower += (XK_cabovedot - XK_Cabovedot); + else if (sym >= XK_cabovedot && sym <= XK_scircumflex) + *upper -= (XK_cabovedot - XK_Cabovedot); + break; + case 3: /* Latin 4 */ + /* Assume the KeySym is a legal value (ignore discontinuities) */ + if (sym >= XK_Rcedilla && sym <= XK_Tslash) + *lower += (XK_rcedilla - XK_Rcedilla); + else if (sym >= XK_rcedilla && sym <= XK_tslash) + *upper -= (XK_rcedilla - XK_Rcedilla); + else if (sym == XK_ENG) + *lower = XK_eng; + else if (sym == XK_eng) + *upper = XK_ENG; + else if (sym >= XK_Amacron && sym <= XK_Umacron) + *lower += (XK_amacron - XK_Amacron); + else if (sym >= XK_amacron && sym <= XK_umacron) + *upper -= (XK_amacron - XK_Amacron); + break; + case 6: /* Cyrillic */ + /* Assume the KeySym is a legal value (ignore discontinuities) */ + if (sym >= XK_Serbian_DJE && sym <= XK_Serbian_DZE) + *lower -= (XK_Serbian_DJE - XK_Serbian_dje); + else if (sym >= XK_Serbian_dje && sym <= XK_Serbian_dze) + *upper += (XK_Serbian_DJE - XK_Serbian_dje); + else if (sym >= XK_Cyrillic_YU && sym <= XK_Cyrillic_HARDSIGN) + *lower -= (XK_Cyrillic_YU - XK_Cyrillic_yu); + else if (sym >= XK_Cyrillic_yu && sym <= XK_Cyrillic_hardsign) + *upper += (XK_Cyrillic_YU - XK_Cyrillic_yu); + break; + case 7: /* Greek */ + /* Assume the KeySym is a legal value (ignore discontinuities) */ + if (sym >= XK_Greek_ALPHAaccent && sym <= XK_Greek_OMEGAaccent) + *lower += (XK_Greek_alphaaccent - XK_Greek_ALPHAaccent); + else if (sym >= XK_Greek_alphaaccent && sym <= XK_Greek_omegaaccent && + sym != XK_Greek_iotaaccentdieresis && + sym != XK_Greek_upsilonaccentdieresis) + *upper -= (XK_Greek_alphaaccent - XK_Greek_ALPHAaccent); + else if (sym >= XK_Greek_ALPHA && sym <= XK_Greek_OMEGA) + *lower += (XK_Greek_alpha - XK_Greek_ALPHA); + else if (sym >= XK_Greek_alpha && sym <= XK_Greek_omega && + sym != XK_Greek_finalsmallsigma) + *upper -= (XK_Greek_alpha - XK_Greek_ALPHA); + break; + case 0x14: /* Armenian */ + if (sym >= XK_Armenian_AYB && sym <= XK_Armenian_fe) { + *lower = sym | 1; + *upper = sym & ~1; + } + break; + } +} + +#if __disabled_for_imakeicide__ /* { */ + +int +#if NeedFunctionPrototypes +_XTranslateKey( register Display *dpy, + KeyCode keycode, + register unsigned int modifiers, + unsigned int *modifiers_return, + KeySym *keysym_return) +#else +_XTranslateKey(dpy, keycode, modifiers, modifiers_return, keysym_return) + register Display *dpy; + KeyCode keycode; + register unsigned int modifiers; + unsigned int *modifiers_return; + KeySym *keysym_return; +#endif +{ + int per; + register KeySym *syms; + KeySym sym, lsym, usym; + + if ((! dpy->keysyms) && (! _XKeyInitialize(dpy))) + return 0; + *modifiers_return = ((ShiftMask|LockMask) + | dpy->mode_switch | dpy->num_lock); + if (((int)keycode < dpy->min_keycode) || ((int)keycode > dpy->max_keycode)) + { + *keysym_return = NoSymbol; + return 1; + } + per = dpy->keysyms_per_keycode; + syms = &dpy->keysyms[(keycode - dpy->min_keycode) * per]; + while ((per > 2) && (syms[per - 1] == NoSymbol)) + per--; + if ((per > 2) && (modifiers & dpy->mode_switch)) { + syms += 2; + per -= 2; + } + if ((modifiers & dpy->num_lock) && + (per > 1 && (IsKeypadKey(syms[1]) || IsPrivateKeypadKey(syms[1])))) { + if ((modifiers & ShiftMask) || + ((modifiers & LockMask) && (dpy->lock_meaning == XK_Shift_Lock))) + *keysym_return = syms[0]; + else + *keysym_return = syms[1]; + } else if (!(modifiers & ShiftMask) && + (!(modifiers & LockMask) || (dpy->lock_meaning == NoSymbol))) { + if ((per == 1) || (syms[1] == NoSymbol)) + XConvertCase(syms[0], keysym_return, &usym); + else + *keysym_return = syms[0]; + } else if (!(modifiers & LockMask) || + (dpy->lock_meaning != XK_Caps_Lock)) { + if ((per == 1) || ((usym = syms[1]) == NoSymbol)) + XConvertCase(syms[0], &lsym, &usym); + *keysym_return = usym; + } else { + if ((per == 1) || ((sym = syms[1]) == NoSymbol)) + sym = syms[0]; + XConvertCase(sym, &lsym, &usym); + if (!(modifiers & ShiftMask) && (sym != syms[0]) && + ((sym != usym) || (lsym == usym))) + XConvertCase(syms[0], &lsym, &usym); + *keysym_return = usym; + } + if (*keysym_return == XK_VoidSymbol) + *keysym_return = NoSymbol; + return 1; +} + +int +_XTranslateKeySym(dpy, symbol, modifiers, buffer, nbytes) + Display *dpy; + register KeySym symbol; + unsigned int modifiers; + char *buffer; + int nbytes; +{ + register struct _XKeytrans *p; + int length; + unsigned long hiBytes; + register unsigned char c; + + if (!symbol) + return 0; + /* see if symbol rebound, if so, return that string. */ + for (p = dpy->key_bindings; p; p = p->next) { + if (((modifiers & AllMods) == p->state) && (symbol == p->key)) { + length = p->len; + if (length > nbytes) length = nbytes; + memcpy (buffer, p->string, length); + return length; + } + } + /* try to convert to Latin-1, handling control */ + hiBytes = symbol >> 8; + if (!(nbytes && + ((hiBytes == 0) || + ((hiBytes == 0xFF) && + (((symbol >= XK_BackSpace) && (symbol <= XK_Clear)) || + (symbol == XK_Return) || + (symbol == XK_Escape) || + (symbol == XK_KP_Space) || + (symbol == XK_KP_Tab) || + (symbol == XK_KP_Enter) || + ((symbol >= XK_KP_Multiply) && (symbol <= XK_KP_9)) || + (symbol == XK_KP_Equal) || + (symbol == XK_Delete)))))) + return 0; + + /* if X keysym, convert to ascii by grabbing low 7 bits */ + if (symbol == XK_KP_Space) + c = XK_space & 0x7F; /* patch encoding botch */ + else if (hiBytes == 0xFF) + c = symbol & 0x7F; + else + c = symbol & 0xFF; + /* only apply Control key if it makes sense, else ignore it */ + if (modifiers & ControlMask) { + if ((c >= '@' && c < '\177') || c == ' ') c &= 0x1F; + else if (c == '2') c = '\000'; + else if (c >= '3' && c <= '7') c -= ('3' - '\033'); + else if (c == '8') c = '\177'; + else if (c == '/') c = '_' & 0x1F; + } + buffer[0] = c; + return 1; +} + +/*ARGSUSED*/ +int +XLookupString (event, buffer, nbytes, keysym, status) + register XKeyEvent *event; + char *buffer; /* buffer */ + int nbytes; /* space in buffer for characters */ + KeySym *keysym; + XComposeStatus *status; /* not implemented */ +{ + unsigned int modifiers; + KeySym symbol; + + if (! _XTranslateKey(event->display, event->keycode, event->state, + &modifiers, &symbol)) + return 0; + +#ifdef USE_OWN_COMPOSE + if ( status ) { + static int been_here= 0; + if ( !been_here ) { + XimCompInitTables(); + been_here = 1; + } + if ( !XimCompLegalStatus(status) ) { + status->compose_ptr = NULL; + status->chars_matched = 0; + } + if ( ((status->chars_matched>0)&&(status->compose_ptr!=NULL)) || + XimCompIsComposeKey(symbol,event->keycode,status) ) { + XimCompRtrn rtrn; + switch (XimCompProcessSym(status,symbol,&rtrn)) { + case XIM_COMP_IGNORE: + break; + case XIM_COMP_IN_PROGRESS: + if ( keysym!=NULL ) + *keysym = NoSymbol; + return 0; + case XIM_COMP_FAIL: + { + int n = 0, len= 0; + for (n=len=0;rtrn.sym[n]!=XK_VoidSymbol;n++) { + if ( nbytes-len > 0 ) { + len+= _XTranslateKeySym(event->display,rtrn.sym[n], + event->state, + buffer+len,nbytes-len); + } + } + if ( keysym!=NULL ) { + if ( n==1 ) *keysym = rtrn.sym[0]; + else *keysym = NoSymbol; + } + return len; + } + case XIM_COMP_SUCCEED: + { + int len,n = 0; + + symbol = rtrn.matchSym; + if ( keysym!=NULL ) *keysym = symbol; + if ( rtrn.str[0]!='\0' ) { + strncpy(buffer,rtrn.str,nbytes-1); + buffer[nbytes-1]= '\0'; + len = strlen(buffer); + } + else { + len = _XTranslateKeySym(event->display,symbol, + event->state, + buffer,nbytes); + } + for (n=0;rtrn.sym[n]!=XK_VoidSymbol;n++) { + if ( nbytes-len > 0 ) { + len+= _XTranslateKeySym(event->display,rtrn.sym[n], + event->state, + buffer+len,nbytes-len); + } + } + return len; + } + } + } + } +#endif + + if (keysym) + *keysym = symbol; + /* arguable whether to use (event->state & ~modifiers) here */ + return _XTranslateKeySym(event->display, symbol, event->state, + buffer, nbytes); +} + +static void +_XFreeKeyBindings (dpy) + Display *dpy; +{ + register struct _XKeytrans *p, *np; + + for (p = dpy->key_bindings; p; p = np) { + np = p->next; + Xfree(p->string); + Xfree((char *)p->modifiers); + Xfree((char *)p); + } +} + +int +#if NeedFunctionPrototypes +XRebindKeysym ( + Display *dpy, + KeySym keysym, + KeySym *mlist, + int nm, /* number of modifiers in mlist */ + _Xconst unsigned char *str, + int nbytes) +#else +XRebindKeysym (dpy, keysym, mlist, nm, str, nbytes) + Display *dpy; + KeySym keysym; + KeySym *mlist; + int nm; /* number of modifiers in mlist */ + unsigned char *str; + int nbytes; +#endif +{ + register struct _XKeytrans *tmp, *p; + int nb; + + if ((! dpy->keysyms) && (! _XKeyInitialize(dpy))) + return 0; + LockDisplay(dpy); + tmp = dpy->key_bindings; + nb = sizeof(KeySym) * nm; + + if ((! (p = (struct _XKeytrans *) Xmalloc( sizeof(struct _XKeytrans)))) || + ((! (p->string = (char *) Xmalloc( (unsigned) nbytes))) && + (nbytes > 0)) || + ((! (p->modifiers = (KeySym *) Xmalloc( (unsigned) nb))) && + (nb > 0))) { + if (p) { + if (p->string) Xfree(p->string); + if (p->modifiers) Xfree((char *) p->modifiers); + Xfree((char *) p); + } + UnlockDisplay(dpy); + return 0; + } + + dpy->key_bindings = p; + dpy->free_funcs->key_bindings = _XFreeKeyBindings; + p->next = tmp; /* chain onto list */ + memcpy (p->string, (char *) str, nbytes); + p->len = nbytes; + memcpy ((char *) p->modifiers, (char *) mlist, nb); + p->key = keysym; + p->mlen = nm; + ComputeMaskFromKeytrans(dpy, p); + UnlockDisplay(dpy); + return 0; +} + +unsigned +_XKeysymToModifiers(dpy,ks) + Display *dpy; + KeySym ks; +{ + CARD8 code,mods; + register KeySym *kmax; + register KeySym *k; + register XModifierKeymap *m; + + if ((! dpy->keysyms) && (! _XKeyInitialize(dpy))) + return 0; + kmax = dpy->keysyms + + (dpy->max_keycode - dpy->min_keycode + 1) * dpy->keysyms_per_keycode; + k = dpy->keysyms; + m = dpy->modifiermap; + mods= 0; + while (kmax_keypermod<<3; + + code=(((k-dpy->keysyms)/dpy->keysyms_per_keycode)+dpy->min_keycode); + + while (--j >= 0) { + if (code == m->modifiermap[j]) + mods|= (1<<(j/m->max_keypermod)); + } + } + k++; + } + return mods; +} + +/* + * given a list of modifiers, computes the mask necessary for later matching. + * This routine must lookup the key in the Keymap and then search to see + * what modifier it is bound to, if any. Sets the AnyModifier bit if it + * can't map some keysym to a modifier. + */ +static void +ComputeMaskFromKeytrans(dpy, p) + Display *dpy; + register struct _XKeytrans *p; +{ + register int i; + + p->state = AnyModifier; + for (i = 0; i < p->mlen; i++) { + p->state|= XkbKeysymToModifiers(dpy,p->modifiers[i]); + } + p->state &= AllMods; +} + +#endif /* __disabled_for_imakeicide__ } */ diff --git a/external/mit/xorg/tools/xkbcomp/xkbcomp-stubs.c b/external/mit/xorg/tools/xkbcomp/xkbcomp-stubs.c new file mode 100644 index 000000000..098062b90 --- /dev/null +++ b/external/mit/xorg/tools/xkbcomp/xkbcomp-stubs.c @@ -0,0 +1,184 @@ +/* $NetBSD: xkbcomp-stubs.c,v 1.2 2013/05/30 23:42:20 mrg Exp $ */ + +/*- + * Copyright (c) 2003-2004 The NetBSD Foundation, Inc. + * All rights reserved. + * + * This code is derived from software contributed to The NetBSD Foundation + * by Luke Mewburn. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#include + +#include "Xlibint.h" +#include "Xlcint.h" +#include "XKBlibint.h" +#include + +Display * +XOpenDisplay(const char *display) +{ + return NULL; +} + +int +XCloseDisplay(Display *dpy) +{ + return 0; +} + +int (* +XSynchronize(Display *dpy, int onoff))() +{ + return NULL; +} + +XrmMethods +_XrmInitParseInfo(XPointer *state) +{ + return NULL; +} + +int +XGetErrorText(Display *dpy, int code, char *buffer, int nbytes) +{ + return 0; +} + + +char * +XGetAtomName(Display *dpy, Atom atom) +{ + return NULL; +} + +Atom +XInternAtom(Display *dpy, const char *name, Bool onlyIfExists) +{ + return None; +} + +XkbDescPtr +XkbGetMap(Display *dpy,unsigned which,unsigned deviceSpec) +{ + return NULL; +} + +Status +XkbGetIndicatorMap(Display *dpy,unsigned long which,XkbDescPtr xkb) +{ + return BadValue; +} + +Status +XkbGetControls(Display *dpy, unsigned long which, XkbDescPtr xkb) +{ + return BadValue; +} + +Status +XkbGetCompatMap(Display *dpy,unsigned which,XkbDescPtr xkb) +{ + return BadValue; +} + +Status +XkbGetNames(Display *dpy,unsigned which,XkbDescPtr xkb) +{ + return BadValue; +} + +Status +XkbChangeKbdDisplay(Display *newDpy,XkbFileInfo *result) +{ + return BadValue; +} + +Bool +XkbWriteToServer(XkbFileInfo *result) +{ + return False; +} + +void +_XFlush(Display *dpy) +{ +} + +Bool +XkbUseExtension(Display *dpy,int *major_rtrn,int *minor_rtrn) +{ + return False; +} + +Status +_XReply(Display *dpy, xReply *rep, int extra, Bool discard) +{ + return False; +} + +int +_XRead(Display *dpy, char *data, long size) +{ + return 0; +} + +void * +_XGetRequest(Display *dpy, CARD8 type, size_t len) +{ + return NULL; +} + +#if !defined(XOS_USE_NO_LOCKING) && defined(XTHREADS) +void (*_XCreateMutex_fn)(LockInfoPtr) = NULL; +void (**_XFreeMutex_fn_p)(LockInfoPtr) = &_XFreeMutex_fn; + +void (*_XFreeMutex_fn)(LockInfoPtr) = NULL; +void (**_XCreateMutex_fn_p)(LockInfoPtr) = &_XCreateMutex_fn; + +LockInfoPtr _Xglobal_lock = NULL; +LockInfoPtr *_Xglobal_lock_p = &_Xglobal_lock; + +void (*_XLockMutex_fn)( + LockInfoPtr /* lock */ +#if defined(XTHREADS_WARN) || defined(XTHREADS_FILE_LINE) + , char * /* file */ + , int /* line */ +#endif + ) = NULL; +void (*_XUnlockMutex_fn)( + LockInfoPtr /* lock */ +#if defined(XTHREADS_WARN) || defined(XTHREADS_FILE_LINE) + , char * /* file */ + , int /* line */ +#endif + ) = NULL; +#endif /* !defined(XOS_USE_NO_LOCKING) && defined(XTHREADS) */ diff --git a/external/mit/xorg/tools/xkbcomp/xkbfile-xkbmisc.c b/external/mit/xorg/tools/xkbcomp/xkbfile-xkbmisc.c new file mode 100644 index 000000000..1547b7c80 --- /dev/null +++ b/external/mit/xorg/tools/xkbcomp/xkbfile-xkbmisc.c @@ -0,0 +1,8 @@ +/* $NetBSD: xkbfile-xkbmisc.c,v 1.1 2009/02/03 05:08:39 dbj Exp $ */ + +/* This file exists to differentiate between + * lib/xkbfile/xkbmisc.c and lib/X11/XKBMisc.c + * which causes objdir conflicts on case-insensitive filesystems + */ + +#include <../../../libxkbfile/dist/src/xkbmisc.c> diff --git a/share/mk/bsd.x11.mk b/share/mk/bsd.x11.mk index 42802dcab..4edd33bd5 100644 --- a/share/mk/bsd.x11.mk +++ b/share/mk/bsd.x11.mk @@ -17,12 +17,17 @@ CPPFLAGS+= -DNO_ALLOCA X11FLAGS.VERSION= -DOSMAJORVERSION=5 -DOSMINORVERSION=99 # XXX # THREADS_DEFINES -X11FLAGS.THREADS= -DXTHREADS -D_REENTRANT -DXUSE_MTSAFE_API \ +# LSC (MINIX): Not supported: -D_REENTRANT +X11FLAGS.THREADS= -DXTHREADS -DXUSE_MTSAFE_API \ -DXNO_MTSAFE_PWDAPI # CONNECTION_FLAGS +.if !defined(__MINIX) X11FLAGS.CONNECTION= -DTCPCONN -DUNIXCONN -DHAS_STICKY_DIR_BIT \ -DHAS_FCHOWN +.else +X11FLAGS.CONNECTION= -DTCPCONN -DUNIXCONN -DHAS_STICKY_DIR_BIT +.endif # !defined(__MINIX) .if (${USE_INET6} != "no") X11FLAGS.CONNECTION+= -DIPv6 @@ -88,6 +93,10 @@ X11FLAGS.SERVER= -DSHAPE -DXKB -DLBX -DXAPPGROUP -DXCSECURITY \ X11FLAGS.OS_DEFINES= -DDDXOSINIT -DSERVER_LOCK -DDDXOSFATALERROR \ -DDDXOSVERRORF -DDDXTIME -DUSB_HID +.if defined(__MINIX) +X11FLAGS.OS_DEFINES+= -DXOS_USE_NO_LOCKING +.endif # defined(__MINIX) + .if !(${MACHINE} == "acorn32" || \ (${MACHINE} == "alpha" && ${X11FLAVOUR} != "Xorg") || \ ${MACHINE} == "amiga" || \ @@ -172,7 +181,11 @@ CPPFLAGS+= -I${DESTDIR}${X11INCDIR} CPPFLAGS+= -D__AMD64__ .endif +.if !defined(__MINIX) LDFLAGS+= -Wl,-rpath,${X11USRLIBDIR} -L=${X11USRLIBDIR} +.else +LDFLAGS+= -Wl,-rpath,${X11USRLIBDIR} -L${DESTDIR}${X11USRLIBDIR} +.endif # !defined(__MINIX) # diff --git a/sys/dev/stbi/files.stbi b/sys/dev/stbi/files.stbi new file mode 100644 index 000000000..c16176380 --- /dev/null +++ b/sys/dev/stbi/files.stbi @@ -0,0 +1,4 @@ +# $NetBSD: files.stbi,v 1.1 2011/02/06 23:13:04 jmcneill Exp $ + +define stbi +file dev/stbi/stb_image.c stbi diff --git a/sys/dev/stbi/stb_image.c b/sys/dev/stbi/stb_image.c new file mode 100644 index 000000000..8897640ff --- /dev/null +++ b/sys/dev/stbi/stb_image.c @@ -0,0 +1,5001 @@ +/* stbi-1.29 - public domain JPEG/PNG reader - http://nothings.org/stb_image.c + when you control the images you're loading + no warranty implied; use at your own risk + + QUICK NOTES: + Primarily of interest to game developers and other people who can + avoid problematic images and only need the trivial interface + + JPEG baseline (no JPEG progressive) + PNG 8-bit only + + TGA (not sure what subset, if a subset) + BMP non-1bpp, non-RLE + PSD (composited view only, no extra channels) + + GIF (*comp always reports as 4-channel) + HDR (radiance rgbE format) + PIC (Softimage PIC) + + - decoded from memory or through stdio FILE (define STBI_NO_STDIO to remove code) + - supports installable dequantizing-IDCT, YCbCr-to-RGB conversion (define STBI_SIMD) + + Latest revisions: + 1.29 (2010-08-16) various warning fixes from Aurelien Pocheville + 1.28 (2010-08-01) fix bug in GIF palette transparency (SpartanJ) + 1.27 (2010-08-01) cast-to-uint8 to fix warnings (Laurent Gomila) + allow trailing 0s at end of image data (Laurent Gomila) + 1.26 (2010-07-24) fix bug in file buffering for PNG reported by SpartanJ + 1.25 (2010-07-17) refix trans_data warning (Won Chun) + 1.24 (2010-07-12) perf improvements reading from files + minor perf improvements for jpeg + deprecated type-specific functions in hope of feedback + attempt to fix trans_data warning (Won Chun) + 1.23 fixed bug in iPhone support + 1.22 (2010-07-10) removed image *writing* support to stb_image_write.h + stbi_info support from Jetro Lauha + GIF support from Jean-Marc Lienher + iPhone PNG-extensions from James Brown + warning-fixes from Nicolas Schulz and Janez Zemva + 1.21 fix use of 'uint8' in header (reported by jon blow) + 1.20 added support for Softimage PIC, by Tom Seddon + + See end of file for full revision history. + + TODO: + stbi_info support for BMP,PSD,HDR,PIC + rewrite stbi_info and load_file variations to share file handling code + (current system allows individual functions to be called directly, + since each does all the work, but I doubt anyone uses this in practice) + + + ============================ Contributors ========================= + + Image formats Optimizations & bugfixes + Sean Barrett (jpeg, png, bmp) Fabian "ryg" Giesen + Nicolas Schulz (hdr, psd) + Jonathan Dummer (tga) Bug fixes & warning fixes + Jean-Marc Lienher (gif) Marc LeBlanc + Tom Seddon (pic) Christpher Lloyd + Thatcher Ulrich (psd) Dave Moore + Won Chun + the Horde3D community + Extensions, features Janez Zemva + Jetro Lauha (stbi_info) Jonathan Blow + James "moose2000" Brown (iPhone PNG) Laurent Gomila + Aruelien Pocheville + + If your name should be here but isn't, let Sean know. + +*/ + +#ifdef _KERNEL +#include +#endif + +#ifndef STBI_INCLUDE_STB_IMAGE_H +#define STBI_INCLUDE_STB_IMAGE_H + +// To get a header file for this, either cut and paste the header, +// or create stb_image.h, #define STBI_HEADER_FILE_ONLY, and +// then include stb_image.c from it. + +//// begin header file //////////////////////////////////////////////////// +// +// Limitations: +// - no jpeg progressive support +// - non-HDR formats support 8-bit samples only (jpeg, png) +// - no delayed line count (jpeg) -- IJG doesn't support either +// - no 1-bit BMP +// - GIF always returns *comp=4 +// +// Basic usage (see HDR discussion below): +// int x,y,n; +// unsigned char *data = stbi_load(filename, &x, &y, &n, 0); +// // ... process data if not NULL ... +// // ... x = width, y = height, n = # 8-bit components per pixel ... +// // ... replace '0' with '1'..'4' to force that many components per pixel +// stbi_image_free(data) +// +// Standard parameters: +// int *x -- outputs image width in pixels +// int *y -- outputs image height in pixels +// int *comp -- outputs # of image components in image file +// int req_comp -- if non-zero, # of image components requested in result +// +// The return value from an image loader is an 'unsigned char *' which points +// to the pixel data. The pixel data consists of *y scanlines of *x pixels, +// with each pixel consisting of N interleaved 8-bit components; the first +// pixel pointed to is top-left-most in the image. There is no padding between +// image scanlines or between pixels, regardless of format. The number of +// components N is 'req_comp' if req_comp is non-zero, or *comp otherwise. +// If req_comp is non-zero, *comp has the number of components that _would_ +// have been output otherwise. E.g. if you set req_comp to 4, you will always +// get RGBA output, but you can check *comp to easily see if it's opaque. +// +// An output image with N components has the following components interleaved +// in this order in each pixel: +// +// N=#comp components +// 1 grey +// 2 grey, alpha +// 3 red, green, blue +// 4 red, green, blue, alpha +// +// If image loading fails for any reason, the return value will be NULL, +// and *x, *y, *comp will be unchanged. The function stbi_failure_reason() +// can be queried for an extremely brief, end-user unfriendly explanation +// of why the load failed. Define STBI_NO_FAILURE_STRINGS to avoid +// compiling these strings at all, and STBI_FAILURE_USERMSG to get slightly +// more user-friendly ones. +// +// Paletted PNG, BMP, GIF, and PIC images are automatically depalettized. +// +// =========================================================================== +// +// iPhone PNG support: +// +// By default we convert iphone-formatted PNGs back to RGB; nominally they +// would silently load as BGR, except the existing code should have just +// failed on such iPhone PNGs. But you can disable this conversion by +// by calling stbi_convert_iphone_png_to_rgb(0), in which case +// you will always just get the native iphone "format" through. +// +// Call stbi_set_unpremultiply_on_load(1) as well to force a divide per +// pixel to remove any premultiplied alpha *only* if the image file explicitly +// says there's premultiplied data (currently only happens in iPhone images, +// and only if iPhone convert-to-rgb processing is on). +// +// =========================================================================== +// +// HDR image support (disable by defining STBI_NO_HDR) +// +// stb_image now supports loading HDR images in general, and currently +// the Radiance .HDR file format, although the support is provided +// generically. You can still load any file through the existing interface; +// if you attempt to load an HDR file, it will be automatically remapped to +// LDR, assuming gamma 2.2 and an arbitrary scale factor defaulting to 1; +// both of these constants can be reconfigured through this interface: +// +// stbi_hdr_to_ldr_gamma(2.2f); +// stbi_hdr_to_ldr_scale(1.0f); +// +// (note, do not use _inverse_ constants; stbi_image will invert them +// appropriately). +// +// Additionally, there is a new, parallel interface for loading files as +// (linear) floats to preserve the full dynamic range: +// +// float *data = stbi_loadf(filename, &x, &y, &n, 0); +// +// If you load LDR images through this interface, those images will +// be promoted to floating point values, run through the inverse of +// constants corresponding to the above: +// +// stbi_ldr_to_hdr_scale(1.0f); +// stbi_ldr_to_hdr_gamma(2.2f); +// +// Finally, given a filename (or an open file or memory block--see header +// file for details) containing image data, you can query for the "most +// appropriate" interface to use (that is, whether the image is HDR or +// not), using: +// +// stbi_is_hdr(char *filename); + +#ifndef STBI_NO_STDIO +#include +#endif + +#define STBI_VERSION 1 + +enum +{ + STBI_default = 0, // only used for req_comp + + STBI_grey = 1, + STBI_grey_alpha = 2, + STBI_rgb = 3, + STBI_rgb_alpha = 4 +}; + +typedef unsigned char stbi_uc; + +#ifdef __cplusplus +extern "C" { +#endif + +// PRIMARY API - works on images of any type + +// load image by filename, open file, or memory buffer +extern stbi_uc *stbi_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); + +#ifndef STBI_NO_STDIO +extern stbi_uc *stbi_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +// for stbi_load_from_file, file pointer is left pointing immediately after image +#endif + +#ifndef STBI_NO_HDR + extern float *stbi_loadf_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); + + #ifndef STBI_NO_STDIO + extern float *stbi_loadf (char const *filename, int *x, int *y, int *comp, int req_comp); + extern float *stbi_loadf_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); + #endif + + extern void stbi_hdr_to_ldr_gamma(float gamma); + extern void stbi_hdr_to_ldr_scale(float scale); + + extern void stbi_ldr_to_hdr_gamma(float gamma); + extern void stbi_ldr_to_hdr_scale(float scale); +#endif // STBI_NO_HDR + +// get a VERY brief reason for failure +// NOT THREADSAFE +extern const char *stbi_failure_reason (void); + +// free the loaded image -- this is just free() +extern void stbi_image_free (void *retval_from_stbi_load); + +// get image dimensions & components without fully decoding +extern int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp); +extern int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len); + +#ifndef STBI_NO_STDIO +extern int stbi_info (char const *filename, int *x, int *y, int *comp); +extern int stbi_info_from_file (FILE *f, int *x, int *y, int *comp); + +extern int stbi_is_hdr (char const *filename); +extern int stbi_is_hdr_from_file(FILE *f); +#endif + +// for image formats that explicitly notate that they have premultiplied alpha, +// we just return the colors as stored in the file. set this flag to force +// unpremultiplication. results are undefined if the unpremultiply overflow. +extern void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply); + +// indicate whether we should process iphone images back to canonical format, +// or just pass them through "as-is" +extern void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert); + + +// ZLIB client - used by PNG, available for other purposes + +extern char *stbi_zlib_decode_malloc_guesssize(const char *buffer, int len, int initial_size, int *outlen); +extern char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, int initial_size, int *outlen, int parse_header); +extern char *stbi_zlib_decode_malloc(const char *buffer, int len, int *outlen); +extern int stbi_zlib_decode_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); + +extern char *stbi_zlib_decode_noheader_malloc(const char *buffer, int len, int *outlen); +extern int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen); + +// define new loaders +typedef struct +{ + int (*test_memory)(stbi_uc const *buffer, int len); + stbi_uc * (*load_from_memory)(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); + #ifndef STBI_NO_STDIO + int (*test_file)(FILE *f); + stbi_uc * (*load_from_file)(FILE *f, int *x, int *y, int *comp, int req_comp); + #endif +} stbi_loader; + +// register a loader by filling out the above structure (you must define ALL functions) +// returns 1 if added or already added, 0 if not added (too many loaders) +// NOT THREADSAFE +extern int stbi_register_loader(stbi_loader *loader); + +// define faster low-level operations (typically SIMD support) +#ifdef STBI_SIMD +typedef void (*stbi_idct_8x8)(stbi_uc *out, int out_stride, short data[64], unsigned short *dequantize); +// compute an integer IDCT on "input" +// input[x] = data[x] * dequantize[x] +// write results to 'out': 64 samples, each run of 8 spaced by 'out_stride' +// CLAMP results to 0..255 +typedef void (*stbi_YCbCr_to_RGB_run)(stbi_uc *output, stbi_uc const *y, stbi_uc const *cb, stbi_uc const *cr, int count, int step); +// compute a conversion from YCbCr to RGB +// 'count' pixels +// write pixels to 'output'; each pixel is 'step' bytes (either 3 or 4; if 4, write '255' as 4th), order R,G,B +// y: Y input channel +// cb: Cb input channel; scale/biased to be 0..255 +// cr: Cr input channel; scale/biased to be 0..255 + +extern void stbi_install_idct(stbi_idct_8x8 func); +extern void stbi_install_YCbCr_to_RGB(stbi_YCbCr_to_RGB_run func); +#endif // STBI_SIMD + + + + +// TYPE-SPECIFIC ACCESS + +#ifdef STBI_TYPE_SPECIFIC_FUNCTIONS + +// is it a jpeg? +extern int stbi_jpeg_test_memory (stbi_uc const *buffer, int len); +extern stbi_uc *stbi_jpeg_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +extern int stbi_jpeg_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp); + +#ifndef STBI_NO_STDIO +extern stbi_uc *stbi_jpeg_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern int stbi_jpeg_test_file (FILE *f); +extern stbi_uc *stbi_jpeg_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); + +extern int stbi_jpeg_info (char const *filename, int *x, int *y, int *comp); +extern int stbi_jpeg_info_from_file (FILE *f, int *x, int *y, int *comp); +#endif + +// is it a png? +extern int stbi_png_test_memory (stbi_uc const *buffer, int len); +extern stbi_uc *stbi_png_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +extern int stbi_png_info_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp); + +#ifndef STBI_NO_STDIO +extern stbi_uc *stbi_png_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern int stbi_png_info (char const *filename, int *x, int *y, int *comp); +extern int stbi_png_test_file (FILE *f); +extern stbi_uc *stbi_png_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +extern int stbi_png_info_from_file (FILE *f, int *x, int *y, int *comp); +#endif + +// is it a bmp? +extern int stbi_bmp_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_bmp_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_bmp_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +#ifndef STBI_NO_STDIO +extern int stbi_bmp_test_file (FILE *f); +extern stbi_uc *stbi_bmp_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it a tga? +extern int stbi_tga_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_tga_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_tga_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +extern int stbi_tga_info_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp); +#ifndef STBI_NO_STDIO +extern int stbi_tga_info_from_file (FILE *f, int *x, int *y, int *comp); +extern int stbi_tga_test_file (FILE *f); +extern stbi_uc *stbi_tga_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it a psd? +extern int stbi_psd_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_psd_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_psd_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +#ifndef STBI_NO_STDIO +extern int stbi_psd_test_file (FILE *f); +extern stbi_uc *stbi_psd_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it an hdr? +extern int stbi_hdr_test_memory (stbi_uc const *buffer, int len); + +extern float * stbi_hdr_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern float * stbi_hdr_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +#ifndef STBI_NO_STDIO +extern int stbi_hdr_test_file (FILE *f); +extern float * stbi_hdr_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it a pic? +extern int stbi_pic_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_pic_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_pic_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +#ifndef STBI_NO_STDIO +extern int stbi_pic_test_file (FILE *f); +extern stbi_uc *stbi_pic_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it a gif? +extern int stbi_gif_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_gif_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_gif_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +extern int stbi_gif_info_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp); + +#ifndef STBI_NO_STDIO +extern int stbi_gif_test_file (FILE *f); +extern stbi_uc *stbi_gif_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +extern int stbi_gif_info (char const *filename, int *x, int *y, int *comp); +extern int stbi_gif_info_from_file (FILE *f, int *x, int *y, int *comp); +#endif + +#endif//STBI_TYPE_SPECIFIC_FUNCTIONS + + + + +#ifdef __cplusplus +} +#endif + +// +// +//// end header file ///////////////////////////////////////////////////// +#endif // STBI_INCLUDE_STB_IMAGE_H + +#ifndef STBI_HEADER_FILE_ONLY + +#ifndef STBI_NO_HDR +#include // ldexp +#include // strcmp +#endif + +#ifndef STBI_NO_STDIO +#include +#endif +#ifdef _KERNEL +#include +__KERNEL_RCSID(0, "$NetBSD: stb_image.c,v 1.6 2013/09/15 14:06:10 martin Exp $"); +#include +#include +#include +#include +#include +#else +#include +#include +#include +#include +#endif + +#ifdef _KERNEL +#define MALLOC(size) malloc((size), M_TEMP, M_WAITOK) +#define REALLOC(ptr, size) realloc((ptr), (size), M_TEMP, M_WAITOK) +#define FREE(ptr) \ + do { if (ptr) free((ptr), M_TEMP); } while (/*CONSTCOND*/0) +#else +#define MALLOC(size) malloc((size)) +#define REALLOC(ptr, size) realloc((ptr), (size)) +#define FREE(ptr) free((ptr)) +#endif + +#ifndef _MSC_VER + #ifdef __cplusplus + #define __forceinline inline + #else + #define __forceinline + #endif +#endif + + +// implementation: +typedef unsigned char uint8; +typedef unsigned short uint16; +typedef signed short int16; +typedef unsigned int uint32; +typedef signed int int32; +#ifndef __NetBSD__ +typedef unsigned int uint; +#endif + +// should produce compiler error if size is wrong +typedef unsigned char validate_uint32[sizeof(uint32)==4 ? 1 : -1]; + +#if defined(STBI_NO_STDIO) && !defined(STBI_NO_WRITE) +#define STBI_NO_WRITE +#endif + +#define STBI_NOTUSED(v) v=v + +#ifdef _MSC_VER +#define STBI_HAS_LRTOL +#endif + +#ifdef STBI_HAS_LRTOL + #define stbi_lrot(x,y) _lrotl(x,y) +#else + #define stbi_lrot(x,y) (((x) << (y)) | ((x) >> (32 - (y)))) +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// Generic API that works on all image types +// + +// deprecated functions + +// is it a jpeg? +extern int stbi_jpeg_test_memory (stbi_uc const *buffer, int len); +extern stbi_uc *stbi_jpeg_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +extern int stbi_jpeg_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp); + +#ifndef STBI_NO_STDIO +extern stbi_uc *stbi_jpeg_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern int stbi_jpeg_test_file (FILE *f); +extern stbi_uc *stbi_jpeg_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); + +extern int stbi_jpeg_info (char const *filename, int *x, int *y, int *comp); +extern int stbi_jpeg_info_from_file (FILE *f, int *x, int *y, int *comp); +#endif + +// is it a png? +extern int stbi_png_test_memory (stbi_uc const *buffer, int len); +extern stbi_uc *stbi_png_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +extern int stbi_png_info_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp); + +#ifndef STBI_NO_STDIO +extern stbi_uc *stbi_png_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern int stbi_png_info (char const *filename, int *x, int *y, int *comp); +extern int stbi_png_test_file (FILE *f); +extern stbi_uc *stbi_png_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +extern int stbi_png_info_from_file (FILE *f, int *x, int *y, int *comp); +#endif + +// is it a bmp? +extern int stbi_bmp_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_bmp_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_bmp_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +#ifndef STBI_NO_STDIO +extern int stbi_bmp_test_file (FILE *f); +extern stbi_uc *stbi_bmp_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it a tga? +extern int stbi_tga_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_tga_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_tga_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +#ifndef STBI_NO_STDIO +extern int stbi_tga_test_file (FILE *f); +extern stbi_uc *stbi_tga_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it a psd? +extern int stbi_psd_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_psd_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_psd_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +#ifndef STBI_NO_STDIO +extern int stbi_psd_test_file (FILE *f); +extern stbi_uc *stbi_psd_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it an hdr? +extern int stbi_hdr_test_memory (stbi_uc const *buffer, int len); + +extern float * stbi_hdr_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern float * stbi_hdr_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +#ifndef STBI_NO_STDIO +extern int stbi_hdr_test_file (FILE *f); +extern float * stbi_hdr_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it a pic? +extern int stbi_pic_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_pic_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_pic_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +#ifndef STBI_NO_STDIO +extern int stbi_pic_test_file (FILE *f); +extern stbi_uc *stbi_pic_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +#endif + +// is it a gif? +extern int stbi_gif_test_memory (stbi_uc const *buffer, int len); + +extern stbi_uc *stbi_gif_load (char const *filename, int *x, int *y, int *comp, int req_comp); +extern stbi_uc *stbi_gif_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp); +extern int stbi_gif_info_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp); + +#ifndef STBI_NO_STDIO +extern int stbi_gif_test_file (FILE *f); +extern stbi_uc *stbi_gif_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp); +extern int stbi_gif_info (char const *filename, int *x, int *y, int *comp); +extern int stbi_gif_info_from_file (FILE *f, int *x, int *y, int *comp); +#endif + + +// this is not threadsafe +static const char *failure_reason; + +const char *stbi_failure_reason(void) +{ + return failure_reason; +} + +#ifndef STBI_NO_FAILURE_STRINGS +static int e(const char *str) +{ + failure_reason = str; + return 0; +} +#endif + +#ifdef STBI_NO_FAILURE_STRINGS + #define e(x,y) 0 +#elif defined(STBI_FAILURE_USERMSG) + #define e(x,y) e(y) +#else + #define e(x,y) e(x) +#endif + +#define epf(x,y) ((float *) (e(x,y)?NULL:NULL)) +#define epuc(x,y) ((unsigned char *) (e(x,y)?NULL:NULL)) + +void stbi_image_free(void *retval_from_stbi_load) +{ + FREE(retval_from_stbi_load); +} + +#define MAX_LOADERS 32 +stbi_loader *loaders[MAX_LOADERS]; +static int max_loaders = 0; + +int stbi_register_loader(stbi_loader *loader) +{ + int i; + for (i=0; i < MAX_LOADERS; ++i) { + // already present? + if (loaders[i] == loader) + return 1; + // end of the list? + if (loaders[i] == NULL) { + loaders[i] = loader; + max_loaders = i+1; + return 1; + } + } + // no room for it + return 0; +} + +#ifndef STBI_NO_HDR +static float *ldr_to_hdr(stbi_uc *data, int x, int y, int comp); +static stbi_uc *hdr_to_ldr(float *data, int x, int y, int comp); +#endif + +#ifndef STBI_NO_STDIO +unsigned char *stbi_load(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + FILE *f = fopen(filename, "rb"); + unsigned char *result; + if (!f) return epuc("can't fopen", "Unable to open file"); + result = stbi_load_from_file(f,x,y,comp,req_comp); + fclose(f); + return result; +} + +unsigned char *stbi_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + int i; + if (stbi_jpeg_test_file(f)) return stbi_jpeg_load_from_file(f,x,y,comp,req_comp); + if (stbi_png_test_file(f)) return stbi_png_load_from_file(f,x,y,comp,req_comp); + if (stbi_bmp_test_file(f)) return stbi_bmp_load_from_file(f,x,y,comp,req_comp); + if (stbi_gif_test_file(f)) return stbi_gif_load_from_file(f,x,y,comp,req_comp); + if (stbi_psd_test_file(f)) return stbi_psd_load_from_file(f,x,y,comp,req_comp); + if (stbi_pic_test_file(f)) return stbi_pic_load_from_file(f,x,y,comp,req_comp); + + #ifndef STBI_NO_HDR + if (stbi_hdr_test_file(f)) { + float *hdr = stbi_hdr_load_from_file(f, x,y,comp,req_comp); + return hdr_to_ldr(hdr, *x, *y, req_comp ? req_comp : *comp); + } + #endif + + for (i=0; i < max_loaders; ++i) + if (loaders[i]->test_file(f)) + return loaders[i]->load_from_file(f,x,y,comp,req_comp); + // test tga last because it's a crappy test! + if (stbi_tga_test_file(f)) + return stbi_tga_load_from_file(f,x,y,comp,req_comp); + return epuc("unknown image type", "Image not of any known type, or corrupt"); +} +#endif + +unsigned char *stbi_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + int i; + if (stbi_jpeg_test_memory(buffer,len)) return stbi_jpeg_load_from_memory(buffer,len,x,y,comp,req_comp); + if (stbi_png_test_memory(buffer,len)) return stbi_png_load_from_memory(buffer,len,x,y,comp,req_comp); + if (stbi_bmp_test_memory(buffer,len)) return stbi_bmp_load_from_memory(buffer,len,x,y,comp,req_comp); + if (stbi_gif_test_memory(buffer,len)) return stbi_gif_load_from_memory(buffer,len,x,y,comp,req_comp); + if (stbi_psd_test_memory(buffer,len)) return stbi_psd_load_from_memory(buffer,len,x,y,comp,req_comp); + if (stbi_pic_test_memory(buffer,len)) return stbi_pic_load_from_memory(buffer,len,x,y,comp,req_comp); + + #ifndef STBI_NO_HDR + if (stbi_hdr_test_memory(buffer, len)) { + float *hdr = stbi_hdr_load_from_memory(buffer, len,x,y,comp,req_comp); + return hdr_to_ldr(hdr, *x, *y, req_comp ? req_comp : *comp); + } + #endif + + for (i=0; i < max_loaders; ++i) + if (loaders[i]->test_memory(buffer,len)) + return loaders[i]->load_from_memory(buffer,len,x,y,comp,req_comp); + // test tga last because it's a crappy test! + if (stbi_tga_test_memory(buffer,len)) + return stbi_tga_load_from_memory(buffer,len,x,y,comp,req_comp); + return epuc("unknown image type", "Image not of any known type, or corrupt"); +} + +#ifndef STBI_NO_HDR + +#ifndef STBI_NO_STDIO +float *stbi_loadf(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + FILE *f = fopen(filename, "rb"); + float *result; + if (!f) return epf("can't fopen", "Unable to open file"); + result = stbi_loadf_from_file(f,x,y,comp,req_comp); + fclose(f); + return result; +} + +float *stbi_loadf_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + unsigned char *data; + #ifndef STBI_NO_HDR + if (stbi_hdr_test_file(f)) + return stbi_hdr_load_from_file(f,x,y,comp,req_comp); + #endif + data = stbi_load_from_file(f, x, y, comp, req_comp); + if (data) + return ldr_to_hdr(data, *x, *y, req_comp ? req_comp : *comp); + return epf("unknown image type", "Image not of any known type, or corrupt"); +} +#endif + +float *stbi_loadf_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi_uc *data; + #ifndef STBI_NO_HDR + if (stbi_hdr_test_memory(buffer, len)) + return stbi_hdr_load_from_memory(buffer, len,x,y,comp,req_comp); + #endif + data = stbi_load_from_memory(buffer, len, x, y, comp, req_comp); + if (data) + return ldr_to_hdr(data, *x, *y, req_comp ? req_comp : *comp); + return epf("unknown image type", "Image not of any known type, or corrupt"); +} +#endif + +// these is-hdr-or-not is defined independent of whether STBI_NO_HDR is +// defined, for API simplicity; if STBI_NO_HDR is defined, it always +// reports false! + +int stbi_is_hdr_from_memory(stbi_uc const *buffer, int len) +{ + #ifndef STBI_NO_HDR + return stbi_hdr_test_memory(buffer, len); + #else + STBI_NOTUSED(buffer); + STBI_NOTUSED(len); + return 0; + #endif +} + +#ifndef STBI_NO_STDIO +extern int stbi_is_hdr (char const *filename) +{ + FILE *f = fopen(filename, "rb"); + int result=0; + if (f) { + result = stbi_is_hdr_from_file(f); + fclose(f); + } + return result; +} + +extern int stbi_is_hdr_from_file(FILE *f) +{ + #ifndef STBI_NO_HDR + return stbi_hdr_test_file(f); + #else + return 0; + #endif +} + +#endif + +#ifndef STBI_NO_HDR +static float h2l_gamma_i=1.0f/2.2f, h2l_scale_i=1.0f; +static float l2h_gamma=2.2f, l2h_scale=1.0f; + +void stbi_hdr_to_ldr_gamma(float gamma) { h2l_gamma_i = 1/gamma; } +void stbi_hdr_to_ldr_scale(float scale) { h2l_scale_i = 1/scale; } + +void stbi_ldr_to_hdr_gamma(float gamma) { l2h_gamma = gamma; } +void stbi_ldr_to_hdr_scale(float scale) { l2h_scale = scale; } +#endif + + +////////////////////////////////////////////////////////////////////////////// +// +// Common code used by all image loaders +// + +enum +{ + SCAN_load=0, + SCAN_type, + SCAN_header +}; + +typedef struct +{ + uint32 img_x, img_y; + int img_n, img_out_n; + + #ifndef STBI_NO_STDIO + FILE *img_file; + int buflen; + uint8 buffer_start[128]; + int from_file; + #endif + uint8 const *img_buffer, *img_buffer_end; +} stbi; + +#ifndef STBI_NO_STDIO +static void start_file(stbi *s, FILE *f) +{ + s->img_file = f; + s->buflen = sizeof(s->buffer_start); + s->img_buffer_end = s->buffer_start + s->buflen; + s->img_buffer = s->img_buffer_end; + s->from_file = 1; +} +#endif + +static void start_mem(stbi *s, uint8 const *buffer, int len) +{ +#ifndef STBI_NO_STDIO + s->img_file = NULL; + s->from_file = 0; +#endif + s->img_buffer = (uint8 const *) buffer; + s->img_buffer_end = (uint8 const *) buffer+len; +} + +#ifndef STBI_NO_STDIO +static void refill_buffer(stbi *s) +{ + int n = fread(s->buffer_start, 1, s->buflen, s->img_file); + if (n == 0) { + s->from_file = 0; + s->img_buffer = s->img_buffer_end-1; +#if 0 + *s->img_buffer = 0; +#endif + } else { + s->img_buffer = s->buffer_start; + s->img_buffer_end = s->buffer_start + n; + } +} +#endif + +__forceinline static int get8(stbi *s) +{ + if (s->img_buffer < s->img_buffer_end) + return *s->img_buffer++; +#ifndef STBI_NO_STDIO + if (s->from_file) { + refill_buffer(s); + return *s->img_buffer++; + } +#endif + return 0; +} + +__forceinline static int at_eof(stbi *s) +{ +#ifndef STBI_NO_STDIO + if (s->img_file) { + if (!feof(s->img_file)) return 0; + // if feof() is true, check if buffer = end + // special case: we've only got the special 0 character at the end + if (s->from_file == 0) return 1; + } +#endif + return s->img_buffer >= s->img_buffer_end; +} + +__forceinline static uint8 get8u(stbi *s) +{ + return (uint8) get8(s); +} + +static void skip(stbi *s, int n) +{ +#ifndef STBI_NO_STDIO + if (s->img_file) { + int blen = s->img_buffer_end - s->img_buffer; + if (blen < n) { + s->img_buffer = s->img_buffer_end; + fseek(s->img_file, n - blen, SEEK_CUR); + return; + } + } +#endif + s->img_buffer += n; +} + +static int getn(stbi *s, stbi_uc *buffer, int n) +{ +#ifndef STBI_NO_STDIO + if (s->img_file) { + int blen = s->img_buffer_end - s->img_buffer; + if (blen < n) { + int res; + memcpy(buffer, s->img_buffer, blen); + res = ((int) fread(buffer + blen, 1, n - blen, s->img_file) == (n-blen)); + s->img_buffer = s->img_buffer_end; + return res; + } + } +#endif + if (s->img_buffer+n <= s->img_buffer_end) { + memcpy(buffer, s->img_buffer, n); + s->img_buffer += n; + return 1; + } else + return 0; +} + +static int get16(stbi *s) +{ + int z = get8(s); + return (z << 8) + get8(s); +} + +static uint32 get32(stbi *s) +{ + uint32 z = get16(s); + return (z << 16) + get16(s); +} + +static int get16le(stbi *s) +{ + int z = get8(s); + return z + (get8(s) << 8); +} + +static uint32 get32le(stbi *s) +{ + uint32 z = get16le(s); + return z + (get16le(s) << 16); +} + +////////////////////////////////////////////////////////////////////////////// +// +// generic converter from built-in img_n to req_comp +// individual types do this automatically as much as possible (e.g. jpeg +// does all cases internally since it needs to colorspace convert anyway, +// and it never has alpha, so very few cases ). png can automatically +// interleave an alpha=255 channel, but falls back to this for other cases +// +// assume data buffer is malloced, so malloc a new one and free that one +// only failure mode is malloc failing + +static uint8 compute_y(int r, int g, int b) +{ + return (uint8) (((r*77) + (g*150) + (29*b)) >> 8); +} + +static unsigned char *convert_format(unsigned char *data, int img_n, int req_comp, uint x, uint y) +{ + int i,j; + unsigned char *good; + + if (req_comp == img_n) return data; + assert(req_comp >= 1 && req_comp <= 4); + + good = (unsigned char *) MALLOC(req_comp * x * y); + if (good == NULL) { + FREE(data); + return epuc("outofmem", "Out of memory"); + } + + for (j=0; j < (int) y; ++j) { + unsigned char *src = data + j * x * img_n ; + unsigned char *dest = good + j * x * req_comp; + + #define COMBO(a,b) ((a)*8+(b)) + #define CASE(a,b) case COMBO(a,b): for(i=x-1; i >= 0; --i, src += a, dest += b) + // convert source image with img_n components to one with req_comp components; + // avoid switch per pixel, so use switch per scanline and massive macros + switch (COMBO(img_n, req_comp)) { + CASE(1,2) dest[0]=src[0], dest[1]=255; break; + CASE(1,3) dest[0]=dest[1]=dest[2]=src[0]; break; + CASE(1,4) dest[0]=dest[1]=dest[2]=src[0], dest[3]=255; break; + CASE(2,1) dest[0]=src[0]; break; + CASE(2,3) dest[0]=dest[1]=dest[2]=src[0]; break; + CASE(2,4) dest[0]=dest[1]=dest[2]=src[0], dest[3]=src[1]; break; + CASE(3,4) dest[0]=src[0],dest[1]=src[1],dest[2]=src[2],dest[3]=255; break; + CASE(3,1) dest[0]=compute_y(src[0],src[1],src[2]); break; + CASE(3,2) dest[0]=compute_y(src[0],src[1],src[2]), dest[1] = 255; break; + CASE(4,1) dest[0]=compute_y(src[0],src[1],src[2]); break; + CASE(4,2) dest[0]=compute_y(src[0],src[1],src[2]), dest[1] = src[3]; break; + CASE(4,3) dest[0]=src[0],dest[1]=src[1],dest[2]=src[2]; break; + default: assert(0); + } + #undef CASE + } + + FREE(data); + return good; +} + +#ifndef STBI_NO_HDR +static float *ldr_to_hdr(stbi_uc *data, int x, int y, int comp) +{ + int i,k,n; + float *output = (float *) MALLOC(x * y * comp * sizeof(float)); + if (output == NULL) { FREE(data); return epf("outofmem", "Out of memory"); } + // compute number of non-alpha components + if (comp & 1) n = comp; else n = comp-1; + for (i=0; i < x*y; ++i) { + for (k=0; k < n; ++k) { + output[i*comp + k] = (float) pow(data[i*comp+k]/255.0f, l2h_gamma) * l2h_scale; + } + if (k < comp) output[i*comp + k] = data[i*comp+k]/255.0f; + } + FREE(data); + return output; +} + +#define float2int(x) ((int) (x)) +static stbi_uc *hdr_to_ldr(float *data, int x, int y, int comp) +{ + int i,k,n; + stbi_uc *output = (stbi_uc *) MALLOC(x * y * comp); + if (output == NULL) { FREE(data); return epuc("outofmem", "Out of memory"); } + // compute number of non-alpha components + if (comp & 1) n = comp; else n = comp-1; + for (i=0; i < x*y; ++i) { + for (k=0; k < n; ++k) { + float z = (float) pow(data[i*comp+k]*h2l_scale_i, h2l_gamma_i) * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i*comp + k] = (uint8) float2int(z); + } + if (k < comp) { + float z = data[i*comp+k] * 255 + 0.5f; + if (z < 0) z = 0; + if (z > 255) z = 255; + output[i*comp + k] = (uint8) float2int(z); + } + } + FREE(data); + return output; +} +#endif + +////////////////////////////////////////////////////////////////////////////// +// +// "baseline" JPEG/JFIF decoder (not actually fully baseline implementation) +// +// simple implementation +// - channel subsampling of at most 2 in each dimension +// - doesn't support delayed output of y-dimension +// - simple interface (only one output format: 8-bit interleaved RGB) +// - doesn't try to recover corrupt jpegs +// - doesn't allow partial loading, loading multiple at once +// - still fast on x86 (copying globals into locals doesn't help x86) +// - allocates lots of intermediate memory (full size of all components) +// - non-interleaved case requires this anyway +// - allows good upsampling (see next) +// high-quality +// - upsampled channels are bilinearly interpolated, even across blocks +// - quality integer IDCT derived from IJG's 'slow' +// performance +// - fast huffman; reasonable integer IDCT +// - uses a lot of intermediate memory, could cache poorly +// - load http://nothings.org/remote/anemones.jpg 3 times on 2.8Ghz P4 +// stb_jpeg: 1.34 seconds (MSVC6, default release build) +// stb_jpeg: 1.06 seconds (MSVC6, processor = Pentium Pro) +// IJL11.dll: 1.08 seconds (compiled by intel) +// IJG 1998: 0.98 seconds (MSVC6, makefile provided by IJG) +// IJG 1998: 0.95 seconds (MSVC6, makefile + proc=PPro) + +// huffman decoding acceleration +#define FAST_BITS 9 // larger handles more cases; smaller stomps less cache + +typedef struct +{ + uint8 fast[1 << FAST_BITS]; + // weirdly, repacking this into AoS is a 10% speed loss, instead of a win + uint16 code[256]; + uint8 values[256]; + uint8 size[257]; + unsigned int maxcode[18]; + int delta[17]; // old 'firstsymbol' - old 'firstcode' +} huffman; + +typedef struct +{ + #ifdef STBI_SIMD + unsigned short dequant2[4][64]; + #endif + stbi s; + huffman huff_dc[4]; + huffman huff_ac[4]; + uint8 dequant[4][64]; + +// sizes for components, interleaved MCUs + int img_h_max, img_v_max; + int img_mcu_x, img_mcu_y; + int img_mcu_w, img_mcu_h; + +// definition of jpeg image component + struct + { + int id; + int h,v; + int tq; + int hd,ha; + int dc_pred; + + int x,y,w2,h2; + uint8 *data; + void *raw_data; + uint8 *linebuf; + } img_comp[4]; + + uint32 code_buffer; // jpeg entropy-coded buffer + int code_bits; // number of valid bits + unsigned char marker; // marker seen while filling entropy buffer + int nomore; // flag if we saw a marker so must stop + + int scan_n, order[4]; + int restart_interval, todo; +} jpeg; + +static int build_huffman(huffman *h, int *count) +{ + int i,j,k=0,code; + // build size list for each symbol (from JPEG spec) + for (i=0; i < 16; ++i) + for (j=0; j < count[i]; ++j) + h->size[k++] = (uint8) (i+1); + h->size[k] = 0; + + // compute actual symbols (from jpeg spec) + code = 0; + k = 0; + for(j=1; j <= 16; ++j) { + // compute delta to add to code to compute symbol id + h->delta[j] = k - code; + if (h->size[k] == j) { + while (h->size[k] == j) + h->code[k++] = (uint16) (code++); + if (code-1 >= (1 << j)) return e("bad code lengths","Corrupt JPEG"); + } + // compute largest code + 1 for this size, preshifted as needed later + h->maxcode[j] = code << (16-j); + code <<= 1; + } + h->maxcode[j] = 0xffffffff; + + // build non-spec acceleration table; 255 is flag for not-accelerated + memset(h->fast, 255, 1 << FAST_BITS); + for (i=0; i < k; ++i) { + int s = h->size[i]; + if (s <= FAST_BITS) { + int c = h->code[i] << (FAST_BITS-s); + int m = 1 << (FAST_BITS-s); + for (j=0; j < m; ++j) { + h->fast[c+j] = (uint8) i; + } + } + } + return 1; +} + +static void grow_buffer_unsafe(jpeg *j) +{ + do { + int b = j->nomore ? 0 : get8(&j->s); + if (b == 0xff) { + int c = get8(&j->s); + if (c != 0) { + j->marker = (unsigned char) c; + j->nomore = 1; + return; + } + } + j->code_buffer |= b << (24 - j->code_bits); + j->code_bits += 8; + } while (j->code_bits <= 24); +} + +// (1 << n) - 1 +static uint32 bmask[17]={0,1,3,7,15,31,63,127,255,511,1023,2047,4095,8191,16383,32767,65535}; + +// decode a jpeg huffman value from the bitstream +__forceinline static int decode(jpeg *j, huffman *h) +{ + unsigned int temp; + int c,k; + + if (j->code_bits < 16) grow_buffer_unsafe(j); + + // look at the top FAST_BITS and determine what symbol ID it is, + // if the code is <= FAST_BITS + c = (j->code_buffer >> (32 - FAST_BITS)) & ((1 << FAST_BITS)-1); + k = h->fast[c]; + if (k < 255) { + int s = h->size[k]; + if (s > j->code_bits) + return -1; + j->code_buffer <<= s; + j->code_bits -= s; + return h->values[k]; + } + + // naive test is to shift the code_buffer down so k bits are + // valid, then test against maxcode. To speed this up, we've + // preshifted maxcode left so that it has (16-k) 0s at the + // end; in other words, regardless of the number of bits, it + // wants to be compared against something shifted to have 16; + // that way we don't need to shift inside the loop. + temp = j->code_buffer >> 16; + for (k=FAST_BITS+1 ; ; ++k) + if (temp < h->maxcode[k]) + break; + if (k == 17) { + // error! code not found + j->code_bits -= 16; + return -1; + } + + if (k > j->code_bits) + return -1; + + // convert the huffman code to the symbol id + c = ((j->code_buffer >> (32 - k)) & bmask[k]) + h->delta[k]; + assert((((j->code_buffer) >> (32 - h->size[c])) & bmask[h->size[c]]) == h->code[c]); + + // convert the id to a symbol + j->code_bits -= k; + j->code_buffer <<= k; + return h->values[c]; +} + +// combined JPEG 'receive' and JPEG 'extend', since baseline +// always extends everything it receives. +__forceinline static int extend_receive(jpeg *j, int n) +{ + unsigned int m = 1 << (n-1); + unsigned int k; + if (j->code_bits < n) grow_buffer_unsafe(j); + + #if 1 + k = stbi_lrot(j->code_buffer, n); + j->code_buffer = k & ~bmask[n]; + k &= bmask[n]; + j->code_bits -= n; + #else + k = (j->code_buffer >> (32 - n)) & bmask[n]; + j->code_bits -= n; + j->code_buffer <<= n; + #endif + // the following test is probably a random branch that won't + // predict well. I tried to table accelerate it but failed. + // maybe it's compiling as a conditional move? + if (k < m) + return (-1 << n) + k + 1; + else + return k; +} + +// given a value that's at position X in the zigzag stream, +// where does it appear in the 8x8 matrix coded as row-major? +static uint8 dezigzag[64+15] = +{ + 0, 1, 8, 16, 9, 2, 3, 10, + 17, 24, 32, 25, 18, 11, 4, 5, + 12, 19, 26, 33, 40, 48, 41, 34, + 27, 20, 13, 6, 7, 14, 21, 28, + 35, 42, 49, 56, 57, 50, 43, 36, + 29, 22, 15, 23, 30, 37, 44, 51, + 58, 59, 52, 45, 38, 31, 39, 46, + 53, 60, 61, 54, 47, 55, 62, 63, + // let corrupt input sample past end + 63, 63, 63, 63, 63, 63, 63, 63, + 63, 63, 63, 63, 63, 63, 63 +}; + +// decode one 64-entry block-- +static int decode_block(jpeg *j, short data[64], huffman *hdc, huffman *hac, int b) +{ + int diff,dc,k; + int t = decode(j, hdc); + if (t < 0) return e("bad huffman code","Corrupt JPEG"); + + // 0 all the ac values now so we can do it 32-bits at a time + memset(data,0,64*sizeof(data[0])); + + diff = t ? extend_receive(j, t) : 0; + dc = j->img_comp[b].dc_pred + diff; + j->img_comp[b].dc_pred = dc; + data[0] = (short) dc; + + // decode AC components, see JPEG spec + k = 1; + do { + int r,s; + int rs = decode(j, hac); + if (rs < 0) return e("bad huffman code","Corrupt JPEG"); + s = rs & 15; + r = rs >> 4; + if (s == 0) { + if (rs != 0xf0) break; // end block + k += 16; + } else { + k += r; + // decode into unzigzag'd location + data[dezigzag[k++]] = (short) extend_receive(j,s); + } + } while (k < 64); + return 1; +} + +// take a -128..127 value and clamp it and convert to 0..255 +__forceinline static uint8 clamp(int x) +{ + // trick to use a single test to catch both cases + if ((unsigned int) x > 255) { + if (x < 0) return 0; + if (x > 255) return 255; + } + return (uint8) x; +} + +#define f2f(x) (int) (((x) * 4096 + 0.5)) +#define fsh(x) ((x) << 12) + +// derived from jidctint -- DCT_ISLOW +#define IDCT_1D(s0,s1,s2,s3,s4,s5,s6,s7) \ + int t0,t1,t2,t3,p1,p2,p3,p4,p5,x0,x1,x2,x3; \ + p2 = s2; \ + p3 = s6; \ + p1 = (p2+p3) * f2f(0.5411961f); \ + t2 = p1 + p3*f2f(-1.847759065f); \ + t3 = p1 + p2*f2f( 0.765366865f); \ + p2 = s0; \ + p3 = s4; \ + t0 = fsh(p2+p3); \ + t1 = fsh(p2-p3); \ + x0 = t0+t3; \ + x3 = t0-t3; \ + x1 = t1+t2; \ + x2 = t1-t2; \ + t0 = s7; \ + t1 = s5; \ + t2 = s3; \ + t3 = s1; \ + p3 = t0+t2; \ + p4 = t1+t3; \ + p1 = t0+t3; \ + p2 = t1+t2; \ + p5 = (p3+p4)*f2f( 1.175875602f); \ + t0 = t0*f2f( 0.298631336f); \ + t1 = t1*f2f( 2.053119869f); \ + t2 = t2*f2f( 3.072711026f); \ + t3 = t3*f2f( 1.501321110f); \ + p1 = p5 + p1*f2f(-0.899976223f); \ + p2 = p5 + p2*f2f(-2.562915447f); \ + p3 = p3*f2f(-1.961570560f); \ + p4 = p4*f2f(-0.390180644f); \ + t3 += p1+p4; \ + t2 += p2+p3; \ + t1 += p2+p4; \ + t0 += p1+p3; + +#ifdef STBI_SIMD +typedef unsigned short stbi_dequantize_t; +#else +typedef uint8 stbi_dequantize_t; +#endif + +// .344 seconds on 3*anemones.jpg +static void idct_block(uint8 *out, int out_stride, short data[64], stbi_dequantize_t *dequantize) +{ + int i,val[64],*v=val; + stbi_dequantize_t *dq = dequantize; + uint8 *o; + short *d = data; + + // columns + for (i=0; i < 8; ++i,++d,++dq, ++v) { + // if all zeroes, shortcut -- this avoids dequantizing 0s and IDCTing + if (d[ 8]==0 && d[16]==0 && d[24]==0 && d[32]==0 + && d[40]==0 && d[48]==0 && d[56]==0) { + // no shortcut 0 seconds + // (1|2|3|4|5|6|7)==0 0 seconds + // all separate -0.047 seconds + // 1 && 2|3 && 4|5 && 6|7: -0.047 seconds + int dcterm = d[0] * dq[0] << 2; + v[0] = v[8] = v[16] = v[24] = v[32] = v[40] = v[48] = v[56] = dcterm; + } else { + IDCT_1D(d[ 0]*dq[ 0],d[ 8]*dq[ 8],d[16]*dq[16],d[24]*dq[24], + d[32]*dq[32],d[40]*dq[40],d[48]*dq[48],d[56]*dq[56]) + // constants scaled things up by 1<<12; let's bring them back + // down, but keep 2 extra bits of precision + x0 += 512; x1 += 512; x2 += 512; x3 += 512; + v[ 0] = (x0+t3) >> 10; + v[56] = (x0-t3) >> 10; + v[ 8] = (x1+t2) >> 10; + v[48] = (x1-t2) >> 10; + v[16] = (x2+t1) >> 10; + v[40] = (x2-t1) >> 10; + v[24] = (x3+t0) >> 10; + v[32] = (x3-t0) >> 10; + } + } + + for (i=0, v=val, o=out; i < 8; ++i,v+=8,o+=out_stride) { + // no fast case since the first 1D IDCT spread components out + IDCT_1D(v[0],v[1],v[2],v[3],v[4],v[5],v[6],v[7]) + // constants scaled things up by 1<<12, plus we had 1<<2 from first + // loop, plus horizontal and vertical each scale by sqrt(8) so together + // we've got an extra 1<<3, so 1<<17 total we need to remove. + // so we want to round that, which means adding 0.5 * 1<<17, + // aka 65536. Also, we'll end up with -128 to 127 that we want + // to encode as 0..255 by adding 128, so we'll add that before the shift + x0 += 65536 + (128<<17); + x1 += 65536 + (128<<17); + x2 += 65536 + (128<<17); + x3 += 65536 + (128<<17); + // tried computing the shifts into temps, or'ing the temps to see + // if any were out of range, but that was slower + o[0] = clamp((x0+t3) >> 17); + o[7] = clamp((x0-t3) >> 17); + o[1] = clamp((x1+t2) >> 17); + o[6] = clamp((x1-t2) >> 17); + o[2] = clamp((x2+t1) >> 17); + o[5] = clamp((x2-t1) >> 17); + o[3] = clamp((x3+t0) >> 17); + o[4] = clamp((x3-t0) >> 17); + } +} + +#ifdef STBI_SIMD +static stbi_idct_8x8 stbi_idct_installed = idct_block; + +extern void stbi_install_idct(stbi_idct_8x8 func) +{ + stbi_idct_installed = func; +} +#endif + +#define MARKER_none 0xff +// if there's a pending marker from the entropy stream, return that +// otherwise, fetch from the stream and get a marker. if there's no +// marker, return 0xff, which is never a valid marker value +static uint8 get_marker(jpeg *j) +{ + uint8 x; + if (j->marker != MARKER_none) { x = j->marker; j->marker = MARKER_none; return x; } + x = get8u(&j->s); + if (x != 0xff) return MARKER_none; + while (x == 0xff) + x = get8u(&j->s); + return x; +} + +// in each scan, we'll have scan_n components, and the order +// of the components is specified by order[] +#define RESTART(x) ((x) >= 0xd0 && (x) <= 0xd7) + +// after a restart interval, reset the entropy decoder and +// the dc prediction +static void reset(jpeg *j) +{ + j->code_bits = 0; + j->code_buffer = 0; + j->nomore = 0; + j->img_comp[0].dc_pred = j->img_comp[1].dc_pred = j->img_comp[2].dc_pred = 0; + j->marker = MARKER_none; + j->todo = j->restart_interval ? j->restart_interval : 0x7fffffff; + // no more than 1<<31 MCUs if no restart_interal? that's plenty safe, + // since we don't even allow 1<<30 pixels +} + +static int parse_entropy_coded_data(jpeg *z) +{ + reset(z); + if (z->scan_n == 1) { + int i,j; + #ifdef STBI_SIMD + __declspec(align(16)) + #endif + short data[64]; + int n = z->order[0]; + // non-interleaved data, we just need to process one block at a time, + // in trivial scanline order + // number of blocks to do just depends on how many actual "pixels" this + // component has, independent of interleaved MCU blocking and such + int w = (z->img_comp[n].x+7) >> 3; + int h = (z->img_comp[n].y+7) >> 3; + for (j=0; j < h; ++j) { + for (i=0; i < w; ++i) { + if (!decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+z->img_comp[n].ha, n)) return 0; + #ifdef STBI_SIMD + stbi_idct_installed(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data, z->dequant2[z->img_comp[n].tq]); + #else + idct_block(z->img_comp[n].data+z->img_comp[n].w2*j*8+i*8, z->img_comp[n].w2, data, z->dequant[z->img_comp[n].tq]); + #endif + // every data block is an MCU, so countdown the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) grow_buffer_unsafe(z); + // if it's NOT a restart, then just bail, so we get corrupt data + // rather than no data + if (!RESTART(z->marker)) return 1; + reset(z); + } + } + } + } else { // interleaved! + int i,j,k,x,y; + short data[64]; + for (j=0; j < z->img_mcu_y; ++j) { + for (i=0; i < z->img_mcu_x; ++i) { + // scan an interleaved mcu... process scan_n components in order + for (k=0; k < z->scan_n; ++k) { + int n = z->order[k]; + // scan out an mcu's worth of this component; that's just determined + // by the basic H and V specified for the component + for (y=0; y < z->img_comp[n].v; ++y) { + for (x=0; x < z->img_comp[n].h; ++x) { + int x2 = (i*z->img_comp[n].h + x)*8; + int y2 = (j*z->img_comp[n].v + y)*8; + if (!decode_block(z, data, z->huff_dc+z->img_comp[n].hd, z->huff_ac+z->img_comp[n].ha, n)) return 0; + #ifdef STBI_SIMD + stbi_idct_installed(z->img_comp[n].data+z->img_comp[n].w2*y2+x2, z->img_comp[n].w2, data, z->dequant2[z->img_comp[n].tq]); + #else + idct_block(z->img_comp[n].data+z->img_comp[n].w2*y2+x2, z->img_comp[n].w2, data, z->dequant[z->img_comp[n].tq]); + #endif + } + } + } + // after all interleaved components, that's an interleaved MCU, + // so now count down the restart interval + if (--z->todo <= 0) { + if (z->code_bits < 24) grow_buffer_unsafe(z); + // if it's NOT a restart, then just bail, so we get corrupt data + // rather than no data + if (!RESTART(z->marker)) return 1; + reset(z); + } + } + } + } + return 1; +} + +static int process_marker(jpeg *z, int marker) +{ + int L; + switch (marker) { + case MARKER_none: // no marker found + return e("expected marker","Corrupt JPEG"); + + case 0xC2: // SOF - progressive + return e("progressive jpeg","JPEG format not supported (progressive)"); + + case 0xDD: // DRI - specify restart interval + if (get16(&z->s) != 4) return e("bad DRI len","Corrupt JPEG"); + z->restart_interval = get16(&z->s); + return 1; + + case 0xDB: // DQT - define quantization table + L = get16(&z->s)-2; + while (L > 0) { + int q = get8(&z->s); + int p = q >> 4; + int t = q & 15,i; + if (p != 0) return e("bad DQT type","Corrupt JPEG"); + if (t > 3) return e("bad DQT table","Corrupt JPEG"); + for (i=0; i < 64; ++i) + z->dequant[t][dezigzag[i]] = get8u(&z->s); + #ifdef STBI_SIMD + for (i=0; i < 64; ++i) + z->dequant2[t][i] = z->dequant[t][i]; + #endif + L -= 65; + } + return L==0; + + case 0xC4: // DHT - define huffman table + L = get16(&z->s)-2; + while (L > 0) { + uint8 *v; + int sizes[16],i,m=0; + int q = get8(&z->s); + int tc = q >> 4; + int th = q & 15; + if (tc > 1 || th > 3) return e("bad DHT header","Corrupt JPEG"); + for (i=0; i < 16; ++i) { + sizes[i] = get8(&z->s); + m += sizes[i]; + } + L -= 17; + if (tc == 0) { + if (!build_huffman(z->huff_dc+th, sizes)) return 0; + v = z->huff_dc[th].values; + } else { + if (!build_huffman(z->huff_ac+th, sizes)) return 0; + v = z->huff_ac[th].values; + } + for (i=0; i < m; ++i) + v[i] = get8u(&z->s); + L -= m; + } + return L==0; + } + // check for comment block or APP blocks + if ((marker >= 0xE0 && marker <= 0xEF) || marker == 0xFE) { + skip(&z->s, get16(&z->s)-2); + return 1; + } + return 0; +} + +// after we see SOS +static int process_scan_header(jpeg *z) +{ + int i; + int Ls = get16(&z->s); + z->scan_n = get8(&z->s); + if (z->scan_n < 1 || z->scan_n > 4 || z->scan_n > (int) z->s.img_n) return e("bad SOS component count","Corrupt JPEG"); + if (Ls != 6+2*z->scan_n) return e("bad SOS len","Corrupt JPEG"); + for (i=0; i < z->scan_n; ++i) { + int id = get8(&z->s), which; + int q = get8(&z->s); + for (which = 0; which < z->s.img_n; ++which) + if (z->img_comp[which].id == id) + break; + if (which == z->s.img_n) return 0; + z->img_comp[which].hd = q >> 4; if (z->img_comp[which].hd > 3) return e("bad DC huff","Corrupt JPEG"); + z->img_comp[which].ha = q & 15; if (z->img_comp[which].ha > 3) return e("bad AC huff","Corrupt JPEG"); + z->order[i] = which; + } + if (get8(&z->s) != 0) return e("bad SOS","Corrupt JPEG"); + get8(&z->s); // should be 63, but might be 0 + if (get8(&z->s) != 0) return e("bad SOS","Corrupt JPEG"); + + return 1; +} + +static int process_frame_header(jpeg *z, int scan) +{ + stbi *s = &z->s; + int Lf,p,i,q, h_max=1,v_max=1,c; + Lf = get16(s); if (Lf < 11) return e("bad SOF len","Corrupt JPEG"); // JPEG + p = get8(s); if (p != 8) return e("only 8-bit","JPEG format not supported: 8-bit only"); // JPEG baseline + s->img_y = get16(s); if (s->img_y == 0) return e("no header height", "JPEG format not supported: delayed height"); // Legal, but we don't handle it--but neither does IJG + s->img_x = get16(s); if (s->img_x == 0) return e("0 width","Corrupt JPEG"); // JPEG requires + c = get8(s); + if (c != 3 && c != 1) return e("bad component count","Corrupt JPEG"); // JFIF requires + s->img_n = c; + for (i=0; i < c; ++i) { + z->img_comp[i].data = NULL; + z->img_comp[i].linebuf = NULL; + } + + if (Lf != 8+3*s->img_n) return e("bad SOF len","Corrupt JPEG"); + + for (i=0; i < s->img_n; ++i) { + z->img_comp[i].id = get8(s); + if (z->img_comp[i].id != i+1) // JFIF requires + if (z->img_comp[i].id != i) // some version of jpegtran outputs non-JFIF-compliant files! + return e("bad component ID","Corrupt JPEG"); + q = get8(s); + z->img_comp[i].h = (q >> 4); if (!z->img_comp[i].h || z->img_comp[i].h > 4) return e("bad H","Corrupt JPEG"); + z->img_comp[i].v = q & 15; if (!z->img_comp[i].v || z->img_comp[i].v > 4) return e("bad V","Corrupt JPEG"); + z->img_comp[i].tq = get8(s); if (z->img_comp[i].tq > 3) return e("bad TQ","Corrupt JPEG"); + } + + if (scan != SCAN_load) return 1; + + if ((1 << 30) / s->img_x / s->img_n < s->img_y) return e("too large", "Image too large to decode"); + + for (i=0; i < s->img_n; ++i) { + if (z->img_comp[i].h > h_max) h_max = z->img_comp[i].h; + if (z->img_comp[i].v > v_max) v_max = z->img_comp[i].v; + } + + // compute interleaved mcu info + z->img_h_max = h_max; + z->img_v_max = v_max; + z->img_mcu_w = h_max * 8; + z->img_mcu_h = v_max * 8; + z->img_mcu_x = (s->img_x + z->img_mcu_w-1) / z->img_mcu_w; + z->img_mcu_y = (s->img_y + z->img_mcu_h-1) / z->img_mcu_h; + + for (i=0; i < s->img_n; ++i) { + // number of effective pixels (e.g. for non-interleaved MCU) + z->img_comp[i].x = (s->img_x * z->img_comp[i].h + h_max-1) / h_max; + z->img_comp[i].y = (s->img_y * z->img_comp[i].v + v_max-1) / v_max; + // to simplify generation, we'll allocate enough memory to decode + // the bogus oversized data from using interleaved MCUs and their + // big blocks (e.g. a 16x16 iMCU on an image of width 33); we won't + // discard the extra data until colorspace conversion + z->img_comp[i].w2 = z->img_mcu_x * z->img_comp[i].h * 8; + z->img_comp[i].h2 = z->img_mcu_y * z->img_comp[i].v * 8; + z->img_comp[i].raw_data = MALLOC(z->img_comp[i].w2 * z->img_comp[i].h2+15); + if (z->img_comp[i].raw_data == NULL) { + for(--i; i >= 0; --i) { + FREE(z->img_comp[i].raw_data); + z->img_comp[i].data = NULL; + } + return e("outofmem", "Out of memory"); + } + // align blocks for installable-idct using mmx/sse + z->img_comp[i].data = (uint8*) (((size_t) z->img_comp[i].raw_data + 15) & ~15); + z->img_comp[i].linebuf = NULL; + } + + return 1; +} + +// use comparisons since in some cases we handle more than one case (e.g. SOF) +#define DNL(x) ((x) == 0xdc) +#define SOI(x) ((x) == 0xd8) +#define EOI(x) ((x) == 0xd9) +#define SOF(x) ((x) == 0xc0 || (x) == 0xc1) +#define SOS(x) ((x) == 0xda) + +static int decode_jpeg_header(jpeg *z, int scan) +{ + int m; + z->marker = MARKER_none; // initialize cached marker to empty + m = get_marker(z); + if (!SOI(m)) return e("no SOI","Corrupt JPEG"); + if (scan == SCAN_type) return 1; + m = get_marker(z); + while (!SOF(m)) { + if (!process_marker(z,m)) return 0; + m = get_marker(z); + while (m == MARKER_none) { + // some files have extra padding after their blocks, so ok, we'll scan + if (at_eof(&z->s)) return e("no SOF", "Corrupt JPEG"); + m = get_marker(z); + } + } + if (!process_frame_header(z, scan)) return 0; + return 1; +} + +static int decode_jpeg_image(jpeg *j) +{ + int m; + j->restart_interval = 0; + if (!decode_jpeg_header(j, SCAN_load)) return 0; + m = get_marker(j); + while (!EOI(m)) { + if (SOS(m)) { + if (!process_scan_header(j)) return 0; + if (!parse_entropy_coded_data(j)) return 0; + if (j->marker == MARKER_none ) { + // handle 0s at the end of image data from IP Kamera 9060 + while (!at_eof(&j->s)) { + int x = get8(&j->s); + if (x == 255) { + j->marker = get8u(&j->s); + break; + } else if (x != 0) { + return 0; + } + } + // if we reach eof without hitting a marker, get_marker() below will fail and we'll eventually return 0 + } + } else { + if (!process_marker(j, m)) return 0; + } + m = get_marker(j); + } + return 1; +} + +// static jfif-centered resampling (across block boundaries) + +typedef uint8 *(*resample_row_func)(uint8 *out, uint8 *in0, uint8 *in1, + int w, int hs); + +#define div4(x) ((uint8) ((x) >> 2)) + +static uint8 *resample_row_1(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + STBI_NOTUSED(out); + STBI_NOTUSED(in_far); + STBI_NOTUSED(w); + STBI_NOTUSED(hs); + return in_near; +} + +static uint8* resample_row_v_2(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + // need to generate two samples vertically for every one in input + int i; + STBI_NOTUSED(hs); + for (i=0; i < w; ++i) + out[i] = div4(3*in_near[i] + in_far[i] + 2); + return out; +} + +static uint8* resample_row_h_2(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + // need to generate two samples horizontally for every one in input + int i; + uint8 *input = in_near; + + if (w == 1) { + // if only one sample, can't do any interpolation + out[0] = out[1] = input[0]; + return out; + } + + out[0] = input[0]; + out[1] = div4(input[0]*3 + input[1] + 2); + for (i=1; i < w-1; ++i) { + int n = 3*input[i]+2; + out[i*2+0] = div4(n+input[i-1]); + out[i*2+1] = div4(n+input[i+1]); + } + out[i*2+0] = div4(input[w-2]*3 + input[w-1] + 2); + out[i*2+1] = input[w-1]; + + STBI_NOTUSED(in_far); + STBI_NOTUSED(hs); + + return out; +} + +#define div16(x) ((uint8) ((x) >> 4)) + +static uint8 *resample_row_hv_2(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + // need to generate 2x2 samples for every one in input + int i,t0,t1; + if (w == 1) { + out[0] = out[1] = div4(3*in_near[0] + in_far[0] + 2); + return out; + } + + t1 = 3*in_near[0] + in_far[0]; + out[0] = div4(t1+2); + for (i=1; i < w; ++i) { + t0 = t1; + t1 = 3*in_near[i]+in_far[i]; + out[i*2-1] = div16(3*t0 + t1 + 8); + out[i*2 ] = div16(3*t1 + t0 + 8); + } + out[w*2-1] = div4(t1+2); + + STBI_NOTUSED(hs); + + return out; +} + +static uint8 *resample_row_generic(uint8 *out, uint8 *in_near, uint8 *in_far, int w, int hs) +{ + // resample with nearest-neighbor + int i,j; + in_far = in_far; + for (i=0; i < w; ++i) + for (j=0; j < hs; ++j) + out[i*hs+j] = in_near[i]; + return out; +} + +#define float2fixed(x) ((int) ((x) * 65536 + 0.5)) + +// 0.38 seconds on 3*anemones.jpg (0.25 with processor = Pro) +// VC6 without processor=Pro is generating multiple LEAs per multiply! +static void YCbCr_to_RGB_row(uint8 *out, const uint8 *y, const uint8 *pcb, const uint8 *pcr, int count, int step) +{ + int i; + for (i=0; i < count; ++i) { + int y_fixed = (y[i] << 16) + 32768; // rounding + int r,g,b; + int cr = pcr[i] - 128; + int cb = pcb[i] - 128; + r = y_fixed + cr*float2fixed(1.40200f); + g = y_fixed - cr*float2fixed(0.71414f) - cb*float2fixed(0.34414f); + b = y_fixed + cb*float2fixed(1.77200f); + r >>= 16; + g >>= 16; + b >>= 16; + if ((unsigned) r > 255) { if (r < 0) r = 0; else r = 255; } + if ((unsigned) g > 255) { if (g < 0) g = 0; else g = 255; } + if ((unsigned) b > 255) { if (b < 0) b = 0; else b = 255; } + out[0] = (uint8)r; + out[1] = (uint8)g; + out[2] = (uint8)b; + out[3] = 255; + out += step; + } +} + +#ifdef STBI_SIMD +static stbi_YCbCr_to_RGB_run stbi_YCbCr_installed = YCbCr_to_RGB_row; + +void stbi_install_YCbCr_to_RGB(stbi_YCbCr_to_RGB_run func) +{ + stbi_YCbCr_installed = func; +} +#endif + + +// clean up the temporary component buffers +static void cleanup_jpeg(jpeg *j) +{ + int i; + for (i=0; i < j->s.img_n; ++i) { + if (j->img_comp[i].data) { + FREE(j->img_comp[i].raw_data); + j->img_comp[i].data = NULL; + } + if (j->img_comp[i].linebuf) { + FREE(j->img_comp[i].linebuf); + j->img_comp[i].linebuf = NULL; + } + } +} + +typedef struct +{ + resample_row_func resample; + uint8 *line0,*line1; + int hs,vs; // expansion factor in each axis + int w_lores; // horizontal pixels pre-expansion + int ystep; // how far through vertical expansion we are + int ypos; // which pre-expansion row we're on +} stbi_resample; + +static uint8 *load_jpeg_image(jpeg *z, int *out_x, int *out_y, int *comp, int req_comp) +{ + int n, decode_n; + // validate req_comp + if (req_comp < 0 || req_comp > 4) return epuc("bad req_comp", "Internal error"); + z->s.img_n = 0; + + // load a jpeg image from whichever source + if (!decode_jpeg_image(z)) { cleanup_jpeg(z); return NULL; } + + // determine actual number of components to generate + n = req_comp ? req_comp : z->s.img_n; + + if (z->s.img_n == 3 && n < 3) + decode_n = 1; + else + decode_n = z->s.img_n; + + // resample and color-convert + { + int k; + uint i,j; + uint8 *output; + uint8 *coutput[4]; + + stbi_resample res_comp[4]; + + for (k=0; k < decode_n; ++k) { + stbi_resample *r = &res_comp[k]; + + // allocate line buffer big enough for upsampling off the edges + // with upsample factor of 4 + z->img_comp[k].linebuf = (uint8 *) MALLOC(z->s.img_x + 3); + if (!z->img_comp[k].linebuf) { cleanup_jpeg(z); return epuc("outofmem", "Out of memory"); } + + r->hs = z->img_h_max / z->img_comp[k].h; + r->vs = z->img_v_max / z->img_comp[k].v; + r->ystep = r->vs >> 1; + r->w_lores = (z->s.img_x + r->hs-1) / r->hs; + r->ypos = 0; + r->line0 = r->line1 = z->img_comp[k].data; + + if (r->hs == 1 && r->vs == 1) r->resample = resample_row_1; + else if (r->hs == 1 && r->vs == 2) r->resample = resample_row_v_2; + else if (r->hs == 2 && r->vs == 1) r->resample = resample_row_h_2; + else if (r->hs == 2 && r->vs == 2) r->resample = resample_row_hv_2; + else r->resample = resample_row_generic; + } + + // can't error after this so, this is safe + output = (uint8 *) MALLOC(n * z->s.img_x * z->s.img_y + 1); + if (!output) { cleanup_jpeg(z); return epuc("outofmem", "Out of memory"); } + + // now go ahead and resample + for (j=0; j < z->s.img_y; ++j) { + uint8 *out = output + n * z->s.img_x * j; + for (k=0; k < decode_n; ++k) { + stbi_resample *r = &res_comp[k]; + int y_bot = r->ystep >= (r->vs >> 1); + coutput[k] = r->resample(z->img_comp[k].linebuf, + y_bot ? r->line1 : r->line0, + y_bot ? r->line0 : r->line1, + r->w_lores, r->hs); + if (++r->ystep >= r->vs) { + r->ystep = 0; + r->line0 = r->line1; + if (++r->ypos < z->img_comp[k].y) + r->line1 += z->img_comp[k].w2; + } + } + if (n >= 3) { + uint8 *y = coutput[0]; + if (z->s.img_n == 3) { + #ifdef STBI_SIMD + stbi_YCbCr_installed(out, y, coutput[1], coutput[2], z->s.img_x, n); + #else + YCbCr_to_RGB_row(out, y, coutput[1], coutput[2], z->s.img_x, n); + #endif + } else + for (i=0; i < z->s.img_x; ++i) { + out[0] = out[1] = out[2] = y[i]; + out[3] = 255; // not used if n==3 + out += n; + } + } else { + uint8 *y = coutput[0]; + if (n == 1) + for (i=0; i < z->s.img_x; ++i) out[i] = y[i]; + else + for (i=0; i < z->s.img_x; ++i) *out++ = y[i], *out++ = 255; + } + } + cleanup_jpeg(z); + *out_x = z->s.img_x; + *out_y = z->s.img_y; + if (comp) *comp = z->s.img_n; // report original components, not output + return output; + } +} + +#ifndef STBI_NO_STDIO +unsigned char *stbi_jpeg_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + jpeg j; + start_file(&j.s, f); + return load_jpeg_image(&j, x,y,comp,req_comp); +} + +unsigned char *stbi_jpeg_load(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + unsigned char *data; + FILE *f = fopen(filename, "rb"); + if (!f) return NULL; + data = stbi_jpeg_load_from_file(f,x,y,comp,req_comp); + fclose(f); + return data; +} +#endif + +unsigned char *stbi_jpeg_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + #ifdef STBI_SMALL_STACK + unsigned char *result; + jpeg *j = (jpeg *) MALLOC(sizeof(*j)); + start_mem(&j->s, buffer, len); + result = load_jpeg_image(j,x,y,comp,req_comp); + FREE(j); + return result; + #else + jpeg j; + start_mem(&j.s, buffer,len); + return load_jpeg_image(&j, x,y,comp,req_comp); + #endif +} + +static int stbi_jpeg_info_raw(jpeg *j, int *x, int *y, int *comp) +{ + if (!decode_jpeg_header(j, SCAN_header)) + return 0; + if (x) *x = j->s.img_x; + if (y) *y = j->s.img_y; + if (comp) *comp = j->s.img_n; + return 1; +} + +#ifndef STBI_NO_STDIO +int stbi_jpeg_test_file(FILE *f) +{ + int n,r; + jpeg j; + n = ftell(f); + start_file(&j.s, f); + r = decode_jpeg_header(&j, SCAN_type); + fseek(f,n,SEEK_SET); + return r; +} + +int stbi_jpeg_info_from_file(FILE *f, int *x, int *y, int *comp) +{ + jpeg j; + long n = ftell(f); + int res; + start_file(&j.s, f); + res = stbi_jpeg_info_raw(&j, x, y, comp); + fseek(f, n, SEEK_SET); + return res; +} + +int stbi_jpeg_info(char const *filename, int *x, int *y, int *comp) +{ + FILE *f = fopen(filename, "rb"); + int result; + if (!f) return e("can't fopen", "Unable to open file"); + result = stbi_jpeg_info_from_file(f, x, y, comp); + fclose(f); + return result; +} +#endif + +int stbi_jpeg_test_memory(stbi_uc const *buffer, int len) +{ + jpeg j; + start_mem(&j.s, buffer,len); + return decode_jpeg_header(&j, SCAN_type); +} + +int stbi_jpeg_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) +{ + jpeg j; + start_mem(&j.s, buffer, len); + return stbi_jpeg_info_raw(&j, x, y, comp); +} + +#ifndef STBI_NO_STDIO +extern int stbi_jpeg_info (char const *filename, int *x, int *y, int *comp); +extern int stbi_jpeg_info_from_file (FILE *f, int *x, int *y, int *comp); +#endif +extern int stbi_jpeg_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp); + +// public domain zlib decode v0.2 Sean Barrett 2006-11-18 +// simple implementation +// - all input must be provided in an upfront buffer +// - all output is written to a single output buffer (can malloc/realloc) +// performance +// - fast huffman + +// fast-way is faster to check than jpeg huffman, but slow way is slower +#define ZFAST_BITS 9 // accelerate all cases in default tables +#define ZFAST_MASK ((1 << ZFAST_BITS) - 1) + +// zlib-style huffman encoding +// (jpegs packs from left, zlib from right, so can't share code) +typedef struct +{ + uint16 fast[1 << ZFAST_BITS]; + uint16 firstcode[16]; + int maxcode[17]; + uint16 firstsymbol[16]; + uint8 size[288]; + uint16 value[288]; +} zhuffman; + +__forceinline static int bitreverse16(int n) +{ + n = ((n & 0xAAAA) >> 1) | ((n & 0x5555) << 1); + n = ((n & 0xCCCC) >> 2) | ((n & 0x3333) << 2); + n = ((n & 0xF0F0) >> 4) | ((n & 0x0F0F) << 4); + n = ((n & 0xFF00) >> 8) | ((n & 0x00FF) << 8); + return n; +} + +__forceinline static int bit_reverse(int v, int bits) +{ + assert(bits <= 16); + // to bit reverse n bits, reverse 16 and shift + // e.g. 11 bits, bit reverse and shift away 5 + return bitreverse16(v) >> (16-bits); +} + +static int zbuild_huffman(zhuffman *z, uint8 *sizelist, int num) +{ + int i,k=0; + int code, next_code[16], sizes[17]; + + // DEFLATE spec for generating codes + memset(sizes, 0, sizeof(sizes)); + memset(z->fast, 255, sizeof(z->fast)); + for (i=0; i < num; ++i) + ++sizes[sizelist[i]]; + sizes[0] = 0; + for (i=1; i < 16; ++i) + assert(sizes[i] <= (1 << i)); + code = 0; + for (i=1; i < 16; ++i) { + next_code[i] = code; + z->firstcode[i] = (uint16) code; + z->firstsymbol[i] = (uint16) k; + code = (code + sizes[i]); + if (sizes[i]) + if (code-1 >= (1 << i)) return e("bad codelengths","Corrupt JPEG"); + z->maxcode[i] = code << (16-i); // preshift for inner loop + code <<= 1; + k += sizes[i]; + } + z->maxcode[16] = 0x10000; // sentinel + for (i=0; i < num; ++i) { + int s = sizelist[i]; + if (s) { + int c = next_code[s] - z->firstcode[s] + z->firstsymbol[s]; + z->size[c] = (uint8)s; + z->value[c] = (uint16)i; + if (s <= ZFAST_BITS) { + int m = bit_reverse(next_code[s],s); + while (m < (1 << ZFAST_BITS)) { + z->fast[m] = (uint16) c; + m += (1 << s); + } + } + ++next_code[s]; + } + } + return 1; +} + +// zlib-from-memory implementation for PNG reading +// because PNG allows splitting the zlib stream arbitrarily, +// and it's annoying structurally to have PNG call ZLIB call PNG, +// we require PNG read all the IDATs and combine them into a single +// memory buffer + +typedef struct +{ + uint8 const *zbuffer, *zbuffer_end; + int num_bits; + uint32 code_buffer; + + char *zout; + char *zout_start; + char *zout_end; + int z_expandable; + + zhuffman z_length, z_distance; +} zbuf; + +__forceinline static int zget8(zbuf *z) +{ + if (z->zbuffer >= z->zbuffer_end) return 0; + return *z->zbuffer++; +} + +static void fill_bits(zbuf *z) +{ + do { + assert(z->code_buffer < (1U << z->num_bits)); + z->code_buffer |= zget8(z) << z->num_bits; + z->num_bits += 8; + } while (z->num_bits <= 24); +} + +__forceinline static unsigned int zreceive(zbuf *z, int n) +{ + unsigned int k; + if (z->num_bits < n) fill_bits(z); + k = z->code_buffer & ((1 << n) - 1); + z->code_buffer >>= n; + z->num_bits -= n; + return k; +} + +__forceinline static int zhuffman_decode(zbuf *a, zhuffman *z) +{ + int b,s,k; + if (a->num_bits < 16) fill_bits(a); + b = z->fast[a->code_buffer & ZFAST_MASK]; + if (b < 0xffff) { + s = z->size[b]; + a->code_buffer >>= s; + a->num_bits -= s; + return z->value[b]; + } + + // not resolved by fast table, so compute it the slow way + // use jpeg approach, which requires MSbits at top + k = bit_reverse(a->code_buffer, 16); + for (s=ZFAST_BITS+1; ; ++s) + if (k < z->maxcode[s]) + break; + if (s == 16) return -1; // invalid code! + // code size is s, so: + b = (k >> (16-s)) - z->firstcode[s] + z->firstsymbol[s]; + assert(z->size[b] == s); + a->code_buffer >>= s; + a->num_bits -= s; + return z->value[b]; +} + +static int expand(zbuf *z, int n) // need to make room for n bytes +{ + char *q; + int cur, limit; + if (!z->z_expandable) return e("output buffer limit","Corrupt PNG"); + cur = (int) (z->zout - z->zout_start); + limit = (int) (z->zout_end - z->zout_start); + while (cur + n > limit) + limit *= 2; + q = (char *) REALLOC(z->zout_start, limit); + if (q == NULL) return e("outofmem", "Out of memory"); + z->zout_start = q; + z->zout = q + cur; + z->zout_end = q + limit; + return 1; +} + +static int length_base[31] = { + 3,4,5,6,7,8,9,10,11,13, + 15,17,19,23,27,31,35,43,51,59, + 67,83,99,115,131,163,195,227,258,0,0 }; + +static int length_extra[31]= +{ 0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0 }; + +static int dist_base[32] = { 1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193, +257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0}; + +static int dist_extra[32] = +{ 0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13}; + +static int parse_huffman_block(zbuf *a) +{ + for(;;) { + int z = zhuffman_decode(a, &a->z_length); + if (z < 256) { + if (z < 0) return e("bad huffman code","Corrupt PNG"); // error in huffman codes + if (a->zout >= a->zout_end) if (!expand(a, 1)) return 0; + *a->zout++ = (char) z; + } else { + uint8 *p; + int len,dist; + if (z == 256) return 1; + z -= 257; + len = length_base[z]; + if (length_extra[z]) len += zreceive(a, length_extra[z]); + z = zhuffman_decode(a, &a->z_distance); + if (z < 0) return e("bad huffman code","Corrupt PNG"); + dist = dist_base[z]; + if (dist_extra[z]) dist += zreceive(a, dist_extra[z]); + if (a->zout - a->zout_start < dist) return e("bad dist","Corrupt PNG"); + if (a->zout + len > a->zout_end) if (!expand(a, len)) return 0; + p = (uint8 *) (a->zout - dist); + while (len--) + *a->zout++ = *p++; + } + } +} + +static int compute_huffman_codes(zbuf *a) +{ + static uint8 length_dezigzag[19] = { 16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15 }; + zhuffman z_codelength; + uint8 lencodes[286+32+137];//padding for maximum single op + uint8 codelength_sizes[19]; + int i,n; + + int hlit = zreceive(a,5) + 257; + int hdist = zreceive(a,5) + 1; + int hclen = zreceive(a,4) + 4; + + memset(codelength_sizes, 0, sizeof(codelength_sizes)); + for (i=0; i < hclen; ++i) { + int s = zreceive(a,3); + codelength_sizes[length_dezigzag[i]] = (uint8) s; + } + if (!zbuild_huffman(&z_codelength, codelength_sizes, 19)) return 0; + + n = 0; + while (n < hlit + hdist) { + int c = zhuffman_decode(a, &z_codelength); + assert(c >= 0 && c < 19); + if (c < 16) + lencodes[n++] = (uint8) c; + else if (c == 16) { + c = zreceive(a,2)+3; + memset(lencodes+n, lencodes[n-1], c); + n += c; + } else if (c == 17) { + c = zreceive(a,3)+3; + memset(lencodes+n, 0, c); + n += c; + } else { + assert(c == 18); + c = zreceive(a,7)+11; + memset(lencodes+n, 0, c); + n += c; + } + } + if (n != hlit+hdist) return e("bad codelengths","Corrupt PNG"); + if (!zbuild_huffman(&a->z_length, lencodes, hlit)) return 0; + if (!zbuild_huffman(&a->z_distance, lencodes+hlit, hdist)) return 0; + return 1; +} + +static int parse_uncompressed_block(zbuf *a) +{ + uint8 header[4]; + int len,nlen,k; + if (a->num_bits & 7) + zreceive(a, a->num_bits & 7); // discard + // drain the bit-packed data into header + k = 0; + while (a->num_bits > 0) { + header[k++] = (uint8) (a->code_buffer & 255); // wtf this warns? + a->code_buffer >>= 8; + a->num_bits -= 8; + } + assert(a->num_bits == 0); + // now fill header the normal way + while (k < 4) + header[k++] = (uint8) zget8(a); + len = header[1] * 256 + header[0]; + nlen = header[3] * 256 + header[2]; + if (nlen != (len ^ 0xffff)) return e("zlib corrupt","Corrupt PNG"); + if (a->zbuffer + len > a->zbuffer_end) return e("read past buffer","Corrupt PNG"); + if (a->zout + len > a->zout_end) + if (!expand(a, len)) return 0; + memcpy(a->zout, a->zbuffer, len); + a->zbuffer += len; + a->zout += len; + return 1; +} + +static int parse_zlib_header(zbuf *a) +{ + int cmf = zget8(a); + int cm = cmf & 15; + /* int cinfo = cmf >> 4; */ + int flg = zget8(a); + if ((cmf*256+flg) % 31 != 0) return e("bad zlib header","Corrupt PNG"); // zlib spec + if (flg & 32) return e("no preset dict","Corrupt PNG"); // preset dictionary not allowed in png + if (cm != 8) return e("bad compression","Corrupt PNG"); // DEFLATE required for png + // window = 1 << (8 + cinfo)... but who cares, we fully buffer output + return 1; +} + +// @TODO: should statically initialize these for optimal thread safety +static uint8 default_length[288], default_distance[32]; +static void init_defaults(void) +{ + int i; // use <= to match clearly with spec + for (i=0; i <= 143; ++i) default_length[i] = 8; + for ( ; i <= 255; ++i) default_length[i] = 9; + for ( ; i <= 279; ++i) default_length[i] = 7; + for ( ; i <= 287; ++i) default_length[i] = 8; + + for (i=0; i <= 31; ++i) default_distance[i] = 5; +} + +int stbi_png_partial; // a quick hack to only allow decoding some of a PNG... I should implement real streaming support instead +static int parse_zlib(zbuf *a, int parse_header) +{ + int final, type; + if (parse_header) + if (!parse_zlib_header(a)) return 0; + a->num_bits = 0; + a->code_buffer = 0; + do { + final = zreceive(a,1); + type = zreceive(a,2); + if (type == 0) { + if (!parse_uncompressed_block(a)) return 0; + } else if (type == 3) { + return 0; + } else { + if (type == 1) { + // use fixed code lengths + if (!default_distance[31]) init_defaults(); + if (!zbuild_huffman(&a->z_length , default_length , 288)) return 0; + if (!zbuild_huffman(&a->z_distance, default_distance, 32)) return 0; + } else { + if (!compute_huffman_codes(a)) return 0; + } + if (!parse_huffman_block(a)) return 0; + } + if (stbi_png_partial && a->zout - a->zout_start > 65536) + break; + } while (!final); + return 1; +} + +static int do_zlib(zbuf *a, char *obuf, int olen, int exp, int parse_header) +{ + a->zout_start = obuf; + a->zout = obuf; + a->zout_end = obuf + olen; + a->z_expandable = exp; + + return parse_zlib(a, parse_header); +} + +char *stbi_zlib_decode_malloc_guesssize(const char * buffer, int len, int initial_size, int *outlen) +{ + zbuf a; + char *p = (char *) MALLOC(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (uint8 const *) buffer; + a.zbuffer_end = (uint8 const *) buffer + len; + if (do_zlib(&a, p, initial_size, 1, 1)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + FREE(a.zout_start); + return NULL; + } +} + +char *stbi_zlib_decode_malloc(char const *buffer, int len, int *outlen) +{ + return stbi_zlib_decode_malloc_guesssize(buffer, len, 16384, outlen); +} + +char *stbi_zlib_decode_malloc_guesssize_headerflag(const char *buffer, int len, int initial_size, int *outlen, int parse_header) +{ + zbuf a; + char *p = (char *) MALLOC(initial_size); + if (p == NULL) return NULL; + a.zbuffer = (uint8 const *) buffer; + a.zbuffer_end = (uint8 const *) buffer + len; + if (do_zlib(&a, p, initial_size, 1, parse_header)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + FREE(a.zout_start); + return NULL; + } +} + +int stbi_zlib_decode_buffer(char *obuffer, int olen, char const *ibuffer, int ilen) +{ + zbuf a; + a.zbuffer = (uint8 const *) ibuffer; + a.zbuffer_end = (uint8 const *) ibuffer + ilen; + if (do_zlib(&a, obuffer, olen, 0, 1)) + return (int) (a.zout - a.zout_start); + else + return -1; +} + +char *stbi_zlib_decode_noheader_malloc(char const *buffer, int len, int *outlen) +{ + zbuf a; + char *p = (char *) MALLOC(16384); + if (p == NULL) return NULL; + a.zbuffer = (uint8 const *) buffer; + a.zbuffer_end = (uint8 const *) buffer+len; + if (do_zlib(&a, p, 16384, 1, 0)) { + if (outlen) *outlen = (int) (a.zout - a.zout_start); + return a.zout_start; + } else { + FREE(a.zout_start); + return NULL; + } +} + +int stbi_zlib_decode_noheader_buffer(char *obuffer, int olen, const char *ibuffer, int ilen) +{ + zbuf a; + a.zbuffer = (uint8 const *) ibuffer; + a.zbuffer_end = (uint8 const *) ibuffer + ilen; + if (do_zlib(&a, obuffer, olen, 0, 0)) + return (int) (a.zout - a.zout_start); + else + return -1; +} + +// public domain "baseline" PNG decoder v0.10 Sean Barrett 2006-11-18 +// simple implementation +// - only 8-bit samples +// - no CRC checking +// - allocates lots of intermediate memory +// - avoids problem of streaming data between subsystems +// - avoids explicit window management +// performance +// - uses stb_zlib, a PD zlib implementation with fast huffman decoding + + +typedef struct +{ + uint32 length; + uint32 type; +} chunk; + +#define PNG_TYPE(a,b,c,d) (((a) << 24) + ((b) << 16) + ((c) << 8) + (d)) + +static chunk get_chunk_header(stbi *s) +{ + chunk c; + c.length = get32(s); + c.type = get32(s); + return c; +} + +static int check_png_header(stbi *s) +{ + static uint8 png_sig[8] = { 137,80,78,71,13,10,26,10 }; + int i; + for (i=0; i < 8; ++i) + if (get8(s) != png_sig[i]) return e("bad png sig","Not a PNG"); + return 1; +} + +typedef struct +{ + stbi s; + uint8 *idata, *expanded, *out; +} png; + + +enum { + F_none=0, F_sub=1, F_up=2, F_avg=3, F_paeth=4, + F_avg_first, F_paeth_first +}; + +static uint8 first_row_filter[5] = +{ + F_none, F_sub, F_none, F_avg_first, F_paeth_first +}; + +static int paeth(int a, int b, int c) +{ + int p = a + b - c; + int pa = abs(p-a); + int pb = abs(p-b); + int pc = abs(p-c); + if (pa <= pb && pa <= pc) return a; + if (pb <= pc) return b; + return c; +} + +// create the png data from post-deflated data +static int create_png_image_raw(png *a, uint8 *raw, uint32 raw_len, int out_n, uint32 x, uint32 y) +{ + stbi *s = &a->s; + uint32 i,j,stride = x*out_n; + int k; + int img_n = s->img_n; // copy it into a local for later + assert(out_n == s->img_n || out_n == s->img_n+1); + if (stbi_png_partial) y = 1; + a->out = (uint8 *) MALLOC(x * y * out_n); + if (!a->out) return e("outofmem", "Out of memory"); + if (!stbi_png_partial) { + if (s->img_x == x && s->img_y == y) { + if (raw_len != (img_n * x + 1) * y) return e("not enough pixels","Corrupt PNG"); + } else { // interlaced: + if (raw_len < (img_n * x + 1) * y) return e("not enough pixels","Corrupt PNG"); + } + } + for (j=0; j < y; ++j) { + uint8 *cur = a->out + stride*j; + uint8 *prior = cur - stride; + int filter = *raw++; + if (filter > 4) return e("invalid filter","Corrupt PNG"); + // if first row, use special filter that doesn't sample previous row + if (j == 0) filter = first_row_filter[filter]; + // handle first pixel explicitly + for (k=0; k < img_n; ++k) { + switch (filter) { + case F_none : cur[k] = raw[k]; break; + case F_sub : cur[k] = raw[k]; break; + case F_up : cur[k] = raw[k] + prior[k]; break; + case F_avg : cur[k] = raw[k] + (prior[k]>>1); break; + case F_paeth : cur[k] = (uint8) (raw[k] + paeth(0,prior[k],0)); break; + case F_avg_first : cur[k] = raw[k]; break; + case F_paeth_first: cur[k] = raw[k]; break; + } + } + if (img_n != out_n) cur[img_n] = 255; + raw += img_n; + cur += out_n; + prior += out_n; + // this is a little gross, so that we don't switch per-pixel or per-component + if (img_n == out_n) { + #define CASE(f) \ + case f: \ + for (i=x-1; i >= 1; --i, raw+=img_n,cur+=img_n,prior+=img_n) \ + for (k=0; k < img_n; ++k) + switch (filter) { + CASE(F_none) cur[k] = raw[k]; break; + CASE(F_sub) cur[k] = raw[k] + cur[k-img_n]; break; + CASE(F_up) cur[k] = raw[k] + prior[k]; break; + CASE(F_avg) cur[k] = raw[k] + ((prior[k] + cur[k-img_n])>>1); break; + CASE(F_paeth) cur[k] = (uint8) (raw[k] + paeth(cur[k-img_n],prior[k],prior[k-img_n])); break; + CASE(F_avg_first) cur[k] = raw[k] + (cur[k-img_n] >> 1); break; + CASE(F_paeth_first) cur[k] = (uint8) (raw[k] + paeth(cur[k-img_n],0,0)); break; + } + #undef CASE + } else { + assert(img_n+1 == out_n); + #define CASE(f) \ + case f: \ + for (i=x-1; i >= 1; --i, cur[img_n]=255,raw+=img_n,cur+=out_n,prior+=out_n) \ + for (k=0; k < img_n; ++k) + switch (filter) { + CASE(F_none) cur[k] = raw[k]; break; + CASE(F_sub) cur[k] = raw[k] + cur[k-out_n]; break; + CASE(F_up) cur[k] = raw[k] + prior[k]; break; + CASE(F_avg) cur[k] = raw[k] + ((prior[k] + cur[k-out_n])>>1); break; + CASE(F_paeth) cur[k] = (uint8) (raw[k] + paeth(cur[k-out_n],prior[k],prior[k-out_n])); break; + CASE(F_avg_first) cur[k] = raw[k] + (cur[k-out_n] >> 1); break; + CASE(F_paeth_first) cur[k] = (uint8) (raw[k] + paeth(cur[k-out_n],0,0)); break; + } + #undef CASE + } + } + return 1; +} + +static int create_png_image(png *a, uint8 *raw, uint32 raw_len, int out_n, int interlaced) +{ + uint8 *final; + int p; + int save; + if (!interlaced) + return create_png_image_raw(a, raw, raw_len, out_n, a->s.img_x, a->s.img_y); + save = stbi_png_partial; + stbi_png_partial = 0; + + // de-interlacing + final = (uint8 *) MALLOC(a->s.img_x * a->s.img_y * out_n); + for (p=0; p < 7; ++p) { + int xorig[] = { 0,4,0,2,0,1,0 }; + int yorig[] = { 0,0,4,0,2,0,1 }; + int xspc[] = { 8,8,4,4,2,2,1 }; + int yspc[] = { 8,8,8,4,4,2,2 }; + int i,j,x,y; + // pass1_x[4] = 0, pass1_x[5] = 1, pass1_x[12] = 1 + x = (a->s.img_x - xorig[p] + xspc[p]-1) / xspc[p]; + y = (a->s.img_y - yorig[p] + yspc[p]-1) / yspc[p]; + if (x && y) { + if (!create_png_image_raw(a, raw, raw_len, out_n, x, y)) { + FREE(final); + return 0; + } + for (j=0; j < y; ++j) + for (i=0; i < x; ++i) + memcpy(final + (j*yspc[p]+yorig[p])*a->s.img_x*out_n + (i*xspc[p]+xorig[p])*out_n, + a->out + (j*x+i)*out_n, out_n); + FREE(a->out); + raw += (x*out_n+1)*y; + raw_len -= (x*out_n+1)*y; + } + } + a->out = final; + + stbi_png_partial = save; + return 1; +} + +static int compute_transparency(png *z, uint8 tc[3], int out_n) +{ + stbi *s = &z->s; + uint32 i, pixel_count = s->img_x * s->img_y; + uint8 *p = z->out; + + // compute color-based transparency, assuming we've + // already got 255 as the alpha value in the output + assert(out_n == 2 || out_n == 4); + + if (out_n == 2) { + for (i=0; i < pixel_count; ++i) { + p[1] = (p[0] == tc[0] ? 0 : 255); + p += 2; + } + } else { + for (i=0; i < pixel_count; ++i) { + if (p[0] == tc[0] && p[1] == tc[1] && p[2] == tc[2]) + p[3] = 0; + p += 4; + } + } + return 1; +} + +static int expand_palette(png *a, uint8 *palette, int len, int pal_img_n) +{ + uint32 i, pixel_count = a->s.img_x * a->s.img_y; + uint8 *p, *temp_out, *orig = a->out; + + p = (uint8 *) MALLOC(pixel_count * pal_img_n); + if (p == NULL) return e("outofmem", "Out of memory"); + + // between here and FREE(out) below, exiting would leak + temp_out = p; + + if (pal_img_n == 3) { + for (i=0; i < pixel_count; ++i) { + int n = orig[i]*4; + p[0] = palette[n ]; + p[1] = palette[n+1]; + p[2] = palette[n+2]; + p += 3; + } + } else { + for (i=0; i < pixel_count; ++i) { + int n = orig[i]*4; + p[0] = palette[n ]; + p[1] = palette[n+1]; + p[2] = palette[n+2]; + p[3] = palette[n+3]; + p += 4; + } + } + FREE(a->out); + a->out = temp_out; + + STBI_NOTUSED(len); + + return 1; +} + +static int stbi_unpremultiply_on_load = 0; +static int stbi_de_iphone_flag = 0; + +void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply) +{ + stbi_unpremultiply_on_load = flag_true_if_should_unpremultiply; +} +void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert) +{ + stbi_de_iphone_flag = flag_true_if_should_convert; +} + +static void stbi_de_iphone(png *z) +{ + stbi *s = &z->s; + uint32 i, pixel_count = s->img_x * s->img_y; + uint8 *p = z->out; + + if (s->img_out_n == 3) { // convert bgr to rgb + for (i=0; i < pixel_count; ++i) { + uint8 t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 3; + } + } else { + assert(s->img_out_n == 4); + if (stbi_unpremultiply_on_load) { + // convert bgr to rgb and unpremultiply + for (i=0; i < pixel_count; ++i) { + uint8 a = p[3]; + uint8 t = p[0]; + if (a) { + p[0] = p[2] * 255 / a; + p[1] = p[1] * 255 / a; + p[2] = t * 255 / a; + } else { + p[0] = p[2]; + p[2] = t; + } + p += 4; + } + } else { + // convert bgr to rgb + for (i=0; i < pixel_count; ++i) { + uint8 t = p[0]; + p[0] = p[2]; + p[2] = t; + p += 4; + } + } + } +} + +static int parse_png_file(png *z, int scan, int req_comp) +{ + uint8 palette[1024], pal_img_n=0; + uint8 has_trans=0, tc[3]; + uint32 ioff=0, idata_limit=0, i, pal_len=0; + int first=1,k,interlace=0, iphone=0; + stbi *s = &z->s; + + if (!check_png_header(s)) return 0; + + if (scan == SCAN_type) return 1; + + for (;;) { + chunk c = get_chunk_header(s); + switch (c.type) { + case PNG_TYPE('C','g','B','I'): + iphone = stbi_de_iphone_flag; + skip(s, c.length); + break; + case PNG_TYPE('I','H','D','R'): { + int depth,color,comp,filter; + if (!first) return e("multiple IHDR","Corrupt PNG"); + first = 0; + if (c.length != 13) return e("bad IHDR len","Corrupt PNG"); + s->img_x = get32(s); if (s->img_x > (1 << 24)) return e("too large","Very large image (corrupt?)"); + s->img_y = get32(s); if (s->img_y > (1 << 24)) return e("too large","Very large image (corrupt?)"); + depth = get8(s); if (depth != 8) return e("8bit only","PNG not supported: 8-bit only"); + color = get8(s); if (color > 6) return e("bad ctype","Corrupt PNG"); + if (color == 3) pal_img_n = 3; else if (color & 1) return e("bad ctype","Corrupt PNG"); + comp = get8(s); if (comp) return e("bad comp method","Corrupt PNG"); + filter= get8(s); if (filter) return e("bad filter method","Corrupt PNG"); + interlace = get8(s); if (interlace>1) return e("bad interlace method","Corrupt PNG"); + if (!s->img_x || !s->img_y) return e("0-pixel image","Corrupt PNG"); + if (!pal_img_n) { + s->img_n = (color & 2 ? 3 : 1) + (color & 4 ? 1 : 0); + if ((1 << 30) / s->img_x / s->img_n < s->img_y) return e("too large", "Image too large to decode"); + if (scan == SCAN_header) return 1; + } else { + // if paletted, then pal_n is our final components, and + // img_n is # components to decompress/filter. + s->img_n = 1; + if ((1 << 30) / s->img_x / 4 < s->img_y) return e("too large","Corrupt PNG"); + // if SCAN_header, have to scan to see if we have a tRNS + } + break; + } + + case PNG_TYPE('P','L','T','E'): { + if (first) return e("first not IHDR", "Corrupt PNG"); + if (c.length > 256*3) return e("invalid PLTE","Corrupt PNG"); + pal_len = c.length / 3; + if (pal_len * 3 != c.length) return e("invalid PLTE","Corrupt PNG"); + for (i=0; i < pal_len; ++i) { + palette[i*4+0] = get8u(s); + palette[i*4+1] = get8u(s); + palette[i*4+2] = get8u(s); + palette[i*4+3] = 255; + } + break; + } + + case PNG_TYPE('t','R','N','S'): { + if (first) return e("first not IHDR", "Corrupt PNG"); + if (z->idata) return e("tRNS after IDAT","Corrupt PNG"); + if (pal_img_n) { + if (scan == SCAN_header) { s->img_n = 4; return 1; } + if (pal_len == 0) return e("tRNS before PLTE","Corrupt PNG"); + if (c.length > pal_len) return e("bad tRNS len","Corrupt PNG"); + pal_img_n = 4; + for (i=0; i < c.length; ++i) + palette[i*4+3] = get8u(s); + } else { + if (!(s->img_n & 1)) return e("tRNS with alpha","Corrupt PNG"); + if (c.length != (uint32) s->img_n*2) return e("bad tRNS len","Corrupt PNG"); + has_trans = 1; + for (k=0; k < s->img_n; ++k) + tc[k] = (uint8) get16(s); // non 8-bit images will be larger + } + break; + } + + case PNG_TYPE('I','D','A','T'): { + if (first) return e("first not IHDR", "Corrupt PNG"); + if (pal_img_n && !pal_len) return e("no PLTE","Corrupt PNG"); + if (scan == SCAN_header) { s->img_n = pal_img_n; return 1; } + if (ioff + c.length > idata_limit) { + uint8 *p; + if (idata_limit == 0) idata_limit = c.length > 4096 ? c.length : 4096; + while (ioff + c.length > idata_limit) + idata_limit *= 2; + p = (uint8 *) REALLOC(z->idata, idata_limit); if (p == NULL) return e("outofmem", "Out of memory"); + z->idata = p; + } + if (!getn(s, z->idata+ioff,c.length)) return e("outofdata","Corrupt PNG"); + ioff += c.length; + break; + } + + case PNG_TYPE('I','E','N','D'): { + uint32 raw_len; + if (first) return e("first not IHDR", "Corrupt PNG"); + if (scan != SCAN_load) return 1; + if (z->idata == NULL) return e("no IDAT","Corrupt PNG"); + z->expanded = (uint8 *) stbi_zlib_decode_malloc_guesssize_headerflag((char *) z->idata, ioff, 16384, (int *) &raw_len, !iphone); + if (z->expanded == NULL) return 0; // zlib should set error + FREE(z->idata); z->idata = NULL; + if ((req_comp == s->img_n+1 && req_comp != 3 && !pal_img_n) || has_trans) + s->img_out_n = s->img_n+1; + else + s->img_out_n = s->img_n; + if (!create_png_image(z, z->expanded, raw_len, s->img_out_n, interlace)) return 0; + if (has_trans) + if (!compute_transparency(z, tc, s->img_out_n)) return 0; + if (iphone && s->img_out_n > 2) + stbi_de_iphone(z); + if (pal_img_n) { + // pal_img_n == 3 or 4 + s->img_n = pal_img_n; // record the actual colors we had + s->img_out_n = pal_img_n; + if (req_comp >= 3) s->img_out_n = req_comp; + if (!expand_palette(z, palette, pal_len, s->img_out_n)) + return 0; + } + FREE(z->expanded); z->expanded = NULL; + return 1; + } + + default: + // if critical, fail + if (first) return e("first not IHDR", "Corrupt PNG"); + if ((c.type & (1 << 29)) == 0) { + #ifndef STBI_NO_FAILURE_STRINGS + // not threadsafe + static char invalid_chunk[] = "XXXX chunk not known"; + invalid_chunk[0] = (uint8) (c.type >> 24); + invalid_chunk[1] = (uint8) (c.type >> 16); + invalid_chunk[2] = (uint8) (c.type >> 8); + invalid_chunk[3] = (uint8) (c.type >> 0); + #endif + return e(invalid_chunk, "PNG not supported: unknown chunk type"); + } + skip(s, c.length); + break; + } + // end of chunk, read and skip CRC + get32(s); + } +} + +static unsigned char *do_png(png *p, int *x, int *y, int *n, int req_comp) +{ + unsigned char *result=NULL; + p->expanded = NULL; + p->idata = NULL; + p->out = NULL; + if (req_comp < 0 || req_comp > 4) return epuc("bad req_comp", "Internal error"); + if (parse_png_file(p, SCAN_load, req_comp)) { + result = p->out; + p->out = NULL; + if (req_comp && req_comp != p->s.img_out_n) { + result = convert_format(result, p->s.img_out_n, req_comp, p->s.img_x, p->s.img_y); + p->s.img_out_n = req_comp; + if (result == NULL) return result; + } + *x = p->s.img_x; + *y = p->s.img_y; + if (n) *n = p->s.img_n; + } + FREE(p->expanded); p->expanded = NULL; + FREE(p->idata); p->idata = NULL; + + return result; +} + +#ifndef STBI_NO_STDIO +unsigned char *stbi_png_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + png p; + start_file(&p.s, f); + return do_png(&p, x,y,comp,req_comp); +} + +unsigned char *stbi_png_load(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + unsigned char *data; + FILE *f = fopen(filename, "rb"); + if (!f) return NULL; + data = stbi_png_load_from_file(f,x,y,comp,req_comp); + fclose(f); + return data; +} +#endif + +unsigned char *stbi_png_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + png p; + start_mem(&p.s, buffer,len); + return do_png(&p, x,y,comp,req_comp); +} + +#ifndef STBI_NO_STDIO +int stbi_png_test_file(FILE *f) +{ + png p; + int n,r; + n = ftell(f); + start_file(&p.s, f); + r = parse_png_file(&p, SCAN_type,STBI_default); + fseek(f,n,SEEK_SET); + return r; +} +#endif + +int stbi_png_test_memory(stbi_uc const *buffer, int len) +{ + png p; + start_mem(&p.s, buffer, len); + return parse_png_file(&p, SCAN_type,STBI_default); +} + +static int stbi_png_info_raw(png *p, int *x, int *y, int *comp) +{ + if (!parse_png_file(p, SCAN_header, 0)) + return 0; + if (x) *x = p->s.img_x; + if (y) *y = p->s.img_y; + if (comp) *comp = p->s.img_n; + return 1; +} + +#ifndef STBI_NO_STDIO +int stbi_png_info (char const *filename, int *x, int *y, int *comp) +{ + int res; + FILE *f = fopen(filename, "rb"); + if (!f) return 0; + res = stbi_png_info_from_file(f, x, y, comp); + fclose(f); + return res; +} + +int stbi_png_info_from_file(FILE *f, int *x, int *y, int *comp) +{ + png p; + int res; + long n = ftell(f); + start_file(&p.s, f); + res = stbi_png_info_raw(&p, x, y, comp); + fseek(f, n, SEEK_SET); + return res; +} +#endif // !STBI_NO_STDIO + +int stbi_png_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) +{ + png p; + start_mem(&p.s, buffer, len); + return stbi_png_info_raw(&p, x, y, comp); +} + +// Microsoft/Windows BMP image + +static int bmp_test(stbi *s) +{ + int sz; + if (get8(s) != 'B') return 0; + if (get8(s) != 'M') return 0; + get32le(s); // discard filesize + get16le(s); // discard reserved + get16le(s); // discard reserved + get32le(s); // discard data offset + sz = get32le(s); + if (sz == 12 || sz == 40 || sz == 56 || sz == 108) return 1; + return 0; +} + +#ifndef STBI_NO_STDIO +int stbi_bmp_test_file (FILE *f) +{ + stbi s; + int r,n = ftell(f); + start_file(&s,f); + r = bmp_test(&s); + fseek(f,n,SEEK_SET); + return r; +} +#endif + +int stbi_bmp_test_memory (stbi_uc const *buffer, int len) +{ + stbi s; + start_mem(&s, buffer, len); + return bmp_test(&s); +} + +// returns 0..31 for the highest set bit +static int high_bit(unsigned int z) +{ + int n=0; + if (z == 0) return -1; + if (z >= 0x10000) n += 16, z >>= 16; + if (z >= 0x00100) n += 8, z >>= 8; + if (z >= 0x00010) n += 4, z >>= 4; + if (z >= 0x00004) n += 2, z >>= 2; + if (z >= 0x00002) n += 1, z >>= 1; + return n; +} + +static int bitcount(unsigned int a) +{ + a = (a & 0x55555555) + ((a >> 1) & 0x55555555); // max 2 + a = (a & 0x33333333) + ((a >> 2) & 0x33333333); // max 4 + a = (a + (a >> 4)) & 0x0f0f0f0f; // max 8 per 4, now 8 bits + a = (a + (a >> 8)); // max 16 per 8 bits + a = (a + (a >> 16)); // max 32 per 8 bits + return a & 0xff; +} + +static int shiftsigned(int v, int shift, int bits) +{ + int result; + int z=0; + + if (shift < 0) v <<= -shift; + else v >>= shift; + result = v; + + z = bits; + while (z < 8) { + result += v >> z; + z += bits; + } + return result; +} + +static stbi_uc *bmp_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + uint8 *out; + unsigned int mr=0,mg=0,mb=0,ma=0; + stbi_uc pal[256][4]; + int psize=0,i,j,compress=0,width; + int bpp, flip_vertically, pad, target, offset, hsz; + if (get8(s) != 'B' || get8(s) != 'M') return epuc("not BMP", "Corrupt BMP"); + get32le(s); // discard filesize + get16le(s); // discard reserved + get16le(s); // discard reserved + offset = get32le(s); + hsz = get32le(s); + if (hsz != 12 && hsz != 40 && hsz != 56 && hsz != 108) return epuc("unknown BMP", "BMP type not supported: unknown"); + if (hsz == 12) { + s->img_x = get16le(s); + s->img_y = get16le(s); + } else { + s->img_x = get32le(s); + s->img_y = get32le(s); + } + if (get16le(s) != 1) return epuc("bad BMP", "bad BMP"); + bpp = get16le(s); + if (bpp == 1) return epuc("monochrome", "BMP type not supported: 1-bit"); + flip_vertically = ((int) s->img_y) > 0; + s->img_y = abs((int) s->img_y); + if (hsz == 12) { + if (bpp < 24) + psize = (offset - 14 - 24) / 3; + } else { + compress = get32le(s); + if (compress == 1 || compress == 2) return epuc("BMP RLE", "BMP type not supported: RLE"); + get32le(s); // discard sizeof + get32le(s); // discard hres + get32le(s); // discard vres + get32le(s); // discard colorsused + get32le(s); // discard max important + if (hsz == 40 || hsz == 56) { + if (hsz == 56) { + get32le(s); + get32le(s); + get32le(s); + get32le(s); + } + if (bpp == 16 || bpp == 32) { + mr = mg = mb = 0; + if (compress == 0) { + if (bpp == 32) { + mr = 0xffu << 16; + mg = 0xffu << 8; + mb = 0xffu << 0; + ma = 0xffu << 24; + } else { + mr = 31u << 10; + mg = 31u << 5; + mb = 31u << 0; + } + } else if (compress == 3) { + mr = get32le(s); + mg = get32le(s); + mb = get32le(s); + // not documented, but generated by photoshop and handled by mspaint + if (mr == mg && mg == mb) { + // ?!?!? + return epuc("bad BMP", "bad BMP"); + } + } else + return epuc("bad BMP", "bad BMP"); + } + } else { + assert(hsz == 108); + mr = get32le(s); + mg = get32le(s); + mb = get32le(s); + ma = get32le(s); + get32le(s); // discard color space + for (i=0; i < 12; ++i) + get32le(s); // discard color space parameters + } + if (bpp < 16) + psize = (offset - 14 - hsz) >> 2; + } + s->img_n = ma ? 4 : 3; + if (req_comp && req_comp >= 3) // we can directly decode 3 or 4 + target = req_comp; + else + target = s->img_n; // if they want monochrome, we'll post-convert + out = (stbi_uc *) MALLOC(target * s->img_x * s->img_y); + if (!out) return epuc("outofmem", "Out of memory"); + if (bpp < 16) { + int z=0; + if (psize == 0 || psize > 256) { FREE(out); return epuc("invalid", "Corrupt BMP"); } + for (i=0; i < psize; ++i) { + pal[i][2] = get8u(s); + pal[i][1] = get8u(s); + pal[i][0] = get8u(s); + if (hsz != 12) get8(s); + pal[i][3] = 255; + } + skip(s, offset - 14 - hsz - psize * (hsz == 12 ? 3 : 4)); + if (bpp == 4) width = (s->img_x + 1) >> 1; + else if (bpp == 8) width = s->img_x; + else { FREE(out); return epuc("bad bpp", "Corrupt BMP"); } + pad = (-width)&3; + for (j=0; j < (int) s->img_y; ++j) { + for (i=0; i < (int) s->img_x; i += 2) { + int v=get8(s),v2=0; + if (bpp == 4) { + v2 = v & 15; + v >>= 4; + } + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + if (i+1 == (int) s->img_x) break; + v = (bpp == 8) ? get8(s) : v2; + out[z++] = pal[v][0]; + out[z++] = pal[v][1]; + out[z++] = pal[v][2]; + if (target == 4) out[z++] = 255; + } + skip(s, pad); + } + } else { + int rshift=0,gshift=0,bshift=0,ashift=0,rcount=0,gcount=0,bcount=0,acount=0; + int z = 0; + int easy=0; + skip(s, offset - 14 - hsz); + if (bpp == 24) width = 3 * s->img_x; + else if (bpp == 16) width = 2*s->img_x; + else /* bpp = 32 and pad = 0 */ width=0; + pad = (-width) & 3; + if (bpp == 24) { + easy = 1; + } else if (bpp == 32) { + if (mb == 0xff && mg == 0xff00 && mr == 0xff000000 && ma == 0xff000000) + easy = 2; + } + if (!easy) { + if (!mr || !mg || !mb) return epuc("bad masks", "Corrupt BMP"); + // right shift amt to put high bit in position #7 + rshift = high_bit(mr)-7; rcount = bitcount(mr); + gshift = high_bit(mg)-7; gcount = bitcount(mr); + bshift = high_bit(mb)-7; bcount = bitcount(mr); + ashift = high_bit(ma)-7; acount = bitcount(mr); + } + for (j=0; j < (int) s->img_y; ++j) { + if (easy) { + for (i=0; i < (int) s->img_x; ++i) { + int a; + out[z+2] = get8u(s); + out[z+1] = get8u(s); + out[z+0] = get8u(s); + z += 3; + a = (easy == 2 ? get8(s) : 255); + if (target == 4) out[z++] = (uint8) a; + } + } else { + for (i=0; i < (int) s->img_x; ++i) { + uint32 v = (bpp == 16 ? get16le(s) : get32le(s)); + int a; + out[z++] = (uint8) shiftsigned(v & mr, rshift, rcount); + out[z++] = (uint8) shiftsigned(v & mg, gshift, gcount); + out[z++] = (uint8) shiftsigned(v & mb, bshift, bcount); + a = (ma ? shiftsigned(v & ma, ashift, acount) : 255); + if (target == 4) out[z++] = (uint8) a; + } + } + skip(s, pad); + } + } + if (flip_vertically) { + stbi_uc t; + for (j=0; j < (int) s->img_y>>1; ++j) { + stbi_uc *p1 = out + j *s->img_x*target; + stbi_uc *p2 = out + (s->img_y-1-j)*s->img_x*target; + for (i=0; i < (int) s->img_x*target; ++i) { + t = p1[i], p1[i] = p2[i], p2[i] = t; + } + } + } + + if (req_comp && req_comp != target) { + out = convert_format(out, target, req_comp, s->img_x, s->img_y); + if (out == NULL) return out; // convert_format frees input on failure + } + + *x = s->img_x; + *y = s->img_y; + if (comp) *comp = target; + return out; +} + +#ifndef STBI_NO_STDIO +stbi_uc *stbi_bmp_load (char const *filename, int *x, int *y, int *comp, int req_comp) +{ + stbi_uc *data; + FILE *f = fopen(filename, "rb"); + if (!f) return NULL; + data = stbi_bmp_load_from_file(f, x,y,comp,req_comp); + fclose(f); + return data; +} + +stbi_uc *stbi_bmp_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_file(&s, f); + return bmp_load(&s, x,y,comp,req_comp); +} +#endif + +stbi_uc *stbi_bmp_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_mem(&s, buffer, len); + return bmp_load(&s, x,y,comp,req_comp); +} + +// Targa Truevision - TGA +// by Jonathan Dummer + +static int tga_info(stbi *s, int *x, int *y, int *comp) +{ + int tga_w, tga_h, tga_comp; + int sz; + get8u(s); // discard Offset + sz = get8u(s); // color type + if( sz > 1 ) return 0; // only RGB or indexed allowed + sz = get8u(s); // image type + // only RGB or grey allowed, +/- RLE + if ((sz != 1) && (sz != 2) && (sz != 3) && (sz != 9) && (sz != 10) && (sz != 11)) return 0; + get16le(s); // discard palette start + get16le(s); // discard palette length + get8(s); // discard bits per palette color entry + get16le(s); // discard x origin + get16le(s); // discard y origin + tga_w = get16le(s); + if( tga_w < 1 ) return 0; // test width + tga_h = get16le(s); + if( tga_h < 1 ) return 0; // test height + sz = get8(s); // bits per pixel + // only RGB or RGBA or grey allowed + if ((sz != 8) && (sz != 16) && (sz != 24) && (sz != 32)) return 0; + tga_comp = sz; + if (x) *x = tga_w; + if (y) *y = tga_h; + if (comp) *comp = tga_comp / 8; + return 1; // seems to have passed everything +} + +#ifndef STBI_NO_STDIO +int stbi_tga_info_from_file(FILE *f, int *x, int *y, int *comp) +{ + stbi s; + int r; + long n = ftell(f); + start_file(&s, f); + r = tga_info(&s, x, y, comp); + fseek(f, n, SEEK_SET); + return r; +} +#endif + +int stbi_tga_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) +{ + stbi s; + start_mem(&s, buffer, len); + return tga_info(&s, x, y, comp); +} + +static int tga_test(stbi *s) +{ + int sz; + get8u(s); // discard Offset + sz = get8u(s); // color type + if ( sz > 1 ) return 0; // only RGB or indexed allowed + sz = get8u(s); // image type + if ( (sz != 1) && (sz != 2) && (sz != 3) && (sz != 9) && (sz != 10) && (sz != 11) ) return 0; // only RGB or grey allowed, +/- RLE + get16(s); // discard palette start + get16(s); // discard palette length + get8(s); // discard bits per palette color entry + get16(s); // discard x origin + get16(s); // discard y origin + if ( get16(s) < 1 ) return 0; // test width + if ( get16(s) < 1 ) return 0; // test height + sz = get8(s); // bits per pixel + if ( (sz != 8) && (sz != 16) && (sz != 24) && (sz != 32) ) return 0; // only RGB or RGBA or grey allowed + return 1; // seems to have passed everything +} + +#ifndef STBI_NO_STDIO +int stbi_tga_test_file (FILE *f) +{ + stbi s; + int r,n = ftell(f); + start_file(&s, f); + r = tga_test(&s); + fseek(f,n,SEEK_SET); + return r; +} +#endif + +int stbi_tga_test_memory (stbi_uc const *buffer, int len) +{ + stbi s; + start_mem(&s, buffer, len); + return tga_test(&s); +} + +static stbi_uc *tga_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + // read in the TGA header stuff + int tga_offset = get8u(s); + int tga_indexed = get8u(s); + int tga_image_type = get8u(s); + int tga_is_RLE = 0; + int tga_palette_start = get16le(s); + int tga_palette_len = get16le(s); + int tga_palette_bits = get8u(s); + int tga_x_origin = get16le(s); + int tga_y_origin = get16le(s); + int tga_width = get16le(s); + int tga_height = get16le(s); + int tga_bits_per_pixel = get8u(s); + int tga_inverted = get8u(s); + // image data + unsigned char *tga_data; + unsigned char *tga_palette = NULL; + int i, j; + unsigned char raw_data[4]; + unsigned char trans_data[4]; + int RLE_count = 0; + int RLE_repeating = 0; + int read_next_pixel = 1; + + // do a tiny bit of precessing + if ( tga_image_type >= 8 ) + { + tga_image_type -= 8; + tga_is_RLE = 1; + } + /* int tga_alpha_bits = tga_inverted & 15; */ + tga_inverted = 1 - ((tga_inverted >> 5) & 1); + + // error check + if ( //(tga_indexed) || + (tga_width < 1) || (tga_height < 1) || + (tga_image_type < 1) || (tga_image_type > 3) || + ((tga_bits_per_pixel != 8) && (tga_bits_per_pixel != 16) && + (tga_bits_per_pixel != 24) && (tga_bits_per_pixel != 32)) + ) + { + return NULL; + } + + // If I'm paletted, then I'll use the number of bits from the palette + if ( tga_indexed ) + { + tga_bits_per_pixel = tga_palette_bits; + } + + // tga info + *x = tga_width; + *y = tga_height; + if ( (req_comp < 1) || (req_comp > 4) ) + { + // just use whatever the file was + req_comp = tga_bits_per_pixel / 8; + *comp = req_comp; + } else + { + // force a new number of components + *comp = tga_bits_per_pixel/8; + } + tga_data = (unsigned char*)MALLOC( tga_width * tga_height * req_comp ); + + // skip to the data's starting position (offset usually = 0) + skip(s, tga_offset ); + // do I need to load a palette? + if ( tga_indexed ) + { + // any data to skip? (offset usually = 0) + skip(s, tga_palette_start ); + // load the palette + tga_palette = (unsigned char*)MALLOC( tga_palette_len * tga_palette_bits / 8 ); + if (!getn(s, tga_palette, tga_palette_len * tga_palette_bits / 8 )) + return NULL; + } + // load the data + trans_data[0] = trans_data[1] = trans_data[2] = trans_data[3] = 0; + for (i=0; i < tga_width * tga_height; ++i) + { + // if I'm in RLE mode, do I need to get a RLE chunk? + if ( tga_is_RLE ) + { + if ( RLE_count == 0 ) + { + // yep, get the next byte as a RLE command + int RLE_cmd = get8u(s); + RLE_count = 1 + (RLE_cmd & 127); + RLE_repeating = RLE_cmd >> 7; + read_next_pixel = 1; + } else if ( !RLE_repeating ) + { + read_next_pixel = 1; + } + } else + { + read_next_pixel = 1; + } + // OK, if I need to read a pixel, do it now + if ( read_next_pixel ) + { + // load however much data we did have + if ( tga_indexed ) + { + // read in 1 byte, then perform the lookup + int pal_idx = get8u(s); + if ( pal_idx >= tga_palette_len ) + { + // invalid index + pal_idx = 0; + } + pal_idx *= tga_bits_per_pixel / 8; + for (j = 0; j*8 < tga_bits_per_pixel; ++j) + { + raw_data[j] = tga_palette[pal_idx+j]; + } + } else + { + // read in the data raw + for (j = 0; j*8 < tga_bits_per_pixel; ++j) + { + raw_data[j] = get8u(s); + } + } + // convert raw to the intermediate format + switch (tga_bits_per_pixel) + { + case 8: + // Luminous => RGBA + trans_data[0] = raw_data[0]; + trans_data[1] = raw_data[0]; + trans_data[2] = raw_data[0]; + trans_data[3] = 255; + break; + case 16: + // Luminous,Alpha => RGBA + trans_data[0] = raw_data[0]; + trans_data[1] = raw_data[0]; + trans_data[2] = raw_data[0]; + trans_data[3] = raw_data[1]; + break; + case 24: + // BGR => RGBA + trans_data[0] = raw_data[2]; + trans_data[1] = raw_data[1]; + trans_data[2] = raw_data[0]; + trans_data[3] = 255; + break; + case 32: + // BGRA => RGBA + trans_data[0] = raw_data[2]; + trans_data[1] = raw_data[1]; + trans_data[2] = raw_data[0]; + trans_data[3] = raw_data[3]; + break; + } + // clear the reading flag for the next pixel + read_next_pixel = 0; + } // end of reading a pixel + // convert to final format + switch (req_comp) + { + case 1: + // RGBA => Luminance + tga_data[i*req_comp+0] = compute_y(trans_data[0],trans_data[1],trans_data[2]); + break; + case 2: + // RGBA => Luminance,Alpha + tga_data[i*req_comp+0] = compute_y(trans_data[0],trans_data[1],trans_data[2]); + tga_data[i*req_comp+1] = trans_data[3]; + break; + case 3: + // RGBA => RGB + tga_data[i*req_comp+0] = trans_data[0]; + tga_data[i*req_comp+1] = trans_data[1]; + tga_data[i*req_comp+2] = trans_data[2]; + break; + case 4: + // RGBA => RGBA + tga_data[i*req_comp+0] = trans_data[0]; + tga_data[i*req_comp+1] = trans_data[1]; + tga_data[i*req_comp+2] = trans_data[2]; + tga_data[i*req_comp+3] = trans_data[3]; + break; + } + // in case we're in RLE mode, keep counting down + --RLE_count; + } + // do I need to invert the image? + if ( tga_inverted ) + { + for (j = 0; j*2 < tga_height; ++j) + { + int index1 = j * tga_width * req_comp; + int index2 = (tga_height - 1 - j) * tga_width * req_comp; + for (i = tga_width * req_comp; i > 0; --i) + { + unsigned char temp = tga_data[index1]; + tga_data[index1] = tga_data[index2]; + tga_data[index2] = temp; + ++index1; + ++index2; + } + } + } + // clear my palette, if I had one + if ( tga_palette != NULL ) + { + FREE( tga_palette ); + } + // the things I do to get rid of an error message, and yet keep + // Microsoft's C compilers happy... [8^( + tga_palette_start = tga_palette_len = tga_palette_bits = + tga_x_origin = tga_y_origin = 0; + // OK, done + return tga_data; +} + +#ifndef STBI_NO_STDIO +stbi_uc *stbi_tga_load (char const *filename, int *x, int *y, int *comp, int req_comp) +{ + stbi_uc *data; + FILE *f = fopen(filename, "rb"); + if (!f) return NULL; + data = stbi_tga_load_from_file(f, x,y,comp,req_comp); + fclose(f); + return data; +} + +stbi_uc *stbi_tga_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_file(&s, f); + return tga_load(&s, x,y,comp,req_comp); +} +#endif + +stbi_uc *stbi_tga_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_mem(&s, buffer, len); + return tga_load(&s, x,y,comp,req_comp); +} + + +// ************************************************************************************************* +// Photoshop PSD loader -- PD by Thatcher Ulrich, integration by Nicolas Schulz, tweaked by STB + +static int psd_test(stbi *s) +{ + if (get32(s) != 0x38425053) return 0; // "8BPS" + else return 1; +} + +#ifndef STBI_NO_STDIO +int stbi_psd_test_file(FILE *f) +{ + stbi s; + int r,n = ftell(f); + start_file(&s, f); + r = psd_test(&s); + fseek(f,n,SEEK_SET); + return r; +} +#endif + +int stbi_psd_test_memory(stbi_uc const *buffer, int len) +{ + stbi s; + start_mem(&s, buffer, len); + return psd_test(&s); +} + +static stbi_uc *psd_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + int pixelCount; + int channelCount, compression; + int channel, i, count, len; + int w,h; + uint8 *out; + + // Check identifier + if (get32(s) != 0x38425053) // "8BPS" + return epuc("not PSD", "Corrupt PSD image"); + + // Check file type version. + if (get16(s) != 1) + return epuc("wrong version", "Unsupported version of PSD image"); + + // Skip 6 reserved bytes. + skip(s, 6 ); + + // Read the number of channels (R, G, B, A, etc). + channelCount = get16(s); + if (channelCount < 0 || channelCount > 16) + return epuc("wrong channel count", "Unsupported number of channels in PSD image"); + + // Read the rows and columns of the image. + h = get32(s); + w = get32(s); + + // Make sure the depth is 8 bits. + if (get16(s) != 8) + return epuc("unsupported bit depth", "PSD bit depth is not 8 bit"); + + // Make sure the color mode is RGB. + // Valid options are: + // 0: Bitmap + // 1: Grayscale + // 2: Indexed color + // 3: RGB color + // 4: CMYK color + // 7: Multichannel + // 8: Duotone + // 9: Lab color + if (get16(s) != 3) + return epuc("wrong color format", "PSD is not in RGB color format"); + + // Skip the Mode Data. (It's the palette for indexed color; other info for other modes.) + skip(s,get32(s) ); + + // Skip the image resources. (resolution, pen tool paths, etc) + skip(s, get32(s) ); + + // Skip the reserved data. + skip(s, get32(s) ); + + // Find out if the data is compressed. + // Known values: + // 0: no compression + // 1: RLE compressed + compression = get16(s); + if (compression > 1) + return epuc("bad compression", "PSD has an unknown compression format"); + + // Create the destination image. + out = (stbi_uc *) MALLOC(4 * w*h); + if (!out) return epuc("outofmem", "Out of memory"); + pixelCount = w*h; + + // Initialize the data to zero. + //memset( out, 0, pixelCount * 4 ); + + // Finally, the image data. + if (compression) { + // RLE as used by .PSD and .TIFF + // Loop until you get the number of unpacked bytes you are expecting: + // Read the next source byte into n. + // If n is between 0 and 127 inclusive, copy the next n+1 bytes literally. + // Else if n is between -127 and -1 inclusive, copy the next byte -n+1 times. + // Else if n is 128, noop. + // Endloop + + // The RLE-compressed data is preceeded by a 2-byte data count for each row in the data, + // which we're going to just skip. + skip(s, h * channelCount * 2 ); + + // Read the RLE data by channel. + for (channel = 0; channel < 4; channel++) { + uint8 *p; + + p = out+channel; + if (channel >= channelCount) { + // Fill this channel with default data. + for (i = 0; i < pixelCount; i++) *p = (channel == 3 ? 255 : 0), p += 4; + } else { + // Read the RLE data. + count = 0; + while (count < pixelCount) { + len = get8(s); + if (len == 128) { + // No-op. + } else if (len < 128) { + // Copy next len+1 bytes literally. + len++; + count += len; + while (len) { + *p = get8u(s); + p += 4; + len--; + } + } else if (len > 128) { + uint8 val; + // Next -len+1 bytes in the dest are replicated from next source byte. + // (Interpret len as a negative 8-bit int.) + len ^= 0x0FF; + len += 2; + val = get8u(s); + count += len; + while (len) { + *p = val; + p += 4; + len--; + } + } + } + } + } + + } else { + // We're at the raw image data. It's each channel in order (Red, Green, Blue, Alpha, ...) + // where each channel consists of an 8-bit value for each pixel in the image. + + // Read the data by channel. + for (channel = 0; channel < 4; channel++) { + uint8 *p; + + p = out + channel; + if (channel > channelCount) { + // Fill this channel with default data. + for (i = 0; i < pixelCount; i++) *p = channel == 3 ? 255 : 0, p += 4; + } else { + // Read the data. + for (i = 0; i < pixelCount; i++) + *p = get8u(s), p += 4; + } + } + } + + if (req_comp && req_comp != 4) { + out = convert_format(out, 4, req_comp, w, h); + if (out == NULL) return out; // convert_format frees input on failure + } + + if (comp) *comp = channelCount; + *y = h; + *x = w; + + return out; +} + +#ifndef STBI_NO_STDIO +stbi_uc *stbi_psd_load(char const *filename, int *x, int *y, int *comp, int req_comp) +{ + stbi_uc *data; + FILE *f = fopen(filename, "rb"); + if (!f) return NULL; + data = stbi_psd_load_from_file(f, x,y,comp,req_comp); + fclose(f); + return data; +} + +stbi_uc *stbi_psd_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_file(&s, f); + return psd_load(&s, x,y,comp,req_comp); +} +#endif + +stbi_uc *stbi_psd_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_mem(&s, buffer, len); + return psd_load(&s, x,y,comp,req_comp); +} + +// ************************************************************************************************* +// Softimage PIC loader +// by Tom Seddon +// +// See http://softimage.wiki.softimage.com/index.php/INFO:_PIC_file_format +// See http://ozviz.wasp.uwa.edu.au/~pbourke/dataformats/softimagepic/ + +static int pic_is4(stbi *s,const char *str) +{ + int i; + for (i=0; i<4; ++i) + if (get8(s) != (stbi_uc)str[i]) + return 0; + + return 1; +} + +static int pic_test(stbi *s) +{ + int i; + + if (!pic_is4(s,"\x53\x80\xF6\x34")) + return 0; + + for(i=0;i<84;++i) + get8(s); + + if (!pic_is4(s,"PICT")) + return 0; + + return 1; +} + +typedef struct +{ + stbi_uc size,type,channel; +} pic_packet_t; + +static stbi_uc *pic_readval(stbi *s, int channel, stbi_uc *dest) +{ + int mask=0x80, i; + + for (i=0; i<4; ++i, mask>>=1) { + if (channel & mask) { + if (at_eof(s)) return epuc("bad file","PIC file too short"); + dest[i]=get8u(s); + } + } + + return dest; +} + +static void pic_copyval(int channel,stbi_uc *dest,const stbi_uc *src) +{ + int mask=0x80,i; + + for (i=0;i<4; ++i, mask>>=1) + if (channel&mask) + dest[i]=src[i]; +} + +static stbi_uc *pic_load2(stbi *s,int width,int height,int *comp, stbi_uc *result) +{ + int act_comp=0,num_packets=0,y,chained; + pic_packet_t packets[10]; + + // this will (should...) cater for even some bizarre stuff like having data + // for the same channel in multiple packets. + do { + pic_packet_t *packet; + + if (num_packets==sizeof(packets)/sizeof(packets[0])) + return epuc("bad format","too many packets"); + + packet = &packets[num_packets++]; + + chained = get8(s); + packet->size = get8u(s); + packet->type = get8u(s); + packet->channel = get8u(s); + + act_comp |= packet->channel; + + if (at_eof(s)) return epuc("bad file","file too short (reading packets)"); + if (packet->size != 8) return epuc("bad format","packet isn't 8bpp"); + } while (chained); + + *comp = (act_comp & 0x10 ? 4 : 3); // has alpha channel? + + for(y=0; ytype) { + default: + return epuc("bad format","packet has bad compression type"); + + case 0: {//uncompressed + int x; + + for(x=0;xchannel,dest)) + return 0; + break; + } + + case 1://Pure RLE + { + int left=width, i; + + while (left>0) { + stbi_uc count,value[4]; + + count=get8u(s); + if (at_eof(s)) return epuc("bad file","file too short (pure read count)"); + + if (count > left) + count = (uint8) left; + + if (!pic_readval(s,packet->channel,value)) return 0; + + for(i=0; ichannel,dest,value); + left -= count; + } + } + break; + + case 2: {//Mixed RLE + int left=width; + while (left>0) { + int count = get8(s), i; + if (at_eof(s)) return epuc("bad file","file too short (mixed read count)"); + + if (count >= 128) { // Repeated + stbi_uc value[4]; + + if (count==128) + count = get16(s); + else + count -= 127; + if (count > left) + return epuc("bad file","scanline overrun"); + + if (!pic_readval(s,packet->channel,value)) + return 0; + + for(i=0;ichannel,dest,value); + } else { // Raw + ++count; + if (count>left) return epuc("bad file","scanline overrun"); + + for(i=0;ichannel,dest)) + return 0; + } + left-=count; + } + break; + } + } + } + } + + return result; +} + +static stbi_uc *pic_load(stbi *s,int *px,int *py,int *comp,int req_comp) +{ + stbi_uc *result; + int i, x,y; + + for (i=0; i<92; ++i) + get8(s); + + x = get16(s); + y = get16(s); + if (at_eof(s)) return epuc("bad file","file too short (pic header)"); + if ((1 << 28) / x < y) return epuc("too large", "Image too large to decode"); + + get32(s); //skip `ratio' + get16(s); //skip `fields' + get16(s); //skip `pad' + + // intermediate buffer is RGBA + result = (stbi_uc *) MALLOC(x*y*4); + memset(result, 0xff, x*y*4); + + if (!pic_load2(s,x,y,comp, result)) { + FREE(result); + result=0; + } + *px = x; + *py = y; + if (req_comp == 0) req_comp = *comp; + result=convert_format(result,4,req_comp,x,y); + + return result; +} + +int stbi_pic_test_memory(stbi_uc const *buffer, int len) +{ + stbi s; + start_mem(&s,buffer,len); + return pic_test(&s); +} + +stbi_uc *stbi_pic_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_mem(&s,buffer,len); + return pic_load(&s,x,y,comp,req_comp); +} + +#ifndef STBI_NO_STDIO +int stbi_pic_test_file(FILE *f) +{ + int result; + long l = ftell(f); + stbi s; + start_file(&s,f); + result = pic_test(&s); + fseek(f,l,SEEK_SET); + return result; +} + +stbi_uc *stbi_pic_load(char const *filename,int *x, int *y, int *comp, int req_comp) +{ + stbi_uc *result; + FILE *f=fopen(filename,"rb"); + if (!f) return 0; + result = stbi_pic_load_from_file(f,x,y,comp,req_comp); + fclose(f); + return result; +} + +stbi_uc *stbi_pic_load_from_file(FILE *f,int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_file(&s,f); + return pic_load(&s,x,y,comp,req_comp); +} +#endif + +// ************************************************************************************************* +// GIF loader -- public domain by Jean-Marc Lienher -- simplified/shrunk by stb +typedef struct stbi_gif_lzw_struct { + int16 prefix; + uint8 first; + uint8 suffix; +} stbi_gif_lzw; + +typedef struct stbi_gif_struct +{ + int w,h; + stbi_uc *out; // output buffer (always 4 components) + int flags, bgindex, ratio, transparent, eflags; + uint8 pal[256][4]; + uint8 lpal[256][4]; + stbi_gif_lzw codes[4096]; + uint8 *color_table; + int parse, step; + int lflags; + int start_x, start_y; + int max_x, max_y; + int cur_x, cur_y; + int line_size; +} stbi_gif; + +static int gif_test(stbi *s) +{ + int sz; + if (get8(s) != 'G' || get8(s) != 'I' || get8(s) != 'F' || get8(s) != '8') return 0; + sz = get8(s); + if (sz != '9' && sz != '7') return 0; + if (get8(s) != 'a') return 0; + return 1; +} + +#ifndef STBI_NO_STDIO +int stbi_gif_test_file (FILE *f) +{ + stbi s; + int r,n = ftell(f); + start_file(&s,f); + r = gif_test(&s); + fseek(f,n,SEEK_SET); + return r; +} +#endif + +int stbi_gif_test_memory (stbi_uc const *buffer, int len) +{ + stbi s; + start_mem(&s, buffer, len); + return gif_test(&s); +} + +static void stbi_gif_parse_colortable(stbi *s, uint8 pal[256][4], int num_entries, int transp) +{ + int i; + for (i=0; i < num_entries; ++i) { + pal[i][2] = get8u(s); + pal[i][1] = get8u(s); + pal[i][0] = get8u(s); + pal[i][3] = transp ? 0 : 255; + } +} + +static int stbi_gif_header(stbi *s, stbi_gif *g, int *comp, int is_info) +{ + uint8 ver; + if (get8(s) != 'G' || get8(s) != 'I' || get8(s) != 'F' || get8(s) != '8') + return e("not GIF", "Corrupt GIF"); + + ver = get8u(s); + if (ver != '7' && ver != '9') return e("not GIF", "Corrupt GIF"); + if (get8(s) != 'a') return e("not GIF", "Corrupt GIF"); + + failure_reason = ""; + g->w = get16le(s); + g->h = get16le(s); + g->flags = get8(s); + g->bgindex = get8(s); + g->ratio = get8(s); + g->transparent = -1; + + if (comp != 0) *comp = 4; // can't actually tell whether it's 3 or 4 until we parse the comments + + if (is_info) return 1; + + if (g->flags & 0x80) + stbi_gif_parse_colortable(s,g->pal, 2 << (g->flags & 7), -1); + + return 1; +} + +static int stbi_gif_info_raw(stbi *s, int *x, int *y, int *comp) +{ + stbi_gif g; + if (!stbi_gif_header(s, &g, comp, 1)) return 0; + if (x) *x = g.w; + if (y) *y = g.h; + return 1; +} + +static void stbi_out_gif_code(stbi_gif *g, uint16 code) +{ + uint8 *p, *c; + + // recurse to decode the prefixes, since the linked-list is backwards, + // and working backwards through an interleaved image would be nasty + if (g->codes[code].prefix >= 0) + stbi_out_gif_code(g, g->codes[code].prefix); + + if (g->cur_y >= g->max_y) return; + + p = &g->out[g->cur_x + g->cur_y]; + c = &g->color_table[g->codes[code].suffix * 4]; + + if (c[3] >= 128) { + p[0] = c[2]; + p[1] = c[1]; + p[2] = c[0]; + p[3] = c[3]; + } + g->cur_x += 4; + + if (g->cur_x >= g->max_x) { + g->cur_x = g->start_x; + g->cur_y += g->step; + + while (g->cur_y >= g->max_y && g->parse > 0) { + g->step = (1 << g->parse) * g->line_size; + g->cur_y = g->start_y + (g->step >> 1); + --g->parse; + } + } +} + +static uint8 *stbi_process_gif_raster(stbi *s, stbi_gif *g) +{ + uint8 lzw_cs; + int32 len, code; + uint32 first; + int32 codesize, codemask, avail, oldcode, bits, valid_bits, clear; + stbi_gif_lzw *p; + + lzw_cs = get8u(s); + clear = 1 << lzw_cs; + first = 1; + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + bits = 0; + valid_bits = 0; + for (code = 0; code < clear; code++) { + g->codes[code].prefix = -1; + g->codes[code].first = (uint8) code; + g->codes[code].suffix = (uint8) code; + } + + // support no starting clear code + avail = clear+2; + oldcode = -1; + + len = 0; + for(;;) { + if (valid_bits < codesize) { + if (len == 0) { + len = get8(s); // start new block + if (len == 0) + return g->out; + } + --len; + bits |= (int32) get8(s) << valid_bits; + valid_bits += 8; + } else { + code = bits & codemask; + bits >>= codesize; + valid_bits -= codesize; + // @OPTIMIZE: is there some way we can accelerate the non-clear path? + if (code == clear) { // clear code + codesize = lzw_cs + 1; + codemask = (1 << codesize) - 1; + avail = clear + 2; + oldcode = -1; + first = 0; + } else if (code == clear + 1) { // end of stream code + skip(s, len); + while ((len = get8(s)) > 0) + skip(s,len); + return g->out; + } else if (code <= avail) { + if (first) return epuc("no clear code", "Corrupt GIF"); + + if (oldcode >= 0) { + p = &g->codes[avail++]; + if (avail > 4096) return epuc("too many codes", "Corrupt GIF"); + p->prefix = (int16) oldcode; + p->first = g->codes[oldcode].first; + p->suffix = (code == avail) ? p->first : g->codes[code].first; + } else if (code == avail) + return epuc("illegal code in raster", "Corrupt GIF"); + + stbi_out_gif_code(g, (uint16) code); + + if ((avail & codemask) == 0 && avail <= 0x0FFF) { + codesize++; + codemask = (1 << codesize) - 1; + } + + oldcode = code; + } else { + return epuc("illegal code in raster", "Corrupt GIF"); + } + } + } +} + +static void stbi_fill_gif_background(stbi_gif *g) +{ + int i; + uint8 *c = g->pal[g->bgindex]; + // @OPTIMIZE: write a dword at a time + for (i = 0; i < g->w * g->h * 4; i += 4) { + uint8 *p = &g->out[i]; + p[0] = c[2]; + p[1] = c[1]; + p[2] = c[0]; + p[3] = c[3]; + } +} + +// this function is designed to support animated gifs, although stb_image doesn't support it +static uint8 *stbi_gif_load_next(stbi *s, stbi_gif *g, int *comp, int req_comp) +{ + int i; + uint8 *old_out = 0; + + if (g->out == 0) { + if (!stbi_gif_header(s, g, comp,0)) return 0; // failure_reason set by stbi_gif_header + g->out = (uint8 *) MALLOC(4 * g->w * g->h); + if (g->out == 0) return epuc("outofmem", "Out of memory"); + stbi_fill_gif_background(g); + } else { + // animated-gif-only path + if (((g->eflags & 0x1C) >> 2) == 3) { + old_out = g->out; + g->out = (uint8 *) MALLOC(4 * g->w * g->h); + if (g->out == 0) return epuc("outofmem", "Out of memory"); + memcpy(g->out, old_out, g->w*g->h*4); + } + } + + for (;;) { + switch (get8(s)) { + case 0x2C: /* Image Descriptor */ + { + int32 x, y, w, h; + uint8 *o; + + x = get16le(s); + y = get16le(s); + w = get16le(s); + h = get16le(s); + if (((x + w) > (g->w)) || ((y + h) > (g->h))) + return epuc("bad Image Descriptor", "Corrupt GIF"); + + g->line_size = g->w * 4; + g->start_x = x * 4; + g->start_y = y * g->line_size; + g->max_x = g->start_x + w * 4; + g->max_y = g->start_y + h * g->line_size; + g->cur_x = g->start_x; + g->cur_y = g->start_y; + + g->lflags = get8(s); + + if (g->lflags & 0x40) { + g->step = 8 * g->line_size; // first interlaced spacing + g->parse = 3; + } else { + g->step = g->line_size; + g->parse = 0; + } + + if (g->lflags & 0x80) { + stbi_gif_parse_colortable(s,g->lpal, 2 << (g->lflags & 7), g->eflags & 0x01 ? g->transparent : -1); + g->color_table = (uint8 *) g->lpal; + } else if (g->flags & 0x80) { + for (i=0; i < 256; ++i) // @OPTIMIZE: reset only the previous transparent + g->pal[i][3] = 255; + if (g->transparent >= 0 && (g->eflags & 0x01)) + g->pal[g->transparent][3] = 0; + g->color_table = (uint8 *) g->pal; + } else + return epuc("missing color table", "Corrupt GIF"); + + o = stbi_process_gif_raster(s, g); + if (o == NULL) return NULL; + + if (req_comp && req_comp != 4) + o = convert_format(o, 4, req_comp, g->w, g->h); + return o; + } + + case 0x21: // Comment Extension. + { + int len; + if (get8(s) == 0xF9) { // Graphic Control Extension. + len = get8(s); + if (len == 4) { + g->eflags = get8(s); + get16le(s); // delay + g->transparent = get8(s); + } else { + skip(s, len); + break; + } + } + while ((len = get8(s)) != 0) + skip(s, len); + break; + } + + case 0x3B: // gif stream termination code + return (uint8 *) 1; + + default: + return epuc("unknown code", "Corrupt GIF"); + } + } +} + +#ifndef STBI_NO_STDIO +stbi_uc *stbi_gif_load (char const *filename, int *x, int *y, int *comp, int req_comp) +{ + uint8 *data; + FILE *f = fopen(filename, "rb"); + if (!f) return NULL; + data = stbi_gif_load_from_file(f, x,y,comp,req_comp); + fclose(f); + return data; +} + +stbi_uc *stbi_gif_load_from_file (FILE *f, int *x, int *y, int *comp, int req_comp) +{ + uint8 *u = 0; + stbi s; + stbi_gif g={0}; + start_file(&s, f); + + u = stbi_gif_load_next(&s, &g, comp, req_comp); + if (u == (void *) 1) u = 0; // end of animated gif marker + if (u) { + *x = g.w; + *y = g.h; + } + + return u; +} +#endif + +stbi_uc *stbi_gif_load_from_memory (stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + uint8 *u = 0; + stbi s; + stbi_gif *pg; + + #ifdef STBI_SMALL_STACK + pg = (stbi_gif *) MALLOC(sizeof(*pg)); + if (pg == NULL) + return NULL; + #else + stbi_gif g; + pg = &g; + #endif + + memset(pg, 0, sizeof(*pg)); + start_mem(&s, buffer, len); + u = stbi_gif_load_next(&s, pg, comp, req_comp); + if (u == (void *) 1) u = 0; // end of animated gif marker + if (u) { + *x = pg->w; + *y = pg->h; + } + + #ifdef STBI_SMALL_STACK + FREE(pg); + #endif + + return u; +} + +#ifndef STBI_NO_STDIO +int stbi_gif_info (char const *filename, int *x, int *y, int *comp) +{ + int res; + FILE *f = fopen(filename, "rb"); + if (!f) return 0; + res = stbi_gif_info_from_file(f, x, y, comp); + fclose(f); + return res; +} + +int stbi_gif_info_from_file(FILE *f, int *x, int *y, int *comp) +{ + stbi s; + int res; + long n = ftell(f); + start_file(&s, f); + res = stbi_gif_info_raw(&s, x, y, comp); + fseek(f, n, SEEK_SET); + return res; +} +#endif // !STBI_NO_STDIO + +int stbi_gif_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) +{ + stbi s; + start_mem(&s, buffer, len); + return stbi_gif_info_raw(&s, x, y, comp); +} + + + + +// ************************************************************************************************* +// Radiance RGBE HDR loader +// originally by Nicolas Schulz +#ifndef STBI_NO_HDR +static int hdr_test(stbi *s) +{ + const char *signature = "#?RADIANCE\n"; + int i; + for (i=0; signature[i]; ++i) + if (get8(s) != signature[i]) + return 0; + return 1; +} + +int stbi_hdr_test_memory(stbi_uc const *buffer, int len) +{ + stbi s; + start_mem(&s, buffer, len); + return hdr_test(&s); +} + +#ifndef STBI_NO_STDIO +int stbi_hdr_test_file(FILE *f) +{ + stbi s; + int r,n = ftell(f); + start_file(&s, f); + r = hdr_test(&s); + fseek(f,n,SEEK_SET); + return r; +} +#endif + +#define HDR_BUFLEN 1024 +static char *hdr_gettoken(stbi *z, char *buffer) +{ + int len=0; + char c = '\0'; + + c = (char) get8(z); + + while (!at_eof(z) && c != '\n') { + buffer[len++] = c; + if (len == HDR_BUFLEN-1) { + // flush to end of line + while (!at_eof(z) && get8(z) != '\n') + ; + break; + } + c = (char) get8(z); + } + + buffer[len] = 0; + return buffer; +} + +static void hdr_convert(float *output, stbi_uc *input, int req_comp) +{ + if ( input[3] != 0 ) { + float f1; + // Exponent + f1 = (float) ldexp(1.0f, input[3] - (int)(128 + 8)); + if (req_comp <= 2) + output[0] = (input[0] + input[1] + input[2]) * f1 / 3; + else { + output[0] = input[0] * f1; + output[1] = input[1] * f1; + output[2] = input[2] * f1; + } + if (req_comp == 2) output[1] = 1; + if (req_comp == 4) output[3] = 1; + } else { + switch (req_comp) { + case 4: output[3] = 1; /* fallthrough */ + case 3: output[0] = output[1] = output[2] = 0; + break; + case 2: output[1] = 1; /* fallthrough */ + case 1: output[0] = 0; + break; + } + } +} + + +static float *hdr_load(stbi *s, int *x, int *y, int *comp, int req_comp) +{ + char buffer[HDR_BUFLEN]; + char *token; + int valid = 0; + int width, height; + stbi_uc *scanline; + float *hdr_data; + int len; + unsigned char count, value; + int i, j, k, c1,c2, z; + + + // Check identifier + if (strcmp(hdr_gettoken(s,buffer), "#?RADIANCE") != 0) + return epf("not HDR", "Corrupt HDR image"); + + // Parse header + for(;;) { + token = hdr_gettoken(s,buffer); + if (token[0] == 0) break; + if (strcmp(token, "FORMAT=32-bit_rle_rgbe") == 0) valid = 1; + } + + if (!valid) return epf("unsupported format", "Unsupported HDR format"); + + // Parse width and height + // can't use sscanf() if we're not using stdio! + token = hdr_gettoken(s,buffer); + if (strncmp(token, "-Y ", 3)) return epf("unsupported data layout", "Unsupported HDR format"); + token += 3; + height = strtol(token, &token, 10); + while (*token == ' ') ++token; + if (strncmp(token, "+X ", 3)) return epf("unsupported data layout", "Unsupported HDR format"); + token += 3; + width = strtol(token, NULL, 10); + + *x = width; + *y = height; + + *comp = 3; + if (req_comp == 0) req_comp = 3; + + // Read data + hdr_data = (float *) MALLOC(height * width * req_comp * sizeof(float)); + + // Load image data + // image data is stored as some number of sca + if ( width < 8 || width >= 32768) { + // Read flat data + for (j=0; j < height; ++j) { + for (i=0; i < width; ++i) { + stbi_uc rgbe[4]; + main_decode_loop: + getn(s, rgbe, 4); + hdr_convert(hdr_data + j * width * req_comp + i * req_comp, rgbe, req_comp); + } + } + } else { + // Read RLE-encoded data + scanline = NULL; + + for (j = 0; j < height; ++j) { + c1 = get8(s); + c2 = get8(s); + len = get8(s); + if (c1 != 2 || c2 != 2 || (len & 0x80)) { + // not run-length encoded, so we have to actually use THIS data as a decoded + // pixel (note this can't be a valid pixel--one of RGB must be >= 128) + uint8 rgbe[4]; + rgbe[0] = (uint8) c1; + rgbe[1] = (uint8) c2; + rgbe[2] = (uint8) len; + rgbe[3] = (uint8) get8u(s); + hdr_convert(hdr_data, rgbe, req_comp); + i = 1; + j = 0; + FREE(scanline); + goto main_decode_loop; // yes, this makes no sense + } + len <<= 8; + len |= get8(s); + if (len != width) { FREE(hdr_data); FREE(scanline); return epf("invalid decoded scanline length", "corrupt HDR"); } + if (scanline == NULL) scanline = (stbi_uc *) MALLOC(width * 4); + + for (k = 0; k < 4; ++k) { + i = 0; + while (i < width) { + count = get8u(s); + if (count > 128) { + // Run + value = get8u(s); + count -= 128; + for (z = 0; z < count; ++z) + scanline[i++ * 4 + k] = value; + } else { + // Dump + for (z = 0; z < count; ++z) + scanline[i++ * 4 + k] = get8u(s); + } + } + } + for (i=0; i < width; ++i) + hdr_convert(hdr_data+(j*width + i)*req_comp, scanline + i*4, req_comp); + } + FREE(scanline); + } + + return hdr_data; +} + +#ifndef STBI_NO_STDIO +float *stbi_hdr_load_from_file(FILE *f, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_file(&s,f); + return hdr_load(&s,x,y,comp,req_comp); +} +#endif + +float *stbi_hdr_load_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp, int req_comp) +{ + stbi s; + start_mem(&s,buffer, len); + return hdr_load(&s,x,y,comp,req_comp); +} + +#endif // STBI_NO_HDR + + +#ifndef STBI_NO_STDIO +int stbi_info(char const *filename, int *x, int *y, int *comp) +{ + FILE *f = fopen(filename, "rb"); + int result; + if (!f) return e("can't fopen", "Unable to open file"); + result = stbi_info_from_file(f, x, y, comp); + fclose(f); + return result; +} + +int stbi_info_from_file(FILE *f, int *x, int *y, int *comp) +{ + if (stbi_jpeg_info_from_file(f, x, y, comp)) + return 1; + if (stbi_png_info_from_file(f, x, y, comp)) + return 1; + if (stbi_gif_info_from_file(f, x, y, comp)) + return 1; + // @TODO: stbi_bmp_info_from_file + // @TODO: stbi_psd_info_from_file + #ifndef STBI_NO_HDR + // @TODO: stbi_hdr_info_from_file + #endif + // test tga last because it's a crappy test! + if (stbi_tga_info_from_file(f, x, y, comp)) + return 1; + return e("unknown image type", "Image not of any known type, or corrupt"); +} +#endif // !STBI_NO_STDIO + +int stbi_info_from_memory(stbi_uc const *buffer, int len, int *x, int *y, int *comp) +{ + if (stbi_jpeg_info_from_memory(buffer, len, x, y, comp)) + return 1; + if (stbi_png_info_from_memory(buffer, len, x, y, comp)) + return 1; + if (stbi_gif_info_from_memory(buffer, len, x, y, comp)) + return 1; + // @TODO: stbi_bmp_info_from_memory + // @TODO: stbi_psd_info_from_memory + #ifndef STBI_NO_HDR + // @TODO: stbi_hdr_info_from_memory + #endif + // test tga last because it's a crappy test! + if (stbi_tga_info_from_memory(buffer, len, x, y, comp)) + return 1; + return e("unknown image type", "Image not of any known type, or corrupt"); +} + +#endif // STBI_HEADER_FILE_ONLY + +/* + revision history: + 1.29 (2010-08-16) various warning fixes from Aurelien Pocheville + 1.28 (2010-08-01) fix bug in GIF palette transparency (SpartanJ) + 1.27 (2010-08-01) + cast-to-uint8 to fix warnings + 1.26 (2010-07-24) + fix bug in file buffering for PNG reported by SpartanJ + 1.25 (2010-07-17) + refix trans_data warning (Won Chun) + 1.24 (2010-07-12) + perf improvements reading from files on platforms with lock-heavy fgetc() + minor perf improvements for jpeg + deprecated type-specific functions so we'll get feedback if they're needed + attempt to fix trans_data warning (Won Chun) + 1.23 fixed bug in iPhone support + 1.22 (2010-07-10) + removed image *writing* support + removed image *writing* support + stbi_info support from Jetro Lauha + GIF support from Jean-Marc Lienher + iPhone PNG-extensions from James Brown + warning-fixes from Nicolas Schulz and Janez Zemva (i.e. Janez (U+017D)emva) + 1.21 fix use of 'uint8' in header (reported by jon blow) + 1.20 added support for Softimage PIC, by Tom Seddon + 1.19 bug in interlaced PNG corruption check (found by ryg) + 1.18 2008-08-02 + fix a threading bug (local mutable static) + 1.17 support interlaced PNG + 1.16 major bugfix - convert_format converted one too many pixels + 1.15 initialize some fields for thread safety + 1.14 fix threadsafe conversion bug + header-file-only version (#define STBI_HEADER_FILE_ONLY before including) + 1.13 threadsafe + 1.12 const qualifiers in the API + 1.11 Support installable IDCT, colorspace conversion routines + 1.10 Fixes for 64-bit (don't use "unsigned long") + optimized upsampling by Fabian "ryg" Giesen + 1.09 Fix format-conversion for PSD code (bad global variables!) + 1.08 Thatcher Ulrich's PSD code integrated by Nicolas Schulz + 1.07 attempt to fix C++ warning/errors again + 1.06 attempt to fix C++ warning/errors again + 1.05 fix TGA loading to return correct *comp and use good luminance calc + 1.04 default float alpha is 1, not 255; use 'void *' for stbi_image_free + 1.03 bugfixes to STBI_NO_STDIO, STBI_NO_HDR + 1.02 support for (subset of) HDR files, float interface for preferred access to them + 1.01 fix bug: possible bug in handling right-side up bmps... not sure + fix bug: the stbi_bmp_load() and stbi_tga_load() functions didn't work at all + 1.00 interface to zlib that skips zlib header + 0.99 correct handling of alpha in palette + 0.98 TGA loader by lonesock; dynamically add loaders (untested) + 0.97 jpeg errors on too large a file; also catch another malloc failure + 0.96 fix detection of invalid v value - particleman@mollyrocket forum + 0.95 during header scan, seek to markers in case of padding + 0.94 STBI_NO_STDIO to disable stdio usage; rename all #defines the same + 0.93 handle jpegtran output; verbose errors + 0.92 read 4,8,16,24,32-bit BMP files of several formats + 0.91 output 24-bit Windows 3.0 BMP files + 0.90 fix a few more warnings; bump version number to approach 1.0 + 0.61 bugfixes due to Marc LeBlanc, Christopher Lloyd + 0.60 fix compiling as c++ + 0.59 fix warnings: merge Dave Moore's -Wall fixes + 0.58 fix bug: zlib uncompressed mode len/nlen was wrong endian + 0.57 fix bug: jpg last huffman symbol before marker was >9 bits but less + than 16 available + 0.56 fix bug: zlib uncompressed mode len vs. nlen + 0.55 fix bug: restart_interval not initialized to 0 + 0.54 allow NULL for 'int *comp' + 0.53 fix bug in png 3->4; speedup png decoding + 0.52 png handles req_comp=3,4 directly; minor cleanup; jpeg comments + 0.51 obey req_comp requests, 1-component jpegs return as 1-component, + on 'test' only check type, not whether we support this variant +*/ diff --git a/sys/dev/stbi/stbi.h b/sys/dev/stbi/stbi.h new file mode 100644 index 000000000..f8cf7349a --- /dev/null +++ b/sys/dev/stbi/stbi.h @@ -0,0 +1,42 @@ +/* $NetBSD: stbi.h,v 1.1 2011/02/06 23:13:04 jmcneill Exp $ */ + +/*- + * Copyright (c) 2011 Jared D. McNeill + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef _DEV_STBI_STBI_H +#define _DEV_STBI_STBI_H + +#define STBI_HEADER_FILE_ONLY +#include + +#endif /* !_DEV_STBI_STBI_H */ diff --git a/sys/dev/stbi/stbiconfig.h b/sys/dev/stbi/stbiconfig.h new file mode 100644 index 000000000..30ed0b1bb --- /dev/null +++ b/sys/dev/stbi/stbiconfig.h @@ -0,0 +1,44 @@ +/* $NetBSD: stbiconfig.h,v 1.1 2011/02/06 23:13:04 jmcneill Exp $ */ + +/*- + * Copyright (c) 2011 Jared D. McNeill + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the NetBSD + * Foundation, Inc. and its contributors. + * 4. Neither the name of The NetBSD Foundation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS + * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS + * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +#ifndef _DEV_STBI_STBICONFIG_H +#define _DEV_STBI_STBICONFIG_H + +#define STBI_NO_STDIO +#define STBI_NO_HDR +#define STBI_TYPE_SPECIFIC_FUNCTIONS +#define STBI_SMALL_STACK + +#endif /* !_DEV_STBI_STBICONFIG_H */