diff options
author | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2006-11-25 16:08:39 +0000 |
---|---|---|
committer | Matthieu Herrb <matthieu@cvs.openbsd.org> | 2006-11-25 16:08:39 +0000 |
commit | a591b5fb25c93db8ce1d9e2fa00f503793f4dfe9 (patch) | |
tree | 539ad800451d3284fb9db3589fee43f469a9fa75 /proto/xf86vidmodeproto/xf86vmode.h | |
parent | 51965afeffb576b545a4c74d6f7b53061873cd93 (diff) |
import from X.Org 7.2RC2
Diffstat (limited to 'proto/xf86vidmodeproto/xf86vmode.h')
-rw-r--r-- | proto/xf86vidmodeproto/xf86vmode.h | 322 |
1 files changed, 322 insertions, 0 deletions
diff --git a/proto/xf86vidmodeproto/xf86vmode.h b/proto/xf86vidmodeproto/xf86vmode.h new file mode 100644 index 000000000..3420ae4c8 --- /dev/null +++ b/proto/xf86vidmodeproto/xf86vmode.h @@ -0,0 +1,322 @@ +/* $XFree86: xc/include/extensions/xf86vmode.h,v 3.30 2001/05/07 20:09:50 mvojkovi Exp $ */ +/* + +Copyright 1995 Kaleb S. KEITHLEY + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL Kaleb S. KEITHLEY BE LIABLE FOR ANY CLAIM, DAMAGES +OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +Except as contained in this notice, the name of Kaleb S. KEITHLEY +shall not be used in advertising or otherwise to promote the sale, use +or other dealings in this Software without prior written authorization +from Kaleb S. KEITHLEY + +*/ +/* $Xorg: xf86vmode.h,v 1.3 2000/08/18 04:05:46 coskrey Exp $ */ + +/* THIS IS NOT AN X CONSORTIUM STANDARD OR AN X PROJECT TEAM SPECIFICATION */ + +#ifndef _XF86VIDMODE_H_ +#define _XF86VIDMODE_H_ + +#include <X11/Xfuncproto.h> +#include <X11/Xmd.h> + +#define X_XF86VidModeQueryVersion 0 +#define X_XF86VidModeGetModeLine 1 +#define X_XF86VidModeModModeLine 2 +#define X_XF86VidModeSwitchMode 3 +#define X_XF86VidModeGetMonitor 4 +#define X_XF86VidModeLockModeSwitch 5 +#define X_XF86VidModeGetAllModeLines 6 +#define X_XF86VidModeAddModeLine 7 +#define X_XF86VidModeDeleteModeLine 8 +#define X_XF86VidModeValidateModeLine 9 +#define X_XF86VidModeSwitchToMode 10 +#define X_XF86VidModeGetViewPort 11 +#define X_XF86VidModeSetViewPort 12 +/* new for version 2.x of this extension */ +#define X_XF86VidModeGetDotClocks 13 +#define X_XF86VidModeSetClientVersion 14 +#define X_XF86VidModeSetGamma 15 +#define X_XF86VidModeGetGamma 16 +#define X_XF86VidModeGetGammaRamp 17 +#define X_XF86VidModeSetGammaRamp 18 +#define X_XF86VidModeGetGammaRampSize 19 +#define X_XF86VidModeGetPermissions 20 + +#define CLKFLAG_PROGRAMABLE 1 + +#ifdef XF86VIDMODE_EVENTS +#define XF86VidModeNotify 0 +#define XF86VidModeNumberEvents (XF86VidModeNotify + 1) + +#define XF86VidModeNotifyMask 0x00000001 + +#define XF86VidModeNonEvent 0 +#define XF86VidModeModeChange 1 +#else +#define XF86VidModeNumberEvents 0 +#endif + +#define XF86VidModeBadClock 0 +#define XF86VidModeBadHTimings 1 +#define XF86VidModeBadVTimings 2 +#define XF86VidModeModeUnsuitable 3 +#define XF86VidModeExtensionDisabled 4 +#define XF86VidModeClientNotLocal 5 +#define XF86VidModeZoomLocked 6 +#define XF86VidModeNumberErrors (XF86VidModeZoomLocked + 1) + +#define XF86VM_READ_PERMISSION 1 +#define XF86VM_WRITE_PERMISSION 2 + +#ifndef _XF86VIDMODE_SERVER_ + +typedef struct { + unsigned short hdisplay; + unsigned short hsyncstart; + unsigned short hsyncend; + unsigned short htotal; + unsigned short hskew; + unsigned short vdisplay; + unsigned short vsyncstart; + unsigned short vsyncend; + unsigned short vtotal; + unsigned int flags; + int privsize; +#if defined(__cplusplus) || defined(c_plusplus) + /* private is a C++ reserved word */ + INT32 *c_private; +#else + INT32 *private; +#endif +} XF86VidModeModeLine; + +typedef struct { + unsigned int dotclock; + unsigned short hdisplay; + unsigned short hsyncstart; + unsigned short hsyncend; + unsigned short htotal; + unsigned short hskew; + unsigned short vdisplay; + unsigned short vsyncstart; + unsigned short vsyncend; + unsigned short vtotal; + unsigned int flags; + int privsize; +#if defined(__cplusplus) || defined(c_plusplus) + /* private is a C++ reserved word */ + INT32 *c_private; +#else + INT32 *private; +#endif +} XF86VidModeModeInfo; + +typedef struct { + float hi; + float lo; +} XF86VidModeSyncRange; + +typedef struct { + char* vendor; + char* model; + float EMPTY; + unsigned char nhsync; + XF86VidModeSyncRange* hsync; + unsigned char nvsync; + XF86VidModeSyncRange* vsync; +} XF86VidModeMonitor; + +typedef struct { + int type; /* of event */ + unsigned long serial; /* # of last request processed by server */ + Bool send_event; /* true if this came from a SendEvent req */ + Display *display; /* Display the event was read from */ + Window root; /* root window of event screen */ + int state; /* What happened */ + int kind; /* What happened */ + Bool forced; /* extents of new region */ + Time time; /* event timestamp */ +} XF86VidModeNotifyEvent; + +typedef struct { + float red; /* Red Gamma value */ + float green; /* Green Gamma value */ + float blue; /* Blue Gamma value */ +} XF86VidModeGamma; + + +#define XF86VidModeSelectNextMode(disp, scr) \ + XF86VidModeSwitchMode(disp, scr, 1) +#define XF86VidModeSelectPrevMode(disp, scr) \ + XF86VidModeSwitchMode(disp, scr, -1) + +_XFUNCPROTOBEGIN + +Bool XF86VidModeQueryVersion( + Display* /* dpy */, + int* /* majorVersion */, + int* /* minorVersion */ +); + +Bool XF86VidModeQueryExtension( + Display* /* dpy */, + int* /* event_base */, + int* /* error_base */ +); + +Bool XF86VidModeSetClientVersion( + Display* /* dpy */ +); + +Bool XF86VidModeGetModeLine( + Display* /* dpy */, + int /* screen */, + int* /* dotclock */, + XF86VidModeModeLine* /* modeline */ +); + +Bool XF86VidModeGetAllModeLines( + Display* /* dpy */, + int /* screen */, + int* /* modecount */, + XF86VidModeModeInfo*** /* modelinesPtr */ +); + +Bool XF86VidModeAddModeLine( + Display* /* dpy */, + int /* screen */, + XF86VidModeModeInfo* /* new modeline */, + XF86VidModeModeInfo* /* after modeline */ +); + +Bool XF86VidModeDeleteModeLine( + Display* /* dpy */, + int /* screen */, + XF86VidModeModeInfo* /* modeline */ +); + +Bool XF86VidModeModModeLine( + Display* /* dpy */, + int /* screen */, + XF86VidModeModeLine* /* modeline */ +); + +Status XF86VidModeValidateModeLine( + Display* /* dpy */, + int /* screen */, + XF86VidModeModeInfo* /* modeline */ +); + +Bool XF86VidModeSwitchMode( + Display* /* dpy */, + int /* screen */, + int /* zoom */ +); + +Bool XF86VidModeSwitchToMode( + Display* /* dpy */, + int /* screen */, + XF86VidModeModeInfo* /* modeline */ +); + +Bool XF86VidModeLockModeSwitch( + Display* /* dpy */, + int /* screen */, + int /* lock */ +); + +Bool XF86VidModeGetMonitor( + Display* /* dpy */, + int /* screen */, + XF86VidModeMonitor* /* monitor */ +); + +Bool XF86VidModeGetViewPort( + Display* /* dpy */, + int /* screen */, + int* /* x return */, + int* /* y return */ +); + +Bool XF86VidModeSetViewPort( + Display* /* dpy */, + int /* screen */, + int /* x */, + int /* y */ +); + +Bool XF86VidModeGetDotClocks( + Display* /* dpy */, + int /* screen */, + int* /* flags return */, + int* /* number of clocks return */, + int* /* max dot clock return */, + int** /* clocks return */ +); + +Bool XF86VidModeGetGamma( + Display* /* dpy */, + int /* screen */, + XF86VidModeGamma* /* Gamma */ +); + +Bool XF86VidModeSetGamma( + Display* /* dpy */, + int /* screen */, + XF86VidModeGamma* /* Gamma */ +); + +Bool XF86VidModeSetGammaRamp( + Display* /* dpy */, + int /* screen */, + int /* size */, + unsigned short* /* red array */, + unsigned short* /* green array */, + unsigned short* /* blue array */ +); + +Bool XF86VidModeGetGammaRamp( + Display* /* dpy */, + int /* screen */, + int /* size */, + unsigned short* /* red array */, + unsigned short* /* green array */, + unsigned short* /* blue array */ +); + +Bool XF86VidModeGetGammaRampSize( + Display* /* dpy */, + int /* screen */, + int* /* size */ +); + +Bool XF86VidModeGetPermissions( + Display* /* dpy */, + int /* screen */, + int* /* permissions */ +); + +_XFUNCPROTOEND + +#endif + +#endif |