DIRECTORY Rope, Arpa, UT, SunRPCAuth, SunRPC; LB: CEDAR DEFINITIONS = BEGIN ROPE: TYPE = Rope.ROPE; ReturnCodes: TYPE = MACHINE DEPENDENT { iluSuccess(0), iluECantExportService(1), EError(2) }; ReturnCodesNames: READONLY ARRAY ReturnCodes OF ROPE; LocRoom: TYPE = ROPE; LocXYZ: TYPE = RECORD [ x: DREAL, y: DREAL, z: DREAL ]; LocationDescriminationValues: TYPE = MACHINE DEPENDENT { LocationVLocRoom(0), LocationVLocXYZ(1) }; LocationDescriminationValuesNames: READONLY ARRAY LocationDescriminationValues OF ROPE; Location: TYPE = REF LocationObject; LocationObject: TYPE = RECORD [ union: SELECT descriminator: LocationDescriminationValues FROM LocationVLocRoom => [vLocRoom: ROPE], LocationVLocXYZ => [vLocXYZ: LocXYZ], ENDCASE]; Sphere: TYPE = RECORD [ center: LocXYZ, radius: DREAL ]; BasicVolumeDescriminationValues: TYPE = MACHINE DEPENDENT { BasicVolumeVLocRoom(0), BasicVolumeVSphere(1) }; BasicVolumeDescriminationValuesNames: READONLY ARRAY BasicVolumeDescriminationValues OF ROPE; BasicVolume: TYPE = REF BasicVolumeObject; BasicVolumeObject: TYPE = RECORD [ union: SELECT descriminator: BasicVolumeDescriminationValues FROM BasicVolumeVLocRoom => [vLocRoom: ROPE], BasicVolumeVSphere => [vSphere: Sphere], ENDCASE]; Volume: TYPE = SeqType0; SeqType0: TYPE = REF SeqType0Object; SeqType0Object: TYPE = RECORD [SEQUENCE size: [0..LAST[INT32]) OF BasicVolume]; LocatedObject: TYPE = RECORD [ o: UT.Objct, l: Location ]; LocatedObjectSet: TYPE = SeqType1; SeqType1: TYPE = REF SeqType1Object; SeqType1Object: TYPE = RECORD [SEQUENCE size: [0..LAST[INT32]) OF LocatedObject]; ChangeOperation: TYPE = MACHINE DEPENDENT { Add(0), Delete(1) }; ChangeOperationNames: READONLY ARRAY ChangeOperation OF ROPE; ErrorType: TYPE = MACHINE DEPENDENT { BadLoc(0), BadObject(1), BadCallback(2), BadRoom(3), BadRock(4) }; ErrorTypeNames: READONLY ARRAY ErrorType OF ROPE; AtLocargs: TYPE = RECORD [ o: UT.Objct, loc: Location ]; AtLocreturn: TYPE = REF AtLocreturnObject; AtLocreturnObject: TYPE = RECORD [ union: SELECT returnCode: ReturnCodes FROM EError => [EErrorValue: ErrorType], iluSuccess => [], iluECantExportService => [], ENDCASE]; RemoveObjectargs: TYPE = RECORD [ o: UT.Objct ]; RemoveObjectreturn: TYPE = REF RemoveObjectreturnObject; RemoveObjectreturnObject: TYPE = RECORD [ union: SELECT returnCode: ReturnCodes FROM EError => [EErrorValue: ErrorType], iluSuccess => [returnValue: CARD32], iluECantExportService => [], ENDCASE]; FindObjectsargs: TYPE = RECORD [ locs: Volume, types: UT.ObjectTypeSet ]; FindObjectsreturn: TYPE = REF FindObjectsreturnObject; FindObjectsreturnObject: TYPE = RECORD [ union: SELECT returnCode: ReturnCodes FROM EError => [EErrorValue: ErrorType], iluSuccess => [returnValue: LocatedObjectSet], iluECantExportService => [], ENDCASE]; NotifyOfObjectsargs: TYPE = RECORD [ locs: Volume, types: UT.ObjectTypeSet, who: ROPE, rock: UT.OPAQUE ]; NotifyOfObjectsreturn: TYPE = REF NotifyOfObjectsreturnObject; NotifyOfObjectsreturnObject: TYPE = RECORD [ union: SELECT returnCode: ReturnCodes FROM EError => [EErrorValue: ErrorType], iluSuccess => [], iluECantExportService => [], ENDCASE]; RemoveObjectCallbackargs: TYPE = RECORD [ who: ROPE, rock: UT.OPAQUE ]; RemoveObjectCallbackreturn: TYPE = REF RemoveObjectCallbackreturnObject; RemoveObjectCallbackreturnObject: TYPE = RECORD [ union: SELECT returnCode: ReturnCodes FROM EError => [EErrorValue: ErrorType], iluSuccess => [], iluECantExportService => [], ENDCASE]; LBPrognum: CARDINAL = 822083614; version1: CARDINAL = 1; servernoopProc: TYPE = PROC[o: LB1]; atlocProc: TYPE = PROC[o0: LB1, o: UT.Objct, loc: Location] RETURNS [res: AtLocreturn]; removeobjectProc: TYPE = PROC[o0: LB1, o: UT.Objct] RETURNS [res: RemoveObjectreturn]; findobjectsProc: TYPE = PROC[o: LB1, locs: Volume, types: UT.ObjectTypeSet] RETURNS [res: FindObjectsreturn]; notifyofobjectsProc: TYPE = PROC[o: LB1, locs: Volume, types: UT.ObjectTypeSet, who: ROPE, rock: UT.OPAQUE] RETURNS [res: NotifyOfObjectsreturn]; removeobjectcallbackProc: TYPE = PROC[o: LB1, who: ROPE, rock: UT.OPAQUE] RETURNS [res: RemoveObjectCallbackreturn]; LB1: TYPE = REF LB1Object; LB1Object: TYPE = RECORD [ servernoop: servernoopProc, atloc: atlocProc, removeobject: removeobjectProc, findobjects: findobjectsProc, notifyofobjects: notifyofobjectsProc, removeobjectcallback: removeobjectcallbackProc, rpcHandle: SunRPC.Handle _ NIL, rpcConversation: SunRPCAuth.Conversation _ NIL, data: REF ANY _ NIL ]; MakeLB1Client: PROC[h: SunRPC.Handle, c: SunRPCAuth.Conversation] RETURNS [LB1]; MakeLB1Server: PROC[ data: REF, servernoop: servernoopProc, atloc: atlocProc, removeobject: removeobjectProc, findobjects: findobjectsProc, notifyofobjects: notifyofobjectsProc, removeobjectcallback: removeobjectcallbackProc ] RETURNS [SunRPC.Server]; NotifyObjectsCallbackargs: TYPE = RECORD [ rock: UT.OPAQUE, os: LocatedObjectSet, change: ChangeOperation ]; NotifyObjectsCallbackreturn: TYPE = REF NotifyObjectsCallbackreturnObject; NotifyObjectsCallbackreturnObject: TYPE = RECORD [ union: SELECT returnCode: ReturnCodes FROM EError => [EErrorValue: ErrorType], iluSuccess => [], iluECantExportService => [], ENDCASE]; callbacks: CARDINAL = 822083615; callbacksversion1: CARDINAL = 1; clientnoopProc: TYPE = PROC[o: callbacks1]; notifyobjectscallbackProc: TYPE = PROC[o: callbacks1, rock: UT.OPAQUE, os: LocatedObjectSet, change: ChangeOperation] RETURNS [res: NotifyObjectsCallbackreturn]; callbacks1: TYPE = REF callbacks1Object; callbacks1Object: TYPE = RECORD [ clientnoop: clientnoopProc, notifyobjectscallback: notifyobjectscallbackProc, rpcHandle: SunRPC.Handle _ NIL, rpcConversation: SunRPCAuth.Conversation _ NIL, data: REF ANY _ NIL ]; Makecallbacks1Client: PROC[h: SunRPC.Handle, c: SunRPCAuth.Conversation] RETURNS [callbacks1]; Makecallbacks1Server: PROC[ data: REF, clientnoop: clientnoopProc, notifyobjectscallback: notifyobjectscallbackProc ] RETURNS [SunRPC.Server]; END. R LB.mesa Please do not edit this file. It was generated using CedarRPCGen. Ê •NewlineDelimiter ™J™J™J™#J˜šÏk ˜ J˜J˜Jšœ˜J˜ J˜J˜—Jšœœ œ˜Jš˜J˜Jšœœœ˜J˜J˜šœ œœ œ˜'J˜J˜J˜ J˜J˜—Jš Ïnœœœ œœ˜5J˜Jšœ œœ˜J˜šœœœ˜Jšœœ˜ Jšœœ˜ šœ˜J˜J˜——šœœœ œ˜8J˜J˜J˜J˜—Jš ž!œœœœœ˜WJ˜Jšœ œœ˜$šœœœ˜šœœ-˜>Jšœœ˜%J˜%Jšœ˜ J˜——šœœœ˜J˜šœ˜ J˜J˜——šœ!œœ œ˜;J˜J˜J˜J˜—Jš ž$œœœ!œœ˜]J˜Jšœ œœ˜*šœœœ˜"šœœ0˜AJšœ"œ˜(J˜(Jšœ˜ J˜——Jšœœ ˜J˜Jšœ œœ˜$Jš œœœœ œœœ˜OJ˜šœœœ˜Jšœœ˜ ˜ J˜J˜——Jšœœ ˜"J˜Jšœ œœ˜$Jš œœœœ œœœ˜QJ˜šœœœ œ˜+J˜J˜ J˜J˜—Jš žœœœœœ˜=J˜šœ œœ œ˜%J˜ J˜ J˜J˜ J˜ J˜J˜—Jš žœœœ œœ˜1J˜šœ œœ˜Jšœœ˜ ˜ J˜J˜——Jšœ œœ˜*šœœœ˜"šœœ˜*Jšœ ž œ ˜#J˜J˜Jšœ˜ J˜——šœœœ˜!šœœ˜ J˜J˜——Jšœœœ˜8šœœœ˜)šœœ˜*Jšœ ž œ ˜#Jšœœ˜$J˜Jšœ˜ J˜——šœœœ˜ J˜ šœœ˜J˜J˜——Jšœœœ˜6šœœœ˜(šœœ˜*Jšœ ž œ ˜#J˜.J˜Jšœ˜ J˜——šœœœ˜$J˜ Jšœœ˜Jšœœ˜ šœœ˜J˜J˜——Jšœœœ˜>šœœœ˜,šœœ˜*Jšœ ž œ ˜#J˜J˜Jšœ˜ J˜——šœœœ˜)Jšœœ˜ šœœ˜J˜J˜——Jšœœœ"˜Hšœ"œœ˜1šœœ˜*Jšœ ž œ ˜#J˜J˜Jšœ˜ J˜——Jšž œœ ˜ J˜Jšœ œ˜J˜Jšœœœœ˜$šœ œœœ˜Jšœœ˜ J˜Jšœ˜—šœœœœ˜&Jšœœ˜ Jšœ˜"—šœœœœ˜$J˜ Jšœœ˜Jšœ˜!—šœœœœ˜(J˜ Jšœœ˜Jšœœ˜ Jšœœœ˜Jšœ˜%—šœœœœ˜-Jšœœ˜ Jšœœœ˜Jšœ#˜*J˜—Jšœœœ ˜šœ œœ˜J˜J˜J˜J˜J˜%J˜/Jšœœ˜Jšœ+œ˜/Jšœœœ˜J˜J˜—šž œœ˜%Jšœœœ˜*—šž œœ˜Jšœœ˜ J˜J˜J˜J˜J˜%J˜.Jšœœ˜J˜J˜—šœœœ˜*Jšœœœ˜J˜˜J˜J˜——Jšœœœ#˜Jšœ#œœ˜2šœœ˜*Jšœ ž œ ˜#J˜J˜Jšœ˜ J˜——Jšœ œ ˜ J˜Jšœœ˜ J˜Jšœœœ˜+šœœœ˜5Jšœœœ˜J˜J˜Jšœ$˜+J˜—Jšœ œœ˜)šœœœ˜!J˜J˜1Jšœœ˜Jšœ+œ˜/Jšœœœ˜J˜J˜—šžœœ˜,Jšœœ˜1—šžœœ˜Jšœœ˜ J˜J˜0Jšœœ˜J˜J˜—Jšœ˜—…—V ¸