summaryrefslogtreecommitdiff
path: root/docs/MESA_swap_control.spec
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2003-05-01 19:12:23 +0000
committerBrian Paul <brian.paul@tungstengraphics.com>2003-05-01 19:12:23 +0000
commit09b00c5ded8e6211c9c79be600bb8c8ecad0d8fc (patch)
tree3604a7505d1c1ae353876d32245a51198a39f382 /docs/MESA_swap_control.spec
parent1a8d64e6e9c6f59eb40c5a73690f3ef9d5c2b327 (diff)
Ian's buffer swap extensions
Diffstat (limited to 'docs/MESA_swap_control.spec')
-rw-r--r--docs/MESA_swap_control.spec117
1 files changed, 117 insertions, 0 deletions
diff --git a/docs/MESA_swap_control.spec b/docs/MESA_swap_control.spec
new file mode 100644
index 00000000000..e05d515496f
--- /dev/null
+++ b/docs/MESA_swap_control.spec
@@ -0,0 +1,117 @@
+Name
+
+ MESA_swap_control
+
+Name Strings
+
+ GLX_MESA_swap_control
+
+Contact
+
+ Ian Romanick, IBM (idr 'at' us.ibm.com)
+
+Status
+
+ Deployed in DRI drivers post-XFree86 4.3.
+
+Version
+
+ Date: 3/17/2003 Revision: 1.0
+
+Number
+
+ ???
+
+Dependencies
+
+ None
+
+ Based on GLX_SGI_swap_control version 1.9 and WGL_EXT_swap_control
+ version 1.5.
+
+Overview
+
+ This extension allows an application to specify a minimum periodicity
+ of color buffer swaps, measured in video frame periods.
+
+New Procedures and Functions
+
+ int glXSwapIntervalMESA(int interval)
+ int glXGetSwapIntervalMESA(void)
+
+New Tokens
+
+ None
+
+Additions to Chapter 2 of the 1.4 GL Specification (OpenGL Operation)
+
+ None
+
+Additions to Chapter 3 of the 1.4 GL Specification (Rasterization)
+
+ None
+
+Additions to Chapter 4 of the 1.4 GL Specification (Per-Fragment Operations
+and the Framebuffer)
+
+ None
+
+Additions to Chapter 5 of the 1.4 GL Specification (Special Functions)
+
+ None
+
+Additions to Chapter 6 of the 1.4 GL Specification (State and State Requests)
+
+ None
+
+Additions to the GLX 1.3 Specification
+
+ [Add the following to Section 3.3.10 of the GLX Specification (Double
+ Buffering)]
+
+ glXSwapIntervalMESA specifies the minimum number of video frame periods
+ per buffer swap. (e.g. a value of two means that the color buffers
+ will be swapped at most every other video frame.) A return value
+ of zero indicates success; otherwise an error occurred. The interval
+ takes effect when glXSwapBuffers is first called subsequent to the
+ glXSwapIntervalMESA call.
+
+ A video frame period is the time required by the monitor to display a
+ full frame of video data. In the case of an interlaced monitor,
+ this is typically the time required to display both the even and odd
+ fields of a frame of video data.
+
+ If <interval> is set to a value of 0, buffer swaps are not synchron-
+ ized to a video frame. The <interval> value is silently clamped to
+ the maximum implementation-dependent value supported before being
+ stored.
+
+ The swap interval is not part of the render context state. It cannot
+ be pushed or popped. The current swap interval for the window
+ associated with the current context can be obtained by calling
+ glXGetSwapIntervalMESA. The default swap interval is 1.
+
+ On XFree86, setting the environment variable LIBGL_NO_VSYNC sets the
+ swap interval to 0.
+
+Errors
+
+ glXSwapIntervalMESA returns GLX_BAD_VALUE if parameter <interval> is
+ less than zero.
+
+ glXSwapIntervalMESA returns GLX_BAD_CONTEXT if there is no current
+ GLXContext.
+
+GLX Protocol
+
+ None. This extension only extends to direct rendering contexts.
+
+New State
+
+ Get Value Get Command Type Initial Value
+ --------- ----------- ---- -------------
+ [swap interval] GetSwapInterval Z+ 1
+
+New Implementation Dependent State
+
+ None