dristruct.h revision 45e9809aff7304721fddb95654901b32195c9c7a
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff/**************************************************************************
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffCopyright 1998-1999 Precision Insight, Inc., Cedar Park, Texas.
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffAll Rights Reserved.
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffPermission is hereby granted, free of charge, to any person obtaining a
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffcopy of this software and associated documentation files (the
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff"Software"), to deal in the Software without restriction, including
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffwithout limitation the rights to use, copy, modify, merge, publish,
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffdistribute, sub license, and/or sell copies of the Software, and to
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffpermit persons to whom the Software is furnished to do so, subject to
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffthe following conditions:
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffThe above copyright notice and this permission notice (including the
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffnext paragraph) shall be included in all copies or substantial portions
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffof the Software.
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffOR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffIN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffTORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduffSOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff**************************************************************************/
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff * Jens Owen <jens@tungstengraphics.com>
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff#define DRI_DRAWABLE_PRIV_FROM_WINDOW(pWin) ((DRIDrawablePrivPtr) \
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff dixLookupPrivate(&(pWin)->devPrivates, DRIWindowPrivKey))
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff#define DRI_DRAWABLE_PRIV_FROM_PIXMAP(pPix) ((DRIDrawablePrivPtr) \
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff dixLookupPrivate(&(pPix)->devPrivates, DRIWindowPrivKey))
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff#define DRI_SCREEN_PRIV(pScreen) ((DRIScreenPrivPtr) \
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff dixLookupPrivate(&(pScreen)->devPrivates, DRIScreenPrivKey))
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff#define DRI_SCREEN_PRIV_FROM_INDEX(screenIndex) ((DRIScreenPrivPtr) \
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff dixLookupPrivate(&screenInfo.screens[screenIndex]->devPrivates, \
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff ((DRIEntPrivPtr)(xf86GetEntityPrivate((pScrn)->entityList[0], \
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff drm_handle_t hSAREA; /* Handle to SAREA, for mapping */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff XF86DRISAREAPtr pSAREA; /* Mapped pointer to SAREA */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff DRIContextPrivPtr myContextPriv;/* Pointer to server's private area */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff DRIContextPrivPtr lastPartial3DContext; /* last one partially saved */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff void** partial3DContextStore; /* parital 3D context */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff drm_clip_rect_t private_buffer_rect; /* management of private buffers */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff DrawablePtr fullscreen; /* pointer to fullscreen drawable */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff drm_clip_rect_t fullscreen_rect; /* fake rect for fullscreen mode */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff DRIContextPrivPtr dummyCtxPriv; /* Pointer to dummy context */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff drm_handle_t hLSAREA; /* Handle to SAREA containing lock, for mapping */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff XF86DRILSAREAPtr pLSAREA; /* Mapped pointer to SAREA containing lock */
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcdufftypedef struct _DRIEntPrivRec {
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff unsigned long sAreaSize;
d25372dc8e65a9ed019a88fdf659ca61313f1b31jcduff#endif /* DRI_STRUCT_H */