CLIPOBJ_cEnumStart (Compact 2013)

3/26/2014

This function sets parameters for enumerating rectangles in a specified clip region.

Syntax

ULONG CLIPOBJ_cEnumStart(
  IN CLIPOBJ* pco,
  BOOL bAll,
  ULONG iType,
  ULONG iDirection,
  ULONG cLimit
);

Parameters

  • pco
    [in] Pointer to the CLIPOBJ structure that defines the clip region to be enumerated.
  • bAll
    [in] Flag that specifies whether the entire region should be enumerated. To enumerate the entire region, set this parameter to TRUE. To enumerate the parts of the region relevant to the present drawing operation, set this parameter to FALSE.

    A driver that caches clip regions must enumerate the entire region.

  • iType
    [in] Data structures to be written by the CLIPOBJ_bEnum function. Set this parameter to CT_RECTANGLES, which indicates that the region is to be enumerated as a list of rectangles.
  • iDirection
    [in] Order in which to enumerate rectangles. Specify an order if a DrvBitBlt operation executes concurrently on the same surface. If the order of enumeration is not relevant to the device driver, specify CD_ANY, which instructs GDI to optimize the enumeration.

    The following table shows possible values for this parameter.

    Value

    Description

    CD_ANY

    GDI determines the order of enumeration.

    CD_LEFTDOWN

    Right to left and top to bottom.

    CD_LEFTUP

    Right to left and bottom to top.

    CD_RIGHTDOWN

    Left to right and top to bottom.

    CD_RIGHTUP

    Left to right and bottom to top.

  • cLimit
    [in] Maximum number of rectangles to enumerate. If the value of this parameter is zero, counting is not performed.

Return Value

This function returns a count of enumerated rectangles. If the count exceeds the value specified in the cLimit parameter, this function returns 0xFFFFFFFF.

Remarks

Calling this function does not affect whether you can enumerate a region. By default, the driver enumerates relevant rectangles from left to right and top to bottom.

The driver can restart enumeration by calling this function.

Requirements

Header

winddi.h

Library

Ddi_ati_lib.lib,
Ddi_flat_lib.lib,
Ddi_gx_lib.lib,
Ddi_mq200_lib.lib,
Ddi_nop_lib.lib,
Ddi_rflat_lib.lib,
Ddi_rgx_lib.lib,
Ddi_tvia5_lib.lib

See Also

Reference

GDI Functions for Display Drivers
CLIPOBJ_bEnum
DrvBitBlt