ColorDisplayHeadDLion.mesa (stub version)
Copyright © 1985 by Xerox Corporation. All rights reserved.
Taft August 26, 1982 4:40 pm
Maxwell December 9, 1983 8:35 am
Russ Atkinson (RRA) February 19, 1985 3:31:46 pm PST
Doug Wyatt, May 2, 1985 4:34:09 pm PDT
DIRECTORY
ColorDisplayDefs USING [ChannelsVisible, ChannelValue, ColorDisplayType, ColorMode, ColorValue],
ColorDisplayFace USING [ColorMap, nullMode];
ColorDisplayHeadDLion: PROGRAM
EXPORTS ColorDisplayFace
= BEGIN OPEN ColorDisplayFace, ColorDisplayDefs;
ErrorHalt: PROC = {ERROR};
globalStateSize: PUBLIC NAT ← 0; -- number of words required by Initialize
Initialize: PUBLIC PROC [globalState: LONG POINTER] = {ErrorHalt[]};
InitializeCleanup: PUBLIC PROC ~ {ErrorHalt[]};
displayType: PUBLIC ColorDisplayType ← none; -- sorry ...
width: PUBLIC NAT ← 0; -- display width, in pixels
height:
PUBLIC
NAT ← 0;
-- display height, in pixels
pixelsPerInch: PUBLIC NAT ← 0; -- Size of a pixel
SetDisplayType:
PUBLIC
SAFE
PROC [type: ColorDisplayType]
RETURNS [ok:
BOOL] ~
CHECKED {
RETURN[type=none];
};
HasMode:
PUBLIC
SAFE
PROC[mode: ColorMode]
RETURNS[
BOOL] =
CHECKED {
RETURN[FALSE]; -- nope
};
NextMode:
PUBLIC
SAFE
PROC [mode: ColorMode]
RETURNS [ColorMode] =
CHECKED {
RETURN[nullMode];
};
wordsForColorMap: PUBLIC NAT ← 0;
InitializeColorMap: PUBLIC PROC [mode: ColorMode, pointer: LONG POINTER]
RETURNS [ColorMap] ~ { RETURN[NIL] };
SetColor: PUBLIC PROC [map: ColorMap, pixelA, pixelB: ChannelValue,
r, g, b: ColorValue] ~ { };
GetColor: PUBLIC SAFE PROC[map: ColorMap, pixelA, pixelB: ChannelValue]
RETURNS [r, g, b: ColorValue ← 0] ~ CHECKED { };
SetR: PUBLIC PROC [map: ColorMap, in: ChannelValue,
out: ColorValue] ~ { };
SetG: PUBLIC PROC [map: ColorMap, in: ChannelValue,
out: ColorValue] ~ { };
SetB: PUBLIC PROC [map: ColorMap, in: ChannelValue,
out: ColorValue] ~ { };
GetR: PUBLIC SAFE PROC [map: ColorMap, in: ChannelValue]
RETURNS [out: ColorValue ← 0] ~ CHECKED { };
GetG: PUBLIC SAFE PROC [map: ColorMap, in: ChannelValue]
RETURNS [out: ColorValue ← 0] ~ CHECKED { };
GetB: PUBLIC SAFE PROC [map: ColorMap, in: ChannelValue]
RETURNS [out: ColorValue ← 0] ~ CHECKED { };
Connect:
PUBLIC
PROC [mode: ColorMode, baseA, baseB:
LONG
POINTER, map: ColorMap] = {
ErrorHalt[];
};
Disconnect: PUBLIC SAFE PROC = CHECKED { };
TurnOn: PUBLIC PROC = { ErrorHalt[] };
TurnOff: PUBLIC SAFE PROC = CHECKED { };
SetVisibility: PUBLIC SAFE PROC[visibility: ChannelsVisible] ~ CHECKED { };
END.