<> <> <> <<>> <> <<>> DIRECTORY ImagerColorDefs USING [SampledColor], ImagerPixelMap USING [PixelMap], ImagerSample USING [Sampler, SampleBuffer], ImagerTransformation USING [Transformation], PrincOps USING [BitBltFlags], Terminal USING [FrameBuffer, Virtual] ; ImagerColor24DevicePrivate: CEDAR DEFINITIONS ~ BEGIN Case: TYPE ~ {nil, constant, stipple, sampled}; StippleArray: TYPE ~ PACKED ARRAY [0..16) OF WORD; Channel: TYPE ~ {A, B}; <> <> <<>> bitsPerPixelA: NAT ~ 16; bitsPerPixelB: NAT ~ 8; Data: TYPE ~ REF DataRep; DataRep: TYPE ~ RECORD[ terminal: Terminal.Virtual _ NIL, frame: ARRAY Channel OF Terminal.FrameBuffer, case: Case _ nil, -- what type of color zerosAreClear: BOOL _ FALSE, -- special case for sampled black clear. flags: PrincOps.BitBltFlags _ [], -- bitblt flags grayWordA: WORD _ 0, -- bitblt gray word [red, green] grayWordB: WORD _ 0, -- bitblt gray word [blue, blue] stipple: StippleArray _ ALL[0], -- stipple pattern sampledColor: ImagerColorDefs.SampledColor _ NIL, -- sampled color paToDevice: ImagerTransformation.Transformation _ NIL, -- transformation from pa coords to display buffer: ImagerSample.SampleBuffer _ NIL, -- scan line buffer for samples sampler: ARRAY Channel OF ImagerSample.Sampler _ ALL[NIL], -- sampler information extras: REF _ NIL ]; SampledColorData: TYPE ~ REF SampledColorDataRep; SampledColorDataRep: TYPE ~ RECORD [ source: ARRAY Channel OF ImagerPixelMap.PixelMap ]; END.