f0ab104f070bc7f569404826fea1828ed985638cvboxsync/***********************************************************
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncCopyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts,
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncand the Massachusetts Institute of Technology, Cambridge, Massachusetts.
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync All Rights Reserved
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncPermission to use, copy, modify, and distribute this software and its
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncdocumentation for any purpose and without fee is hereby granted,
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncprovided that the above copyright notice appear in all copies and that
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncboth that copyright notice and this permission notice appear in
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncsupporting documentation, and that the names of Digital or MIT not be
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncused in advertising or publicity pertaining to distribution of the
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncsoftware without specific, written prior permission.
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncDIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncDIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncWHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncSOFTWARE.
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync******************************************************************/
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#ifndef XVDIX_H
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#define XVDIX_H
f0ab104f070bc7f569404826fea1828ed985638cvboxsync/*
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** File:
f0ab104f070bc7f569404826fea1828ed985638cvboxsync**
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** xvdix.h --- Xv device independent header file
f0ab104f070bc7f569404826fea1828ed985638cvboxsync**
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** Author:
f0ab104f070bc7f569404826fea1828ed985638cvboxsync**
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** David Carver (Digital Workstation Engineering/Project Athena)
f0ab104f070bc7f569404826fea1828ed985638cvboxsync**
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** Revisions:
f0ab104f070bc7f569404826fea1828ed985638cvboxsync**
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** 29.08.91 Carver
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** - removed UnrealizeWindow wrapper unrealizing windows no longer
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** preempts video
f0ab104f070bc7f569404826fea1828ed985638cvboxsync**
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** 11.06.91 Carver
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** - changed SetPortControl to SetPortAttribute
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** - changed GetPortControl to GetPortAttribute
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** - changed QueryBestSize
f0ab104f070bc7f569404826fea1828ed985638cvboxsync**
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** 15.05.91 Carver
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** - version 2.0 upgrade
f0ab104f070bc7f569404826fea1828ed985638cvboxsync**
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** 24.01.91 Carver
f0ab104f070bc7f569404826fea1828ed985638cvboxsync** - version 1.4 upgrade
f0ab104f070bc7f569404826fea1828ed985638cvboxsync**
f0ab104f070bc7f569404826fea1828ed985638cvboxsync*/
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#include "scrnintstr.h"
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#include <X11/extensions/Xvproto.h>
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#ifndef XorgLoader
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT unsigned long XvExtensionGeneration;
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT unsigned long XvScreenGeneration;
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT unsigned long XvResourceGeneration;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvReqCode;
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvEventBase;
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvErrorBase;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT RESTYPE XvRTPort;
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT RESTYPE XvRTEncoding;
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT RESTYPE XvRTGrab;
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT RESTYPE XvRTVideoNotify;
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT RESTYPE XvRTVideoNotifyList;
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT RESTYPE XvRTPortNotify;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#endif
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int numerator;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int denominator;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvRationalRec, *XvRationalPtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync char depth;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned long visual;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvFormatRec, *XvFormatPtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned long id;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync ClientPtr client;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvGrabRec, *XvGrabPtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct _XvVideoNotifyRec {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync struct _XvVideoNotifyRec *next;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync ClientPtr client;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned long id;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned long mask;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvVideoNotifyRec, *XvVideoNotifyPtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct _XvPortNotifyRec {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync struct _XvPortNotifyRec *next;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync ClientPtr client;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned long id;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvPortNotifyRec, *XvPortNotifyPtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int id;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync ScreenPtr pScreen;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync char *name;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned short width, height;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvRationalRec rate;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvEncodingRec, *XvEncodingPtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct _XvAttributeRec {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int flags;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int min_value;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int max_value;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync char *name;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvAttributeRec, *XvAttributePtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int id;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int type;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int byte_order;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync char guid[16];
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int bits_per_pixel;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int format;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int num_planes;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync /* for RGB formats only */
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int depth;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int red_mask;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int green_mask;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int blue_mask;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync /* for YUV formats only */
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int y_sample_bits;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int u_sample_bits;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int v_sample_bits;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int horz_y_period;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int horz_u_period;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int horz_v_period;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int vert_y_period;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int vert_u_period;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int vert_v_period;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync char component_order[32];
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int scanline_order;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvImageRec, *XvImagePtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned long base_id;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned char type;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync char *name;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int nEncodings;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvEncodingPtr pEncodings;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int nFormats;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvFormatPtr pFormats;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int nAttributes;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvAttributePtr pAttributes;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int nImages;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvImagePtr pImages;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int nPorts;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync struct _XvPortRec *pPorts;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync ScreenPtr pScreen;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddAllocatePort)(unsigned long, struct _XvPortRec*,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync struct _XvPortRec**);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddFreePort)(struct _XvPortRec*);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddPutVideo)(ClientPtr, DrawablePtr,struct _XvPortRec*, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddPutStill)(ClientPtr, DrawablePtr,struct _XvPortRec*, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddGetVideo)(ClientPtr, DrawablePtr,struct _XvPortRec*, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddGetStill)(ClientPtr, DrawablePtr,struct _XvPortRec*, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddStopVideo)(ClientPtr, struct _XvPortRec*, DrawablePtr);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddSetPortAttribute)(ClientPtr, struct _XvPortRec*, Atom, INT32);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddGetPortAttribute)(ClientPtr, struct _XvPortRec*, Atom, INT32*);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddQueryBestSize)(ClientPtr, struct _XvPortRec*, CARD8,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync CARD16, CARD16,CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned int*, unsigned int*);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddPutImage)(ClientPtr, DrawablePtr, struct _XvPortRec*, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvImagePtr, unsigned char*, Bool,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddQueryImageAttributes)(ClientPtr, struct _XvPortRec*, XvImagePtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync CARD16*, CARD16*, int*, int*);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync DevUnion devPriv;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvAdaptorRec, *XvAdaptorPtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct _XvPortRec {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync unsigned long id;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvAdaptorPtr pAdaptor;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvPortNotifyPtr pNotify;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync DrawablePtr pDraw;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync ClientPtr client;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvGrabRec grab;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync TimeStamp time;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync DevUnion devPriv;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvPortRec, *XvPortPtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#define VALIDATE_XV_PORT(portID, pPort, mode)\
f0ab104f070bc7f569404826fea1828ed985638cvboxsync {\
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int rc = dixLookupResourceByType((pointer *)&(pPort), portID,\
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvRTPort, client, mode);\
f0ab104f070bc7f569404826fea1828ed985638cvboxsync if (rc != Success)\
f0ab104f070bc7f569404826fea1828ed985638cvboxsync return rc;\
f0ab104f070bc7f569404826fea1828ed985638cvboxsync }
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsynctypedef struct {
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int version, revision;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int nAdaptors;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvAdaptorPtr pAdaptors;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync DestroyWindowProcPtr DestroyWindow;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync DestroyPixmapProcPtr DestroyPixmap;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync CloseScreenProcPtr CloseScreen;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync Bool (* ddCloseScreen)(int, ScreenPtr);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync int (* ddQueryAdaptors)(ScreenPtr, XvAdaptorPtr*, int*);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync DevUnion devPriv;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync} XvScreenRec, *XvScreenPtr;
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#define SCREEN_PROLOGUE(pScreen, field) ((pScreen)->field = ((XvScreenPtr) \
f0ab104f070bc7f569404826fea1828ed985638cvboxsync dixLookupPrivate(&(pScreen)->devPrivates, XvScreenKey))->field)
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#define SCREEN_EPILOGUE(pScreen, field, wrapper)\
f0ab104f070bc7f569404826fea1828ed985638cvboxsync ((pScreen)->field = wrapper)
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync/* Errors */
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#define _XvBadPort (XvBadPort+XvErrorBase)
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#define _XvBadEncoding (XvBadEncoding+XvErrorBase)
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#ifndef XorgLoader
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int ProcXvDispatch(ClientPtr);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int SProcXvDispatch(ClientPtr);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT void XvExtensionInit(void);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvScreenInit(ScreenPtr);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT DevPrivateKey XvGetScreenKey(void);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT unsigned long XvGetRTPort(void);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiSendPortNotify(XvPortPtr, Atom, INT32);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiVideoStopped(XvPortPtr, int);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiPutVideo(ClientPtr, DrawablePtr, XvPortPtr, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiPutStill(ClientPtr, DrawablePtr, XvPortPtr, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiGetVideo(ClientPtr, DrawablePtr, XvPortPtr, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiGetStill(ClientPtr, DrawablePtr, XvPortPtr, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiPutImage(ClientPtr, DrawablePtr, XvPortPtr, GCPtr,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync INT16, INT16, CARD16, CARD16,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync XvImagePtr, unsigned char*, Bool,
f0ab104f070bc7f569404826fea1828ed985638cvboxsync CARD16, CARD16);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiSelectVideoNotify(ClientPtr, DrawablePtr, BOOL);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiSelectPortNotify(ClientPtr, XvPortPtr, BOOL);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiSetPortAttribute(ClientPtr, XvPortPtr, Atom, INT32);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiGetPortAttribute(ClientPtr, XvPortPtr, Atom, INT32*);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiStopVideo(ClientPtr, XvPortPtr, DrawablePtr);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiPreemptVideo(ClientPtr, XvPortPtr, DrawablePtr);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiMatchPort(XvPortPtr, DrawablePtr);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiGrabPort(ClientPtr, XvPortPtr, Time, int *);
f0ab104f070bc7f569404826fea1828ed985638cvboxsyncextern _X_EXPORT int XvdiUngrabPort( ClientPtr, XvPortPtr, Time);
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#endif /* XorgLoader */
f0ab104f070bc7f569404826fea1828ed985638cvboxsync
f0ab104f070bc7f569404826fea1828ed985638cvboxsync#endif /* XVDIX_H */
f0ab104f070bc7f569404826fea1828ed985638cvboxsync