Blame src/Xxcbint.h

Packit Service dc579d
/* Copyright (C) 2003-2006 Jamey Sharp, Josh Triplett
Packit Service dc579d
 * This file is licensed under the MIT license. See the file COPYING. */
Packit Service dc579d
Packit Service dc579d
#ifndef XXCBINT_H
Packit Service dc579d
#define XXCBINT_H
Packit Service dc579d
Packit Service dc579d
#include <assert.h>
Packit Service dc579d
#include <stdint.h>
Packit Service dc579d
#include <X11/Xlibint.h>
Packit Service dc579d
#ifdef WIN32
Packit Service dc579d
#include <X11/Xwindows.h>
Packit Service dc579d
#endif
Packit Service dc579d
#include <X11/Xlib-xcb.h>
Packit Service dc579d
#include "locking.h"
Packit Service dc579d
Packit Service dc579d
#define XLIB_SEQUENCE_COMPARE(a,op,b)	(((int64_t) (a) - (int64_t) (b)) op 0)
Packit Service dc579d
Packit Service dc579d
typedef struct PendingRequest PendingRequest;
Packit Service dc579d
struct PendingRequest {
Packit Service dc579d
	PendingRequest *next;
Packit Service dc579d
	uint64_t sequence;
Packit Service dc579d
	unsigned reply_waiter;
Packit Service dc579d
};
Packit Service dc579d
Packit Service dc579d
typedef struct _X11XCBPrivate {
Packit Service dc579d
	xcb_connection_t *connection;
Packit Service dc579d
	PendingRequest *pending_requests;
Packit Service dc579d
	PendingRequest *pending_requests_tail;
Packit Service dc579d
	xcb_generic_event_t *next_event;
Packit Service dc579d
	char *real_bufmax;
Packit Service dc579d
	char *reply_data;
Packit Service dc579d
	int reply_length;
Packit Service dc579d
	int reply_consumed;
Packit Service dc579d
	uint64_t last_flushed;
Packit Service dc579d
	enum XEventQueueOwner event_owner;
Packit Service dc579d
	XID next_xid;
Packit Service dc579d
Packit Service dc579d
	/* handle simultaneous threads waiting for responses */
Packit Service dc579d
	xcondition_t event_notify;
Packit Service dc579d
	int event_waiter;
Packit Service dc579d
	xcondition_t reply_notify;
Packit Service dc579d
} _X11XCBPrivate;
Packit Service dc579d
Packit Service dc579d
/* xcb_disp.c */
Packit Service dc579d
Packit Service dc579d
int _XConnectXCB(Display *dpy, _Xconst char *display, int *screenp);
Packit Service dc579d
void _XFreeX11XCBStructure(Display *dpy);
Packit Service dc579d
Packit Service dc579d
_X_HIDDEN
Packit Service dc579d
unsigned long _XNextRequest(Display *dpy);
Packit Service dc579d
Packit Service dc579d
#endif /* XXCBINT_H */