/*
$Xorg: record.h,v 1.3 2000/08/18 04:05:46 coskrey Exp $
*/
/***************************************************************************
* Copyright 1995 Network Computing Devices
*
* Permission to use, copy, modify, distribute, and sell this software and
* its documentation for any purpose is hereby granted without fee, provided
* that the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
* documentation, and that the name of Network Computing Devices
* not be used in advertising or publicity pertaining to distribution
* of the software without specific, written prior permission.
*
* NETWORK COMPUTING DEVICES DISCLAIMs ALL WARRANTIES WITH REGARD TO
* THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
* AND FITNESS, IN NO EVENT SHALL NETWORK COMPUTING DEVICES BE LIABLE
* FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
* AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
* OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
**************************************************************************/
#ifndef _RECORD_H_
#define _RECORD_H_
/*
* Constants for arguments of various requests
*/
#define XRecordFromServer 0
typedef unsigned long XRecordClientSpec;
#ifndef _XRECORD_SERVER_
typedef unsigned long XRecordContext;
typedef struct
{
unsigned char first;
unsigned char last;
typedef struct
{
unsigned short first;
unsigned short last;
typedef struct
{
typedef struct
{
} XRecordRange;
typedef struct
{
unsigned long nranges;
typedef struct
{
int datum_flags;
unsigned long nclients;
} XRecordState;
typedef struct
{
unsigned long client_seq;
int category;
unsigned char *data;
/*********************************************************
*
* Prototypes
*
*/
#endif
);
extern Status XRecordQueryVersion(
Display* /* dpy */,
int* /* cmajor_return */,
int* /* cminor_return */
#endif
);
extern XRecordContext XRecordCreateContext(
Display* /* dpy */,
int /* datum_flags */,
XRecordClientSpec* /* clients */,
int /* nclients */,
XRecordRange** /* ranges */,
int /* nranges */
#endif
);
extern XRecordRange *XRecordAllocRange(
void
#endif
);
extern Status XRecordRegisterClients(
Display* /* dpy */,
XRecordContext /* context */,
int /* datum_flags */,
XRecordClientSpec* /* clients */,
int /* nclients */,
XRecordRange** /* ranges */,
int /* nranges */
#endif
);
extern Status XRecordUnregisterClients(
Display* /* dpy */,
XRecordContext /* context */,
XRecordClientSpec* /* clients */,
int /* nclients */
#endif
);
extern Status XRecordGetContext(
Display* /* dpy */,
XRecordContext /* context */,
XRecordState** /* state_return */
#endif
);
extern void XRecordFreeState(
XRecordState* /* state */
#endif
);
typedef void (*XRecordInterceptProc) (
XPointer /* closure */,
XRecordInterceptData* /* recorded_data */
#endif
);
extern Status XRecordEnableContext(
Display* /* dpy */,
XRecordContext /* context */,
XRecordInterceptProc /* callback */,
XPointer /* closure */
#endif
);
extern Status XRecordEnableContextAsync(
Display* /* dpy */,
XRecordContext /* context */,
XRecordInterceptProc /* callback */,
XPointer /* closure */
#endif
);
extern void XRecordProcessReplies(
Display* /* dpy */
#endif
);
extern void XRecordFreeData(
XRecordInterceptData* /* data */
#endif
);
extern Status XRecordDisableContext(
Display* /* dpy */,
XRecordContext /* context */
#endif
);
extern Status XRecordFreeContext(
Display* /* dpy */,
XRecordContext /* context */
#endif
);
#endif /* _XRECORD_SERVER_ */
#endif /* _RECORD_H_ */