03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * Copyright © 2003 Keith Packard
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * Permission to use, copy, modify, distribute, and sell this software and its
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * documentation for any purpose is hereby granted without fee, provided that
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * the above copyright notice appear in all copies and that both that
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * copyright notice and this permission notice appear in supporting
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * documentation, and that the name of Keith Packard not be used in
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * advertising or publicity pertaining to distribution of the software without
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * specific, written prior permission. Keith Packard makes no
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * representations about the suitability of this software for any purpose. It
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * is provided "as is" without express or implied warranty.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * PERFORMANCE OF THIS SOFTWARE.
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync RegionRec pendingDamage; /* will be flushed post submission at the latest */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync RegionRec backupDamage; /* for use with damageMarker */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * For DDXen which don't provide GetScreenPixmap, this provides
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync * a place to hook damage for windows on the screen
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync /* Table of wrappable function pointers */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync/* XXX should move these into damage.c, damageScrPrivateIndex is static */
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#define damageGetScrPriv(pScr) ((DamageScrPrivPtr) \
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync dixLookupPrivate(&(pScr)->devPrivates, damageScrPrivateKey))
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync dixLookupPrivate(&(pPix)->devPrivates, damagePixPrivateKey)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync dixSetPrivate(&(pPix)->devPrivates, damagePixPrivateKey, v)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync dixLookupPrivate(&(pGC)->devPrivates, damageGCPrivateKey)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync ((DamagePtr)dixLookupPrivate(&(pWin)->devPrivates, damageWinPrivateKey))
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync dixSetPrivate(&(pWin)->devPrivates, damageWinPrivateKey, d)
03532efdc331b598d3dedc8cc7477641c3b0dd12vboxsync#endif /* _DAMAGESTR_H_ */