45e9809aff7304721fddb95654901b32195c9c7avboxsync/*
45e9809aff7304721fddb95654901b32195c9c7avboxsync * misprite.h
45e9809aff7304721fddb95654901b32195c9c7avboxsync *
45e9809aff7304721fddb95654901b32195c9c7avboxsync * software-sprite/sprite drawing interface spec
45e9809aff7304721fddb95654901b32195c9c7avboxsync *
45e9809aff7304721fddb95654901b32195c9c7avboxsync * mi versions of these routines exist.
45e9809aff7304721fddb95654901b32195c9c7avboxsync */
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync/*
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncCopyright 1989, 1998 The Open Group
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncPermission to use, copy, modify, distribute, and sell this software and its
45e9809aff7304721fddb95654901b32195c9c7avboxsyncdocumentation for any purpose is hereby granted without fee, provided that
45e9809aff7304721fddb95654901b32195c9c7avboxsyncthe above copyright notice appear in all copies and that both that
45e9809aff7304721fddb95654901b32195c9c7avboxsynccopyright notice and this permission notice appear in supporting
45e9809aff7304721fddb95654901b32195c9c7avboxsyncdocumentation.
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncThe above copyright notice and this permission notice shall be included in
45e9809aff7304721fddb95654901b32195c9c7avboxsyncall copies or substantial portions of the Software.
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
45e9809aff7304721fddb95654901b32195c9c7avboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
45e9809aff7304721fddb95654901b32195c9c7avboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
45e9809aff7304721fddb95654901b32195c9c7avboxsyncOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
45e9809aff7304721fddb95654901b32195c9c7avboxsyncAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
45e9809aff7304721fddb95654901b32195c9c7avboxsyncCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncExcept as contained in this notice, the name of The Open Group shall not be
45e9809aff7304721fddb95654901b32195c9c7avboxsyncused in advertising or otherwise to promote the sale, use or other dealings
45e9809aff7304721fddb95654901b32195c9c7avboxsyncin this Software without prior written authorization from The Open Group.
45e9809aff7304721fddb95654901b32195c9c7avboxsync*/
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsynctypedef struct {
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool (*RealizeCursor)(
45e9809aff7304721fddb95654901b32195c9c7avboxsync ScreenPtr /*pScreen*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync CursorPtr /*pCursor*/
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool (*UnrealizeCursor)(
45e9809aff7304721fddb95654901b32195c9c7avboxsync ScreenPtr /*pScreen*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync CursorPtr /*pCursor*/
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool (*PutUpCursor)(
45e9809aff7304721fddb95654901b32195c9c7avboxsync ScreenPtr /*pScreen*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync CursorPtr /*pCursor*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*x*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*y*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long /*source*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long /*mask*/
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool (*SaveUnderCursor)(
45e9809aff7304721fddb95654901b32195c9c7avboxsync ScreenPtr /*pScreen*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*x*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*y*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*w*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*h*/
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool (*RestoreUnderCursor)(
45e9809aff7304721fddb95654901b32195c9c7avboxsync ScreenPtr /*pScreen*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*x*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*y*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*w*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*h*/
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool (*MoveCursor)(
45e9809aff7304721fddb95654901b32195c9c7avboxsync ScreenPtr /*pScreen*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync CursorPtr /*pCursor*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*x*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*y*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*w*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*h*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*dx*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*dy*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long /*source*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync unsigned long /*mask*/
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync Bool (*ChangeSave)(
45e9809aff7304721fddb95654901b32195c9c7avboxsync ScreenPtr /*pScreen*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*x*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*y*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*w*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*h*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*dx*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync int /*dy*/
45e9809aff7304721fddb95654901b32195c9c7avboxsync);
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsync} miSpriteCursorFuncRec, *miSpriteCursorFuncPtr;
45e9809aff7304721fddb95654901b32195c9c7avboxsync
45e9809aff7304721fddb95654901b32195c9c7avboxsyncextern Bool miSpriteInitialize(
45e9809aff7304721fddb95654901b32195c9c7avboxsync ScreenPtr /*pScreen*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync miSpriteCursorFuncPtr /*cursorFuncs*/,
45e9809aff7304721fddb95654901b32195c9c7avboxsync miPointerScreenFuncPtr /*screenFuncs*/
45e9809aff7304721fddb95654901b32195c9c7avboxsync);