<> <> <> <<>> <> <<>> DIRECTORY IIColorDefs USING [SampledColor], IIPixelMap USING [PixelMap, PixelMapRep, Tile], IISample USING [Sampler, SampleBuffer], IITransformation USING [Transformation], PrincOps USING [BitBltFlags]; IIBitmapDevicePrivate: CEDAR DEFINITIONS ~ BEGIN 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 IIPixelMap.PixelMapRep, -- the bitmap pixelsPerInch: REAL, -- declared resolution case: Case _ nil, -- what type of color sampledBlack: BOOL _ FALSE, sampledBlackClear: BOOL _ FALSE, flags: PrincOps.BitBltFlags _ [], -- bitblt flags maskBitsFlags: PrincOps.BitBltFlags _ [], -- bitblt flags for fast MaskBits case grayArray: GrayArray _ ALL[0], -- bitblt gray block sampledColor: IIColorDefs.SampledColor _ NIL, -- most recently seen sampled color paToDevice: IITransformation.Transformation _ NIL, -- transformation from sampledColor.pa to display source: IIPixelMap.PixelMap _ [0, 0, 0, 0, 0, 0, NIL], -- source values from pixel array tile: IIPixelMap.Tile _ [0, 0, 0, 0, 0, NIL], -- valid if case = tile sampler: IISample.Sampler _ NIL, -- sampler information buffer: IISample.SampleBuffer _ NIL, -- scan line buffer for source samples brick: IISample.SampleBuffer _ NIL, -- halftone brick extras: REF _ NIL ]; END.