Changeset 21611 in vbox for trunk/src/VBox/Additions
- Timestamp:
- Jul 15, 2009 2:42:25 PM (15 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/Display
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Display/dd.c
r21609 r21611 1055 1055 { 1056 1056 VBOXVHWACMD_SURF_LOCK * pBody = VBOXVHWACMD_BODY(pCmd, VBOXVHWACMD_SURF_LOCK); 1057 RECT tmpRect, *pRect;1057 RECTL tmpRect, *pRect; 1058 1058 memset(pBody, 0, sizeof(VBOXVHWACMD_SURF_LOCK)); 1059 1059 … … 1065 1065 vboxVHWAFromRECTL(&pBody->u.in.rect, &lpLock->rArea); 1066 1066 pBody->u.in.rectValid = 1; 1067 1068 pRect = &lpLock->rArea; 1069 1067 1070 } 1068 1071 else 1069 1072 { 1070 1073 pBody->u.in.rectValid = 0; 1071 } 1072 1073 pBody->u.in.hSurf = pDesc->hHostHandle; 1074 1075 if(lpLock->bHasRect) 1076 { 1077 pRect = &lpLock->rArea; 1078 } 1079 else 1080 { 1074 1081 1075 tmpRect.left=0; 1082 1076 tmpRect.top=0; … … 1085 1079 pRect = &tmpRect; 1086 1080 } 1081 1082 pBody->u.in.hSurf = pDesc->hHostHandle; 1087 1083 1088 1084 if(VBOXDD_CHECKFLAG(lpLock->dwFlags, DDLOCK_DISCARDCONTENTS)) … … 1108 1104 vboxVHWACommandSubmit(pDev, pCmd); 1109 1105 vboxVHWACommandFree(pDev, pCmd); 1106 vboxVHWARegionClear(&pDesc->DirtyRegion); 1110 1107 } 1111 1108 … … 1485 1482 ASMAtomicIncU32(&pDestDesc->cPendingBltsDst); 1486 1483 1487 // if(VBOXDD_CHECKFLAG(lpBlt->dwFlags, DDBLT_ASYNC)) 1488 // { 1489 vboxVHWACommandSubmitAsynch(pDev, pCmd, vboxVHWASurfBltCompletion, NULL); 1490 // } 1491 // else 1492 // { 1493 // vboxVHWACommandSubmit(pDev, pCmd); 1494 // } 1484 vboxVHWARegionAdd(&pDestDesc->DirtyRegion, &lpBlt->rDest); 1485 vboxVHWACommandSubmitAsynch(pDev, pCmd, vboxVHWASurfBltCompletion, NULL); 1486 1495 1487 lpBlt->ddRVal = DD_OK; 1496 1488 } -
trunk/src/VBox/Additions/WINNT/Graphics/Display/driver.h
r21596 r21611 97 97 typedef struct _VBOXVHWAREGION 98 98 { 99 RECT Rect;99 RECTL Rect; 100 100 bool bValid; 101 101 }VBOXVHWAREGION, *PVBOXVHWAREGION; … … 295 295 typedef DECLCALLBACK(void) FNVBOXVHWACMDCOMPLETION(PPDEV ppdev, VBOXVHWACMD * pCmd, void * pContext); 296 296 typedef FNVBOXVHWACMDCOMPLETION *PFNVBOXVHWACMDCOMPLETION; 297 298 void vboxVHWARectUnited(RECTL * pDst, RECTL * pRect1, RECTL * pRect2); 299 bool vboxVHWARectIsEmpty(RECTL * pRect); 300 bool vboxVHWARectIntersect(RECTL * pRect1, RECTL * pRect2); 301 bool vboxVHWARectInclude(RECTL * pRect1, RECTL * pRect2); 302 bool vboxVHWARegionIntersects(PVBOXVHWAREGION pReg, RECTL * pRect); 303 bool vboxVHWARegionIncludes(PVBOXVHWAREGION pReg, RECTL * pRect); 304 bool vboxVHWARegionIncluded(PVBOXVHWAREGION pReg, RECTL * pRect); 305 void vboxVHWARegionSet(PVBOXVHWAREGION pReg, RECTL * pRect); 306 void vboxVHWARegionAdd(PVBOXVHWAREGION pReg, RECTL * pRect); 307 void vboxVHWARegionInit(PVBOXVHWAREGION pReg); 308 void vboxVHWARegionClear(PVBOXVHWAREGION pReg); 297 309 298 310 VBOXVHWACMD* vboxVHWACommandCreate (PPDEV ppdev, VBOXVHWACMD_TYPE enmCmd, VBOXVHWACMD_LENGTH cbCmd);
Note:
See TracChangeset
for help on using the changeset viewer.