| Index: third_party/libXNVCtrl/nv_control.h
|
| ===================================================================
|
| --- third_party/libXNVCtrl/nv_control.h (revision 0)
|
| +++ third_party/libXNVCtrl/nv_control.h (revision 0)
|
| @@ -0,0 +1,617 @@
|
| +/*
|
| + * Copyright (c) 2008 NVIDIA, Corporation
|
| + *
|
| + * 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 (including the next
|
| + * paragraph) 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 THE
|
| + * AUTHORS OR COPYRIGHT HOLDERS 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.
|
| + *
|
| + *
|
| + * NV-CONTROL Protocol Version History
|
| + *
|
| + * 1.0 - 1.5 NVIDIA Internal development versions
|
| + * 1.6 Initial public version
|
| + * 1.7 Added QueryBinaryData request
|
| + * 1.8 Added TargetTypes
|
| + * 1.9 Added QueryTargetCount request
|
| + * 1.10 Fixed target type/id byte ordering for compatibility with
|
| + * pre-1.8 NV-CONTROL clients
|
| + * 1.11 NVIDIA Internal development version
|
| + * 1.12 Added StringOperation request
|
| + * 1.13 NVIDIA Internal development version
|
| + * 1.14 Fixed an NV_CTRL_BINARY_DATA_MODELINES double scan modeline
|
| + * reporting bug (vsyncstart, vsyncend, and vtotal were incorrectly
|
| + * doubled)
|
| + * 1.15 Added AVAILABILITY_TARGET_ATTRIBUTE_CHANGED_EVENT
|
| + * 1.16 Added TARGET_STRING_ATTRIBUTE_CHANGED_EVENT
|
| + * 1.17 Added TARGET_BINARY_ATTRIBUTE_CHANGED_EVENT
|
| + * 1.18 Updated QueryTargetCount to return a count of 0, rather than
|
| + * BadMatch, if an unknown TargetType is specified
|
| + * 1.19 Added TargetType support for SetAttributeAndGetStatus and
|
| + * SetStringAttribute requests
|
| + * 1.20 Added COOLER TargetType
|
| + * 1.21 Added initial 64-bit integer attribute support (read-only)
|
| + * 1.22 Added X_nvCtrlQueryValidStringAttributeValues to check
|
| + * string attribute permissions.
|
| + * 1.23 Added SENSOR TargetType
|
| + * 1.24 Fixed a bug where SLI_MOSAIC_MODE_AVAILABLE attribute would
|
| + * report false positives via the GPU and X screen target types
|
| + * 1.25 Added 3D_VISION_PRO_TRANSCEIVER TargetType
|
| + * 1.26 Added XNVCTRLQueryXXXAttributePermissions.
|
| + * 1.27 Added DISPLAY TargetType
|
| + * 1.28 Added NV_CTRL_CURRENT_METAMODE_ID: clients should use this
|
| + * attribute to switch MetaModes, rather than pass the MetaMode ID
|
| + * through the RRSetScreenConfig protocol request.
|
| + */
|
| +
|
| +#ifndef __NVCONTROL_H
|
| +#define __NVCONTROL_H
|
| +
|
| +#define NV_CONTROL_ERRORS 0
|
| +#define NV_CONTROL_EVENTS 5
|
| +#define NV_CONTROL_NAME "NV-CONTROL"
|
| +
|
| +#define NV_CONTROL_MAJOR 1
|
| +#define NV_CONTROL_MINOR 28
|
| +
|
| +#define X_nvCtrlQueryExtension 0
|
| +#define X_nvCtrlIsNv 1
|
| +#define X_nvCtrlQueryAttribute 2
|
| +#define X_nvCtrlSetAttribute 3
|
| +#define X_nvCtrlQueryStringAttribute 4
|
| +#define X_nvCtrlQueryValidAttributeValues 5
|
| +#define X_nvCtrlSelectNotify 6
|
| +#define X_nvCtrlSetGvoColorConversionDeprecated 7
|
| +#define X_nvCtrlQueryGvoColorConversionDeprecated 8
|
| +#define X_nvCtrlSetStringAttribute 9
|
| +/* STUB X_nvCtrlQueryDDCCILutSize 10 */
|
| +/* STUB X_nvCtrlQueryDDCCISinglePointLutOperation 11 */
|
| +/* STUB X_nvCtrlSetDDCCISinglePointLutOperation 12 */
|
| +/* STUB X_nvCtrlQueryDDCCIBlockLutOperation 13 */
|
| +/* STUB X_nvCtrlSetDDCCIBlockLutOperation 14 */
|
| +/* STUB X_nvCtrlSetDDCCIRemoteProcedureCall 15 */
|
| +/* STUB X_nvCtrlQueryDDCCIDisplayControllerType 16 */
|
| +/* STUB X_nvCtrlQueryDDCCICapabilities 17 */
|
| +/* STUB X_nvCtrlQueryDDCCITimingReport 18 */
|
| +#define X_nvCtrlSetAttributeAndGetStatus 19
|
| +#define X_nvCtrlQueryBinaryData 20
|
| +#define X_nvCtrlSetGvoColorConversion 21
|
| +#define X_nvCtrlQueryGvoColorConversion 22
|
| +#define X_nvCtrlSelectTargetNotify 23
|
| +#define X_nvCtrlQueryTargetCount 24
|
| +#define X_nvCtrlStringOperation 25
|
| +#define X_nvCtrlQueryValidAttributeValues64 26
|
| +#define X_nvCtrlQueryAttribute64 27
|
| +#define X_nvCtrlQueryValidStringAttributeValues 28
|
| +#define X_nvCtrlQueryAttributePermissions 29
|
| +#define X_nvCtrlQueryStringAttributePermissions 30
|
| +#define X_nvCtrlQueryBinaryDataAttributePermissions 31
|
| +#define X_nvCtrlQueryStringOperationAttributePermissions 32
|
| +
|
| +#define X_nvCtrlLastRequest (X_nvCtrlQueryStringOperationAttributePermissions + 1)
|
| +
|
| +
|
| +/* Define 32 bit floats */
|
| +typedef float FLOAT32;
|
| +#ifndef F32
|
| +#define F32
|
| +#endif
|
| +
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| +} xnvCtrlQueryExtensionReq;
|
| +#define sz_xnvCtrlQueryExtensionReq 4
|
| +
|
| +typedef struct {
|
| + BYTE type; /* X_Reply */
|
| + CARD8 padb1;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD16 major B16;
|
| + CARD16 minor B16;
|
| + CARD32 padl4 B32;
|
| + CARD32 padl5 B32;
|
| + CARD32 padl6 B32;
|
| + CARD32 padl7 B32;
|
| + CARD32 padl8 B32;
|
| +} xnvCtrlQueryExtensionReply;
|
| +#define sz_xnvCtrlQueryExtensionReply 32
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD32 screen B32;
|
| +} xnvCtrlIsNvReq;
|
| +#define sz_xnvCtrlIsNvReq 8
|
| +
|
| +typedef struct {
|
| + BYTE type; /* X_Reply */
|
| + CARD8 padb1;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 isnv B32;
|
| + CARD32 padl4 B32;
|
| + CARD32 padl5 B32;
|
| + CARD32 padl6 B32;
|
| + CARD32 padl7 B32;
|
| + CARD32 padl8 B32;
|
| +} xnvCtrlIsNvReply;
|
| +#define sz_xnvCtrlIsNvReply 32
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD32 target_type B32;
|
| +} xnvCtrlQueryTargetCountReq;
|
| +#define sz_xnvCtrlQueryTargetCountReq 8
|
| +
|
| +typedef struct {
|
| + BYTE type; /* X_Reply */
|
| + CARD8 padb1;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 count B32;
|
| + CARD32 padl4 B32;
|
| + CARD32 padl5 B32;
|
| + CARD32 padl6 B32;
|
| + CARD32 padl7 B32;
|
| + CARD32 padl8 B32;
|
| +} xnvCtrlQueryTargetCountReply;
|
| +#define sz_xnvCtrlQueryTargetCountReply 32
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD16 target_id B16; /* X screen number or GPU number */
|
| + CARD16 target_type B16; /* X screen or GPU */
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| +} xnvCtrlQueryAttributeReq;
|
| +#define sz_xnvCtrlQueryAttributeReq 16
|
| +
|
| +typedef struct {
|
| + BYTE type;
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 flags B32;
|
| + INT32 value B32;
|
| + CARD32 pad4 B32;
|
| + CARD32 pad5 B32;
|
| + CARD32 pad6 B32;
|
| + CARD32 pad7 B32;
|
| +} xnvCtrlQueryAttributeReply;
|
| +#define sz_xnvCtrlQueryAttributeReply 32
|
| +
|
| +typedef struct {
|
| + BYTE type;
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 flags B32;
|
| + CARD32 pad3 B32;
|
| + int64_t value_64;
|
| + CARD32 pad6 B32;
|
| + CARD32 pad7 B32;
|
| +} xnvCtrlQueryAttribute64Reply;
|
| +#define sz_xnvCtrlQueryAttribute64Reply 32
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD16 target_id B16;
|
| + CARD16 target_type B16;
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| + INT32 value B32;
|
| +} xnvCtrlSetAttributeReq;
|
| +#define sz_xnvCtrlSetAttributeReq 20
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD16 target_id B16;
|
| + CARD16 target_type B16;
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| + INT32 value B32;
|
| +} xnvCtrlSetAttributeAndGetStatusReq;
|
| +#define sz_xnvCtrlSetAttributeAndGetStatusReq 20
|
| +
|
| +typedef struct {
|
| + BYTE type;
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 flags B32;
|
| + CARD32 pad3 B32;
|
| + CARD32 pad4 B32;
|
| + CARD32 pad5 B32;
|
| + CARD32 pad6 B32;
|
| + CARD32 pad7 B32;
|
| +} xnvCtrlSetAttributeAndGetStatusReply;
|
| +#define sz_xnvCtrlSetAttributeAndGetStatusReply 32
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD16 target_id B16; /* X screen number or GPU number */
|
| + CARD16 target_type B16; /* X screen or GPU */
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| +} xnvCtrlQueryStringAttributeReq;
|
| +#define sz_xnvCtrlQueryStringAttributeReq 16
|
| +
|
| +typedef struct {
|
| + BYTE type;
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 flags B32;
|
| + CARD32 n B32; /* Length of string */
|
| + CARD32 pad4 B32;
|
| + CARD32 pad5 B32;
|
| + CARD32 pad6 B32;
|
| + CARD32 pad7 B32;
|
| +} xnvCtrlQueryStringAttributeReply;
|
| +#define sz_xnvCtrlQueryStringAttributeReply 32
|
| +
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD16 target_id B16;
|
| + CARD16 target_type B16;
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| + CARD32 num_bytes B32;
|
| +} xnvCtrlSetStringAttributeReq;
|
| +#define sz_xnvCtrlSetStringAttributeReq 20
|
| +
|
| +typedef struct {
|
| + BYTE type;
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 flags B32;
|
| + CARD32 pad3 B32;
|
| + CARD32 pad4 B32;
|
| + CARD32 pad5 B32;
|
| + CARD32 pad6 B32;
|
| + CARD32 pad7 B32;
|
| +} xnvCtrlSetStringAttributeReply;
|
| +#define sz_xnvCtrlSetStringAttributeReply 32
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD16 target_id B16; /* X screen number or GPU number */
|
| + CARD16 target_type B16; /* X screen or GPU */
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| +} xnvCtrlQueryValidAttributeValuesReq;
|
| +#define sz_xnvCtrlQueryValidAttributeValuesReq 16
|
| +
|
| +typedef struct {
|
| + BYTE type;
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 flags B32;
|
| + INT32 attr_type B32;
|
| + INT32 min B32;
|
| + INT32 max B32;
|
| + CARD32 bits B32;
|
| + CARD32 perms B32;
|
| +} xnvCtrlQueryValidAttributeValuesReply;
|
| +#define sz_xnvCtrlQueryValidAttributeValuesReply 32
|
| +
|
| +typedef struct {
|
| + BYTE type;
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 flags B32;
|
| + INT32 attr_type B32;
|
| + int64_t min_64;
|
| + int64_t max_64;
|
| + CARD64 bits_64;
|
| + CARD32 perms B32;
|
| + CARD32 pad1 B32;
|
| +} xnvCtrlQueryValidAttributeValues64Reply;
|
| +#define sz_xnvCtrlQueryValidAttributeValues64Reply 48
|
| +#define sz_xnvCtrlQueryValidAttributeValues64Reply_extra ((48 - 32) >> 2)
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD32 attribute B32;
|
| +} xnvCtrlQueryAttributePermissionsReq;
|
| +#define sz_xnvCtrlQueryAttributePermissionsReq 8
|
| +
|
| +typedef struct {
|
| + BYTE type;
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 flags B32;
|
| + INT32 attr_type B32;
|
| + CARD32 perms B32;
|
| + CARD32 pad5 B32;
|
| + CARD32 pad6 B32;
|
| + CARD32 pad7 B32;
|
| + CARD32 pad8 B32;
|
| +} xnvCtrlQueryAttributePermissionsReply;
|
| +#define sz_xnvCtrlQueryAttributePermissionsReply 32
|
| +
|
| +/* Set GVO Color Conversion request (deprecated) */
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD32 screen B32;
|
| + FLOAT32 row1_col1 F32;
|
| + FLOAT32 row1_col2 F32;
|
| + FLOAT32 row1_col3 F32;
|
| + FLOAT32 row1_col4 F32;
|
| + FLOAT32 row2_col1 F32;
|
| + FLOAT32 row2_col2 F32;
|
| + FLOAT32 row2_col3 F32;
|
| + FLOAT32 row2_col4 F32;
|
| + FLOAT32 row3_col1 F32;
|
| + FLOAT32 row3_col2 F32;
|
| + FLOAT32 row3_col3 F32;
|
| + FLOAT32 row3_col4 F32;
|
| +} xnvCtrlSetGvoColorConversionDeprecatedReq;
|
| +#define sz_xnvCtrlSetGvoColorConversionDeprecatedReq 56
|
| +
|
| +/* Query GVO Color Conversion request (deprecated) */
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD32 screen B32;
|
| +} xnvCtrlQueryGvoColorConversionDeprecatedReq;
|
| +#define sz_xnvCtrlQueryGvoColorConversionDeprecatedReq 8
|
| +
|
| +/* Query GVO Color Conversion reply (deprecated) */
|
| +typedef struct {
|
| + BYTE type; /* X_Reply */
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 pad3 B32;
|
| + CARD32 pad4 B32;
|
| + CARD32 pad5 B32;
|
| + CARD32 pad6 B32;
|
| + CARD32 pad7 B32;
|
| + CARD32 pad8 B32;
|
| +} xnvCtrlQueryGvoColorConversionDeprecatedReply;
|
| +#define sz_xnvCtrlQueryGvoColorConversionDeprecatedReply 32
|
| +
|
| +
|
| +/* Set GVO Color Conversion request */
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD32 screen B32;
|
| +
|
| + FLOAT32 cscMatrix_y_r F32;
|
| + FLOAT32 cscMatrix_y_g F32;
|
| + FLOAT32 cscMatrix_y_b F32;
|
| +
|
| + FLOAT32 cscMatrix_cr_r F32;
|
| + FLOAT32 cscMatrix_cr_g F32;
|
| + FLOAT32 cscMatrix_cr_b F32;
|
| +
|
| + FLOAT32 cscMatrix_cb_r F32;
|
| + FLOAT32 cscMatrix_cb_g F32;
|
| + FLOAT32 cscMatrix_cb_b F32;
|
| +
|
| + FLOAT32 cscOffset_y F32;
|
| + FLOAT32 cscOffset_cr F32;
|
| + FLOAT32 cscOffset_cb F32;
|
| +
|
| + FLOAT32 cscScale_y F32;
|
| + FLOAT32 cscScale_cr F32;
|
| + FLOAT32 cscScale_cb F32;
|
| +
|
| +} xnvCtrlSetGvoColorConversionReq;
|
| +#define sz_xnvCtrlSetGvoColorConversionReq 68
|
| +
|
| +/* Query GVO Color Conversion request */
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD32 screen B32;
|
| +} xnvCtrlQueryGvoColorConversionReq;
|
| +#define sz_xnvCtrlQueryGvoColorConversionReq 8
|
| +
|
| +/* Query GVO Color Conversion reply */
|
| +typedef struct {
|
| + BYTE type; /* X_Reply */
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 pad3 B32;
|
| + CARD32 pad4 B32;
|
| + CARD32 pad5 B32;
|
| + CARD32 pad6 B32;
|
| + CARD32 pad7 B32;
|
| + CARD32 pad8 B32;
|
| +} xnvCtrlQueryGvoColorConversionReply;
|
| +#define sz_xnvCtrlQueryGvoColorConversionReply 32
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD16 target_id B16; /* X screen number or GPU number */
|
| + CARD16 target_type B16; /* X screen or GPU */
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| +} xnvCtrlQueryBinaryDataReq;
|
| +#define sz_xnvCtrlQueryBinaryDataReq 16
|
| +
|
| +typedef struct {
|
| + BYTE type;
|
| + BYTE pad0;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 flags B32;
|
| + CARD32 n B32;
|
| + CARD32 pad4 B32;
|
| + CARD32 pad5 B32;
|
| + CARD32 pad6 B32;
|
| + CARD32 pad7 B32;
|
| +} xnvCtrlQueryBinaryDataReply;
|
| +#define sz_xnvCtrlQueryBinaryDataReply 32
|
| +
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD32 screen B32;
|
| + CARD16 notifyType B16;
|
| + CARD16 onoff B16;
|
| +} xnvCtrlSelectNotifyReq;
|
| +#define sz_xnvCtrlSelectNotifyReq 12
|
| +
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD16 target_id B16; /* X screen number or GPU number */
|
| + CARD16 target_type B16; /* X screen or GPU */
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| + CARD32 num_bytes B32; /* Length of string */
|
| +} xnvCtrlStringOperationReq;
|
| +#define sz_xnvCtrlStringOperationReq 20
|
| +
|
| +typedef struct {
|
| + BYTE type; /* X_Reply */
|
| + CARD8 padb1;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 length B32;
|
| + CARD32 ret B32;
|
| + CARD32 num_bytes B32; /* Length of string */
|
| + CARD32 padl4 B32;
|
| + CARD32 padl5 B32;
|
| + CARD32 padl6 B32;
|
| + CARD32 padl7 B32;
|
| +} xnvCtrlStringOperationReply;
|
| +#define sz_xnvCtrlStringOperationReply 32
|
| +
|
| +typedef struct {
|
| + union {
|
| + struct {
|
| + BYTE type;
|
| + BYTE detail;
|
| + CARD16 sequenceNumber B16;
|
| + } u;
|
| + struct {
|
| + BYTE type;
|
| + BYTE detail;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 time B32;
|
| + CARD32 screen B32;
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| + CARD32 value B32;
|
| + CARD32 pad0 B32;
|
| + CARD32 pad1 B32;
|
| + } attribute_changed;
|
| + } u;
|
| +} xnvctrlEvent;
|
| +
|
| +
|
| +/*
|
| + * Leave target_type before target_id for the
|
| + * xnvCtrlSelectTargetNotifyReq and xnvctrlEventTarget
|
| + * structures, even though other request protocol structures
|
| + * store target_id in the bottom 16-bits of the second DWORD of the
|
| + * structures. The event-related structures were added in version
|
| + * 1.8, and so there is no prior version with which to maintain
|
| + * compatibility.
|
| + */
|
| +typedef struct {
|
| + CARD8 reqType;
|
| + CARD8 nvReqType;
|
| + CARD16 length B16;
|
| + CARD16 target_type B16; /* Don't swap these */
|
| + CARD16 target_id B16;
|
| + CARD16 notifyType B16;
|
| + CARD16 onoff B16;
|
| +} xnvCtrlSelectTargetNotifyReq;
|
| +#define sz_xnvCtrlSelectTargetNotifyReq 12
|
| +
|
| +typedef struct {
|
| + union {
|
| + struct {
|
| + BYTE type;
|
| + BYTE detail;
|
| + CARD16 sequenceNumber B16;
|
| + } u;
|
| + struct {
|
| + BYTE type;
|
| + BYTE detail;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 time B32;
|
| + CARD16 target_type B16; /* Don't swap these */
|
| + CARD16 target_id B16;
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| + CARD32 value B32;
|
| + CARD32 pad0 B32;
|
| + CARD32 pad1 B32;
|
| + } attribute_changed;
|
| + struct {
|
| + BYTE type;
|
| + BYTE detail;
|
| + CARD16 sequenceNumber B16;
|
| + CARD32 time B32;
|
| + CARD16 target_type B16; /* Don't swap these */
|
| + CARD16 target_id B16;
|
| + CARD32 display_mask B32;
|
| + CARD32 attribute B32;
|
| + CARD32 value B32;
|
| + CARD8 availability;
|
| + CARD8 pad0;
|
| + CARD16 pad1 B16;
|
| + CARD32 pad2 B32;
|
| + } availability_changed;
|
| + } u;
|
| +} xnvctrlEventTarget;
|
| +
|
| +
|
| +#endif /* __NVCONTROL_H */
|
|
|
| Property changes on: third_party/libXNVCtrl/nv_control.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|