117ca54c3Smrg/************************************************************
217ca54c3Smrg
317ca54c3SmrgCopyright 1989, 1998  The Open Group
417ca54c3Smrg
517ca54c3SmrgPermission to use, copy, modify, distribute, and sell this software and its
617ca54c3Smrgdocumentation for any purpose is hereby granted without fee, provided that
717ca54c3Smrgthe above copyright notice appear in all copies and that both that
817ca54c3Smrgcopyright notice and this permission notice appear in supporting
917ca54c3Smrgdocumentation.
1017ca54c3Smrg
1117ca54c3SmrgThe above copyright notice and this permission notice shall be included in
1217ca54c3Smrgall copies or substantial portions of the Software.
1317ca54c3Smrg
1417ca54c3SmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1517ca54c3SmrgIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1617ca54c3SmrgFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
1717ca54c3SmrgOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
1817ca54c3SmrgAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
1917ca54c3SmrgCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2017ca54c3Smrg
2117ca54c3SmrgExcept as contained in this notice, the name of The Open Group shall not be
2217ca54c3Smrgused in advertising or otherwise to promote the sale, use or other dealings
2317ca54c3Smrgin this Software without prior written authorization from The Open Group.
2417ca54c3Smrg
2517ca54c3Smrg********************************************************/
2617ca54c3Smrg
2717ca54c3Smrg/* THIS IS NOT AN X CONSORTIUM STANDARD OR AN X PROJECT TEAM SPECIFICATION */
2817ca54c3Smrg
2917ca54c3Smrg#ifndef _SHMSTR_H_
3017ca54c3Smrg#define _SHMSTR_H_
3117ca54c3Smrg
3217ca54c3Smrg#include <X11/extensions/shmproto.h>
3317ca54c3Smrg
3417ca54c3Smrg#ifdef _XSHM_SERVER_
3517ca54c3Smrg#define XSHM_PUT_IMAGE_ARGS \
3617ca54c3Smrg    DrawablePtr		/* dst */, \
3717ca54c3Smrg    GCPtr		/* pGC */, \
3817ca54c3Smrg    int			/* depth */, \
3917ca54c3Smrg    unsigned int	/* format */, \
4017ca54c3Smrg    int			/* w */, \
4117ca54c3Smrg    int			/* h */, \
4217ca54c3Smrg    int			/* sx */, \
4317ca54c3Smrg    int			/* sy */, \
4417ca54c3Smrg    int			/* sw */, \
4517ca54c3Smrg    int			/* sh */, \
4617ca54c3Smrg    int			/* dx */, \
4717ca54c3Smrg    int			/* dy */, \
4817ca54c3Smrg    char *		/* data */
4917ca54c3Smrg
5017ca54c3Smrg#define XSHM_CREATE_PIXMAP_ARGS \
5117ca54c3Smrg    ScreenPtr	/* pScreen */, \
5217ca54c3Smrg    int		/* width */, \
5317ca54c3Smrg    int		/* height */, \
5417ca54c3Smrg    int		/* depth */, \
5517ca54c3Smrg    char *	/* addr */
5617ca54c3Smrg
5717ca54c3Smrgtypedef struct _ShmFuncs {
5817ca54c3Smrg    PixmapPtr	(* CreatePixmap)(XSHM_CREATE_PIXMAP_ARGS);
5917ca54c3Smrg    void	(* PutImage)(XSHM_PUT_IMAGE_ARGS);
6017ca54c3Smrg} ShmFuncs, *ShmFuncsPtr;
6117ca54c3Smrg#endif
6217ca54c3Smrg
6317ca54c3Smrg#endif /* _SHMSTR_H_ */
64