Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

nv_control.h

Go to the documentation of this file.
00001 #ifndef __NVCONTROL_H
00002 #define __NVCONTROL_H
00003 
00004 #define NV_CONTROL_ERRORS 0
00005 #define NV_CONTROL_EVENTS 2
00006 #define NV_CONTROL_NAME "NV-CONTROL"
00007 
00008 #define NV_CONTROL_MAJOR 1
00009 #define NV_CONTROL_MINOR 10
00010 
00011 #define X_nvCtrlQueryExtension                      0
00012 #define X_nvCtrlIsNv                                1
00013 #define X_nvCtrlQueryAttribute                      2
00014 #define X_nvCtrlSetAttribute                        3
00015 #define X_nvCtrlQueryStringAttribute                4
00016 #define X_nvCtrlQueryValidAttributeValues           5
00017 #define X_nvCtrlSelectNotify                        6
00018 #define X_nvCtrlSetGvoColorConversion_deprecated    7
00019 #define X_nvCtrlQueryGvoColorConversion_deprecated  8
00020 #define X_nvCtrlSetStringAttribute                  9
00021 #define X_nvCtrlQueryDDCCILutSize                   10
00022 #define X_nvCtrlQueryDDCCISinglePointLutOperation   11
00023 #define X_nvCtrlSetDDCCISinglePointLutOperation     12
00024 #define X_nvCtrlQueryDDCCIBlockLutOperation         13
00025 #define X_nvCtrlSetDDCCIBlockLutOperation           14
00026 #define X_nvCtrlSetDDCCIRemoteProcedureCall         15
00027 #define X_nvCtrlQueryDDCCIDisplayControllerType     16
00028 #define X_nvCtrlQueryDDCCICapabilities              17
00029 #define X_nvCtrlQueryDDCCITimingReport              18
00030 #define X_nvCtrlSetAttributeAndGetStatus            19
00031 #define X_nvCtrlQueryBinaryData                     20
00032 #define X_nvCtrlSetGvoColorConversion               21
00033 #define X_nvCtrlQueryGvoColorConversion             22
00034 #define X_nvCtrlSelectTargetNotify                  23
00035 #define X_nvCtrlQueryTargetCount                    24
00036 #define X_nvCtrlLastRequest  (X_nvCtrlQueryTargetCount + 1)
00037 
00038 
00039 /* Define 32 bit floats */
00040 typedef float FLOAT32;
00041 #ifndef F32
00042 #define F32
00043 #endif
00044 
00045 
00046 typedef struct {
00047     CARD8 reqType;
00048     CARD8 nvReqType;
00049     CARD16 length B16;
00050 } xnvCtrlQueryExtensionReq;
00051 #define sz_xnvCtrlQueryExtensionReq 4
00052 
00053 typedef struct {
00054     BYTE type;   /* X_Reply */
00055     CARD8 padb1;
00056     CARD16 sequenceNumber B16;
00057     CARD32 length B32;
00058     CARD16 major B16;
00059     CARD16 minor B16;
00060     CARD32 padl4 B32;
00061     CARD32 padl5 B32;
00062     CARD32 padl6 B32;
00063     CARD32 padl7 B32;
00064     CARD32 padl8 B32;
00065 } xnvCtrlQueryExtensionReply;
00066 #define sz_xnvCtrlQueryExtensionReply 32
00067 
00068 typedef struct {
00069     CARD8 reqType;
00070     CARD8 nvReqType;
00071     CARD16 length B16;
00072     CARD32 screen B32;
00073 } xnvCtrlIsNvReq;
00074 #define sz_xnvCtrlIsNvReq 8
00075 
00076 typedef struct {
00077     BYTE type;   /* X_Reply */
00078     CARD8 padb1;
00079     CARD16 sequenceNumber B16;
00080     CARD32 length B32;
00081     CARD32 isnv B32;
00082     CARD32 padl4 B32;
00083     CARD32 padl5 B32;
00084     CARD32 padl6 B32;
00085     CARD32 padl7 B32;
00086     CARD32 padl8 B32;
00087 } xnvCtrlIsNvReply;
00088 #define sz_xnvCtrlIsNvReply 32
00089 
00090 typedef struct {
00091     CARD8 reqType;
00092     CARD8 nvReqType;
00093     CARD16 length B16;
00094     CARD32 target_type B32;
00095 } xnvCtrlQueryTargetCountReq;
00096 #define sz_xnvCtrlQueryTargetCountReq 8
00097 
00098 typedef struct {
00099     BYTE type;   /* X_Reply */
00100     CARD8 padb1;
00101     CARD16 sequenceNumber B16;
00102     CARD32 length B32;
00103     CARD32 count B32;
00104     CARD32 padl4 B32;
00105     CARD32 padl5 B32;
00106     CARD32 padl6 B32;
00107     CARD32 padl7 B32;
00108     CARD32 padl8 B32;
00109 } xnvCtrlQueryTargetCountReply;
00110 #define sz_xnvCtrlQueryTargetCountReply 32
00111 
00112 typedef struct {
00113     CARD8 reqType;
00114     CARD8 nvReqType;
00115     CARD16 length B16;
00116     CARD16 target_id B16;    /* X screen number or GPU number */
00117     CARD16 target_type B16;  /* X screen or GPU */
00118     CARD32 display_mask B32;
00119     CARD32 attribute B32;
00120 } xnvCtrlQueryAttributeReq;
00121 #define sz_xnvCtrlQueryAttributeReq 16
00122 
00123 typedef struct {
00124     BYTE type;
00125     BYTE pad0;
00126     CARD16 sequenceNumber B16;
00127     CARD32 length B32;
00128     CARD32 flags B32;
00129     INT32  value B32;
00130     CARD32 pad4 B32;
00131     CARD32 pad5 B32;
00132     CARD32 pad6 B32;
00133     CARD32 pad7 B32;
00134 } xnvCtrlQueryAttributeReply;
00135 #define sz_xnvCtrlQueryAttributeReply 32
00136 
00137 typedef struct {
00138     CARD8 reqType;
00139     CARD8 nvReqType;
00140     CARD16 length B16;
00141     CARD16 target_id B16;
00142     CARD16 target_type B16;
00143     CARD32 display_mask B32;
00144     CARD32 attribute B32;
00145     INT32 value B32;
00146 } xnvCtrlSetAttributeReq;
00147 #define sz_xnvCtrlSetAttributeReq 20
00148 
00149 typedef struct {
00150     CARD8 reqType;
00151     CARD8 nvReqType;
00152     CARD16 length B16;
00153     CARD32 screen B32;
00154     CARD32 display_mask B32;
00155     CARD32 attribute B32;
00156     INT32 value B32;
00157 } xnvCtrlSetAttributeAndGetStatusReq;
00158 #define sz_xnvCtrlSetAttributeAndGetStatusReq 20
00159 
00160 typedef struct {
00161     BYTE type;
00162     BYTE pad0;
00163     CARD16 sequenceNumber B16;
00164     CARD32 length B32;
00165     CARD32 flags B32;
00166     CARD32 pad3 B32;
00167     CARD32 pad4 B32;
00168     CARD32 pad5 B32;
00169     CARD32 pad6 B32;
00170     CARD32 pad7 B32;
00171 } xnvCtrlSetAttributeAndGetStatusReply;
00172 #define sz_xnvCtrlSetAttributeAndGetStatusReply 32
00173 
00174 typedef struct {
00175     CARD8 reqType;
00176     CARD8 nvReqType;
00177     CARD16 length B16;
00178     CARD16 target_id B16;    /* X screen number or GPU number */
00179     CARD16 target_type B16;  /* X screen or GPU */
00180     CARD32 display_mask B32;
00181     CARD32 attribute B32;
00182 } xnvCtrlQueryStringAttributeReq;
00183 #define sz_xnvCtrlQueryStringAttributeReq 16
00184 
00185 typedef struct {
00186     BYTE type;
00187     BYTE pad0;
00188     CARD16 sequenceNumber B16;
00189     CARD32 length B32;
00190     CARD32 flags B32;
00191     CARD32 n B32;    /* Length of string */
00192     CARD32 pad4 B32;
00193     CARD32 pad5 B32;
00194     CARD32 pad6 B32;
00195     CARD32 pad7 B32;
00196 } xnvCtrlQueryStringAttributeReply;
00197 #define sz_xnvCtrlQueryStringAttributeReply 32
00198 
00199 
00200 typedef struct {
00201     CARD8 reqType;
00202     CARD8 nvReqType;
00203     CARD16 length B16;
00204     CARD32 screen B32;
00205     CARD32 display_mask B32;
00206     CARD32 attribute B32;
00207     CARD32 num_bytes B32;
00208 } xnvCtrlSetStringAttributeReq;
00209 #define sz_xnvCtrlSetStringAttributeReq 20
00210 
00211 typedef struct {
00212     BYTE type;
00213     BYTE pad0;
00214     CARD16 sequenceNumber B16;
00215     CARD32 length B32;
00216     CARD32 flags B32;
00217     CARD32 pad3 B32;
00218     CARD32 pad4 B32;
00219     CARD32 pad5 B32;
00220     CARD32 pad6 B32;
00221     CARD32 pad7 B32;
00222 } xnvCtrlSetStringAttributeReply;
00223 #define sz_xnvCtrlSetStringAttributeReply 32
00224 
00225 typedef struct {
00226     CARD8 reqType;
00227     CARD8 nvReqType;
00228     CARD16 length B16;
00229     CARD16 target_id B16;    /* X screen number or GPU number */
00230     CARD16 target_type B16;  /* X screen or GPU */
00231     CARD32 display_mask B32;
00232     CARD32 attribute B32;
00233 } xnvCtrlQueryValidAttributeValuesReq;
00234 #define sz_xnvCtrlQueryValidAttributeValuesReq 16
00235 
00236 typedef struct {
00237     BYTE type;
00238     BYTE pad0;
00239     CARD16 sequenceNumber B16;
00240     CARD32 length B32;
00241     CARD32 flags B32;
00242     INT32  attr_type B32;
00243     INT32  min B32;
00244     INT32  max B32;
00245     CARD32 bits B32;
00246     CARD32 perms B32;
00247 } xnvCtrlQueryValidAttributeValuesReply;
00248 #define sz_xnvCtrlQueryValidAttributeValuesReply 32
00249 
00250 /* Set GVO Color Conversion request (deprecated) */
00251 typedef struct {
00252     CARD8 reqType;
00253     CARD8 nvReqType;
00254     CARD16 length B16;
00255     CARD32 screen B32;
00256     FLOAT32 row1_col1 F32;
00257     FLOAT32 row1_col2 F32;
00258     FLOAT32 row1_col3 F32;
00259     FLOAT32 row1_col4 F32;
00260     FLOAT32 row2_col1 F32;
00261     FLOAT32 row2_col2 F32;
00262     FLOAT32 row2_col3 F32;
00263     FLOAT32 row2_col4 F32;
00264     FLOAT32 row3_col1 F32;
00265     FLOAT32 row3_col2 F32;
00266     FLOAT32 row3_col3 F32;
00267     FLOAT32 row3_col4 F32;
00268 } xnvCtrlSetGvoColorConversionDeprecatedReq;
00269 #define sz_xnvCtrlSetGvoColorConversionDeprecatedReq 56
00270 
00271 /* Query GVO Color Conversion request (deprecated) */
00272 typedef struct {
00273     CARD8 reqType;
00274     CARD8 nvReqType;
00275     CARD16 length B16;
00276     CARD32 screen B32;
00277 } xnvCtrlQueryGvoColorConversionDeprecatedReq;
00278 #define sz_xnvCtrlQueryGvoColorConversionDeprecatedReq 8
00279 
00280 /* Query GVO Color Conversion reply (deprecated) */
00281 typedef struct {
00282     BYTE type;   /* X_Reply */
00283     BYTE pad0;
00284     CARD16 sequenceNumber B16;
00285     CARD32 length B32;
00286     CARD32 pad3 B32;
00287     CARD32 pad4 B32;
00288     CARD32 pad5 B32;
00289     CARD32 pad6 B32;
00290     CARD32 pad7 B32;
00291     CARD32 pad8 B32;
00292 } xnvCtrlQueryGvoColorConversionDeprecatedReply;
00293 #define sz_xnvCtrlQueryGvoColorConversionDeprecatedReply 32
00294 
00295 
00296 /* Set GVO Color Conversion request */
00297 typedef struct {
00298     CARD8 reqType;
00299     CARD8 nvReqType;
00300     CARD16 length B16;
00301     CARD32 screen B32;
00302 
00303     FLOAT32 cscMatrix_y_r F32;
00304     FLOAT32 cscMatrix_y_g F32;
00305     FLOAT32 cscMatrix_y_b F32;
00306 
00307     FLOAT32 cscMatrix_cr_r F32;
00308     FLOAT32 cscMatrix_cr_g F32;
00309     FLOAT32 cscMatrix_cr_b F32;
00310 
00311     FLOAT32 cscMatrix_cb_r F32;
00312     FLOAT32 cscMatrix_cb_g F32;
00313     FLOAT32 cscMatrix_cb_b F32;
00314     
00315     FLOAT32 cscOffset_y  F32;
00316     FLOAT32 cscOffset_cr F32;
00317     FLOAT32 cscOffset_cb F32;
00318     
00319     FLOAT32 cscScale_y  F32;
00320     FLOAT32 cscScale_cr F32;
00321     FLOAT32 cscScale_cb F32;
00322     
00323 } xnvCtrlSetGvoColorConversionReq;
00324 #define sz_xnvCtrlSetGvoColorConversionReq 68
00325 
00326 /* Query GVO Color Conversion request */
00327 typedef struct {
00328     CARD8 reqType;
00329     CARD8 nvReqType;
00330     CARD16 length B16;
00331     CARD32 screen B32;
00332 } xnvCtrlQueryGvoColorConversionReq;
00333 #define sz_xnvCtrlQueryGvoColorConversionReq 8
00334 
00335 /* Query GVO Color Conversion reply */
00336 typedef struct {
00337     BYTE type;   /* X_Reply */
00338     BYTE pad0;
00339     CARD16 sequenceNumber B16;
00340     CARD32 length B32;
00341     CARD32 pad3 B32;
00342     CARD32 pad4 B32;
00343     CARD32 pad5 B32;
00344     CARD32 pad6 B32;
00345     CARD32 pad7 B32;
00346     CARD32 pad8 B32;
00347 } xnvCtrlQueryGvoColorConversionReply;
00348 #define sz_xnvCtrlQueryGvoColorConversionReply 32
00349 
00350 
00351 typedef struct {
00352     CARD8 reqType;
00353     CARD8 nvReqType;
00354     CARD16 length B16;
00355     CARD32 screen B32;
00356     CARD32 display_mask B32;
00357 } xnvCtrlQueryDDCCILutSizeReq;
00358 #define sz_xnvCtrlQueryDDCCILutSizeReq 12
00359 
00360 typedef struct {
00361     BYTE type;   /* X_Reply */
00362     BYTE pad0;
00363     CARD16 sequenceNumber B16;
00364     CARD32 length B32;
00365     CARD32 flags B32;
00366     CARD32 pad4 B32;
00367     CARD32 pad5 B32;
00368     CARD32 pad6 B32;
00369     CARD32 pad7 B32;
00370     CARD32 pad8 B32;
00371 } xnvCtrlQueryDDCCILutSizeReply;
00372 #define sz_xnvCtrlQueryDDCCILutSizeReply 32
00373 
00374 typedef struct {
00375     CARD8 reqType;
00376     CARD8 nvReqType;
00377     CARD16 length B16;
00378     CARD32 screen B32;
00379     CARD32 display_mask B32;
00380     CARD32 offset B32;
00381     CARD32 red_value B32;
00382     CARD32 green_value B32;
00383     CARD32 blue_value B32;
00384 } xnvCtrlSetDDCCISinglePointLutOperationReq;
00385 #define sz_xnvCtrlSetDDCCISinglePointLutOperationReq 28
00386 
00387 typedef struct {
00388     BYTE type;   /* X_Reply */
00389     BYTE pad0;
00390     CARD16 sequenceNumber B16;
00391     CARD32 length B32;
00392     CARD32 flags B32;
00393     CARD32 pad4 B32;
00394     CARD32 pad5 B32;
00395     CARD32 pad6 B32;
00396     CARD32 pad7 B32;
00397     CARD32 pad8 B32;
00398 } xnvCtrlSetDDCCISinglePointLutOperationReply;
00399 #define sz_xnvCtrlSetDDCCISinglePointLutOperationReply 32
00400 
00401 typedef struct {
00402     CARD8 reqType;
00403     CARD8 nvReqType;
00404     CARD16 length B16;
00405     CARD32 screen B32;
00406     CARD32 display_mask B32;
00407     CARD32 offset B32;
00408 } xnvCtrlQueryDDCCISinglePointLutOperationReq;
00409 #define sz_xnvCtrlQueryDDCCISinglePointLutOperationReq 16
00410 
00411 typedef struct {
00412     BYTE type;   /* X_Reply */
00413     BYTE pad0;
00414     CARD16 sequenceNumber B16;
00415     CARD32 length B32;
00416     CARD32 flags B32;
00417     CARD32 pad4 B32;
00418     CARD32 pad5 B32;
00419     CARD32 pad6 B32;
00420     CARD32 pad7 B32;
00421     CARD32 pad8 B32;
00422 } xnvCtrlQueryDDCCISinglePointLutOperationReply;
00423 #define sz_xnvCtrlQueryDDCCISinglePointLutOperationReply 32
00424 
00425 typedef struct {
00426     CARD8 reqType;
00427     CARD8 nvReqType;
00428     CARD16 length B16;
00429     CARD32 screen B32;
00430     CARD32 display_mask B32;
00431     CARD32 size B32;
00432     CARD32 color B32;
00433     CARD32 offset B32;
00434 } xnvCtrlQueryDDCCIBlockLutOperationReq;
00435 #define sz_xnvCtrlQueryDDCCIBlockLutOperationReq 24
00436 
00437 typedef struct {
00438     BYTE type;   /* X_Reply */
00439     BYTE pad0;
00440     CARD16 sequenceNumber B16;
00441     CARD32 length B32;
00442     CARD32 num_bytes B32;
00443     CARD32 flags B32;
00444     CARD32 pad5 B32;
00445     CARD32 pad6 B32;
00446     CARD32 pad7 B32;
00447     CARD32 pad8 B32;
00448 } xnvCtrlQueryDDCCIBlockLutOperationReply;
00449 #define sz_xnvCtrlQueryDDCCIBlockLutOperationReply 32
00450 
00451 
00452 typedef struct {
00453     CARD8 reqType;
00454     CARD8 nvReqType;
00455     CARD16 length B16;
00456     CARD32 screen B32;
00457     CARD32 display_mask B32;
00458     CARD32 color B32;
00459     CARD32 offset B32;
00460     CARD32 size B32;
00461     CARD32 num_bytes B32;
00462 } xnvCtrlSetDDCCIBlockLutOperationReq;
00463 #define sz_xnvCtrlSetDDCCIBlockLutOperationReq 28
00464 
00465 typedef struct {
00466     BYTE type;   /* X_Reply */
00467     BYTE pad0;
00468     CARD16 sequenceNumber B16;
00469     CARD32 length B32;
00470     CARD32 num_bytes B32;
00471     CARD32 flags B32;
00472     CARD32 pad5 B32;
00473     CARD32 pad6 B32;
00474     CARD32 pad7 B32;
00475     CARD32 pad8 B32;
00476 } xnvCtrlSetDDCCIBlockLutOperationReply;
00477 #define sz_xnvCtrlSetDDCCIBlockLutOperationReply 32
00478 
00479 
00480 typedef struct {
00481     CARD8 reqType;
00482     CARD8 nvReqType;
00483     CARD16 length B16;
00484     CARD32 screen B32;
00485     CARD32 display_mask B32;
00486     CARD32 num_bytes B32;
00487     CARD32 size B32;
00488     CARD32 offset B32;
00489 } xnvCtrlSetDDCCIRemoteProcedureCallReq;
00490 #define sz_xnvCtrlSetDDCCIRemoteProcedureCallReq 24
00491 
00492 typedef struct {
00493     BYTE type;   /* X_Reply */
00494     BYTE pad0;
00495     CARD16 sequenceNumber B16;
00496     CARD32 length B32;
00497     CARD32 num_bytes B32;
00498     CARD32 flags B32;
00499     CARD32 pad5 B32;
00500     CARD32 pad6 B32;
00501     CARD32 pad7 B32;
00502     CARD32 pad8 B32;
00503 } xnvCtrlSetDDCCIRemoteProcedureCallReply;
00504 #define sz_xnvCtrlSetDDCCIRemoteProcedureCallReply 32
00505 
00506 typedef struct {
00507     CARD8 reqType;
00508     CARD8 nvReqType;
00509     CARD16 length B16;
00510     CARD32 screen B32;
00511     CARD32 display_mask B32;
00512 } xnvCtrlQueryDDCCIDisplayControllerTypeReq;
00513 #define sz_xnvCtrlQueryDDCCIDisplayControllerTypeReq 12
00514 
00515 typedef struct {
00516     BYTE type;   /* X_Reply */
00517     BYTE pad0;
00518     CARD16 sequenceNumber B16;
00519     CARD32 length B32;
00520     CARD32 controller_type B32;
00521     CARD32 size B32;
00522     CARD32 flags B32;
00523     CARD32 pad5 B32;
00524     CARD32 pad6 B32;
00525     CARD32 pad7 B32;
00526 } xnvCtrlQueryDDCCIDisplayControllerTypeReply;
00527 #define sz_xnvCtrlQueryDDCCIDisplayControllerTypeReply 32
00528 
00529 typedef struct {
00530     CARD8 reqType;
00531     CARD8 nvReqType;
00532     CARD16 length B16;
00533     CARD32 screen B32;
00534     CARD32 display_mask B32;
00535 } xnvCtrlQueryDDCCICapabilitiesReq;
00536 #define sz_xnvCtrlQueryDDCCICapabilitiesReq 12
00537 
00538 typedef struct {
00539     BYTE type;   /* X_Reply */
00540     BYTE pad0;
00541     CARD16 sequenceNumber B16;
00542     CARD32 length B32;
00543     CARD32 num_bytes B32;
00544     CARD32 flags B32;
00545     CARD32 possible_val_len B32;
00546     CARD32 pad6 B32;
00547     CARD32 pad7 B32;
00548     CARD32 pad8 B32;
00549 } xnvCtrlQueryDDCCICapabilitiesReply;
00550 #define sz_xnvCtrlQueryDDCCICapabilitiesReply 32
00551 
00552 typedef struct {
00553     CARD8 reqType;
00554     CARD8 nvReqType;
00555     CARD16 length B16;
00556     CARD32 screen B32;
00557     CARD32 display_mask B32;
00558 } xnvCtrlQueryDDCCITimingReportReq;
00559 #define sz_xnvCtrlQueryDDCCITimingReportReq 12
00560 
00561 typedef struct {
00562     BYTE type;   /* X_Reply */
00563     BYTE pad0;
00564     CARD16 sequenceNumber B16;
00565     CARD32 length B32;
00566     CARD32 flags B32;
00567     CARD32 pad4 B32;
00568     CARD32 pad5 B32;
00569     CARD32 pad6 B32;
00570     CARD32 pad7 B32;
00571     CARD32 pad8 B32;
00572 } xnvCtrlQueryDDCCITimingReportReply;
00573 #define sz_xnvCtrlQueryDDCCITimingReportReply 32
00574 
00575 typedef struct {
00576     CARD8 reqType;
00577     CARD8 nvReqType;
00578     CARD16 length B16;
00579     CARD16 target_id B16;    /* X screen number or GPU number */
00580     CARD16 target_type B16;  /* X screen or GPU */
00581     CARD32 display_mask B32;
00582     CARD32 attribute B32;
00583 } xnvCtrlQueryBinaryDataReq;
00584 #define sz_xnvCtrlQueryBinaryDataReq 16
00585 
00586 typedef struct {
00587     BYTE type;
00588     BYTE pad0;
00589     CARD16 sequenceNumber B16;
00590     CARD32 length B32;
00591     CARD32 flags B32;
00592     CARD32 n B32;
00593     CARD32 pad4 B32;
00594     CARD32 pad5 B32;
00595     CARD32 pad6 B32;
00596     CARD32 pad7 B32;
00597 } xnvCtrlQueryBinaryDataReply;
00598 #define sz_xnvCtrlQueryBinaryDataReply 32
00599 
00600 
00601 typedef struct {
00602     CARD8 reqType;
00603     CARD8 nvReqType;
00604     CARD16 length B16;
00605     CARD32 screen B32;
00606     CARD16 notifyType B16;
00607     CARD16 onoff B16;
00608 } xnvCtrlSelectNotifyReq;
00609 #define sz_xnvCtrlSelectNotifyReq 12
00610 
00611 typedef struct {
00612     union {
00613         struct {
00614             BYTE type;
00615             BYTE detail;
00616             CARD16 sequenceNumber B16;
00617         } u;
00618         struct {
00619             BYTE type;
00620             BYTE detail;
00621             CARD16 sequenceNumber B16;
00622             CARD32 time B32;
00623             CARD32 screen B32;
00624             CARD32 display_mask B32;
00625             CARD32 attribute B32;
00626             CARD32 value B32;
00627             CARD32 pad0 B32;
00628             CARD32 pad1 B32;
00629         } attribute_changed;
00630     } u;
00631 } xnvctrlEvent;
00632 
00633 
00634 /*
00635  * Leave target_type before target_id for the
00636  * xnvCtrlSelectTargetNotifyReq and xnvctrlEventTarget
00637  * structures, even though other request protocol structures
00638  * store target_id in the bottom 16-bits of the second DWORD of the
00639  * structures.  The event-related structures were added in version
00640  * 1.8, and so there is no prior version with which to maintain
00641  * compatibility.
00642  */
00643 typedef struct {
00644     CARD8 reqType;
00645     CARD8 nvReqType;
00646     CARD16 length B16;
00647     CARD16 target_type B16; /* Don't swap these */
00648     CARD16 target_id B16;
00649     CARD16 notifyType B16;
00650     CARD16 onoff B16;
00651 } xnvCtrlSelectTargetNotifyReq;
00652 #define sz_xnvCtrlSelectTargetNotifyReq 12
00653 
00654 typedef struct {
00655     union {
00656         struct {
00657             BYTE type;
00658             BYTE detail;
00659             CARD16 sequenceNumber B16;
00660         } u;
00661         struct {
00662             BYTE type;
00663             BYTE detail;
00664             CARD16 sequenceNumber B16;
00665             CARD32 time B32;
00666             CARD16 target_type B16; /* Don't swap these */
00667             CARD16 target_id B16;
00668             CARD32 display_mask B32;
00669             CARD32 attribute B32;
00670             CARD32 value B32;
00671             CARD32 pad0 B32;
00672             CARD32 pad1 B32;
00673         } attribute_changed;
00674     } u;
00675 } xnvctrlEventTarget;
00676 
00677 
00678 #endif /* __NVCONTROL_H */

Generated on Sat Aug 19 20:40:53 2006 for Renouveau by  doxygen 1.4.4