2
* Copyright © 2003 Keith Packard
4
* Permission to use, copy, modify, distribute, and sell this software and its
5
* documentation for any purpose is hereby granted without fee, provided that
6
* the above copyright notice appear in all copies and that both that
7
* copyright notice and this permission notice appear in supporting
8
* documentation, and that the name of Keith Packard not be used in
9
* advertising or publicity pertaining to distribution of the software without
10
* specific, written prior permission. Keith Packard makes no
11
* representations about the suitability of this software for any purpose. It
12
* is provided "as is" without express or implied warranty.
14
* KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
15
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
16
* EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
17
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
18
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
19
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
20
* PERFORMANCE OF THIS SOFTWARE.
26
#include <X11/extensions/shmproto.h>
28
#include "screenint.h"
32
#define XSHM_PUT_IMAGE_ARGS \
33
DrawablePtr /* dst */, \
36
unsigned int /* format */, \
47
#define XSHM_CREATE_PIXMAP_ARGS \
48
ScreenPtr /* pScreen */, \
54
typedef struct _ShmFuncs {
55
PixmapPtr (*CreatePixmap) (XSHM_CREATE_PIXMAP_ARGS);
56
void (*PutImage) (XSHM_PUT_IMAGE_ARGS);
57
} ShmFuncs, *ShmFuncsPtr;
60
#define SHM_FD_PASSING 1
63
typedef struct _ShmDesc {
64
struct _ShmDesc *next;
72
struct busfault *busfault;
75
} ShmDescRec, *ShmDescPtr;
78
#define SHMDESC_IS_FD(shmdesc) ((shmdesc)->is_fd)
80
#define SHMDESC_IS_FD(shmdesc) (0)
84
ShmRegisterFuncs(ScreenPtr pScreen, ShmFuncsPtr funcs);
87
ShmRegisterFbFuncs(ScreenPtr pScreen);
89
extern _X_EXPORT RESTYPE ShmSegType;
90
extern _X_EXPORT int ShmCompletionCode;
91
extern _X_EXPORT int BadShmSegCode;
93
#endif /* _SHMINT_H_ */