ImagerPixelArrayPrivate.mesa
Copyright © 1985, 1986 by Xerox Corporation. All rights reserved.
Doug Wyatt, March 3, 1986 3:10:14 pm PST
DIRECTORY
Atom USING [PropList],
ImagerPixelArray USING [Function, PixelArray, Sample, SampleBuffer, SampleMap, Transformation, Vec];
ImagerPixelArrayPrivate: CEDAR DEFINITIONS
~ BEGIN OPEN ImagerPixelArray;
MaxSampleValueProc: TYPE ~ PROC [self: PixelArray, i: NAT] RETURNS [Sample];
GetProc: TYPE ~ PROC [self: PixelArray, i: NAT, s, f: INT] RETURNS [Sample];
GetSamplesProc: TYPE ~ PROC [self: PixelArray, i: NAT, s, f: INT,
samples: SampleBuffer, start: NAT, count: NAT];
TransferProc: TYPE ~ PROC [self: PixelArray, i: NAT, s, f: INT,
dst: SampleMap, dstMin: Vec, size: Vec, function: Function];
CopyProc: TYPE ~ PROC [self: PixelArray] RETURNS[PixelArray];
PixelArrayClass: TYPE ~ REF PixelArrayClassRep;
PixelArrayClassRep: TYPE ~ RECORD [
type: ATOM,
MaxSampleValue: MaxSampleValueProc,
Get: GetProc,
GetSamples: GetSamplesProc,
Transfer: TransferProc,
Copy: CopyProc,
propList: Atom.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.