The data types defined in the following table appear in the device driver interface. Several of the listed data types are those user objects previously described in User Objects.
|
DDI Data Type |
Variable Name Prefix |
Definition |
|
BOOL |
b |
A 32 bit value that can be TRUE or FALSE. |
|
BYTE |
j |
An 8 bit unsigned integer. |
|
BRUSHOBJ* |
pbo |
A brush object. |
|
CLIPLINE |
cl |
A clipline object. |
|
CLIPOBJ* |
pco |
A clipping object. |
|
DHPDEV |
dhpdev |
A 32 bit handle, defined by the device driver, that identifies a physical device. |
|
DHSURF |
dhsurf |
A 32 bit handle, defined by the device driver, that identifies a device managed surface. |
|
FIX |
fix |
A 32 bit signed fixed point number. 28 bits are to the left of the binary point. |
|
FLOAT |
e |
A 32 bit IEEE floating point number. |
|
FLOAT_LONG |
el |
A 32 bit value that is interpreted as either a LONG or FLOAT, depending on a separate flag. |
|
FLONG |
fl |
A set of 32 bit flags. |
|
FONTOBJ* |
pfo |
A font object. |
|
FSHORT |
fs |
A set of 16 bit flags. |
|
HBM |
hbm |
A 32 bit handle, defined by GDI, that identifies a bitmap. |
|
HPAL |
hpal |
A 32 bit handle, defined by GDI, that identifies a palette. |
|
HSURF |
hsurf |
A 32 bit handle, defined by GDI, that identifies a surface. |
|
LONG |
l |
A 32 bit signed integer. |
|
MIX |
mix |
A 32 bit quantity, whose lower 16 bits define foreground and background mix modes. |
|
PALOBJ* |
ppalo |
A palette object. |
|
PATHOBJ* |
ppo |
A path object. |
|
POINTE |
pte |
A point structure that consists of {FLOAT x,y;}. |
|
POINTFX |
ptfx |
A point structure that consists of {FIX x,y;}. |
|
POINTL |
ptl |
A point structure that consists of {LONG x,y;}. |
|
PWSZ |
pwsz |
A pointer to a zero-terminated Unicode string. |
|
PVOID |
pv |
A pointer to a structure that is not defined by GDI. |
|
RECTL |
rcl |
A rectangle structure that consists of {LONG xLeft,yTop,xRight,yBottom;} |
|
RECTFX |
rcfx |
A rectangle structure that consists of {FIX xLeft,yTop,xRight,yBottom;} |
|
ROP4 |
rop4 |
A 32 bit value that specifies how source, destination, pattern, and mask pixels are to be mixed. |
|
SHORT |
s |
A 16 bit signed integer. |
|
SIZEL |
sizl |
A two-dimensional size structure that consists of {ULONG cx,cy;}. |
|
STROBJ* |
pstro |
A text string object. |
|
SURFOBJ* |
pso |
A surface object. |
|
ULONG |
ul |
A 32 bit unsigned integer. |
|
USHORT |
us |
A 16 bit unsigned integer. |
|
XFORMOBJ* |
pxo |
A coordinate transform object. |
|
XLATEOBJ* |
pxlo |
A color translation object. |
The parameter prefixes listed in the next table are used to modify variable name prefixes in accordance with their usage.
|
Prefix |
Parameter Usage |
|
i |
An enumerated index |
|
c |
A count |
|
p |
A pointer |