diff options
author | Emil Velikov <[email protected]> | 2013-04-12 12:41:50 +0100 |
---|---|---|
committer | Brian Paul <[email protected]> | 2013-04-17 08:48:14 -0600 |
commit | cf9bf1d4a6dc3b26e2aa192517611eba3aa5be00 (patch) | |
tree | 558f2af22eee37a07f256fff62dbec45b7bd9d99 /docs/MESA_swap_frame_usage.spec | |
parent | 5fd3b3b0857fc96b5e53a9a8bc3f11ddb3dc0ff7 (diff) |
docs: move specs to a separate folder
Handle legacy/obsolete specs as well
List all specs in extensions.html
Mark 'OLD' extensions as obsolete in extensions.html
Update the spec location in old relnotes
Signed-off-by: Emil Velikov <[email protected]>
Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'docs/MESA_swap_frame_usage.spec')
-rw-r--r-- | docs/MESA_swap_frame_usage.spec | 201 |
1 files changed, 0 insertions, 201 deletions
diff --git a/docs/MESA_swap_frame_usage.spec b/docs/MESA_swap_frame_usage.spec deleted file mode 100644 index 5023eadd8a1..00000000000 --- a/docs/MESA_swap_frame_usage.spec +++ /dev/null @@ -1,201 +0,0 @@ -Name - - MESA_swap_frame_usage - -Name Strings - - GLX_MESA_swap_frame_usage - -Contact - - Ian Romanick, IBM, idr at us.ibm.com - -Status - - Deployed in DRI drivers post-XFree86 4.3. - -Version - - Date: 5/1/2003 Revision: 1.1 - -Number - - ??? - -Dependencies - - GLX_SGI_swap_control affects the definition of this extension. - GLX_MESA_swap_control affects the definition of this extension. - GLX_OML_sync_control affects the definition of this extension. - - Based on WGL_I3D_swap_frame_usage version 1.3. - -Overview - - This extension allows an application to determine what portion of the - swap period has elapsed since the last swap operation completed. The - "usage" value is a floating point value on the range [0,max] which is - calculated as follows: - - td - percent = ---- - tf - - where td is the time measured from the last completed buffer swap (or - call to enable the statistic) to when the next buffer swap completes, tf - is the entire time for a frame which may be multiple screen refreshes - depending on the swap interval as set by the GLX_SGI_swap_control or - GLX_OML_sync_control extensions. - - The value, percent, indicates the amount of time spent between the - completion of the two swaps. If the value is in the range [0,1], the - buffer swap occurred within the time period required to maintain a - constant frame rate. If the value is in the range (1,max], a constant - frame rate was not achieved. The value indicates the number of frames - required to draw. - - This definition of "percent" differs slightly from - WGL_I3D_swap_frame_usage. In WGL_I3D_swap_frame_usage, the measurement - is taken from the completion of one swap to the issuance of the next. - This representation may not be as useful as measuring between - completions, as a significant amount of time may pass between the - issuance of a swap and the swap actually occurring. - - There is also a mechanism to determine whether a frame swap was - missed. - -New Procedures and Functions - - int glXGetFrameUsageMESA(Display *dpy, - GLXDrawable drawable, - float *usage) - - int glXBeginFrameTrackingMESA(Display *dpy, - GLXDrawable drawable) - - int glXEndFrameTrackingMESA(Display *dpy, - GLXDrawable drawable) - - int glXQueryFrameTrackingMESA(Display *dpy, - GLXDrawable drawable, - int64_t *swapCount, - int64_t *missedFrames, - float *lastMissedUsage) - -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 - - The frame usage is measured as the percentage of the swap period elapsed - between two buffer-swap operations being committed. In unextended GLX the - swap period is the vertical refresh time. If SGI_swap_control or - MESA_swap_control are supported, the swap period is the vertical refresh - time multiplied by the swap interval (or one if the swap interval is set - to zero). - - If OML_sync_control is supported, the swap period is the vertical - refresh time multiplied by the divisor parameter to - glXSwapBuffersMscOML. The frame usage in this case is less than 1.0 if - the swap is committed before target_msc, and is greater than or equal to - 1.0 otherwise. The actual usage value is based on the divisor and is - never less than 0.0. - - int glXBeginFrameTrackingMESA(Display *dpy, - GLXDrawable drawable, - float *usage) - - glXGetFrameUsageMESA returns a floating-point value in <usage> - that represents the current swap usage, as defined above. - - Missed frame swaps can be tracked by calling the following function: - - int glXBeginFrameTrackingMESA(Display *dpy, - GLXDrawable drawable) - - glXBeginFrameTrackingMESA resets a "missed frame" count and - synchronizes with the next frame vertical sync before it returns. - If a swap is missed based in the rate control specified by the - <interval> set by glXSwapIntervalSGI or the default swap of once - per frame, the missed frame count is incremented. - - The current missed frame count and total number of swaps since - the last call to glXBeginFrameTrackingMESA can be obtained by - calling the following function: - - int glXQueryFrameTrackingMESA(Display *dpy, - GLXDrawable drawable, - int64_t *swapCount, - int64_t *missedFrames, - float *lastMissedUsage) - - The location pointed to by <swapCount> will be updated with the - number of swaps that have been committed. This value may not match the - number of swaps that have been requested since swaps may be - queued by the implementation. This function can be called at any - time and does not synchronize to vertical blank. - - The location pointed to by <missedFrames> will contain the number - swaps that missed the specified frame. The frame usage for the - last missed frame is returned in the location pointed to by - <lastMissedUsage>. - - Frame tracking is disabled by calling the function - - int glXEndFrameTrackingMESA(Display *dpy, - GLXDrawable drawable) - - This function will not return until all swaps have occurred. The - application can call glXQueryFrameTrackingMESA for a final swap and - missed frame count. - - If these functions are successful, zero is returned. If the context - associated with dpy and drawable is not a direct context, - GLX_BAD_CONTEXT is returned. - -Errors - - If the function succeeds, zero is returned. If the function - fails, one of the following error codes is returned: - - GLX_BAD_CONTEXT The current rendering context is not a direct - context. - -GLX Protocol - - None. This extension only extends to direct rendering contexts. - -New State - - None - -New Implementation Dependent State - - None - -Revision History - - 1.1, 5/1/03 Added contact information. - 1.0, 3/17/03 Initial version based on WGL_I3D_swap_frame_usage. |