Path: blob/master/thirdparty/linuxbsd_headers/X11/extensions/randrproto.h
9905 views
/*1* Copyright © 2000 Compaq Computer Corporation2* Copyright © 2002 Hewlett-Packard Company3* Copyright © 2006 Intel Corporation4* Copyright © 2008 Red Hat, Inc.5*6* Permission to use, copy, modify, distribute, and sell this software and its7* documentation for any purpose is hereby granted without fee, provided that8* the above copyright notice appear in all copies and that both that copyright9* notice and this permission notice appear in supporting documentation, and10* that the name of the copyright holders not be used in advertising or11* publicity pertaining to distribution of the software without specific,12* written prior permission. The copyright holders make no representations13* about the suitability of this software for any purpose. It is provided "as14* is" without express or implied warranty.15*16* THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,17* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO18* EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR19* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,20* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER21* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE22* OF THIS SOFTWARE.23*24* Author: Jim Gettys, Hewlett-Packard Company, Inc.25* Keith Packard, Intel Corporation26*/2728/* note that RANDR 1.0 is incompatible with version 0.0, or 0.1 */29/* V1.0 removes depth switching from the protocol */30#ifndef _XRANDRP_H_31#define _XRANDRP_H_3233#include <X11/extensions/randr.h>34#include <X11/extensions/renderproto.h>3536#define Window CARD3237#define Drawable CARD3238#define Font CARD3239#define Pixmap CARD3240#define Cursor CARD3241#define Colormap CARD3242#define GContext CARD3243#define Atom CARD3244#define Time CARD3245#define KeyCode CARD846#define KeySym CARD3247#define RROutput CARD3248#define RRMode CARD3249#define RRCrtc CARD3250#define RRProvider CARD3251#define RRModeFlags CARD3252#define RRLease CARD325354#define Rotation CARD1655#define SizeID CARD1656#define SubpixelOrder CARD165758/*59* data structures60*/6162typedef struct {63CARD16 widthInPixels;64CARD16 heightInPixels;65CARD16 widthInMillimeters;66CARD16 heightInMillimeters;67} xScreenSizes;68#define sz_xScreenSizes 86970/*71* requests and replies72*/7374typedef struct {75CARD8 reqType;76CARD8 randrReqType;77CARD16 length;78CARD32 majorVersion;79CARD32 minorVersion;80} xRRQueryVersionReq;81#define sz_xRRQueryVersionReq 128283typedef struct {84BYTE type; /* X_Reply */85BYTE pad1;86CARD16 sequenceNumber;87CARD32 length;88CARD32 majorVersion;89CARD32 minorVersion;90CARD32 pad2;91CARD32 pad3;92CARD32 pad4;93CARD32 pad5;94} xRRQueryVersionReply;95#define sz_xRRQueryVersionReply 329697typedef struct {98CARD8 reqType;99CARD8 randrReqType;100CARD16 length;101Window window;102} xRRGetScreenInfoReq;103#define sz_xRRGetScreenInfoReq 8104105/*106* the xRRScreenInfoReply structure is followed by:107*108* the size information109*/110111112typedef struct {113BYTE type; /* X_Reply */114BYTE setOfRotations;115CARD16 sequenceNumber;116CARD32 length;117Window root;118Time timestamp;119Time configTimestamp;120CARD16 nSizes;121SizeID sizeID;122Rotation rotation;123CARD16 rate;124CARD16 nrateEnts;125CARD16 pad;126} xRRGetScreenInfoReply;127#define sz_xRRGetScreenInfoReply 32128129typedef struct {130CARD8 reqType;131CARD8 randrReqType;132CARD16 length;133Drawable drawable;134Time timestamp;135Time configTimestamp;136SizeID sizeID;137Rotation rotation;138} xRR1_0SetScreenConfigReq;139#define sz_xRR1_0SetScreenConfigReq 20140141typedef struct {142CARD8 reqType;143CARD8 randrReqType;144CARD16 length;145Drawable drawable;146Time timestamp;147Time configTimestamp;148SizeID sizeID;149Rotation rotation;150CARD16 rate;151CARD16 pad;152} xRRSetScreenConfigReq;153#define sz_xRRSetScreenConfigReq 24154155typedef struct {156BYTE type; /* X_Reply */157CARD8 status;158CARD16 sequenceNumber;159CARD32 length;160Time newTimestamp;161Time newConfigTimestamp;162Window root;163CARD16 subpixelOrder;164CARD16 pad4;165CARD32 pad5;166CARD32 pad6;167} xRRSetScreenConfigReply;168#define sz_xRRSetScreenConfigReply 32169170typedef struct {171CARD8 reqType;172CARD8 randrReqType;173CARD16 length;174Window window;175CARD16 enable;176CARD16 pad2;177} xRRSelectInputReq;178#define sz_xRRSelectInputReq 12179180/*181* Additions for version 1.2182*/183184typedef struct _xRRModeInfo {185RRMode id;186CARD16 width;187CARD16 height;188CARD32 dotClock;189CARD16 hSyncStart;190CARD16 hSyncEnd;191CARD16 hTotal;192CARD16 hSkew;193CARD16 vSyncStart;194CARD16 vSyncEnd;195CARD16 vTotal;196CARD16 nameLength;197RRModeFlags modeFlags;198} xRRModeInfo;199#define sz_xRRModeInfo 32200201typedef struct {202CARD8 reqType;203CARD8 randrReqType;204CARD16 length;205Window window;206} xRRGetScreenSizeRangeReq;207#define sz_xRRGetScreenSizeRangeReq 8208209typedef struct {210BYTE type; /* X_Reply */211CARD8 pad;212CARD16 sequenceNumber;213CARD32 length;214CARD16 minWidth;215CARD16 minHeight;216CARD16 maxWidth;217CARD16 maxHeight;218CARD32 pad0;219CARD32 pad1;220CARD32 pad2;221CARD32 pad3;222} xRRGetScreenSizeRangeReply;223#define sz_xRRGetScreenSizeRangeReply 32224225typedef struct {226CARD8 reqType;227CARD8 randrReqType;228CARD16 length;229Window window;230CARD16 width;231CARD16 height;232CARD32 widthInMillimeters;233CARD32 heightInMillimeters;234} xRRSetScreenSizeReq;235#define sz_xRRSetScreenSizeReq 20236237typedef struct {238CARD8 reqType;239CARD8 randrReqType;240CARD16 length;241Window window;242} xRRGetScreenResourcesReq;243#define sz_xRRGetScreenResourcesReq 8244245typedef struct {246BYTE type;247CARD8 pad;248CARD16 sequenceNumber;249CARD32 length;250Time timestamp;251Time configTimestamp;252CARD16 nCrtcs;253CARD16 nOutputs;254CARD16 nModes;255CARD16 nbytesNames;256CARD32 pad1;257CARD32 pad2;258} xRRGetScreenResourcesReply;259#define sz_xRRGetScreenResourcesReply 32260261typedef struct {262CARD8 reqType;263CARD8 randrReqType;264CARD16 length;265RROutput output;266Time configTimestamp;267} xRRGetOutputInfoReq;268#define sz_xRRGetOutputInfoReq 12269270typedef struct {271BYTE type;272CARD8 status;273CARD16 sequenceNumber;274CARD32 length;275Time timestamp;276RRCrtc crtc;277CARD32 mmWidth;278CARD32 mmHeight;279CARD8 connection;280CARD8 subpixelOrder;281CARD16 nCrtcs;282CARD16 nModes;283CARD16 nPreferred;284CARD16 nClones;285CARD16 nameLength;286} xRRGetOutputInfoReply;287#define sz_xRRGetOutputInfoReply 36288289typedef struct {290CARD8 reqType;291CARD8 randrReqType;292CARD16 length;293RROutput output;294} xRRListOutputPropertiesReq;295#define sz_xRRListOutputPropertiesReq 8296297typedef struct {298BYTE type;299CARD8 pad0;300CARD16 sequenceNumber;301CARD32 length;302CARD16 nAtoms;303CARD16 pad1;304CARD32 pad2;305CARD32 pad3;306CARD32 pad4;307CARD32 pad5;308CARD32 pad6;309} xRRListOutputPropertiesReply;310#define sz_xRRListOutputPropertiesReply 32311312typedef struct {313CARD8 reqType;314CARD8 randrReqType;315CARD16 length;316RROutput output;317Atom property;318} xRRQueryOutputPropertyReq;319#define sz_xRRQueryOutputPropertyReq 12320321typedef struct {322BYTE type;323BYTE pad0;324CARD16 sequenceNumber;325CARD32 length;326BOOL pending;327BOOL range;328BOOL immutable;329BYTE pad1;330CARD32 pad2;331CARD32 pad3;332CARD32 pad4;333CARD32 pad5;334CARD32 pad6;335} xRRQueryOutputPropertyReply;336#define sz_xRRQueryOutputPropertyReply 32337338typedef struct {339CARD8 reqType;340CARD8 randrReqType;341CARD16 length;342RROutput output;343Atom property;344BOOL pending;345BOOL range;346CARD16 pad;347} xRRConfigureOutputPropertyReq;348#define sz_xRRConfigureOutputPropertyReq 16349350typedef struct {351CARD8 reqType;352CARD8 randrReqType;353CARD16 length;354RROutput output;355Atom property;356Atom type;357CARD8 format;358CARD8 mode;359CARD16 pad;360CARD32 nUnits;361} xRRChangeOutputPropertyReq;362#define sz_xRRChangeOutputPropertyReq 24363364typedef struct {365CARD8 reqType;366CARD8 randrReqType;367CARD16 length;368RROutput output;369Atom property;370} xRRDeleteOutputPropertyReq;371#define sz_xRRDeleteOutputPropertyReq 12372373typedef struct {374CARD8 reqType;375CARD8 randrReqType;376CARD16 length;377RROutput output;378Atom property;379Atom type;380CARD32 longOffset;381CARD32 longLength;382#ifdef __cplusplus383BOOL _delete;384#else385BOOL delete;386#endif387BOOL pending;388CARD16 pad1;389} xRRGetOutputPropertyReq;390#define sz_xRRGetOutputPropertyReq 28391392typedef struct {393BYTE type;394CARD8 format;395CARD16 sequenceNumber;396CARD32 length;397Atom propertyType;398CARD32 bytesAfter;399CARD32 nItems;400CARD32 pad1;401CARD32 pad2;402CARD32 pad3;403} xRRGetOutputPropertyReply;404#define sz_xRRGetOutputPropertyReply 32405406typedef struct {407CARD8 reqType;408CARD8 randrReqType;409CARD16 length;410Window window;411xRRModeInfo modeInfo;412} xRRCreateModeReq;413#define sz_xRRCreateModeReq 40414415typedef struct {416BYTE type;417CARD8 pad0;418CARD16 sequenceNumber;419CARD32 length;420RRMode mode;421CARD32 pad1;422CARD32 pad2;423CARD32 pad3;424CARD32 pad4;425CARD32 pad5;426} xRRCreateModeReply;427#define sz_xRRCreateModeReply 32428429typedef struct {430CARD8 reqType;431CARD8 randrReqType;432CARD16 length;433RRMode mode;434} xRRDestroyModeReq;435#define sz_xRRDestroyModeReq 8436437typedef struct {438CARD8 reqType;439CARD8 randrReqType;440CARD16 length;441RROutput output;442RRMode mode;443} xRRAddOutputModeReq;444#define sz_xRRAddOutputModeReq 12445446typedef struct {447CARD8 reqType;448CARD8 randrReqType;449CARD16 length;450RROutput output;451RRMode mode;452} xRRDeleteOutputModeReq;453#define sz_xRRDeleteOutputModeReq 12454455typedef struct {456CARD8 reqType;457CARD8 randrReqType;458CARD16 length;459RRCrtc crtc;460Time configTimestamp;461} xRRGetCrtcInfoReq;462#define sz_xRRGetCrtcInfoReq 12463464typedef struct {465BYTE type;466CARD8 status;467CARD16 sequenceNumber;468CARD32 length;469Time timestamp;470INT16 x;471INT16 y;472CARD16 width;473CARD16 height;474RRMode mode;475Rotation rotation;476Rotation rotations;477CARD16 nOutput;478CARD16 nPossibleOutput;479} xRRGetCrtcInfoReply;480#define sz_xRRGetCrtcInfoReply 32481482typedef struct {483CARD8 reqType;484CARD8 randrReqType;485CARD16 length;486RRCrtc crtc;487Time timestamp;488Time configTimestamp;489INT16 x;490INT16 y;491RRMode mode;492Rotation rotation;493CARD16 pad;494} xRRSetCrtcConfigReq;495#define sz_xRRSetCrtcConfigReq 28496497typedef struct {498BYTE type;499CARD8 status;500CARD16 sequenceNumber;501CARD32 length;502Time newTimestamp;503CARD32 pad1;504CARD32 pad2;505CARD32 pad3;506CARD32 pad4;507CARD32 pad5;508} xRRSetCrtcConfigReply;509#define sz_xRRSetCrtcConfigReply 32510511typedef struct {512CARD8 reqType;513CARD8 randrReqType;514CARD16 length;515RRCrtc crtc;516} xRRGetCrtcGammaSizeReq;517#define sz_xRRGetCrtcGammaSizeReq 8518519typedef struct {520BYTE type;521CARD8 status;522CARD16 sequenceNumber;523CARD32 length;524CARD16 size;525CARD16 pad1;526CARD32 pad2;527CARD32 pad3;528CARD32 pad4;529CARD32 pad5;530CARD32 pad6;531} xRRGetCrtcGammaSizeReply;532#define sz_xRRGetCrtcGammaSizeReply 32533534typedef struct {535CARD8 reqType;536CARD8 randrReqType;537CARD16 length;538RRCrtc crtc;539} xRRGetCrtcGammaReq;540#define sz_xRRGetCrtcGammaReq 8541542typedef struct {543BYTE type;544CARD8 status;545CARD16 sequenceNumber;546CARD32 length;547CARD16 size;548CARD16 pad1;549CARD32 pad2;550CARD32 pad3;551CARD32 pad4;552CARD32 pad5;553CARD32 pad6;554} xRRGetCrtcGammaReply;555#define sz_xRRGetCrtcGammaReply 32556557typedef struct {558CARD8 reqType;559CARD8 randrReqType;560CARD16 length;561RRCrtc crtc;562CARD16 size;563CARD16 pad1;564} xRRSetCrtcGammaReq;565#define sz_xRRSetCrtcGammaReq 12566567/*568* Additions for V1.3569*/570571typedef xRRGetScreenResourcesReq xRRGetScreenResourcesCurrentReq;572573#define sz_xRRGetScreenResourcesCurrentReq sz_xRRGetScreenResourcesReq574575typedef xRRGetScreenResourcesReply xRRGetScreenResourcesCurrentReply;576#define sz_xRRGetScreenResourcesCurrentReply sz_xRRGetScreenResourcesReply577578typedef struct {579CARD8 reqType;580CARD8 randrReqType;581CARD16 length;582RRCrtc crtc;583xRenderTransform transform;584CARD16 nbytesFilter; /* number of bytes in filter name */585CARD16 pad;586} xRRSetCrtcTransformReq;587588#define sz_xRRSetCrtcTransformReq 48589590typedef struct {591CARD8 reqType;592CARD8 randrReqType;593CARD16 length;594RRCrtc crtc;595} xRRGetCrtcTransformReq;596597#define sz_xRRGetCrtcTransformReq 8598599typedef struct {600BYTE type;601CARD8 status;602CARD16 sequenceNumber;603CARD32 length;604xRenderTransform pendingTransform;605BYTE hasTransforms;606CARD8 pad0;607CARD16 pad1;608xRenderTransform currentTransform;609CARD32 pad2;610CARD16 pendingNbytesFilter; /* number of bytes in filter name */611CARD16 pendingNparamsFilter; /* number of filter params */612CARD16 currentNbytesFilter; /* number of bytes in filter name */613CARD16 currentNparamsFilter; /* number of filter params */614} xRRGetCrtcTransformReply;615616#define sz_xRRGetCrtcTransformReply 96617618typedef struct {619CARD8 reqType;620CARD8 randrReqType;621CARD16 length;622Window window;623RROutput output;624} xRRSetOutputPrimaryReq;625#define sz_xRRSetOutputPrimaryReq 12626627typedef struct {628CARD8 reqType;629CARD8 randrReqType;630CARD16 length;631Window window;632} xRRGetOutputPrimaryReq;633#define sz_xRRGetOutputPrimaryReq 8634635typedef struct {636BYTE type;637CARD8 pad;638CARD16 sequenceNumber;639CARD32 length;640RROutput output;641CARD32 pad1;642CARD32 pad2;643CARD32 pad3;644CARD32 pad4;645CARD32 pad5;646} xRRGetOutputPrimaryReply;647#define sz_xRRGetOutputPrimaryReply 32648649/*650* Additions for V1.4651*/652653typedef struct {654CARD8 reqType;655CARD8 randrReqType;656CARD16 length;657Window window;658} xRRGetProvidersReq;659#define sz_xRRGetProvidersReq 8660661typedef struct {662BYTE type;663CARD8 pad;664CARD16 sequenceNumber;665CARD32 length;666Time timestamp;667CARD16 nProviders;668CARD16 pad1;669CARD32 pad2;670CARD32 pad3;671CARD32 pad4;672CARD32 pad5;673} xRRGetProvidersReply;674#define sz_xRRGetProvidersReply 32675676typedef struct {677CARD8 reqType;678CARD8 randrReqType;679CARD16 length;680RRProvider provider;681Time configTimestamp;682} xRRGetProviderInfoReq;683#define sz_xRRGetProviderInfoReq 12684685typedef struct {686BYTE type;687CARD8 status;688CARD16 sequenceNumber;689CARD32 length;690Time timestamp;691CARD32 capabilities;692CARD16 nCrtcs;693CARD16 nOutputs;694CARD16 nAssociatedProviders;695CARD16 nameLength;696CARD32 pad1;697CARD32 pad2;698} xRRGetProviderInfoReply;699#define sz_xRRGetProviderInfoReply 32700701typedef struct {702CARD8 reqType;703CARD8 randrReqType;704CARD16 length;705RRProvider provider;706RRProvider source_provider;707Time configTimestamp;708} xRRSetProviderOutputSourceReq;709#define sz_xRRSetProviderOutputSourceReq 16710711typedef struct {712CARD8 reqType;713CARD8 randrReqType;714CARD16 length;715RRProvider provider;716RRProvider sink_provider;717Time configTimestamp;718} xRRSetProviderOffloadSinkReq;719#define sz_xRRSetProviderOffloadSinkReq 16720721typedef struct {722CARD8 reqType;723CARD8 randrReqType;724CARD16 length;725RRProvider provider;726} xRRListProviderPropertiesReq;727#define sz_xRRListProviderPropertiesReq 8728729typedef struct {730BYTE type;731CARD8 pad0;732CARD16 sequenceNumber;733CARD32 length;734CARD16 nAtoms;735CARD16 pad1;736CARD32 pad2;737CARD32 pad3;738CARD32 pad4;739CARD32 pad5;740CARD32 pad6;741} xRRListProviderPropertiesReply;742#define sz_xRRListProviderPropertiesReply 32743744typedef struct {745CARD8 reqType;746CARD8 randrReqType;747CARD16 length;748RRProvider provider;749Atom property;750} xRRQueryProviderPropertyReq;751#define sz_xRRQueryProviderPropertyReq 12752753typedef struct {754BYTE type;755BYTE pad0;756CARD16 sequenceNumber;757CARD32 length;758BOOL pending;759BOOL range;760BOOL immutable;761BYTE pad1;762CARD32 pad2;763CARD32 pad3;764CARD32 pad4;765CARD32 pad5;766CARD32 pad6;767} xRRQueryProviderPropertyReply;768#define sz_xRRQueryProviderPropertyReply 32769770typedef struct {771CARD8 reqType;772CARD8 randrReqType;773CARD16 length;774RRProvider provider;775Atom property;776BOOL pending;777BOOL range;778CARD16 pad;779} xRRConfigureProviderPropertyReq;780#define sz_xRRConfigureProviderPropertyReq 16781782typedef struct {783CARD8 reqType;784CARD8 randrReqType;785CARD16 length;786RRProvider provider;787Atom property;788Atom type;789CARD8 format;790CARD8 mode;791CARD16 pad;792CARD32 nUnits;793} xRRChangeProviderPropertyReq;794#define sz_xRRChangeProviderPropertyReq 24795796typedef struct {797CARD8 reqType;798CARD8 randrReqType;799CARD16 length;800RRProvider provider;801Atom property;802} xRRDeleteProviderPropertyReq;803#define sz_xRRDeleteProviderPropertyReq 12804805typedef struct {806CARD8 reqType;807CARD8 randrReqType;808CARD16 length;809RRProvider provider;810Atom property;811Atom type;812CARD32 longOffset;813CARD32 longLength;814#ifdef __cplusplus815BOOL _delete;816#else817BOOL delete;818#endif819BOOL pending;820CARD16 pad1;821} xRRGetProviderPropertyReq;822#define sz_xRRGetProviderPropertyReq 28823824typedef struct {825BYTE type;826CARD8 format;827CARD16 sequenceNumber;828CARD32 length;829Atom propertyType;830CARD32 bytesAfter;831CARD32 nItems;832CARD32 pad1;833CARD32 pad2;834CARD32 pad3;835} xRRGetProviderPropertyReply;836#define sz_xRRGetProviderPropertyReply 32837838/*839* Additions for V1.6840*/841842typedef struct {843CARD8 reqType;844CARD8 randrReqType;845CARD16 length;846Window window;847RRLease lid;848CARD16 nCrtcs;849CARD16 nOutputs;850} xRRCreateLeaseReq;851#define sz_xRRCreateLeaseReq 16852853typedef struct {854BYTE type;855CARD8 nfd;856CARD16 sequenceNumber;857CARD32 length;858CARD32 pad2;859CARD32 pad3;860CARD32 pad4;861CARD32 pad5;862CARD32 pad6;863CARD32 pad7;864} xRRCreateLeaseReply;865#define sz_xRRCreateLeaseReply 32866867typedef struct {868CARD8 reqType;869CARD8 randrReqType;870CARD16 length;871RRLease lid;872BYTE terminate;873CARD8 pad1;874CARD16 pad2;875} xRRFreeLeaseReq;876#define sz_xRRFreeLeaseReq 12877878/*879* event880*/881typedef struct {882CARD8 type; /* always evBase + ScreenChangeNotify */883CARD8 rotation; /* new rotation */884CARD16 sequenceNumber;885Time timestamp; /* time screen was changed */886Time configTimestamp; /* time config data was changed */887Window root; /* root window */888Window window; /* window requesting notification */889SizeID sizeID; /* new size ID */890CARD16 subpixelOrder; /* subpixel order */891CARD16 widthInPixels; /* new size */892CARD16 heightInPixels;893CARD16 widthInMillimeters;894CARD16 heightInMillimeters;895} xRRScreenChangeNotifyEvent;896#define sz_xRRScreenChangeNotifyEvent 32897898typedef struct {899CARD8 type; /* always evBase + RRNotify */900CARD8 subCode; /* RRNotify_CrtcChange */901CARD16 sequenceNumber;902Time timestamp; /* time crtc was changed */903Window window; /* window requesting notification */904RRCrtc crtc; /* affected CRTC */905RRMode mode; /* current mode */906CARD16 rotation; /* rotation and reflection */907CARD16 pad1; /* unused */908INT16 x; /* new location */909INT16 y;910CARD16 width; /* new size */911CARD16 height;912} xRRCrtcChangeNotifyEvent;913#define sz_xRRCrtcChangeNotifyEvent 32914915typedef struct {916CARD8 type; /* always evBase + RRNotify */917CARD8 subCode; /* RRNotify_OutputChange */918CARD16 sequenceNumber;919Time timestamp; /* time output was changed */920Time configTimestamp; /* time config was changed */921Window window; /* window requesting notification */922RROutput output; /* affected output */923RRCrtc crtc; /* current crtc */924RRMode mode; /* current mode */925CARD16 rotation; /* rotation and reflection */926CARD8 connection; /* connection status */927CARD8 subpixelOrder; /* subpixel order */928} xRROutputChangeNotifyEvent;929#define sz_xRROutputChangeNotifyEvent 32930931typedef struct {932CARD8 type; /* always evBase + RRNotify */933CARD8 subCode; /* RRNotify_OutputProperty */934CARD16 sequenceNumber;935Window window; /* window requesting notification */936RROutput output; /* affected output */937Atom atom; /* property name */938Time timestamp; /* time crtc was changed */939CARD8 state; /* NewValue or Deleted */940CARD8 pad1;941CARD16 pad2;942CARD32 pad3;943CARD32 pad4;944} xRROutputPropertyNotifyEvent;945#define sz_xRROutputPropertyNotifyEvent 32946947typedef struct {948CARD8 type; /* always evBase + RRNotify */949CARD8 subCode; /* RRNotify_ProviderChange */950CARD16 sequenceNumber;951Time timestamp; /* time provider was changed */952Window window; /* window requesting notification */953RRProvider provider; /* affected provider */954CARD32 pad1;955CARD32 pad2;956CARD32 pad3;957CARD32 pad4;958} xRRProviderChangeNotifyEvent;959#define sz_xRRProviderChangeNotifyEvent 32960961typedef struct {962CARD8 type; /* always evBase + RRNotify */963CARD8 subCode; /* RRNotify_ProviderProperty */964CARD16 sequenceNumber;965Window window; /* window requesting notification */966RRProvider provider; /* affected provider */967Atom atom; /* property name */968Time timestamp; /* time provider was changed */969CARD8 state; /* NewValue or Deleted */970CARD8 pad1;971CARD16 pad2;972CARD32 pad3;973CARD32 pad4;974} xRRProviderPropertyNotifyEvent;975#define sz_xRRProviderPropertyNotifyEvent 32976977typedef struct {978CARD8 type; /* always evBase + RRNotify */979CARD8 subCode; /* RRNotify_ResourceChange */980CARD16 sequenceNumber;981Time timestamp; /* time resource was changed */982Window window; /* window requesting notification */983CARD32 pad1;984CARD32 pad2;985CARD32 pad3;986CARD32 pad4;987CARD32 pad5;988} xRRResourceChangeNotifyEvent;989#define sz_xRRResourceChangeNotifyEvent 32990991typedef struct {992CARD8 type; /* always evBase + RRNotify */993CARD8 subCode; /* RRNotify_Lease */994CARD16 sequenceNumber;995Time timestamp; /* time resource was changed */996Window window; /* window requesting notification */997RRLease lease;998CARD8 created; /* created/deleted */999CARD8 pad0;1000CARD16 pad1;1001CARD32 pad2;1002CARD32 pad3;1003CARD32 pad4;1004} xRRLeaseNotifyEvent;1005#define sz_xRRLeaseNotifyEvent 3210061007typedef struct {1008CARD8 reqType;1009CARD8 randrReqType;1010CARD16 length;1011RRCrtc crtc;1012} xRRGetPanningReq;1013#define sz_xRRGetPanningReq 810141015typedef struct {1016BYTE type;1017CARD8 status;1018CARD16 sequenceNumber;1019CARD32 length;1020Time timestamp;1021CARD16 left;1022CARD16 top;1023CARD16 width;1024CARD16 height;1025CARD16 track_left;1026CARD16 track_top;1027CARD16 track_width;1028CARD16 track_height;1029INT16 border_left;1030INT16 border_top;1031INT16 border_right;1032INT16 border_bottom;1033} xRRGetPanningReply;1034#define sz_xRRGetPanningReply 3610351036typedef struct {1037CARD8 reqType;1038CARD8 randrReqType;1039CARD16 length;1040RRCrtc crtc;1041Time timestamp;1042CARD16 left;1043CARD16 top;1044CARD16 width;1045CARD16 height;1046CARD16 track_left;1047CARD16 track_top;1048CARD16 track_width;1049CARD16 track_height;1050INT16 border_left;1051INT16 border_top;1052INT16 border_right;1053INT16 border_bottom;1054} xRRSetPanningReq;1055#define sz_xRRSetPanningReq 3610561057typedef struct {1058BYTE type;1059CARD8 status;1060CARD16 sequenceNumber;1061CARD32 length;1062Time newTimestamp;1063CARD32 pad1;1064CARD32 pad2;1065CARD32 pad3;1066CARD32 pad4;1067CARD32 pad5;1068} xRRSetPanningReply;1069#define sz_xRRSetPanningReply 3210701071typedef struct {1072Atom name;1073BOOL primary;1074BOOL automatic;1075CARD16 noutput;1076INT16 x;1077INT16 y;1078CARD16 width;1079CARD16 height;1080CARD32 widthInMillimeters;1081CARD32 heightInMillimeters;1082} xRRMonitorInfo;1083#define sz_xRRMonitorInfo 2410841085typedef struct {1086CARD8 reqType;1087CARD8 randrReqType;1088CARD16 length;1089Window window;1090BOOL get_active;1091CARD8 pad;1092CARD16 pad2;1093} xRRGetMonitorsReq;1094#define sz_xRRGetMonitorsReq 1210951096typedef struct {1097BYTE type;1098CARD8 status;1099CARD16 sequenceNumber;1100CARD32 length;1101Time timestamp;1102CARD32 nmonitors;1103CARD32 noutputs;1104CARD32 pad1;1105CARD32 pad2;1106CARD32 pad3;1107} xRRGetMonitorsReply;1108#define sz_xRRGetMonitorsReply 3211091110typedef struct {1111CARD8 reqType;1112CARD8 randrReqType;1113CARD16 length;1114Window window;1115xRRMonitorInfo monitor;1116} xRRSetMonitorReq;1117#define sz_xRRSetMonitorReq 3211181119typedef struct {1120CARD8 reqType;1121CARD8 randrReqType;1122CARD16 length;1123Window window;1124Atom name;1125} xRRDeleteMonitorReq;1126#define sz_xRRDeleteMonitorReq 1211271128#undef RRLease1129#undef RRModeFlags1130#undef RRCrtc1131#undef RRMode1132#undef RROutput1133#undef RRMode1134#undef RRCrtc1135#undef RRProvider1136#undef Drawable1137#undef Window1138#undef Font1139#undef Pixmap1140#undef Cursor1141#undef Colormap1142#undef GContext1143#undef Atom1144#undef Time1145#undef KeyCode1146#undef KeySym1147#undef Rotation1148#undef SizeID1149#undef SubpixelOrder11501151#endif /* _XRANDRP_H_ */115211531154