Lines Matching refs:pDraw

117 DRI2GetDrawable(DrawablePtr pDraw)
122 switch (pDraw->type) {
124 pWin = (WindowPtr) pDraw;
127 pPixmap = (PixmapPtr) pDraw;
135 DRI2DrawableSerial(DrawablePtr pDraw)
137 ScreenPtr pScreen = pDraw->pScreen;
140 if (pDraw->type != DRAWABLE_WINDOW)
141 return pDraw->serialNumber;
143 pPix = pScreen->GetWindowPixmap((WindowPtr)pDraw);
148 DRI2AllocateDrawable(DrawablePtr pDraw)
150 DRI2ScreenPtr ds = DRI2GetScreen(pDraw->pScreen);
161 pPriv->drawable = pDraw;
162 pPriv->width = pDraw->width;
163 pPriv->height = pDraw->height;
173 if (!ds->GetMSC || !(*ds->GetMSC)(pDraw, &ust, &pPriv->last_swap_target))
180 pPriv->serialNumber = DRI2DrawableSerial(pDraw);
182 if (pDraw->type == DRAWABLE_WINDOW) {
183 pWin = (WindowPtr) pDraw;
186 pPixmap = (PixmapPtr) pDraw;
245 DRI2CreateDrawable(ClientPtr client, DrawablePtr pDraw, XID id,
252 pPriv = DRI2GetDrawable(pDraw);
254 pPriv = DRI2AllocateDrawable(pDraw);
273 DrawablePtr pDraw;
297 pDraw = pPriv->drawable;
298 if (pDraw->type == DRAWABLE_WINDOW) {
299 pWin = (WindowPtr) pDraw;
302 pPixmap = (PixmapPtr) pDraw;
308 (*ds->DestroyBuffer)(pDraw, pPriv->buffers[i]);
338 allocate_or_reuse_buffer(DrawablePtr pDraw, DRI2ScreenPtr ds,
348 *buffer = (*ds->CreateBuffer)(pDraw, attachment, format);
349 pPriv->serialNumber = DRI2DrawableSerial(pDraw);
360 update_dri2_drawable_buffers(DRI2DrawablePtr pPriv, DrawablePtr pDraw,
363 DRI2ScreenPtr ds = DRI2GetScreen(pDraw->pScreen);
369 (*ds->DestroyBuffer)(pDraw, pPriv->buffers[i]);
378 pPriv->width = pDraw->width;
379 pPriv->height = pDraw->height;
385 do_get_buffers(DrawablePtr pDraw, int *width, int *height,
389 DRI2ScreenPtr ds = DRI2GetScreen(pDraw->pScreen);
390 DRI2DrawablePtr pPriv = DRI2GetDrawable(pDraw);
401 *width = pDraw->width;
402 *height = pDraw->height;
407 dimensions_match = (pDraw->width == pPriv->width)
408 && (pDraw->height == pPriv->height)
409 && (pPriv->serialNumber == DRI2DrawableSerial(pDraw));
417 if (allocate_or_reuse_buffer(pDraw, ds, pPriv, attachment,
439 if (pDraw->type == DRAWABLE_WINDOW) {
444 if (pDraw->type == DRAWABLE_WINDOW) {
453 if (allocate_or_reuse_buffer(pDraw, ds, pPriv, DRI2BufferFrontLeft,
464 if (allocate_or_reuse_buffer(pDraw, ds, pPriv, DRI2BufferFakeFrontLeft,
478 update_dri2_drawable_buffers(pPriv, pDraw, buffers, out_count, width, height);
494 DRI2CopyRegion(pDraw, &region, DRI2BufferFakeFrontLeft,
506 (*ds->DestroyBuffer)(pDraw, buffers[i]);
512 update_dri2_drawable_buffers(pPriv, pDraw, buffers, out_count, width, height);
518 DRI2GetBuffers(DrawablePtr pDraw, int *width, int *height,
521 return do_get_buffers(pDraw, width, height, attachments, count,
526 DRI2GetBuffersWithFormat(DrawablePtr pDraw, int *width, int *height,
529 return do_get_buffers(pDraw, width, height, attachments, count,
534 DRI2InvalidateDrawable(DrawablePtr pDraw)
536 DRI2DrawablePtr pPriv = DRI2GetDrawable(pDraw);
543 ref->invalidate(pDraw, ref->priv);
554 DRI2ThrottleClient(ClientPtr client, DrawablePtr pDraw)
558 pPriv = DRI2GetDrawable(pDraw);
585 DRI2BlockClient(ClientPtr client, DrawablePtr pDraw)
589 pPriv = DRI2GetDrawable(pDraw);
598 DRI2CopyRegion(DrawablePtr pDraw, RegionPtr pRegion,
601 DRI2ScreenPtr ds = DRI2GetScreen(pDraw->pScreen);
606 pPriv = DRI2GetDrawable(pDraw);
622 (*ds->CopyRegion)(pDraw, pRegion, pDestBuffer, pSrcBuffer);
629 DRI2CanFlip(DrawablePtr pDraw)
631 ScreenPtr pScreen = pDraw->pScreen;
635 if (pDraw->type == DRAWABLE_PIXMAP)
641 pWin = (WindowPtr) pDraw;
649 if (pDraw->x != 0 ||
650 pDraw->y != 0 ||
652 pDraw->x != pWinPixmap->screen_x ||
653 pDraw->y != pWinPixmap->screen_y ||
655 pDraw->width != pWinPixmap->drawable.width ||
656 pDraw->height != pWinPixmap->drawable.height)
664 DRI2CanExchange(DrawablePtr pDraw)
670 DRI2WaitMSCComplete(ClientPtr client, DrawablePtr pDraw, int frame,
675 pPriv = DRI2GetDrawable(pDraw);
690 DRI2WakeClient(ClientPtr client, DrawablePtr pDraw, int frame,
693 ScreenPtr pScreen = pDraw->pScreen;
696 pPriv = DRI2GetDrawable(pDraw);
728 DRI2SwapComplete(ClientPtr client, DrawablePtr pDraw, int frame,
732 ScreenPtr pScreen = pDraw->pScreen;
738 pPriv = DRI2GetDrawable(pDraw);
750 box.x2 = pDraw->width;
751 box.y2 = pDraw->height;
753 DRI2CopyRegion(pDraw, &region, DRI2BufferFakeFrontLeft,
763 DRI2WakeClient(client, pDraw, frame, tv_sec, tv_usec);
787 DRI2SwapBuffers(ClientPtr client, DrawablePtr pDraw, CARD64 target_msc,
791 ScreenPtr pScreen = pDraw->pScreen;
792 DRI2ScreenPtr ds = DRI2GetScreen(pDraw->pScreen);
798 pPriv = DRI2GetDrawable(pDraw);
824 box.x2 = pDraw->width;
825 box.y2 = pDraw->height;
830 (*ds->CopyRegion)(pDraw, &region, pDestBuffer, pSrcBuffer);
831 DRI2SwapComplete(client, pDraw, target_msc, 0, 0, DRI2_BLIT_COMPLETE,
849 if (!(*ds->GetMSC)(pDraw, &ust, &current_msc))
870 ret = (*ds->ScheduleSwap)(client, pDraw, pDestBuffer, pSrcBuffer,
886 DRI2InvalidateDrawable(pDraw);
908 DRI2GetMSC(DrawablePtr pDraw, CARD64 *ust, CARD64 *msc, CARD64 *sbc)
910 ScreenPtr pScreen = pDraw->pScreen;
911 DRI2ScreenPtr ds = DRI2GetScreen(pDraw->pScreen);
915 pPriv = DRI2GetDrawable(pDraw);
934 ret = (*ds->GetMSC)(pDraw, ust, msc);
944 DRI2WaitMSC(ClientPtr client, DrawablePtr pDraw, CARD64 target_msc,
947 DRI2ScreenPtr ds = DRI2GetScreen(pDraw->pScreen);
951 pPriv = DRI2GetDrawable(pDraw);
957 DRI2WaitMSCComplete(client, pDraw, target_msc, 0, 0);
962 ret = (*ds->ScheduleWaitMSC)(client, pDraw, target_msc, divisor, remainder);
970 DRI2WaitSBC(ClientPtr client, DrawablePtr pDraw, CARD64 target_sbc)
974 pPriv = DRI2GetDrawable(pDraw);
1044 DrawablePtr pDraw = (DrawablePtr)pWin;
1045 ScreenPtr pScreen = pDraw->pScreen;
1047 DRI2DrawablePtr dd = DRI2GetDrawable(pDraw);
1064 DRI2InvalidateDrawable(pDraw);