1 Name 2 3 MESA_agp_offset 4 5 Name Strings 6 7 GLX_MESA_agp_offset 8 9 Contact 10 11 Brian Paul, Tungsten Graphics, Inc. (brian.paul 'at' tungstengraphics.com) 12 Keith Whitwell, Tungsten Graphics, Inc. (keith 'at' tungstengraphics.com) 13 14 Status 15 16 Shipping (Mesa 4.0.4 and later. Only implemented in particular 17 XFree86/DRI drivers.) 18 19 Version 20 21 1.0 22 23 Number 24 25 TBD 26 27 Dependencies 28 29 OpenGL 1.0 or later is required 30 GLX_NV_vertex_array_range is required. 31 This extensions is written against the OpenGL 1.4 Specification. 32 33 Overview 34 35 This extensions provides a way to convert pointers in an AGP memory 36 region into byte offsets into the AGP aperture. 37 Note, this extension depends on GLX_NV_vertex_array_range, for which 38 no real specification exists. See GL_NV_vertex_array_range for more 39 information. 40 41 IP Status 42 43 None 44 45 Issues 46 47 None 48 49 New Procedures and Functions 50 51 unsigned int glXGetAGPOffsetMESA( const void *pointer ) 52 53 New Tokens 54 55 None 56 57 Additions to the OpenGL 1.4 Specification 58 59 None 60 61 Additions to Chapter 3 the GLX 1.4 Specification (Functions and Errors) 62 63 Add a new section, 3.6 as follows: 64 65 3.6 AGP Memory Access 66 67 On "PC" computers, AGP memory can be allocated with glXAllocateMemoryNV 68 and freed with glXFreeMemoryNV. Sometimes it's useful to know where a 69 block of AGP memory is located with respect to the start of the AGP 70 aperture. The function 71 72 GLuint glXGetAGPOffsetMESA( const GLvoid *pointer ) 73 74 Returns the offset of the given memory block from the start of AGP 75 memory in basic machine units (i.e. bytes). If pointer is invalid 76 the value ~0 will be returned. 77 78 GLX Protocol 79 80 None. This is a client side-only extension. 81 82 Errors 83 84 glXGetAGPOffsetMESA will return ~0 if the pointer does not point to 85 an AGP memory region. 86 87 New State 88 89 None 90 91 Revision History 92 93 20 September 2002 - Initial draft 94 2 October 2002 - finished GLX chapter 3 additions 95 27 July 2004 - use unsigned int instead of GLuint, void instead of GLvoid 96