DIRECTORY ImagerPixelMap USING [PixelMap, PixelMapRep], ImagerTransformation USING [Transformation]; ImagerPixelRow: CEDAR DEFINITIONS ~ BEGIN PixelMap: TYPE ~ ImagerPixelMap.PixelMap; PixelMapRep: TYPE ~ ImagerPixelMap.PixelMapRep; Transformation: TYPE ~ ImagerTransformation.Transformation; Pixel: TYPE ~ CARDINAL; PixelRow: TYPE ~ REF PixelRowRep; PixelRowRep: TYPE ~ RECORD [ sOrigin: INTEGER, fOrigin: INTEGER, fSize: NAT, pixel: SEQUENCE maxSize: NAT OF Pixel ]; CreatePixelRow: PROC[sMin, fMin: INTEGER, fSize: NAT] RETURNS[new: PixelRow]; ClearPixelRow: PROC[pixelRow: PixelRow]; CopyPixelRow: PROC[pixelRow: PixelRow, scratch: PixelRow _ NIL] RETURNS[new: PixelRow]; AddByColumn: PROC[dest, source: PixelRow]; SubtractByColumn: PROC[dest, source: PixelRow]; LoadPixelRow: PROC[pixelRow: PixelRow, source: PixelMap]; StorePixelRow: PROC[pixelRow: PixelRow, dest: PixelMap]; TransferSamples: PROC[dest, source: PixelMap, transformation: Transformation, tile: BOOLEAN _ FALSE, multiplier: CARDINAL _ 1, lgScale: INTEGER _ 0]; UnderSample: PROC[pixelMap: PixelMap, transformation: Transformation, tile: BOOLEAN _ FALSE, background: CARDINAL _ 0, scratch: REF PixelMapRep _ NIL] RETURNS [PixelMap]; BoxFilter: PROC[pixelMap: PixelMap, sSizeBox, fSizeBox: NAT]; BoxTooBig: ERROR; ChangeBitsPerPixel: PROC[pixelMap: PixelMap, newLgBitsPerPixel: [0..4], scratch: REF PixelMapRep _ NIL] RETURNS[PixelMap]; Renormalize: PROC[pixelMap: PixelMap, oldmin, oldmax, newmin, newmax: REAL]; END. ΄ImagerPixelRow.mesa Copyright c 1984, 1985 by Xerox Corporation. All rights reserved. Michael Plass, August 6, 1984 9:07:08 am PDT Doug Wyatt, March 7, 1985 2:41:44 pm PST Κ@˜codešœ™Kšœ Οmœ7™BK™,K™(—K˜šΟk ˜ Kšœžœ˜-Kšœžœ˜,—K˜KšΠblœžœž ˜!Kšœž˜K˜Kšœ žœ˜)Kšœ žœ˜/Kšœžœ'˜;K˜Kšœžœžœ˜Kšœ žœžœ ˜!šœ žœžœ˜Kšœ žœ˜Kšœ žœ˜Kšœžœ˜ Kšœžœ žœžœ˜%Kšœ˜—K˜š Οnœžœ žœ žœžœ˜MK˜—š  œžœ˜(K˜—š  œžœ)žœžœ˜WK˜—š  œžœ˜*K˜—š œžœ˜/K˜—š  œžœ'˜9K˜—š  œžœ%˜8K˜—š  œžœ?žœžœžœžœ˜•K˜—š  œžœ;žœžœžœžœžœžœ ˜ͺK˜—š  œžœ)žœ˜=Kšœ žœ˜K˜—š  œžœ9žœžœžœ ˜zK˜—š  œžœ5žœ˜LK˜—K˜Kšžœ˜—…—δΨ