1 pub type XID = super::__gl_imports::raw::c_ulong; 2 pub type Bool = super::__gl_imports::raw::c_int; // Not sure if this is correct... 3 pub enum Display {} 4 5 pub type Font = XID; 6 pub type Pixmap = XID; 7 pub enum Visual {} // TODO: not sure 8 pub type VisualID = super::__gl_imports::raw::c_ulong; // TODO: not sure 9 pub type Window = XID; 10 pub type GLXFBConfigID = XID; 11 pub type GLXFBConfig = *const super::__gl_imports::raw::c_void; 12 pub type GLXContextID = XID; 13 pub type GLXContext = *const super::__gl_imports::raw::c_void; 14 pub type GLXPixmap = XID; 15 pub type GLXDrawable = XID; 16 pub type GLXWindow = XID; 17 pub type GLXPbuffer = XID; 18 pub enum __GLXextFuncPtr_fn {} 19 pub type __GLXextFuncPtr = *mut __GLXextFuncPtr_fn; 20 pub type GLXVideoCaptureDeviceNV = XID; 21 pub type GLXVideoDeviceNV = super::__gl_imports::raw::c_int; 22 pub type GLXVideoSourceSGIX = XID; 23 pub type GLXFBConfigIDSGIX = XID; 24 pub type GLXFBConfigSGIX = *const super::__gl_imports::raw::c_void; 25 pub type GLXPbufferSGIX = XID; 26 27 #[repr(C)] 28 pub struct XVisualInfo { 29 pub visual: *mut Visual, 30 pub visualid: VisualID, 31 pub screen: super::__gl_imports::raw::c_int, 32 pub depth: super::__gl_imports::raw::c_int, 33 pub class: super::__gl_imports::raw::c_int, 34 pub red_mask: super::__gl_imports::raw::c_ulong, 35 pub green_mask: super::__gl_imports::raw::c_ulong, 36 pub blue_mask: super::__gl_imports::raw::c_ulong, 37 pub colormap_size: super::__gl_imports::raw::c_int, 38 pub bits_per_rgb: super::__gl_imports::raw::c_int, 39 } 40 41 #[repr(C)] 42 pub struct GLXPbufferClobberEvent { 43 pub event_type: super::__gl_imports::raw::c_int, // GLX_DAMAGED or GLX_SAVED 44 pub draw_type: super::__gl_imports::raw::c_int, // GLX_WINDOW or GLX_PBUFFER 45 pub serial: super::__gl_imports::raw::c_ulong, // # of last request processed by server 46 pub send_event: Bool, // true if this came for SendEvent request 47 pub display: *const Display, // display the event was read from 48 pub drawable: GLXDrawable, // XID of Drawable 49 pub buffer_mask: super::__gl_imports::raw::c_uint, // mask indicating which buffers are affected 50 pub aux_buffer: super::__gl_imports::raw::c_uint, // which aux buffer was affected 51 pub x: super::__gl_imports::raw::c_int, 52 pub y: super::__gl_imports::raw::c_int, 53 pub width: super::__gl_imports::raw::c_int, 54 pub height: super::__gl_imports::raw::c_int, 55 pub count: super::__gl_imports::raw::c_int, // if nonzero, at least this many more 56 } 57 58 #[repr(C)] 59 pub struct GLXBufferSwapComplete { 60 pub type_: super::__gl_imports::raw::c_int, 61 pub serial: super::__gl_imports::raw::c_ulong, // # of last request processed by server 62 pub send_event: Bool, // true if this came from a SendEvent request 63 pub display: *const Display, // Display the event was read from 64 pub drawable: GLXDrawable, // drawable on which event was requested in event mask 65 pub event_type: super::__gl_imports::raw::c_int, 66 pub ust: i64, 67 pub msc: i64, 68 pub sbc: i64, 69 } 70 71 // typedef union __GLXEvent { 72 // GLXPbufferClobberEvent glxpbufferclobber; 73 // GLXBufferSwapComplete glxbufferswapcomplete; 74 // long pad[24]; 75 // } 76 77 #[repr(C)] 78 pub struct GLXBufferClobberEventSGIX { 79 pub type_: super::__gl_imports::raw::c_int, 80 pub serial: super::__gl_imports::raw::c_ulong, // # of last request processed by server 81 pub send_event: Bool, // true if this came for SendEvent request 82 pub display: *const Display, // display the event was read from 83 pub drawable: GLXDrawable, // i.d. of Drawable 84 pub event_type: super::__gl_imports::raw::c_int, // GLX_DAMAGED_SGIX or GLX_SAVED_SGIX 85 pub draw_type: super::__gl_imports::raw::c_int, // GLX_WINDOW_SGIX or GLX_PBUFFER_SGIX 86 pub mask: super::__gl_imports::raw::c_uint, // mask indicating which buffers are affected 87 pub x: super::__gl_imports::raw::c_int, 88 pub y: super::__gl_imports::raw::c_int, 89 pub width: super::__gl_imports::raw::c_int, 90 pub height: super::__gl_imports::raw::c_int, 91 pub count: super::__gl_imports::raw::c_int, // if nonzero, at least this many more 92 } 93 94 #[repr(C)] 95 pub struct GLXHyperpipeNetworkSGIX { 96 pub pipeName: [super::__gl_imports::raw::c_char; 80], // Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] 97 pub networkId: super::__gl_imports::raw::c_int, 98 } 99 100 #[repr(C)] 101 pub struct GLXHyperpipeConfigSGIX { 102 pub pipeName: [super::__gl_imports::raw::c_char; 80], // Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] 103 pub channel: super::__gl_imports::raw::c_int, 104 pub participationType: super::__gl_imports::raw::c_uint, 105 pub timeSlice: super::__gl_imports::raw::c_int, 106 } 107 108 #[repr(C)] 109 pub struct GLXPipeRect { 110 pub pipeName: [super::__gl_imports::raw::c_char; 80], // Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] 111 pub srcXOrigin: super::__gl_imports::raw::c_int, 112 pub srcYOrigin: super::__gl_imports::raw::c_int, 113 pub srcWidth: super::__gl_imports::raw::c_int, 114 pub srcHeight: super::__gl_imports::raw::c_int, 115 pub destXOrigin: super::__gl_imports::raw::c_int, 116 pub destYOrigin: super::__gl_imports::raw::c_int, 117 pub destWidth: super::__gl_imports::raw::c_int, 118 pub destHeight: super::__gl_imports::raw::c_int, 119 } 120 121 #[repr(C)] 122 pub struct GLXPipeRectLimits { 123 pub pipeName: [super::__gl_imports::raw::c_char; 80], // Should be [GLX_HYPERPIPE_PIPE_NAME_LENGTH_SGIX] 124 pub XOrigin: super::__gl_imports::raw::c_int, 125 pub YOrigin: super::__gl_imports::raw::c_int, 126 pub maxHeight: super::__gl_imports::raw::c_int, 127 pub maxWidth: super::__gl_imports::raw::c_int, 128 } 129