Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

250 lines
5.3 KiB

/*++
Copyright (c) 1995 Microsoft Corporation
Module Name:
bitmap.c
Abstract:
Implementation of brush and bitmap image related DDI entry points:
DrvRealizeBrush
DrvCopyBits
DrvBitBlt
DrvStretchBlt
Environment:
Windows NT PostScript driver
Revision History:
03/16/96 -davidx-
Initial framework.
mm/dd/yy -author-
description
--*/
#include "pscript.h"
BOOL
DrvRealizeBrush(
BRUSHOBJ *pbo,
SURFOBJ *psoTarget,
SURFOBJ *psoPattern,
SURFOBJ *psoMask,
XLATEOBJ *pxlo,
ULONG iHatch
)
/*++
Routine Description:
Implementation of DDI entry point DrvRealizeBrush.
Please refer to DDK documentation for more details.
Arguments:
pbo - BRUSHOBJ to be realized
psoTarget - Defines the surface for which the brush is to be realized
psoPattern - Defines the pattern for the brush
psoMask - Transparency mask for the brush
pxlo - Defines the interpretration of colors in the pattern
iHatch - Specifies whether psoPattern is one of the hatch brushes
Return Value:
TRUE if successful, FALSE if there is an error
--*/
{
PDEV pdev;
VERBOSE(("Entering DrvRealizeBrush...\n"));
ASSERT(pbo && psoTarget);
pdev = (PDEV) psoTarget->dhpdev;
ASSERT(ValidPDEV(pdev));
return FALSE;
}
BOOL
DrvCopyBits(
SURFOBJ *psoDest,
SURFOBJ *psoSrc,
CLIPOBJ *pco,
XLATEOBJ *pxlo,
RECTL *prclDest,
POINTL *pptlSrc
)
/*++
Routine Description:
Implementation of DDI entry point DrvCopyBits.
Please refer to DDK documentation for more details.
Arguments:
psoDest - Points to the destination surface
psoSrc - Points to the source surface
pco - Defines a clipping region on the destination surface
pxlo - Defines the translation of color indices
between the source and target surfaces
prclDest - Defines the area to be modified
pptlSrc - Defines the upper-left corner of the source rectangle
Return Value:
TRUE if successful, FALSE if there is an error
--*/
{
PDEV pdev;
VERBOSE(("Entering DrvCopyBits...\n"));
ASSERT(psoDest);
pdev = (PDEV) psoDest->dhpdev;
ASSERT(ValidPDEV(pdev));
return FALSE;
}
BOOL
DrvBitBlt(
SURFOBJ *psoTrg,
SURFOBJ *psoSrc,
SURFOBJ *psoMask,
CLIPOBJ *pco,
XLATEOBJ *pxlo,
RECTL *prclTrg,
POINTL *pptlSrc,
POINTL *pptlMask,
BRUSHOBJ *pbo,
POINTL *pptlBrush,
ROP4 rop4
)
/*++
Routine Description:
Implementation of DDI entry point DrvBitBlt.
Please refer to DDK documentation for more details.
Arguments:
psoTrg - Describes the target surface
psoSrc - Describes the source surface
psoMask - Describes the mask for rop4
pco - Limits the area to be modified
pxlo - Specifies how color indices are translated
between the source and target surfaces
prclTrg - Defines the area to be modified
pptlSrc - Defines the upper left corner of the source rectangle
pptlMask - Defines which pixel in the mask corresponds to
the upper left corner of the source rectangle
pbo - Defines the pattern for bitblt
pptlBrush - Defines the origin of the brush in the destination surface
rop4 - ROP code that defines how the mask, pattern, source, and
destination pixels are combined to write to the destination surface
Return Value:
TRUE if successful, FALSE if there is an error
--*/
{
DWORD fgRop3, bkRop3;
PDEV pdev;
VERBOSE(("Entering DrvBitBlt...\n"));
ASSERT(psoTrg);
pdev = (PDEV) psoTrg->dhpdev;
ASSERT(ValidPDEV(pdev));
//
// Extract the foreground and background ROP3
//
fgRop3 = GetForegroundRop3(rop4);
bkRop3 = GetBackgroundRop3(rop4);
return FALSE;
}
BOOL
DrvStretchBlt(
SURFOBJ *psoDest,
SURFOBJ *psoSrc,
SURFOBJ *psoMask,
CLIPOBJ *pco,
XLATEOBJ *pxlo,
COLORADJUSTMENT *pca,
POINTL *pptlHTOrg,
RECTL *prclDest,
RECTL *prclSrc,
POINTL *pptlMask,
ULONG iMode
)
/*++
Routine Description:
Implementation of DDI entry point DrvStretchBlt.
Please refer to DDK documentation for more details.
Arguments:
psoDest - Defines the surface on which to draw
psoSrc - Defines the source for blt operation
psoMask - Defines a surface that provides a mask for the source
pco - Limits the area to be modified on the destination
pxlo - Specifies how color indexes are to be translated
between the source and target surfaces
pca - Defines color adjustment values to be applied to the source bitmap
pptlHTOrg - Specifies the origin of the halftone brush
prclDest - Defines the area to be modified on the destination surface
prclSrc - Defines the area to be copied from the source surface
pptlMask - Specifies which pixel in the given mask corresponds to
the upper left pixel in the source rectangle
iMode - Specifies how source pixels are combined to get output pixels
Return Value:
TRUE if successful, FALSE if there is an error
--*/
{
PDEV pdev;
VERBOSE(("Entering DrvStretchBlt...\n"));
ASSERT(psoDest);
pdev = (PDEV) psoDest->dhpdev;
ASSERT(ValidPDEV(pdev));
return FALSE;
}