XCB  1.13.1
shm.h
00001 /*
00002  * This file generated automatically from shm.xml by c_client.py.
00003  * Edit at your peril.
00004  */
00005 
00012 #ifndef __SHM_H
00013 #define __SHM_H
00014 
00015 #include "xcb.h"
00016 #include "xproto.h"
00017 
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021 
00022 #define XCB_SHM_MAJOR_VERSION 1
00023 #define XCB_SHM_MINOR_VERSION 2
00024 
00025 extern xcb_extension_t xcb_shm_id;
00026 
00027 typedef uint32_t xcb_shm_seg_t;
00028 
00032 typedef struct xcb_shm_seg_iterator_t {
00033     xcb_shm_seg_t *data;
00034     int            rem;
00035     int            index;
00036 } xcb_shm_seg_iterator_t;
00037 
00039 #define XCB_SHM_COMPLETION 0
00040 
00044 typedef struct xcb_shm_completion_event_t {
00045     uint8_t        response_type;
00046     uint8_t        pad0;
00047     uint16_t       sequence;
00048     xcb_drawable_t drawable;
00049     uint16_t       minor_event;
00050     uint8_t        major_event;
00051     uint8_t        pad1;
00052     xcb_shm_seg_t  shmseg;
00053     uint32_t       offset;
00054 } xcb_shm_completion_event_t;
00055 
00057 #define XCB_SHM_BAD_SEG 0
00058 
00059 typedef xcb_value_error_t xcb_shm_bad_seg_error_t;
00060 
00064 typedef struct xcb_shm_query_version_cookie_t {
00065     unsigned int sequence;
00066 } xcb_shm_query_version_cookie_t;
00067 
00069 #define XCB_SHM_QUERY_VERSION 0
00070 
00074 typedef struct xcb_shm_query_version_request_t {
00075     uint8_t  major_opcode;
00076     uint8_t  minor_opcode;
00077     uint16_t length;
00078 } xcb_shm_query_version_request_t;
00079 
00083 typedef struct xcb_shm_query_version_reply_t {
00084     uint8_t  response_type;
00085     uint8_t  shared_pixmaps;
00086     uint16_t sequence;
00087     uint32_t length;
00088     uint16_t major_version;
00089     uint16_t minor_version;
00090     uint16_t uid;
00091     uint16_t gid;
00092     uint8_t  pixmap_format;
00093     uint8_t  pad0[15];
00094 } xcb_shm_query_version_reply_t;
00095 
00097 #define XCB_SHM_ATTACH 1
00098 
00102 typedef struct xcb_shm_attach_request_t {
00103     uint8_t       major_opcode;
00104     uint8_t       minor_opcode;
00105     uint16_t      length;
00106     xcb_shm_seg_t shmseg;
00107     uint32_t      shmid;
00108     uint8_t       read_only;
00109     uint8_t       pad0[3];
00110 } xcb_shm_attach_request_t;
00111 
00113 #define XCB_SHM_DETACH 2
00114 
00118 typedef struct xcb_shm_detach_request_t {
00119     uint8_t       major_opcode;
00120     uint8_t       minor_opcode;
00121     uint16_t      length;
00122     xcb_shm_seg_t shmseg;
00123 } xcb_shm_detach_request_t;
00124 
00126 #define XCB_SHM_PUT_IMAGE 3
00127 
00131 typedef struct xcb_shm_put_image_request_t {
00132     uint8_t        major_opcode;
00133     uint8_t        minor_opcode;
00134     uint16_t       length;
00135     xcb_drawable_t drawable;
00136     xcb_gcontext_t gc;
00137     uint16_t       total_width;
00138     uint16_t       total_height;
00139     uint16_t       src_x;
00140     uint16_t       src_y;
00141     uint16_t       src_width;
00142     uint16_t       src_height;
00143     int16_t        dst_x;
00144     int16_t        dst_y;
00145     uint8_t        depth;
00146     uint8_t        format;
00147     uint8_t        send_event;
00148     uint8_t        pad0;
00149     xcb_shm_seg_t  shmseg;
00150     uint32_t       offset;
00151 } xcb_shm_put_image_request_t;
00152 
00156 typedef struct xcb_shm_get_image_cookie_t {
00157     unsigned int sequence;
00158 } xcb_shm_get_image_cookie_t;
00159 
00161 #define XCB_SHM_GET_IMAGE 4
00162 
00166 typedef struct xcb_shm_get_image_request_t {
00167     uint8_t        major_opcode;
00168     uint8_t        minor_opcode;
00169     uint16_t       length;
00170     xcb_drawable_t drawable;
00171     int16_t        x;
00172     int16_t        y;
00173     uint16_t       width;
00174     uint16_t       height;
00175     uint32_t       plane_mask;
00176     uint8_t        format;
00177     uint8_t        pad0[3];
00178     xcb_shm_seg_t  shmseg;
00179     uint32_t       offset;
00180 } xcb_shm_get_image_request_t;
00181 
00185 typedef struct xcb_shm_get_image_reply_t {
00186     uint8_t        response_type;
00187     uint8_t        depth;
00188     uint16_t       sequence;
00189     uint32_t       length;
00190     xcb_visualid_t visual;
00191     uint32_t       size;
00192 } xcb_shm_get_image_reply_t;
00193 
00195 #define XCB_SHM_CREATE_PIXMAP 5
00196 
00200 typedef struct xcb_shm_create_pixmap_request_t {
00201     uint8_t        major_opcode;
00202     uint8_t        minor_opcode;
00203     uint16_t       length;
00204     xcb_pixmap_t   pid;
00205     xcb_drawable_t drawable;
00206     uint16_t       width;
00207     uint16_t       height;
00208     uint8_t        depth;
00209     uint8_t        pad0[3];
00210     xcb_shm_seg_t  shmseg;
00211     uint32_t       offset;
00212 } xcb_shm_create_pixmap_request_t;
00213 
00215 #define XCB_SHM_ATTACH_FD 6
00216 
00220 typedef struct xcb_shm_attach_fd_request_t {
00221     uint8_t       major_opcode;
00222     uint8_t       minor_opcode;
00223     uint16_t      length;
00224     xcb_shm_seg_t shmseg;
00225     uint8_t       read_only;
00226     uint8_t       pad0[3];
00227 } xcb_shm_attach_fd_request_t;
00228 
00232 typedef struct xcb_shm_create_segment_cookie_t {
00233     unsigned int sequence;
00234 } xcb_shm_create_segment_cookie_t;
00235 
00237 #define XCB_SHM_CREATE_SEGMENT 7
00238 
00242 typedef struct xcb_shm_create_segment_request_t {
00243     uint8_t       major_opcode;
00244     uint8_t       minor_opcode;
00245     uint16_t      length;
00246     xcb_shm_seg_t shmseg;
00247     uint32_t      size;
00248     uint8_t       read_only;
00249     uint8_t       pad0[3];
00250 } xcb_shm_create_segment_request_t;
00251 
00255 typedef struct xcb_shm_create_segment_reply_t {
00256     uint8_t  response_type;
00257     uint8_t  nfd;
00258     uint16_t sequence;
00259     uint32_t length;
00260     uint8_t  pad0[24];
00261 } xcb_shm_create_segment_reply_t;
00262 
00271 void
00272 xcb_shm_seg_next (xcb_shm_seg_iterator_t *i);
00273 
00283 xcb_generic_iterator_t
00284 xcb_shm_seg_end (xcb_shm_seg_iterator_t i);
00285 
00294 xcb_shm_query_version_cookie_t
00295 xcb_shm_query_version (xcb_connection_t *c);
00296 
00308 xcb_shm_query_version_cookie_t
00309 xcb_shm_query_version_unchecked (xcb_connection_t *c);
00310 
00325 xcb_shm_query_version_reply_t *
00326 xcb_shm_query_version_reply (xcb_connection_t                *c,
00327                              xcb_shm_query_version_cookie_t   cookie  ,
00328                              xcb_generic_error_t            **e);
00329 
00341 xcb_void_cookie_t
00342 xcb_shm_attach_checked (xcb_connection_t *c,
00343                         xcb_shm_seg_t     shmseg,
00344                         uint32_t          shmid,
00345                         uint8_t           read_only);
00346 
00355 xcb_void_cookie_t
00356 xcb_shm_attach (xcb_connection_t *c,
00357                 xcb_shm_seg_t     shmseg,
00358                 uint32_t          shmid,
00359                 uint8_t           read_only);
00360 
00372 xcb_void_cookie_t
00373 xcb_shm_detach_checked (xcb_connection_t *c,
00374                         xcb_shm_seg_t     shmseg);
00375 
00384 xcb_void_cookie_t
00385 xcb_shm_detach (xcb_connection_t *c,
00386                 xcb_shm_seg_t     shmseg);
00387 
00399 xcb_void_cookie_t
00400 xcb_shm_put_image_checked (xcb_connection_t *c,
00401                            xcb_drawable_t    drawable,
00402                            xcb_gcontext_t    gc,
00403                            uint16_t          total_width,
00404                            uint16_t          total_height,
00405                            uint16_t          src_x,
00406                            uint16_t          src_y,
00407                            uint16_t          src_width,
00408                            uint16_t          src_height,
00409                            int16_t           dst_x,
00410                            int16_t           dst_y,
00411                            uint8_t           depth,
00412                            uint8_t           format,
00413                            uint8_t           send_event,
00414                            xcb_shm_seg_t     shmseg,
00415                            uint32_t          offset);
00416 
00425 xcb_void_cookie_t
00426 xcb_shm_put_image (xcb_connection_t *c,
00427                    xcb_drawable_t    drawable,
00428                    xcb_gcontext_t    gc,
00429                    uint16_t          total_width,
00430                    uint16_t          total_height,
00431                    uint16_t          src_x,
00432                    uint16_t          src_y,
00433                    uint16_t          src_width,
00434                    uint16_t          src_height,
00435                    int16_t           dst_x,
00436                    int16_t           dst_y,
00437                    uint8_t           depth,
00438                    uint8_t           format,
00439                    uint8_t           send_event,
00440                    xcb_shm_seg_t     shmseg,
00441                    uint32_t          offset);
00442 
00451 xcb_shm_get_image_cookie_t
00452 xcb_shm_get_image (xcb_connection_t *c,
00453                    xcb_drawable_t    drawable,
00454                    int16_t           x,
00455                    int16_t           y,
00456                    uint16_t          width,
00457                    uint16_t          height,
00458                    uint32_t          plane_mask,
00459                    uint8_t           format,
00460                    xcb_shm_seg_t     shmseg,
00461                    uint32_t          offset);
00462 
00474 xcb_shm_get_image_cookie_t
00475 xcb_shm_get_image_unchecked (xcb_connection_t *c,
00476                              xcb_drawable_t    drawable,
00477                              int16_t           x,
00478                              int16_t           y,
00479                              uint16_t          width,
00480                              uint16_t          height,
00481                              uint32_t          plane_mask,
00482                              uint8_t           format,
00483                              xcb_shm_seg_t     shmseg,
00484                              uint32_t          offset);
00485 
00500 xcb_shm_get_image_reply_t *
00501 xcb_shm_get_image_reply (xcb_connection_t            *c,
00502                          xcb_shm_get_image_cookie_t   cookie  ,
00503                          xcb_generic_error_t        **e);
00504 
00516 xcb_void_cookie_t
00517 xcb_shm_create_pixmap_checked (xcb_connection_t *c,
00518                                xcb_pixmap_t      pid,
00519                                xcb_drawable_t    drawable,
00520                                uint16_t          width,
00521                                uint16_t          height,
00522                                uint8_t           depth,
00523                                xcb_shm_seg_t     shmseg,
00524                                uint32_t          offset);
00525 
00534 xcb_void_cookie_t
00535 xcb_shm_create_pixmap (xcb_connection_t *c,
00536                        xcb_pixmap_t      pid,
00537                        xcb_drawable_t    drawable,
00538                        uint16_t          width,
00539                        uint16_t          height,
00540                        uint8_t           depth,
00541                        xcb_shm_seg_t     shmseg,
00542                        uint32_t          offset);
00543 
00555 xcb_void_cookie_t
00556 xcb_shm_attach_fd_checked (xcb_connection_t *c,
00557                            xcb_shm_seg_t     shmseg,
00558                            int32_t           shm_fd,
00559                            uint8_t           read_only);
00560 
00569 xcb_void_cookie_t
00570 xcb_shm_attach_fd (xcb_connection_t *c,
00571                    xcb_shm_seg_t     shmseg,
00572                    int32_t           shm_fd,
00573                    uint8_t           read_only);
00574 
00583 xcb_shm_create_segment_cookie_t
00584 xcb_shm_create_segment (xcb_connection_t *c,
00585                         xcb_shm_seg_t     shmseg,
00586                         uint32_t          size,
00587                         uint8_t           read_only);
00588 
00600 xcb_shm_create_segment_cookie_t
00601 xcb_shm_create_segment_unchecked (xcb_connection_t *c,
00602                                   xcb_shm_seg_t     shmseg,
00603                                   uint32_t          size,
00604                                   uint8_t           read_only);
00605 
00620 xcb_shm_create_segment_reply_t *
00621 xcb_shm_create_segment_reply (xcb_connection_t                 *c,
00622                               xcb_shm_create_segment_cookie_t   cookie  ,
00623                               xcb_generic_error_t             **e);
00624 
00634 int *
00635 xcb_shm_create_segment_reply_fds (xcb_connection_t                *c  ,
00636                                   xcb_shm_create_segment_reply_t  *reply);
00637 
00638 
00639 #ifdef __cplusplus
00640 }
00641 #endif
00642 
00643 #endif
00644