<> <> <> <> DIRECTORY DisplayList3d, Rope, Shading; DisplayList3dPrivate: DEFINITIONS = BEGIN <> <> Scene: TYPE = REF SceneObj; SceneObj: TYPE = DisplayList3d.SceneObj; Assembly: TYPE = REF AssemblyObj; AssemblyObj: TYPE = DisplayList3d.AssemblyObj; AssemblyList: TYPE = REF AssemblyListObj; AssemblyListObj: TYPE = DisplayList3d.AssemblyListObj; LightSourceList: TYPE = Shading.LightSourceList; -- LIST OF LightSource; LightSource: TYPE = REF LightSourceObj; LightSourceObj: TYPE = Shading.LightSourceObj; <> MasterObject: TYPE = REF MasterObjectRec; MasterObjectRec: TYPE = DisplayList3d.MasterObjectRec; MasterObjectList: TYPE = LIST OF MasterObject; <> <> TemporaryRemoveFromAssemblyList: PROC [a: Assembly, al: AssemblyList, scene: Scene] RETURNS [newAl: AssemblyList, success: BOOL]; <> FindMasterObjectAndNeighborsFromName: PROC [moName: Rope.ROPE, moList: MasterObjectList] RETURNS [beforeMo, mo, afterMo: MasterObjectList, found: BOOL]; FindLightSourceAndNeighborsFromName: PROC [lsName: Rope.ROPE, lsList: LightSourceList] RETURNS [beforeLS, ls, afterLS: LightSourceList]; LightSourceNotFound: SIGNAL; <> AppendToMasterObjects: PROC [mo: MasterObject, list: MasterObjectList] RETURNS [MasterObjectList]; <> <> RemoveDuplicateMOs: PROC [moList: MasterObjectList] RETURNS [uniqueList: MasterObjectList]; MoListMinusMoList: PROC [moList1, moList2: MasterObjectList] RETURNS [moList1MinusmoList2: MasterObjectList]; CopyMasterObjectList: PROC [moList: MasterObjectList] RETURNS [copy: MasterObjectList]; END. <<>>