aboutsummaryrefslogtreecommitdiffstats
path: root/distrib/sdl-1.2.15/src/video/Xext/extensions/Xvlib.h
diff options
context:
space:
mode:
Diffstat (limited to 'distrib/sdl-1.2.15/src/video/Xext/extensions/Xvlib.h')
-rw-r--r--distrib/sdl-1.2.15/src/video/Xext/extensions/Xvlib.h433
1 files changed, 433 insertions, 0 deletions
diff --git a/distrib/sdl-1.2.15/src/video/Xext/extensions/Xvlib.h b/distrib/sdl-1.2.15/src/video/Xext/extensions/Xvlib.h
new file mode 100644
index 0000000..0d0a55d
--- /dev/null
+++ b/distrib/sdl-1.2.15/src/video/Xext/extensions/Xvlib.h
@@ -0,0 +1,433 @@
+/***********************************************************
+Copyright 1991 by Digital Equipment Corporation, Maynard, Massachusetts,
+and the Massachusetts Institute of Technology, Cambridge, Massachusetts.
+
+ All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+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 names of Digital or MIT not be
+used in advertising or publicity pertaining to distribution of the
+software without specific, written prior permission.
+
+DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+DIGITAL 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.
+
+******************************************************************/
+/* $XFree86: xc/include/extensions/Xvlib.h,v 1.3 1999/12/11 19:28:48 mvojkovi Exp $ */
+
+#ifndef XVLIB_H
+#define XVLIB_H
+/*
+** File:
+**
+** Xvlib.h --- Xv library public header file
+**
+** Author:
+**
+** David Carver (Digital Workstation Engineering/Project Athena)
+**
+** Revisions:
+**
+** 26.06.91 Carver
+** - changed XvFreeAdaptors to XvFreeAdaptorInfo
+** - changed XvFreeEncodings to XvFreeEncodingInfo
+**
+** 11.06.91 Carver
+** - changed SetPortControl to SetPortAttribute
+** - changed GetPortControl to GetPortAttribute
+** - changed QueryBestSize
+**
+** 05.15.91 Carver
+** - version 2.0 upgrade
+**
+** 01.24.91 Carver
+** - version 1.4 upgrade
+**
+*/
+
+#include <X11/Xfuncproto.h>
+#include "Xv.h"
+#include "SDL_name.h"
+
+typedef struct {
+ int numerator;
+ int denominator;
+} SDL_NAME(XvRational);
+
+typedef struct {
+ int flags; /* XvGettable, XvSettable */
+ int min_value;
+ int max_value;
+ char *name;
+} SDL_NAME(XvAttribute);
+
+typedef struct {
+ XvEncodingID encoding_id;
+ char *name;
+ unsigned long width;
+ unsigned long height;
+ SDL_NAME(XvRational) rate;
+ unsigned long num_encodings;
+} SDL_NAME(XvEncodingInfo);
+
+typedef struct {
+ char depth;
+ unsigned long visual_id;
+} SDL_NAME(XvFormat);
+
+typedef struct {
+ XvPortID base_id;
+ unsigned long num_ports;
+ char type;
+ char *name;
+ unsigned long num_formats;
+ SDL_NAME(XvFormat) *formats;
+ unsigned long num_adaptors;
+} SDL_NAME(XvAdaptorInfo);
+
+typedef struct {
+ int type;
+ unsigned long serial; /* # of last request processed by server */
+ Bool send_event; /* true if this came from a SendEvent request */
+ Display *display; /* Display the event was read from */
+ Drawable drawable; /* drawable */
+ unsigned long reason; /* what generated this event */
+ XvPortID port_id; /* what port */
+ Time time; /* milliseconds */
+} SDL_NAME(XvVideoNotifyEvent);
+
+typedef struct {
+ int type;
+ unsigned long serial; /* # of last request processed by server */
+ Bool send_event; /* true if this came from a SendEvent request */
+ Display *display; /* Display the event was read from */
+ XvPortID port_id; /* what port */
+ Time time; /* milliseconds */
+ Atom attribute; /* atom that identifies attribute */
+ long value; /* value of attribute */
+} SDL_NAME(XvPortNotifyEvent);
+
+typedef union {
+ int type;
+ SDL_NAME(XvVideoNotifyEvent) xvvideo;
+ SDL_NAME(XvPortNotifyEvent) xvport;
+ long pad[24];
+} SDL_NAME(XvEvent);
+
+typedef struct {
+ int id; /* Unique descriptor for the format */
+ int type; /* XvRGB, XvYUV */
+ int byte_order; /* LSBFirst, MSBFirst */
+ char guid[16]; /* Globally Unique IDentifier */
+ int bits_per_pixel;
+ int format; /* XvPacked, XvPlanar */
+ int num_planes;
+
+ /* for RGB formats only */
+ int depth;
+ unsigned int red_mask;
+ unsigned int green_mask;
+ unsigned int blue_mask;
+
+ /* for YUV formats only */
+ unsigned int y_sample_bits;
+ unsigned int u_sample_bits;
+ unsigned int v_sample_bits;
+ unsigned int horz_y_period;
+ unsigned int horz_u_period;
+ unsigned int horz_v_period;
+ unsigned int vert_y_period;
+ unsigned int vert_u_period;
+ unsigned int vert_v_period;
+ char component_order[32]; /* eg. UYVY */
+ int scanline_order; /* XvTopToBottom, XvBottomToTop */
+} SDL_NAME(XvImageFormatValues);
+
+typedef struct {
+ int id;
+ int width, height;
+ int data_size; /* bytes */
+ int num_planes;
+ int *pitches; /* bytes */
+ int *offsets; /* bytes */
+ char *data;
+ XPointer obdata;
+} SDL_NAME(XvImage);
+
+_XFUNCPROTOBEGIN
+
+extern int SDL_NAME(XvQueryExtension)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ unsigned int* /* p_version */,
+ unsigned int* /* p_revision */,
+ unsigned int* /* p_requestBase */,
+ unsigned int* /* p_eventBase */,
+ unsigned int* /* p_errorBase */
+#endif
+);
+
+extern int SDL_NAME(XvQueryAdaptors)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ Window /* window */,
+ unsigned int* /* p_nAdaptors */,
+ SDL_NAME(XvAdaptorInfo)** /* p_pAdaptors */
+#endif
+);
+
+extern int SDL_NAME(XvQueryEncodings)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ unsigned int* /* p_nEncoding */,
+ SDL_NAME(XvEncodingInfo)** /* p_pEncoding */
+#endif
+);
+
+extern int SDL_NAME(XvPutVideo)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Drawable /* d */,
+ GC /* gc */,
+ int /* vx */,
+ int /* vy */,
+ unsigned int /* vw */,
+ unsigned int /* vh */,
+ int /* dx */,
+ int /* dy */,
+ unsigned int /* dw */,
+ unsigned int /* dh */
+#endif
+);
+
+extern int SDL_NAME(XvPutStill)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Drawable /* d */,
+ GC /* gc */,
+ int /* vx */,
+ int /* vy */,
+ unsigned int /* vw */,
+ unsigned int /* vh */,
+ int /* dx */,
+ int /* dy */,
+ unsigned int /* dw */,
+ unsigned int /* dh */
+#endif
+);
+
+extern int SDL_NAME(XvGetVideo)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Drawable /* d */,
+ GC /* gc */,
+ int /* vx */,
+ int /* vy */,
+ unsigned int /* vw */,
+ unsigned int /* vh */,
+ int /* dx */,
+ int /* dy */,
+ unsigned int /* dw */,
+ unsigned int /* dh */
+#endif
+);
+
+extern int SDL_NAME(XvGetStill)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Drawable /* d */,
+ GC /* gc */,
+ int /* vx */,
+ int /* vy */,
+ unsigned int /* vw */,
+ unsigned int /* vh */,
+ int /* dx */,
+ int /* dy */,
+ unsigned int /* dw */,
+ unsigned int /* dh */
+#endif
+);
+
+extern int SDL_NAME(XvStopVideo)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Drawable /* drawable */
+#endif
+);
+
+extern int SDL_NAME(XvGrabPort)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Time /* time */
+#endif
+);
+
+extern int SDL_NAME(XvUngrabPort)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Time /* time */
+#endif
+);
+
+extern int SDL_NAME(XvSelectVideoNotify)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ Drawable /* drawable */,
+ Bool /* onoff */
+#endif
+);
+
+extern int SDL_NAME(XvSelectPortNotify)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Bool /* onoff */
+#endif
+);
+
+extern int SDL_NAME(XvSetPortAttribute)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Atom /* attribute */,
+ int /* value */
+#endif
+);
+
+extern int SDL_NAME(XvGetPortAttribute)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Atom /* attribute */,
+ int* /* p_value */
+#endif
+);
+
+extern int SDL_NAME(XvQueryBestSize)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ Bool /* motion */,
+ unsigned int /* vid_w */,
+ unsigned int /* vid_h */,
+ unsigned int /* drw_w */,
+ unsigned int /* drw_h */,
+ unsigned int* /* p_actual_width */,
+ unsigned int* /* p_actual_width */
+#endif
+);
+
+extern SDL_NAME(XvAttribute)* SDL_NAME(XvQueryPortAttributes)(
+#if NeedFunctionPrototypes
+ Display* /* display */,
+ XvPortID /* port */,
+ int* /* number */
+#endif
+);
+
+
+extern void SDL_NAME(XvFreeAdaptorInfo)(
+#if NeedFunctionPrototypes
+ SDL_NAME(XvAdaptorInfo)* /* adaptors */
+#endif
+);
+
+extern void SDL_NAME(XvFreeEncodingInfo)(
+#if NeedFunctionPrototypes
+ SDL_NAME(XvEncodingInfo)* /* encodings */
+#endif
+);
+
+
+extern SDL_NAME(XvImageFormatValues) * SDL_NAME(XvListImageFormats) (
+#if NeedFunctionPrototypes
+ Display *display,
+ XvPortID port_id,
+ int *count_return
+#endif
+);
+
+extern SDL_NAME(XvImage) * SDL_NAME(XvCreateImage) (
+#if NeedFunctionPrototypes
+ Display *display,
+ XvPortID port,
+ int id,
+ char *data,
+ int width,
+ int height
+#endif
+);
+
+extern int SDL_NAME(XvPutImage) (
+#if NeedFunctionPrototypes
+ Display *display,
+ XvPortID id,
+ Drawable d,
+ GC gc,
+ SDL_NAME(XvImage) *image,
+ int src_x,
+ int src_y,
+ unsigned int src_w,
+ unsigned int src_h,
+ int dest_x,
+ int dest_y,
+ unsigned int dest_w,
+ unsigned int dest_h
+#endif
+);
+
+extern int SDL_NAME(XvShmPutImage) (
+#if NeedFunctionPrototypes
+ Display *display,
+ XvPortID id,
+ Drawable d,
+ GC gc,
+ SDL_NAME(XvImage) *image,
+ int src_x,
+ int src_y,
+ unsigned int src_w,
+ unsigned int src_h,
+ int dest_x,
+ int dest_y,
+ unsigned int dest_w,
+ unsigned int dest_h,
+ Bool send_event
+#endif
+);
+
+#ifdef _XSHM_H_
+
+extern SDL_NAME(XvImage) * SDL_NAME(XvShmCreateImage) (
+#if NeedFunctionPrototypes
+ Display *display,
+ XvPortID port,
+ int id,
+ char* data,
+ int width,
+ int height,
+ XShmSegmentInfo *shminfo
+#endif
+);
+
+#endif
+
+
+_XFUNCPROTOEND
+
+#endif /* XVLIB_H */