ImagerBitmapDevicePrivate.mesa
Copyright Ó 1985, 1986 by Xerox Corporation. All rights reserved.
Michael Plass, June 26, 1985 9:45:19 am PDT
Tim Diebert: April 14, 1986 10:08:04 am PST
Private interface for the benefit of ImagerOps.
DIRECTORY
ImagerBrick USING [Brick],
ImagerColorDefs USING [SampledColor],
ImagerPixelMap USING [PixelMap, PixelMapRep, Tile],
ImagerSample USING [Sampler, SampleBuffer],
ImagerTransformation USING [Transformation],
PrincOps USING [BitBltFlags];
ImagerBitmapDevicePrivate: CEDAR DEFINITIONS
~ BEGIN
SetBrick: PROC [brick: ImagerBrick.Brick];
grayHeight: NAT ~ 4; -- must not exceed 16, should be a power of 2
GrayArray: TYPE ~ ARRAY [0..grayHeight) OF WORD;
Case: TYPE ~ {nil, noop, constant, stipple, tile, sampled};
Data: TYPE ~ REF DataRep;
DataRep: TYPE ~ RECORD[
sSizeFrame: NAT,
fSizeFrame: NAT,
frame: REF ImagerPixelMap.PixelMapRep, -- the bitmap
pixelsPerInch: REAL, -- declared resolution
case: Case ← nil, -- what type of color
sampledBlack: BOOLFALSE,
sampledBlackClear: BOOLFALSE,
flags: PrincOps.BitBltFlags ← [], -- bitblt flags
maskBitsFlags: PrincOps.BitBltFlags ← [], -- bitblt flags for fast MaskBits case
grayArray: GrayArray ← ALL[0], -- bitblt gray block
sampledColor: ImagerColorDefs.SampledColor ← NIL, -- most recently seen sampled color
paToDevice: ImagerTransformation.Transformation ← NIL, -- transformation from sampledColor.pa to display
source: ImagerPixelMap.PixelMap ← [0, 0, 0, 0, 0, 0, NIL], -- source values from pixel array
tile: ImagerPixelMap.Tile ← [0, 0, 0, 0, 0, NIL], -- valid if case = tile
sampler: ImagerSample.Sampler ← NIL, -- sampler information
buffer: ImagerSample.SampleBuffer ← NIL, -- scan line buffer for source samples
brick: ImagerSample.SampleBuffer ← NIL, -- halftone brick
extras: REFNIL
];
END.