## Presentation Device Driver Reference for OS/2

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

### GreEscape DEVESC_EXTQUERY

Select an item:

    Syntax
    Parameters
    Returns
    Remarks
    Glossary

Simulation support:

None.

Description

GreEscape DEVESC_EXTQUERY is called by EnDIVE users to get information describing the characteristics of the motion video accelerator. The function returns the capabilities and formats supported by the device.

When called, GreEscape DEVESC_EXTQUERY returns a pointer to an array of filled-in IMAGECAPS structures. The number of structures in the array is returned in the ulENDIVEDrivers field of the FBINFO data structure, which is returned by the GreEscape DEVESC_QUERYFB function.

The IMAGECAPS data structure contains capabilities flags and arrays of supported CODECs and color space definitions for both source and target data. For source color spaces, the COLORINFO data structure is organized in order of preference from the driver's perspective, from the most preferable to the least.

To use GreEscape DEVESC_EXTQUERY, the caller allocates enough memory for 8 CODECs, 8 source color formats and 8 target color formats. If the allocated memory is insufficient for a particular configuration, the driver returns an error code with the suggested values in the appropriate ulNumxxxx field in the IMAGECAPS data structure. The caller must then reallocate enough memory and call the driver again.

    #define INCL_GRE_DEVICE

    #include <os2.h>

    HDC      hdc;         /*  Device context handle. */

    LONG     ICODE;       /*  DEVESC_EXTQUERY escape code. */

    LONG     lInCount;    /*  Zero (0). */

    PBYTE    pbInData;    /*  NULL. */

    PLONG    plOutCount;  /*  Number of bytes pointed to by pbOutData. */

    PLONG    pbOutData;   /*  Pointer to IMAGECAPS data structure. */

    LONG     rc;          /*  Return Codes. */

    rc = GreEscape(hdc, ICODE, lInCount, pbInData,

           plOutCount, pbOutData);