## Graphics Adapter Device Driver Reference

[prev][next][parent][TOC]

### USERCAPSIN Field - ulFunction

ulFunction (ULONG) Specifies the QUERYCAPS, QUERYCAPSLIST, or SETCAPS subfunctions.

The subfunctions, specified by the ulFunction field of the USERCAPSIN structure, may be defined as follows:

QUERYCAPS

    #define  QUERYCAPS     1L

QUERYCAPS returns the number of capabilities and capability descriptions in the buffer area pointed to by pOut.

Because the values for each capability are not yet allocated, the pValueList, pCurrentValue, and pDefaultValue fields in the DRIVERCAPS structures must not be filled in for this call.

The driver must ensure that the buffer area size, specified by ulSize, is sufficient for the supported number of capabilities. If not, the driver should return the number of capabilities supported in the first word of the buffer area and a return code of RC_ERROR. The driver will be reinvoked with a larger buffer area for QUERYCAPS. This allows a driver to export multiple capabilities (each, in turn, gets its own page in the System Object notebook).

QUERYCAPSLIST

    #define  QUERYCAPSLIST   2L

QUERYCAPSLIST fills the pValueList, pCurrentValue, and pDefaultValue fields in the DRIVERCAPS structure pointed to by pOut. The members must be 0 padded up to the length specified by ulValueMemberSize.

SETCAP

    #define  SETCAP    3L

SETCAP sets a value that the user has selected. The value is specified in the pCurrentValue field of the DRIVERCAPS structure pointed to by pOut.