-- PilotLoadStateOps.mesa
-- Last Modified by McJones, April 23, 1980 5:04 PM
-- Last Modified by Paul Rovner, May 6, 1982 12:19 pm
DIRECTORY
BcdOps: FROM "BcdOps" USING [BcdBase],
PilotLoadStateFormat: FROM "PilotLoadStateFormat" USING [
ConfigIndex, ModuleInfo, NullConfig],
PrincOps: FROM "PrincOps" USING [GFTIndex];
PilotLoadStateOps: DEFINITIONS =
BEGIN OPEN PrincOps, PilotLoadStateFormat;
ConfigIndex: TYPE = PilotLoadStateFormat.ConfigIndex;
NullConfig: ConfigIndex = PilotLoadStateFormat.NullConfig;
MapConfigToReal: PROC[cgfi: GFTIndex, config: ConfigIndex]
RETURNS [rgfi: GFTIndex];
MapRealToConfig: PROC[rgfi: GFTIndex]
RETURNS [cgfi: GFTIndex, config: ConfigIndex];
EnterModule: PROC[rgfi: GFTIndex, module: ModuleInfo];
GetModule: PROC[rgfi: GFTIndex] RETURNS [module: ModuleInfo];
Map: TYPE = DESCRIPTOR FOR ARRAY OF GFTIndex;
GetMap: PROC[config: ConfigIndex] RETURNS [map: Map];
ReleaseMap: PROC[map: Map];
InputLoadState: PROC RETURNS [nbcds: ConfigIndex];
ReleaseLoadState: PROC;
UpdateLoadState: PROC[config: ConfigIndex, bcd: BcdOps.BcdBase];
RemoveConfig: PROC[map: Map, config: ConfigIndex];
LoadStateInvalid: ERROR;
LoadStateFull: ERROR;
AcquireBcd: PROC[config: ConfigIndex] RETURNS [bcd: BcdOps.BcdBase];
ReleaseBcd: PROC[bcd: BcdOps.BcdBase];
BcdUnresolved: PROC[bcd: ConfigIndex] RETURNS [BOOLEAN];
BcdExports: PROC[bcd: ConfigIndex] RETURNS [BOOLEAN];
BcdExportsTypes: PROC[bcd: ConfigIndex] RETURNS [BOOLEAN];
EnumerationDirection: TYPE = {recentfirst, recentlast};
EnumerateModules: PROC[
proc: PROC[rgfi: GFTIndex, module: ModuleInfo] RETURNS [BOOLEAN]]
RETURNS [GFTIndex];
EnumerateBcds: PROC[dir: EnumerationDirection,
proc: PROC[ConfigIndex] RETURNS [BOOLEAN]]
RETURNS [config: ConfigIndex];
SetLoadState: PROC[newState: LONG POINTER];
END.