<<>> <> <> <> <> <> <> <> DIRECTORY IO USING[STREAM], Rope USING[ROPE], StackCirio USING[Stack]; RemoteCirio: CEDAR DEFINITIONS = BEGIN <> <<>> Connection: TYPE = REF ConnectionBody; ConnectionBody: TYPE; <<>> <> <<>> OpenConnection: PROC[remoteName: Rope.ROPE, portNum: CARD, workingDirectories: LIST OF Rope.ROPE, reports: IO.STREAM] RETURNS[Connection]; <> <<>> FlushUnknownFileCache: PROC[connection: Connection, reports: IO.STREAM]; <> CloseConnection: PROC[connection: Connection, reports: IO.STREAM]; < pair.>> <<>> DestroyRemoteWorld: PROC[connection: Connection]; <> <<>> <> StopRemoteWorld: PROC[connection: Connection, reports: IO.STREAM] RETURNS[nThreads: CARD]; <> <> ThreadProperty: TYPE = RECORD[ SELECT case: * FROM any => [], callingDebugger => [], ready => [], context => [name: Rope.ROPE], ENDCASE]; <<>> FindThreadsWithProperty: PROC[connection: Connection, property: ThreadProperty, reports: IO.STREAM] RETURNS[LIST OF -- threadIndex -- CARD]; <> <<>> GetThreadTitleText: PROC[connection: Connection, threadIndex: CARD] RETURNS[Rope.ROPE]; ThreadIndexFromID: PROC[ID: CARD, connection: Connection] RETURNS [index: CARD _ LAST[CARD]]; ThreadIDFromIndex: PROC[index: CARD, connection: Connection] RETURNS [ID: CARD _ LAST[CARD]]; ShowQuickSummary: PROC[connection: Connection, threadIndex: CARD, stopFlag: REF BOOLEAN, on: IO.STREAM, long: BOOL]; GetThreadDebuggingBanner: PROC[connection: Connection, threadIndex: CARD, reports: IO.STREAM] RETURNS[Rope.ROPE]; AbortThread: PROC[connection: Connection, threadIndex: CARD, reports: IO.STREAM] RETURNS[newThreadTitleText: Rope.ROPE]; KillThread: PROC[connection: Connection, threadIndex: CARD, reports: IO.STREAM] RETURNS[newThreadTitleText: Rope.ROPE]; FreezeThread: PROC[connection: Connection, threadIndex: CARD, reports: IO.STREAM] RETURNS[newThreadTitleText: Rope.ROPE]; ProceedThread: PROC[connection: Connection, threadIndex: CARD, reports: IO.STREAM] RETURNS[newThreadTitleText: Rope.ROPE]; DbxExamineThread: PROC[connection: Connection, threadIndex: CARD, reports: IO.STREAM] RETURNS[nThreads: CARD]; <> ResumeRemoteWorldWithOnlyVP0: PROC[connection: Connection]; <> ResumeRemoteWorld: PROC[connection: Connection]; <> <<>> <<>> <> <<>> <> GetDummyStack: PROC[connection: Connection, reports: IO.STREAM]RETURNS[StackCirio.Stack]; <> FocusOnThread: PROC[connection: Connection, threadIndex: CARD, reports: IO.STREAM]RETURNS[newRemoteThreadIndex: CARD]; <> GetStackForCurrentThread: PROC[connection: Connection, reports: IO.STREAM]RETURNS[StackCirio.Stack]; <> <> AddSearchDirectory: PROC [connection: Connection, directoryPath: Rope.ROPE, reports: IO.STREAM]; RemoveSearchDirectory: PROC [connection: Connection, directoryPath: Rope.ROPE, reports: IO.STREAM]; ListSearchDirectory: PROC [connection: Connection, reports: IO.STREAM]; ClearSearchDirectory: PROC [connection: Connection, reports: IO.STREAM]; <> InstallBreakCheckDaemon: PROC [connection: Connection, reports: IO.STREAM]; StopBreakCheckDaemon: PROC [connection: Connection, reports: IO.STREAM]; END..