<> <> <> <> DIRECTORY CD, CDOps, CDAtomicObjects, CDSequencer, TerminalIO, CMos; CMosBuriedContactsCommands: CEDAR PROGRAM IMPORTS CDAtomicObjects, CDOps, CDSequencer, TerminalIO, CMos = BEGIN lambda: CD.Number = CMos.lambda; CreateBurCon: PROC [comm: CDSequencer.Command] = BEGIN ob: CD.Object; kind: ATOM _ $bad; TerminalIO.WriteRope["Create buried contact\n"]; SELECT TerminalIO.RequestSelection[ label: "burried contact", choice: LIST["simple", "poly C", "diff I", "diff L"] ] FROM 1 => kind _ $CBurContS; 2 => kind _ $CBurContPS; 3 => kind _ $CBurContDI; 4 => kind _ $CBurContDL; <<5 => kind _ $cross;>> <<6 => kind _ $difT;>> ENDCASE => kind _ $bad; ob _ CDAtomicObjects.CreateAtomicOb[kind, [1, 1], comm.design.technology]; IF ob=NIL THEN TerminalIO.WriteRope["not done\n"] ELSE CDOps.IncludeObjectI[design: comm.design, ob: ob, location: comm.pos, orientation: 0] END; ImplCommands: PROC [] = BEGIN CDSequencer.ImplementCommand[$DrawNBurCon, CreateBurCon, CMos.cmos]; END; ImplCommands[]; END.