From: José Fonseca Date: Sat, 20 Jul 2013 13:53:14 +0000 (+0100) Subject: Merge branch 'attrib_list' X-Git-Url: https://git.cworth.org/git?p=apitrace;a=commitdiff_plain;h=c037ae2b4f749aed15ede635a6b517534bc5a901 Merge branch 'attrib_list' Conflicts: specs/glxapi.py --- c037ae2b4f749aed15ede635a6b517534bc5a901 diff --cc specs/glxapi.py index 4d652f6,07ff361..1340711 --- a/specs/glxapi.py +++ b/specs/glxapi.py @@@ -378,16 -459,16 +461,16 @@@ glxapi.addFunctions( Function(Void, "glXReleaseTexImageEXT", [(Display, "display"), (GLXDrawable, "drawable"), (GLXEnum, "buffer")]), # GLX_NV_present_video - #Function(OpaquePointer(UInt), "glXEnumerateVideoDevicesNV", [(Display, "dpy"), (Int, "screen"), (OpaquePointer(Int), "nelements")]), - #Function(Int, "glXBindVideoDeviceNV", [(Display, "dpy"), (UInt, "video_slot"), (UInt, "video_device"), (UnusedAttribs, "attrib_list")]), + Function(Array(UInt, "(nelements ? *nelements : 0)"), "glXEnumerateVideoDevicesNV", [(Display, "dpy"), (Int, "screen"), Out(Pointer(Int), "nelements")]), - Function(Int, "glXBindVideoDeviceNV", [(Display, "dpy"), (UInt, "video_slot"), (UInt, "video_device"), (Array(Const(Int), "_AttribPairList_size(attrib_list)"), "attrib_list")]), ++ Function(Int, "glXBindVideoDeviceNV", [(Display, "dpy"), (UInt, "video_slot"), (UInt, "video_device"), (UnusedAttribs, "attrib_list")]), # GLX_NV_video_output - #Function(Int, "glXGetVideoDeviceNV", [(Display, "dpy"), (Int, "screen"), (Int, "numVideoDevices"), (OpaquePointer(GLXVideoDeviceNV), "pVideoDevice")]), - #Function(Int, "glXReleaseVideoDeviceNV", [(Display, "dpy"), (Int, "screen"), (GLXVideoDeviceNV, "VideoDevice")]), - #Function(Int, "glXBindVideoImageNV", [(Display, "dpy"), (GLXVideoDeviceNV, "VideoDevice"), (GLXPbuffer, "pbuf"), (Int, "iVideoBuffer")]), - #Function(Int, "glXReleaseVideoImageNV", [(Display, "dpy"), (GLXPbuffer, "pbuf")]), - #Function(Int, "glXSendPbufferToVideoNV", [(Display, "dpy"), (GLXPbuffer, "pbuf"), (Int, "iBufferType"), (OpaquePointer(ULong), "pulCounterPbuffer"), (GLboolean, "bBlock")]), - #Function(Int, "glXGetVideoInfoNV", [(Display, "dpy"), (Int, "screen"), (GLXVideoDeviceNV, "VideoDevice"), (OpaquePointer(ULong), "pulCounterOutputPbuffer"), (OpaquePointer(ULong), "pulCounterOutputVideo")]), + Function(Int, "glXGetVideoDeviceNV", [(Display, "dpy"), (Int, "screen"), (Int, "numVideoDevices"), Out(Array(GLXVideoDeviceNV, "numVideoDevices"), "pVideoDevice")]), + Function(Int, "glXReleaseVideoDeviceNV", [(Display, "dpy"), (Int, "screen"), (GLXVideoDeviceNV, "VideoDevice")]), + Function(Int, "glXBindVideoImageNV", [(Display, "dpy"), (GLXVideoDeviceNV, "VideoDevice"), (GLXPbuffer, "pbuf"), (Int, "iVideoBuffer")]), + Function(Int, "glXReleaseVideoImageNV", [(Display, "dpy"), (GLXPbuffer, "pbuf")]), + Function(Int, "glXSendPbufferToVideoNV", [(Display, "dpy"), (GLXPbuffer, "pbuf"), (Int, "iBufferType"), Out(Pointer(ULong), "pulCounterPbuffer"), (GLboolean, "bBlock")]), + Function(Int, "glXGetVideoInfoNV", [(Display, "dpy"), (Int, "screen"), (GLXVideoDeviceNV, "VideoDevice"), Out(Pointer(ULong), "pulCounterOutputPbuffer"), Out(Pointer(ULong), "pulCounterOutputVideo")], sideeffects=False), # GLX_NV_swap_group Function(Bool, "glXJoinSwapGroupNV", [(Display, "dpy"), (GLXDrawable, "drawable"), (GLuint, "group")]), diff --cc specs/wglapi.py index 146a403,2ee25cc..ae2e078 --- a/specs/wglapi.py +++ b/specs/wglapi.py @@@ -138,20 -138,112 +138,125 @@@ WGLSWAP = Struct("WGLSWAP", (UINT, "uiFlags"), ]) + WGLContextAttribs = AttribArray(WGLenum, [ + ('WGL_CONTEXT_MAJOR_VERSION_ARB', Int), + ('WGL_CONTEXT_MINOR_VERSION_ARB', Int), + ('WGL_CONTEXT_LAYER_PLANE_ARB', Int), + ('WGL_CONTEXT_FLAGS_ARB', Flags(Int, ["WGL_CONTEXT_DEBUG_BIT_ARB", "WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB"])), + ('WGL_CONTEXT_PROFILE_MASK_ARB', Flags(Int, ["WGL_CONTEXT_CORE_PROFILE_BIT_ARB", "WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB"])) + ]) + + WGLPixelFormatARBAttribsList = [ + ('WGL_DRAW_TO_WINDOW_ARB', BOOL), + ('WGL_DRAW_TO_BITMAP_ARB', BOOL), + ('WGL_ACCELERATION_ARB', FakeEnum(Int, ['WGL_NO_ACCELERATION_ARB', 'WGL_GENERIC_ACCELERATION_ARB', 'WGL_FULL_ACCELERATION_ARB'])), + ('WGL_NEED_PALETTE_ARB', BOOL), + ('WGL_NEED_SYSTEM_PALETTE_ARB', BOOL), + ('WGL_SWAP_LAYER_BUFFERS_ARB', BOOL), + ('WGL_SWAP_METHOD_ARB', FakeEnum(Int, ['WGL_SWAP_EXCHANGE_ARB', 'WGL_SWAP_COPY_ARB', 'WGL_SWAP_UNDEFINED_ARB'])), + ('WGL_NUMBER_OVERLAYS_ARB', Int), + ('WGL_NUMBER_UNDERLAYS_ARB', Int), + ('WGL_SHARE_DEPTH_ARB', BOOL), + ('WGL_SHARE_STENCIL_ARB', BOOL), + ('WGL_SHARE_ACCUM_ARB', BOOL), + ('WGL_SUPPORT_GDI_ARB', BOOL), + ('WGL_SUPPORT_OPENGL_ARB', BOOL), + ('WGL_DOUBLE_BUFFER_ARB', BOOL), + ('WGL_STEREO_ARB', BOOL), + ('WGL_PIXEL_TYPE_ARB', FakeEnum(Int, ['WGL_TYPE_RGBA_ARB', 'WGL_TYPE_COLORINDEX_ARB'])), + ('WGL_COLOR_BITS_ARB', Int), + ('WGL_RED_BITS_ARB', Int), + ('WGL_GREEN_BITS_ARB', Int), + ('WGL_BLUE_BITS_ARB', Int), + ('WGL_ALPHA_BITS_ARB', Int), + ('WGL_ACCUM_BITS_ARB', Int), + ('WGL_ACCUM_RED_BITS_ARB', Int), + ('WGL_ACCUM_GREEN_BITS_ARB', Int), + ('WGL_ACCUM_BLUE_BITS_ARB', Int), + ('WGL_ACCUM_ALPHA_BITS_ARB', Int), + ('WGL_DEPTH_BITS_ARB', Int), + ('WGL_STENCIL_BITS_ARB', Int), + ('WGL_AUX_BUFFERS_ARB', Int) + ] + + WGLPixelFormatARBAttribs = AttribArray(WGLenum, WGLPixelFormatARBAttribsList) + WGLPixelFormatARBFloatAttribs = AttribArray(WGLenum, WGLPixelFormatARBAttribsList, punType = FLOAT) + + WGLPixelFormatEXTAttribsList = [ + # ('WGL_NUMBER_PIXEL_FORMATS_EXT', Int), # not in ...ARB # only allowed in wglGetPixelFormatAttribiv + ('WGL_DRAW_TO_WINDOW_ARB', BOOL), + ('WGL_DRAW_TO_BITMAP_ARB', BOOL), + ('WGL_ACCELERATION_ARB', FakeEnum(Int, ['WGL_NO_ACCELERATION_ARB', 'WGL_GENERIC_ACCELERATION_ARB', 'WGL_FULL_ACCELERATION_ARB'])), + ('WGL_NEED_PALETTE_ARB', BOOL), + ('WGL_NEED_SYSTEM_PALETTE_ARB', BOOL), + ('WGL_SWAP_LAYER_BUFFERS_ARB', BOOL), + ('WGL_SWAP_METHOD_ARB', FakeEnum(Int, ['WGL_SWAP_EXCHANGE_ARB', 'WGL_SWAP_COPY_ARB', 'WGL_SWAP_UNDEFINED_ARB'])), + ('WGL_NUMBER_OVERLAYS_ARB', Int), + ('WGL_NUMBER_UNDERLAYS_ARB', Int), + ('WGL_TRANSPARENT_EXT', BOOL), # not in ...ARB + ('WGL_TRANSPARENT_VALUE_EXT', Int), # not in ...ARB + ('WGL_SHARE_DEPTH_ARB', BOOL), + ('WGL_SHARE_STENCIL_ARB', BOOL), + ('WGL_SHARE_ACCUM_ARB', BOOL), + ('WGL_SUPPORT_GDI_ARB', BOOL), + ('WGL_SUPPORT_OPENGL_ARB', BOOL), + ('WGL_DOUBLE_BUFFER_ARB', BOOL), + ('WGL_STEREO_ARB', BOOL), + ('WGL_PIXEL_TYPE_ARB', FakeEnum(Int, ['WGL_TYPE_RGBA_ARB', 'WGL_TYPE_COLORINDEX_ARB'])), + ('WGL_COLOR_BITS_ARB', Int), + ('WGL_RED_BITS_ARB', Int), + ('WGL_RED_SHIFT_EXT', Int), # not in ...ARB + ('WGL_GREEN_BITS_ARB', Int), + ('WGL_GREEN_SHIFT_EXT', Int), # not in ...ARB + ('WGL_BLUE_BITS_ARB', Int), + ('WGL_BLUE_SHIFT_EXT', Int), # not in ...ARB + ('WGL_ALPHA_BITS_ARB', Int), + ('WGL_ALPHA_SHIFT_EXT', Int), # not in ...ARB + ('WGL_ACCUM_BITS_ARB', Int), + ('WGL_ACCUM_RED_BITS_ARB', Int), + ('WGL_ACCUM_GREEN_BITS_ARB', Int), + ('WGL_ACCUM_BLUE_BITS_ARB', Int), + ('WGL_ACCUM_ALPHA_BITS_ARB', Int), + ('WGL_DEPTH_BITS_ARB', Int), + ('WGL_STENCIL_BITS_ARB', Int), + ('WGL_AUX_BUFFERS_ARB', Int) + ] + + WGLPixelFormatEXTAttribs = AttribArray(WGLenum, WGLPixelFormatEXTAttribsList) + WGLPixelFormatEXTFloatAttribs = AttribArray(WGLenum, WGLPixelFormatEXTAttribsList, punType = FLOAT) + + WGLCreatePbufferARBAttribs = AttribArray(WGLenum, [ + ('WGL_PBUFFER_LARGEST_ARB', Int) + ]) + + CubeFaceEnum = FakeEnum(Int, [ + 'WGL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB', + 'WGL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB', + 'WGL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB', + 'WGL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB', + 'WGL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB', + 'WGL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB' + ]) + + WGLSetPbufferARBAttribs = AttribArray(WGLenum, [ + ('WGL_MIPMAP_LEVEL_ARB', Int), + ('WGL_CUBE_MAP_FACE_ARB', CubeFaceEnum) + ]) + HPBUFFERARB = Alias("HPBUFFERARB", HANDLE) +HPBUFFEREXT = Alias("HPBUFFEREXT", HANDLE) +HPVIDEODEV = Alias("HPVIDEODEV", HANDLE) +HVIDEOOUTPUTDEVICENV = Alias("HVIDEOOUTPUTDEVICENV", HANDLE) +HVIDEOINPUTDEVICENV = Alias("HVIDEOINPUTDEVICENV", HANDLE) +HGPUNV = Alias("HGPUNV", HANDLE) + +GPU_DEVICE = Struct("GPU_DEVICE", [ + (DWORD, "cb"), + (CString, "DeviceName"), + (CString, "DeviceString"), + (DWORD, "Flags"), + (RECT, "rcVirtualScreen"), +]) wglapi.addFunctions([ @@@ -209,17 -301,11 +314,17 @@@ # WGL_ARB_render_texture StdFunction(BOOL, "wglBindTexImageARB", [(HPBUFFERARB, "hPbuffer"), (Int, "iBuffer")]), StdFunction(BOOL, "wglReleaseTexImageARB", [(HPBUFFERARB, "hPbuffer"), (Int, "iBuffer")]), - StdFunction(BOOL, "wglSetPbufferAttribARB", [(HPBUFFERARB, "hPbuffer"), (Array(Const(WGLenum), "_AttribPairList_size(piAttribList)"), "piAttribList")]), + StdFunction(BOOL, "wglSetPbufferAttribARB", [(HPBUFFERARB, "hPbuffer"), (WGLSetPbufferARBAttribs, "piAttribList")]), # WGL_ARB_create_context - StdFunction(HGLRC, "wglCreateContextAttribsARB", [(HDC, "hDC"), (HGLRC, "hShareContext"), (Array(Const(WGLenum), "_AttribPairList_size(attribList)"), "attribList")]), + StdFunction(HGLRC, "wglCreateContextAttribsARB", [(HDC, "hDC"), (HGLRC, "hShareContext"), (WGLContextAttribs, "attribList")]), + # WGL_EXT_display_color_table + StdFunction(GLboolean, "wglCreateDisplayColorTableEXT", [(GLushort, "id")]), + StdFunction(GLboolean, "wglLoadDisplayColorTableEXT", [(Array(Const(GLushort), "length"), "table"), (GLuint, "length")]), + StdFunction(GLboolean, "wglBindDisplayColorTableEXT", [(GLushort, "id")]), + StdFunction(VOID, "wglDestroyDisplayColorTableEXT", [(GLushort, "id")]), + # WGL_EXT_extensions_string StdFunction(ConstCString, "wglGetExtensionsStringEXT", [], sideeffects=False), @@@ -227,13 -313,6 +332,13 @@@ StdFunction(BOOL, "wglMakeContextCurrentEXT", [(HDC, "hDrawDC"), (HDC, "hReadDC"), (HGLRC, "hglrc")]), StdFunction(HDC, "wglGetCurrentReadDCEXT", [], sideeffects=False), + # WGL_EXT_pbuffer - StdFunction(HPBUFFEREXT, "wglCreatePbufferEXT", [(HDC, "hDC"), (Int, "iPixelFormat"), (Int, "iWidth"), (Int, "iHeight"), (Array(Const(WGLenum), "_AttribPairList_size(piAttribList)"), "piAttribList")]), ++ StdFunction(HPBUFFEREXT, "wglCreatePbufferEXT", [(HDC, "hDC"), (Int, "iPixelFormat"), (Int, "iWidth"), (Int, "iHeight"), (WGLCreatePbufferARBAttribs, "piAttribList")]), + StdFunction(HDC, "wglGetPbufferDCEXT", [(HPBUFFEREXT, "hPbuffer")], sideeffects=False), + StdFunction(Int, "wglReleasePbufferDCEXT", [(HPBUFFEREXT, "hPbuffer"), (HDC, "hDC")]), + StdFunction(BOOL, "wglDestroyPbufferEXT", [(HPBUFFEREXT, "hPbuffer")]), + StdFunction(BOOL, "wglQueryPbufferEXT", [(HPBUFFEREXT, "hPbuffer"), (WGLenum, "iAttribute"), Out(Pointer(Int), "piValue")], sideeffects=False), + # WGL_EXT_pixel_format StdFunction(BOOL, "wglGetPixelFormatAttribivEXT", [(HDC, "hdc"), (Int, "iPixelFormat"), (Int, "iLayerPlane"), (UINT, "nAttributes"), (Array(WGLenum, "nAttributes"), "piAttributes"), Out(Array(Int, "nAttributes"), "piValues")], sideeffects=False), StdFunction(BOOL, "wglGetPixelFormatAttribfvEXT", [(HDC, "hdc"), (Int, "iPixelFormat"), (Int, "iLayerPlane"), (UINT, "nAttributes"), (Array(WGLenum, "nAttributes"), "piAttributes"), Out(Array(FLOAT, "nAttributes"), "pfValues")], sideeffects=False),