146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner/***********************************************************
246be48730333120a7b939116cef075e61c12c703David 'Digit' TurnerCopyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts,
346be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerand the Massachusetts Institute of Technology, Cambridge, Massachusetts.
446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner                        All Rights Reserved
646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
746be48730333120a7b939116cef075e61c12c703David 'Digit' TurnerPermission to use, copy, modify, and distribute this software and its
846be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerdocumentation for any purpose and without fee is hereby granted,
946be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerprovided that the above copyright notice appear in all copies and that
1046be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerboth that copyright notice and this permission notice appear in
1146be48730333120a7b939116cef075e61c12c703David 'Digit' Turnersupporting documentation, and that the names of Digital or MIT not be
1246be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerused in advertising or publicity pertaining to distribution of the
1346be48730333120a7b939116cef075e61c12c703David 'Digit' Turnersoftware without specific, written prior permission.
1446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
1546be48730333120a7b939116cef075e61c12c703David 'Digit' TurnerDIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
1646be48730333120a7b939116cef075e61c12c703David 'Digit' TurnerALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
1746be48730333120a7b939116cef075e61c12c703David 'Digit' TurnerDIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
1846be48730333120a7b939116cef075e61c12c703David 'Digit' TurnerANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
1946be48730333120a7b939116cef075e61c12c703David 'Digit' TurnerWHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
2046be48730333120a7b939116cef075e61c12c703David 'Digit' TurnerARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
2146be48730333120a7b939116cef075e61c12c703David 'Digit' TurnerSOFTWARE.
2246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
2346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner******************************************************************/
2446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner/* $XFree86: xc/include/extensions/Xvlib.h,v 1.3 1999/12/11 19:28:48 mvojkovi Exp $ */
2546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
2646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#ifndef XVLIB_H
2746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#define XVLIB_H
2846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner/*
2946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner** File:
3046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**
3146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**   Xvlib.h --- Xv library public header file
3246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**
3346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner** Author:
3446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**
3546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**   David Carver (Digital Workstation Engineering/Project Athena)
3646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**
3746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner** Revisions:
3846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**
3946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**   26.06.91 Carver
4046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**     - changed XvFreeAdaptors to XvFreeAdaptorInfo
4146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**     - changed XvFreeEncodings to XvFreeEncodingInfo
4246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**
4346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**   11.06.91 Carver
4446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**     - changed SetPortControl to SetPortAttribute
4546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**     - changed GetPortControl to GetPortAttribute
4646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**     - changed QueryBestSize
4746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**
4846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**   05.15.91 Carver
4946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**     - version 2.0 upgrade
5046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**
5146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**   01.24.91 Carver
5246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**     - version 1.4 upgrade
5346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner**
5446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner*/
5546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
5646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#include <X11/Xfuncproto.h>
5746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#include "Xv.h"
5846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#include "SDL_name.h"
5946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
6046be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef struct {
6146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int numerator;
6246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int denominator;
6346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvRational);
6446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
6546be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef struct {
6646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int flags;	/* XvGettable, XvSettable */
6746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int min_value;
6846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int max_value;
6946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  char *name;
7046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvAttribute);
7146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
7246be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef struct {
7346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvEncodingID encoding_id;
7446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  char *name;
7546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long width;
7646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long height;
7746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  SDL_NAME(XvRational) rate;
7846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long num_encodings;
7946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvEncodingInfo);
8046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
8146be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef struct {
8246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  char depth;
8346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long visual_id;
8446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvFormat);
8546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
8646be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef struct {
8746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID base_id;
8846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long num_ports;
8946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  char type;
9046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  char *name;
9146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long num_formats;
9246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  SDL_NAME(XvFormat) *formats;
9346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long num_adaptors;
9446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvAdaptorInfo);
9546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
9646be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef struct {
9746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int type;
9846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long serial;	   /* # of last request processed by server */
9946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Bool send_event;	   /* true if this came from a SendEvent request */
10046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display *display;	   /* Display the event was read from */
10146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Drawable drawable;       /* drawable */
10246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long reason;    /* what generated this event */
10346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID port_id;        /* what port */
10446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Time time;		   /* milliseconds */
10546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvVideoNotifyEvent);
10646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
10746be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef struct {
10846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int type;
10946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned long serial;	   /* # of last request processed by server */
11046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Bool send_event;	   /* true if this came from a SendEvent request */
11146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display *display;	   /* Display the event was read from */
11246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID port_id;        /* what port */
11346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Time time;		   /* milliseconds */
11446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Atom attribute;           /* atom that identifies attribute */
11546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  long value;              /* value of attribute */
11646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvPortNotifyEvent);
11746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
11846be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef union {
11946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int type;
12046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  SDL_NAME(XvVideoNotifyEvent) xvvideo;
12146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  SDL_NAME(XvPortNotifyEvent) xvport;
12246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  long pad[24];
12346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvEvent);
12446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
12546be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef struct {
12646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int id;                      /* Unique descriptor for the format */
12746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int type;                    /* XvRGB, XvYUV */
12846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int byte_order;              /* LSBFirst, MSBFirst */
12946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  char guid[16];               /* Globally Unique IDentifier */
13046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int bits_per_pixel;
13146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int format;                  /* XvPacked, XvPlanar */
13246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int num_planes;
13346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
13446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  /* for RGB formats only */
13546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int depth;
13646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int red_mask;
13746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int green_mask;
13846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int blue_mask;
13946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
14046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  /* for YUV formats only */
14146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int y_sample_bits;
14246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int u_sample_bits;
14346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int v_sample_bits;
14446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int horz_y_period;
14546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int horz_u_period;
14646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int horz_v_period;
14746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int vert_y_period;
14846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int vert_u_period;
14946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int vert_v_period;
15046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  char component_order[32];    /* eg. UYVY */
15146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int scanline_order;          /* XvTopToBottom, XvBottomToTop */
15246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvImageFormatValues);
15346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
15446be48730333120a7b939116cef075e61c12c703David 'Digit' Turnertypedef struct {
15546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int id;
15646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int width, height;
15746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int data_size;              /* bytes */
15846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int num_planes;
15946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int *pitches;               /* bytes */
16046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int *offsets;               /* bytes */
16146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  char *data;
16246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XPointer obdata;
16346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner} SDL_NAME(XvImage);
16446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
16546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner_XFUNCPROTOBEGIN
16646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
16746be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvQueryExtension)(
16846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
16946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                 /* display */,
17046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int*            /* p_version */,
17146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int*            /* p_revision */,
17246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int*            /* p_requestBase */,
17346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int*            /* p_eventBase */,
17446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int*            /* p_errorBase */
17546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
17646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
17746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
17846be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvQueryAdaptors)(
17946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
18046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                 /* display */,
18146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Window                   /* window */,
18246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int*            /* p_nAdaptors */,
18346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  SDL_NAME(XvAdaptorInfo)**          /* p_pAdaptors */
18446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
18546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
18646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
18746be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvQueryEncodings)(
18846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
18946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                 /* display */,
19046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                 /* port */,
19146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int*            /* p_nEncoding */,
19246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  SDL_NAME(XvEncodingInfo)**         /* p_pEncoding */
19346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
19446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
19546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
19646be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvPutVideo)(
19746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
19846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                 /* display */,
19946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                 /* port */,
20046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Drawable                 /* d */,
20146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  GC                       /* gc */,
20246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* vx */,
20346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* vy */,
20446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* vw */,
20546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* vh */,
20646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* dx */,
20746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* dy */,
20846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* dw */,
20946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* dh */
21046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
21146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
21246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
21346be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvPutStill)(
21446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
21546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                 /* display */,
21646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                 /* port */,
21746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Drawable                 /* d */,
21846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  GC                       /* gc */,
21946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* vx */,
22046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* vy */,
22146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* vw */,
22246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* vh */,
22346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* dx */,
22446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* dy */,
22546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* dw */,
22646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* dh */
22746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
22846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
22946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
23046be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvGetVideo)(
23146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
23246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                 /* display */,
23346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                 /* port */,
23446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Drawable                 /* d */,
23546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  GC                       /* gc */,
23646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* vx */,
23746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* vy */,
23846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* vw */,
23946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* vh */,
24046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* dx */,
24146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* dy */,
24246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* dw */,
24346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* dh */
24446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
24546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
24646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
24746be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvGetStill)(
24846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
24946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                 /* display */,
25046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                 /* port */,
25146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Drawable                 /* d */,
25246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  GC                       /* gc */,
25346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* vx */,
25446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* vy */,
25546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* vw */,
25646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* vh */,
25746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* dx */,
25846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                      /* dy */,
25946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* dw */,
26046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int             /* dh */
26146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
26246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
26346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
26446be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvStopVideo)(
26546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
26646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                /* display */,
26746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                /* port */,
26846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Drawable                /* drawable */
26946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
27046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
27146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
27246be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvGrabPort)(
27346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
27446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                /* display */,
27546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                /* port */,
27646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Time                    /* time */
27746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
27846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
27946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
28046be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvUngrabPort)(
28146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
28246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                /* display */,
28346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                /* port */,
28446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Time                    /* time */
28546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
28646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
28746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
28846be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvSelectVideoNotify)(
28946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
29046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                /* display */,
29146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Drawable                /* drawable */,
29246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Bool                    /* onoff */
29346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
29446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
29546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
29646be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvSelectPortNotify)(
29746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
29846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                /* display */,
29946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                /* port */,
30046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Bool                    /* onoff */
30146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
30246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
30346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
30446be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvSetPortAttribute)(
30546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
30646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                /* display */,
30746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                /* port */,
30846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Atom                    /* attribute */,
30946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int                     /* value */
31046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
31146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
31246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
31346be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvGetPortAttribute)(
31446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
31546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                /* display */,
31646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                /* port */,
31746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Atom                    /* attribute */,
31846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int*                    /* p_value */
31946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
32046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
32146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
32246be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvQueryBestSize)(
32346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
32446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                /* display */,
32546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                /* port */,
32646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Bool                    /* motion */,
32746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int            /* vid_w */,
32846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int            /* vid_h */,
32946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int            /* drw_w */,
33046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int            /* drw_h */,
33146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int*           /* p_actual_width */,
33246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  unsigned int*           /* p_actual_width */
33346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
33446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
33546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
33646be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern SDL_NAME(XvAttribute)* SDL_NAME(XvQueryPortAttributes)(
33746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
33846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display*                /* display */,
33946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  XvPortID                /* port */,
34046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  int*                    /* number */
34146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
34246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
34346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
34446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
34546be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern void SDL_NAME(XvFreeAdaptorInfo)(
34646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
34746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  SDL_NAME(XvAdaptorInfo)*          /* adaptors */
34846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
34946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
35046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
35146be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern void SDL_NAME(XvFreeEncodingInfo)(
35246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
35346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  SDL_NAME(XvEncodingInfo)*         /* encodings */
35446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
35546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
35646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
35746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
35846be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern SDL_NAME(XvImageFormatValues) * SDL_NAME(XvListImageFormats) (
35946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
36046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   Display 	*display,
36146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   XvPortID 	port_id,
36246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int 		*count_return
36346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
36446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
36546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
36646be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern SDL_NAME(XvImage) * SDL_NAME(XvCreateImage) (
36746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
36846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   Display *display,
36946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   XvPortID port,
37046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int id,
37146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   char *data,
37246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int width,
37346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int height
37446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
37546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
37646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
37746be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvPutImage) (
37846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
37946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner  Display *display,
38046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   XvPortID id,
38146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   Drawable d,
38246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   GC gc,
38346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   SDL_NAME(XvImage) *image,
38446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int src_x,
38546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int src_y,
38646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   unsigned int src_w,
38746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   unsigned int src_h,
38846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int dest_x,
38946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int dest_y,
39046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   unsigned int dest_w,
39146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   unsigned int dest_h
39246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
39346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
39446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
39546be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern int SDL_NAME(XvShmPutImage) (
39646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
39746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   Display *display,
39846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   XvPortID id,
39946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   Drawable d,
40046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   GC gc,
40146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   SDL_NAME(XvImage) *image,
40246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int src_x,
40346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int src_y,
40446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   unsigned int src_w,
40546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   unsigned int src_h,
40646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int dest_x,
40746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int dest_y,
40846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   unsigned int dest_w,
40946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   unsigned int dest_h,
41046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   Bool send_event
41146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
41246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
41346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
41446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#ifdef _XSHM_H_
41546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
41646be48730333120a7b939116cef075e61c12c703David 'Digit' Turnerextern SDL_NAME(XvImage) * SDL_NAME(XvShmCreateImage) (
41746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#if NeedFunctionPrototypes
41846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   Display *display,
41946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   XvPortID port,
42046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int id,
42146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   char* data,
42246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int width,
42346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   int height,
42446be48730333120a7b939116cef075e61c12c703David 'Digit' Turner   XShmSegmentInfo *shminfo
42546be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
42646be48730333120a7b939116cef075e61c12c703David 'Digit' Turner);
42746be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
42846be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif
42946be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
43046be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
43146be48730333120a7b939116cef075e61c12c703David 'Digit' Turner_XFUNCPROTOEND
43246be48730333120a7b939116cef075e61c12c703David 'Digit' Turner
43346be48730333120a7b939116cef075e61c12c703David 'Digit' Turner#endif /* XVLIB_H */
434