<<>> <> <> <> <> DIRECTORY ImagerPixelArray USING [Function, PixelArray, Sample, SampleBuffer, SampleMap, Transformation, Vec], Prop USING [PropList]; ImagerPixelArrayPrivate: CEDAR DEFINITIONS ~ BEGIN OPEN ImagerPixelArray; MaxSampleValueProc: TYPE ~ PROC [pa: PixelArray, i: NAT] RETURNS [Sample]; GetProc: TYPE ~ PROC [pa: PixelArray, i: NAT, s, f: INT] RETURNS [Sample]; GetSamplesProc: TYPE ~ PROC [pa: PixelArray, i: NAT, s, f: INT, buffer: SampleBuffer, start: NAT, count: NAT]; TransferProc: TYPE ~ PROC [pa: PixelArray, i: NAT, s, f: INT, dst: SampleMap, dstMin: Vec, size: Vec, function: Function]; CopyProc: TYPE ~ PROC [pa: PixelArray] RETURNS[PixelArray]; PixelArrayClass: TYPE ~ REF PixelArrayClassRep; PixelArrayClassRep: TYPE ~ RECORD [ type: ATOM, MaxSampleValue: MaxSampleValueProc, Get: GetProc, GetSamples: GetSamplesProc, Transfer: TransferProc, Copy: CopyProc, propList: Prop.PropList ¬ NIL ]; NewClass: PROC [type: ATOM, MaxSampleValue: MaxSampleValueProc, Get: GetProc ¬ NIL, GetSamples: GetSamplesProc ¬ NIL, Transfer: TransferProc ¬ NIL, Copy: CopyProc ¬ NIL ] RETURNS [PixelArrayClass]; New: PROC [class: PixelArrayClass, data: REF, immutable: BOOL, samplesPerPixel: NAT, sSize, fSize: INT, m: Transformation ] RETURNS [PixelArray]; END.