diff options
author | marha <marha@users.sourceforge.net> | 2009-07-25 20:12:58 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2009-07-25 20:12:58 +0000 |
commit | 2553bdd7c359cd87525d367761c86932cec5adff (patch) | |
tree | ae71245933c98474a699d3e392de5820879b2018 /xorg-server/miext/damage/damage.h | |
parent | e2c51f2ee7b0a3ea1a052fc49324057b4a4bbc78 (diff) | |
parent | 4a3dbb926ae3f5410198d7cc4f4ebe4f62eebf05 (diff) | |
download | vcxsrv-2553bdd7c359cd87525d367761c86932cec5adff.tar.gz vcxsrv-2553bdd7c359cd87525d367761c86932cec5adff.tar.bz2 vcxsrv-2553bdd7c359cd87525d367761c86932cec5adff.zip |
svn merge file:///D:/svnrepos/vcxsrv/branches/released .
Diffstat (limited to 'xorg-server/miext/damage/damage.h')
-rw-r--r-- | xorg-server/miext/damage/damage.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/xorg-server/miext/damage/damage.h b/xorg-server/miext/damage/damage.h index 102da6ebe..a70f1f86e 100644 --- a/xorg-server/miext/damage/damage.h +++ b/xorg-server/miext/damage/damage.h @@ -39,6 +39,9 @@ typedef enum _damageReportLevel { typedef void (*DamageReportFunc) (DamagePtr pDamage, RegionPtr pRegion, void *closure); typedef void (*DamageDestroyFunc) (DamagePtr pDamage, void *closure); +/* It's the responsibility of the driver to duplicate both regions. */ +/* At some point DamageRegionRendered() must be called. */ +typedef void (*DamageMarkerFunc) (DrawablePtr pDrawable, DamagePtr pDamage, RegionPtr pOldDamage, RegionPtr pRegion, void *closure); Bool DamageSetup (ScreenPtr pScreen); @@ -78,6 +81,19 @@ DamageRegion (DamagePtr pDamage); RegionPtr DamagePendingRegion (DamagePtr pDamage); +/* In case of rendering, call this before the submitting the commands. */ +void +DamageRegionAppend (DrawablePtr pDrawable, RegionPtr pRegion); + +/* Call this directly after the rendering operation has been submitted. */ +void +DamageRegionProcessPending (DrawablePtr pDrawable); + +/* Call this some time after rendering is done, only relevant when a damageMarker is provided. */ +void +DamageRegionRendered (DrawablePtr pDrawable, DamagePtr pDamage, RegionPtr pOldDamage, RegionPtr pRegion); + +/* Avoid using this call, it only exists for API compatibility. */ void DamageDamageRegion (DrawablePtr pDrawable, const RegionPtr pRegion); @@ -85,4 +101,8 @@ DamageDamageRegion (DrawablePtr pDrawable, void DamageSetReportAfterOp (DamagePtr pDamage, Bool reportAfter); +void +DamageSetPostRenderingFunctions(DamagePtr pDamage, DamageReportFunc damageReportPostRendering, + DamageMarkerFunc damageMarker); + #endif /* _DAMAGE_H_ */ |