xenocara/lib/libXRes/include/X11/extensions/XRes.h

136 lines
2.5 KiB
C
Raw Normal View History

2006-11-25 09:46:32 -07:00
/*
Copyright (c) 2002 XFree86 Inc
*/
#ifndef _XRES_H
#define _XRES_H
#include <X11/Xfuncproto.h>
2017-10-22 03:14:28 -06:00
/* v1.0 */
2006-11-25 09:46:32 -07:00
typedef struct {
XID resource_base;
XID resource_mask;
} XResClient;
typedef struct {
Atom resource_type;
unsigned int count;
} XResType;
2017-10-22 03:14:28 -06:00
/* v1.2 */
typedef enum {
XRES_CLIENT_ID_XID,
XRES_CLIENT_ID_PID,
XRES_CLIENT_ID_NR
} XResClientIdType;
typedef enum {
XRES_CLIENT_ID_XID_MASK = 1 << XRES_CLIENT_ID_XID,
XRES_CLIENT_ID_PID_MASK = 1 << XRES_CLIENT_ID_PID
} XResClientIdMask;
typedef struct {
XID client;
unsigned int mask;
} XResClientIdSpec;
typedef struct {
XResClientIdSpec spec;
long length;
void *value;
} XResClientIdValue;
typedef struct {
XID resource;
Atom type;
} XResResourceIdSpec;
typedef struct {
XResResourceIdSpec spec;
long bytes;
long ref_count;
long use_count;
} XResResourceSizeSpec;
typedef struct {
XResResourceSizeSpec size;
long num_cross_references;
XResResourceSizeSpec *cross_references;
} XResResourceSizeValue;
2006-11-25 09:46:32 -07:00
_XFUNCPROTOBEGIN
2017-10-22 03:14:28 -06:00
/* v1.0 */
2006-11-25 09:46:32 -07:00
Bool XResQueryExtension (
Display *dpy,
2009-10-31 11:40:00 -06:00
int *event_base_return,
int *error_base_return
2006-11-25 09:46:32 -07:00
);
Status XResQueryVersion (
Display *dpy,
2009-10-31 11:40:00 -06:00
int *major_version_return,
int *minor_version_return
2006-11-25 09:46:32 -07:00
);
Status XResQueryClients (
Display *dpy,
int *num_clients,
XResClient **clients
);
Status XResQueryClientResources (
Display *dpy,
XID xid,
int *num_types,
XResType **types
);
Status XResQueryClientPixmapBytes (
Display *dpy,
XID xid,
unsigned long *bytes
);
2017-10-22 03:14:28 -06:00
/* v1.2 */
Status XResQueryClientIds (
Display *dpy,
long num_specs,
XResClientIdSpec *client_specs, /* in */
long *num_ids, /* out */
XResClientIdValue **client_ids /* out */
);
XResClientIdType XResGetClientIdType(XResClientIdValue* value);
/* return -1 if no pid associated to the value */
pid_t XResGetClientPid(XResClientIdValue* value);
void XResClientIdsDestroy (
long num_ids,
XResClientIdValue *client_ids
);
Status XResQueryResourceBytes (
Display *dpy,
XID client,
long num_specs,
XResResourceIdSpec *resource_specs, /* in */
long *num_sizes, /* out */
XResResourceSizeValue **sizes /* out */
);
void XResResourceSizeValuesDestroy (
long num_sizes,
XResResourceSizeValue *sizes
);
2006-11-25 09:46:32 -07:00
_XFUNCPROTOEND
#endif /* _XRES_H */