#ifndef _XSHM_H_
#define _XSHM_H_
#include <X11/Xfuncproto.h>
#include <X11/extensions/shm.h>
#ifndef _XSHM_SERVER_
typedef unsigned long ShmSeg;
typedef struct {
int type;
unsigned long serial;
Bool send_event;
Display *display;
Drawable drawable;
int major_code;
int minor_code;
ShmSeg shmseg;
unsigned long offset;
} XShmCompletionEvent;
typedef struct {
ShmSeg shmseg;
int shmid;
char *shmaddr;
Bool readOnly;
} XShmSegmentInfo;
_XFUNCPROTOBEGIN
Bool XShmQueryExtension(
Display*
);
int XShmGetEventBase(
Display*
);
Bool XShmQueryVersion(
Display* ,
int* ,
int* ,
Bool*
);
int XShmPixmapFormat(
Display*
);
Bool XShmAttach(
Display* ,
XShmSegmentInfo*
);
Bool XShmDetach(
Display* ,
XShmSegmentInfo*
);
Bool XShmPutImage(
Display* ,
Drawable ,
GC ,
XImage* ,
int ,
int ,
int ,
int ,
unsigned int ,
unsigned int ,
Bool
);
Bool XShmGetImage(
Display* ,
Drawable ,
XImage* ,
int ,
int ,
unsigned long
);
XImage *XShmCreateImage(
Display* ,
Visual* ,
unsigned int ,
int ,
char* ,
XShmSegmentInfo* ,
unsigned int ,
unsigned int
);
Pixmap XShmCreatePixmap(
Display* ,
Drawable ,
char* ,
XShmSegmentInfo* ,
unsigned int ,
unsigned int ,
unsigned int
);
_XFUNCPROTOEND
#endif
#endif