eric6/Documentation/Source/eric6.Debugger.DebuggerInterfacePython.html

changeset 7887
c1588f5a83e9
parent 7707
6abcf4275d0e
child 7898
1bcd6d4df182
--- a/eric6/Documentation/Source/eric6.Debugger.DebuggerInterfacePython.html	Thu Dec 17 14:30:46 2020 +0100
+++ b/eric6/Documentation/Source/eric6.Debugger.DebuggerInterfacePython.html	Thu Dec 17 14:40:06 2020 +0100
@@ -82,8 +82,12 @@
 <td>Constructor</td>
 </tr>
 <tr>
-<td><a href="#DebuggerInterfacePython.__askForkTo">__askForkTo</a></td>
-<td>Private method to ask the user which branch of a fork to follow.</td>
+<td><a href="#DebuggerInterfacePython.__assignDebuggerId">__assignDebuggerId</a></td>
+<td>Private method to set the debugger id for a recent debugger connection attempt.</td>
+</tr>
+<tr>
+<td><a href="#DebuggerInterfacePython.__flush">__flush</a></td>
+<td>Private slot to flush the queue.</td>
 </tr>
 <tr>
 <td><a href="#DebuggerInterfacePython.__handleJsonCommand">__handleJsonCommand</a></td>
@@ -106,6 +110,14 @@
 <td>Private method to send a single command to the client.</td>
 </tr>
 <tr>
+<td><a href="#DebuggerInterfacePython.__shutdownSocket">__shutdownSocket</a></td>
+<td>Private slot to shut down a socket.</td>
+</tr>
+<tr>
+<td><a href="#DebuggerInterfacePython.__socketDisconnected">__socketDisconnected</a></td>
+<td>Private slot handling a socket disconnecting.</td>
+</tr>
+<tr>
 <td><a href="#DebuggerInterfacePython.__startProcess">__startProcess</a></td>
 <td>Private method to start the debugger client process.</td>
 </tr>
@@ -114,12 +126,12 @@
 <td>Private method to write a JSON command to the socket.</td>
 </tr>
 <tr>
-<td><a href="#DebuggerInterfacePython.flush">flush</a></td>
-<td>Public slot to flush the queue.</td>
+<td><a href="#DebuggerInterfacePython.getClientCapabilities">getClientCapabilities</a></td>
+<td>Public method to retrieve the debug clients capabilities.</td>
 </tr>
 <tr>
-<td><a href="#DebuggerInterfacePython.getClientCapabilities">getClientCapabilities</a></td>
-<td>Public method to retrieve the debug clients capabilities.</td>
+<td><a href="#DebuggerInterfacePython.getDebuggerIds">getDebuggerIds</a></td>
+<td>Public method to return the IDs of the connected debugger backends.</td>
 </tr>
 <tr>
 <td><a href="#DebuggerInterfacePython.isConnected">isConnected</a></td>
@@ -158,6 +170,10 @@
 <td>Public method to set a variables filter list.</td>
 </tr>
 <tr>
+<td><a href="#DebuggerInterfacePython.remoteClientStack">remoteClientStack</a></td>
+<td>Public method to request the stack of the main thread.</td>
+</tr>
+<tr>
 <td><a href="#DebuggerInterfacePython.remoteClientVariable">remoteClientVariable</a></td>
 <td>Public method to request the variables of the debugged program.</td>
 </tr>
@@ -190,6 +206,10 @@
 <td>Public method to move the instruction pointer to a different line.</td>
 </tr>
 <tr>
+<td><a href="#DebuggerInterfacePython.remoteNoDebugList">remoteNoDebugList</a></td>
+<td>Public method to set a list of programs not to be debugged.</td>
+</tr>
+<tr>
 <td><a href="#DebuggerInterfacePython.remoteProfile">remoteProfile</a></td>
 <td>Public method to load a new program to collect profiling data.</td>
 </tr>
@@ -298,16 +318,35 @@
 flag indicating passive connection mode
 </dd>
 </dl>
-<a NAME="DebuggerInterfacePython.__askForkTo" ID="DebuggerInterfacePython.__askForkTo"></a>
-<h4>DebuggerInterfacePython.__askForkTo</h4>
-<b>__askForkTo</b>(<i></i>)
+<a NAME="DebuggerInterfacePython.__assignDebuggerId" ID="DebuggerInterfacePython.__assignDebuggerId"></a>
+<h4>DebuggerInterfacePython.__assignDebuggerId</h4>
+<b>__assignDebuggerId</b>(<i>sock, debuggerId</i>)
 
 <p>
-        Private method to ask the user which branch of a fork to follow.
+        Private method to set the debugger id for a recent debugger connection
+        attempt.
+</p>
+<dl>
+
+<dt><i>sock</i> (QTcpSocket)</dt>
+<dd>
+reference to the socket object
+</dd>
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+id of the connected debug client
+</dd>
+</dl>
+<a NAME="DebuggerInterfacePython.__flush" ID="DebuggerInterfacePython.__flush"></a>
+<h4>DebuggerInterfacePython.__flush</h4>
+<b>__flush</b>(<i></i>)
+
+<p>
+        Private slot to flush the queue.
 </p>
 <a NAME="DebuggerInterfacePython.__handleJsonCommand" ID="DebuggerInterfacePython.__handleJsonCommand"></a>
 <h4>DebuggerInterfacePython.__handleJsonCommand</h4>
-<b>__handleJsonCommand</b>(<i>jsonStr</i>)
+<b>__handleJsonCommand</b>(<i>jsonStr, sock</i>)
 
 <p>
         Private method to handle a command or response serialized as a
@@ -320,6 +359,10 @@
 string containing the command or response received
             from the debug backend
 </dd>
+<dt><i>sock</i> (QTcpSocket)</dt>
+<dd>
+reference to the socket the data was received from
+</dd>
 </dl>
 <a NAME="DebuggerInterfacePython.__identityTranslation" ID="DebuggerInterfacePython.__identityTranslation"></a>
 <h4>DebuggerInterfacePython.__identityTranslation</h4>
@@ -330,11 +373,11 @@
 </p>
 <dl>
 
-<dt><i>fn</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-filename to be translated (string)
+filename to be translated
 </dd>
-<dt><i>remote2local</i></dt>
+<dt><i>remote2local</i> (bool)</dt>
 <dd>
 flag indicating the direction of translation
             (False = local to remote, True = remote to local [default])
@@ -343,16 +386,29 @@
 <dl>
 <dt>Returns:</dt>
 <dd>
-translated filename (string)
+translated filename
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.__parseClientLine" ID="DebuggerInterfacePython.__parseClientLine"></a>
 <h4>DebuggerInterfacePython.__parseClientLine</h4>
-<b>__parseClientLine</b>(<i></i>)
+<b>__parseClientLine</b>(<i>sock</i>)
 
 <p>
         Private method to handle data from the client.
 </p>
+<dl>
+
+<dt><i>sock</i> (QTcpSocket)</dt>
+<dd>
+reference to the socket to read data from
+</dd>
+</dl>
 <a NAME="DebuggerInterfacePython.__remoteTranslation" ID="DebuggerInterfacePython.__remoteTranslation"></a>
 <h4>DebuggerInterfacePython.__remoteTranslation</h4>
 <b>__remoteTranslation</b>(<i>fn, remote2local=True</i>)
@@ -362,11 +418,11 @@
 </p>
 <dl>
 
-<dt><i>fn</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-filename to be translated (string)
+filename to be translated
 </dd>
-<dt><i>remote2local</i></dt>
+<dt><i>remote2local</i> (bool)</dt>
 <dd>
 flag indicating the direction of translation
             (False = local to remote, True = remote to local [default])
@@ -375,12 +431,18 @@
 <dl>
 <dt>Returns:</dt>
 <dd>
-translated filename (string)
+translated filename
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.__sendJsonCommand" ID="DebuggerInterfacePython.__sendJsonCommand"></a>
 <h4>DebuggerInterfacePython.__sendJsonCommand</h4>
-<b>__sendJsonCommand</b>(<i>command, params</i>)
+<b>__sendJsonCommand</b>(<i>command, params, debuggerId="", sock=None</i>)
 
 <p>
         Private method to send a single command to the client.
@@ -395,6 +457,43 @@
 <dd>
 dictionary of named parameters for the command
 </dd>
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+id of the debug client to send the command to
+</dd>
+<dt><i>sock</i> (QTcpSocket)</dt>
+<dd>
+reference to the socket object to be used (only used if
+            debuggerId is not given)
+</dd>
+</dl>
+<a NAME="DebuggerInterfacePython.__shutdownSocket" ID="DebuggerInterfacePython.__shutdownSocket"></a>
+<h4>DebuggerInterfacePython.__shutdownSocket</h4>
+<b>__shutdownSocket</b>(<i>sock</i>)
+
+<p>
+        Private slot to shut down a socket.
+</p>
+<dl>
+
+<dt><i>sock</i> (QTcpSocket)</dt>
+<dd>
+reference to the socket
+</dd>
+</dl>
+<a NAME="DebuggerInterfacePython.__socketDisconnected" ID="DebuggerInterfacePython.__socketDisconnected"></a>
+<h4>DebuggerInterfacePython.__socketDisconnected</h4>
+<b>__socketDisconnected</b>(<i>sock</i>)
+
+<p>
+        Private slot handling a socket disconnecting.
+</p>
+<dl>
+
+<dt><i>sock</i> (QTcpSocket)</dt>
+<dd>
+reference to the disconnected socket
+</dd>
 </dl>
 <a NAME="DebuggerInterfacePython.__startProcess" ID="DebuggerInterfacePython.__startProcess"></a>
 <h4>DebuggerInterfacePython.__startProcess</h4>
@@ -436,7 +535,7 @@
 </dl>
 <a NAME="DebuggerInterfacePython.__writeJsonCommandToSocket" ID="DebuggerInterfacePython.__writeJsonCommandToSocket"></a>
 <h4>DebuggerInterfacePython.__writeJsonCommandToSocket</h4>
-<b>__writeJsonCommandToSocket</b>(<i>cmd</i>)
+<b>__writeJsonCommandToSocket</b>(<i>cmd, sock</i>)
 
 <p>
         Private method to write a JSON command to the socket.
@@ -447,14 +546,11 @@
 <dd>
 JSON command to be sent
 </dd>
+<dt><i>sock</i> (QTcpSocket)</dt>
+<dd>
+reference to the socket to write to
+</dd>
 </dl>
-<a NAME="DebuggerInterfacePython.flush" ID="DebuggerInterfacePython.flush"></a>
-<h4>DebuggerInterfacePython.flush</h4>
-<b>flush</b>(<i></i>)
-
-<p>
-        Public slot to flush the queue.
-</p>
 <a NAME="DebuggerInterfacePython.getClientCapabilities" ID="DebuggerInterfacePython.getClientCapabilities"></a>
 <h4>DebuggerInterfacePython.getClientCapabilities</h4>
 <b>getClientCapabilities</b>(<i></i>)
@@ -465,7 +561,32 @@
 <dl>
 <dt>Returns:</dt>
 <dd>
-debug client capabilities (integer)
+debug client capabilities
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+int
+</dd>
+</dl>
+<a NAME="DebuggerInterfacePython.getDebuggerIds" ID="DebuggerInterfacePython.getDebuggerIds"></a>
+<h4>DebuggerInterfacePython.getDebuggerIds</h4>
+<b>getDebuggerIds</b>(<i></i>)
+
+<p>
+        Public method to return the IDs of the connected debugger backends.
+</p>
+<dl>
+<dt>Returns:</dt>
+<dd>
+list of connected debugger backend IDs
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.isConnected" ID="DebuggerInterfacePython.isConnected"></a>
@@ -478,7 +599,13 @@
 <dl>
 <dt>Returns:</dt>
 <dd>
-flag indicating the connection status (boolean)
+flag indicating the connection status
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.newConnection" ID="DebuggerInterfacePython.newConnection"></a>
@@ -490,15 +617,21 @@
 </p>
 <dl>
 
-<dt><i>sock</i></dt>
+<dt><i>sock</i> (QTcpSocket)</dt>
 <dd>
-reference to the socket object (QTcpSocket)
+reference to the socket object
 </dd>
 </dl>
 <dl>
 <dt>Returns:</dt>
 <dd>
-flag indicating success (boolean)
+flag indicating success
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+bool
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteBanner" ID="DebuggerInterfacePython.remoteBanner"></a>
@@ -510,127 +643,172 @@
 </p>
 <a NAME="DebuggerInterfacePython.remoteBreakpoint" ID="DebuggerInterfacePython.remoteBreakpoint"></a>
 <h4>DebuggerInterfacePython.remoteBreakpoint</h4>
-<b>remoteBreakpoint</b>(<i>fn, line, setBreakpoint, cond=None, temp=False</i>)
+<b>remoteBreakpoint</b>(<i>debuggerId, fn, line, setBreakpoint, cond=None, temp=False</i>)
 
 <p>
         Public method to set or clear a breakpoint.
 </p>
 <dl>
 
-<dt><i>fn</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-filename the breakpoint belongs to (string)
+ID of the debugger backend
 </dd>
-<dt><i>line</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-linenumber of the breakpoint (int)
+filename the breakpoint belongs to
 </dd>
-<dt><i>setBreakpoint</i></dt>
+<dt><i>line</i> (int)</dt>
 <dd>
-flag indicating setting or resetting a
-            breakpoint (boolean)
+linenumber of the breakpoint
 </dd>
-<dt><i>cond</i></dt>
+<dt><i>setBreakpoint</i> (bool)</dt>
 <dd>
-condition of the breakpoint (string)
+flag indicating setting or resetting a breakpoint
 </dd>
-<dt><i>temp</i></dt>
+<dt><i>cond</i> (str)</dt>
 <dd>
-flag indicating a temporary breakpoint (boolean)
+condition of the breakpoint
+</dd>
+<dt><i>temp</i> (bool)</dt>
+<dd>
+flag indicating a temporary breakpoint
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteBreakpointEnable" ID="DebuggerInterfacePython.remoteBreakpointEnable"></a>
 <h4>DebuggerInterfacePython.remoteBreakpointEnable</h4>
-<b>remoteBreakpointEnable</b>(<i>fn, line, enable</i>)
+<b>remoteBreakpointEnable</b>(<i>debuggerId, fn, line, enable</i>)
 
 <p>
         Public method to enable or disable a breakpoint.
 </p>
 <dl>
 
-<dt><i>fn</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-filename the breakpoint belongs to (string)
+ID of the debugger backend
 </dd>
-<dt><i>line</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-linenumber of the breakpoint (int)
+filename the breakpoint belongs to
 </dd>
-<dt><i>enable</i></dt>
+<dt><i>line</i> (int)</dt>
+<dd>
+linenumber of the breakpoint
+</dd>
+<dt><i>enable</i> (bool)</dt>
 <dd>
 flag indicating enabling or disabling a breakpoint
-            (boolean)
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteBreakpointIgnore" ID="DebuggerInterfacePython.remoteBreakpointIgnore"></a>
 <h4>DebuggerInterfacePython.remoteBreakpointIgnore</h4>
-<b>remoteBreakpointIgnore</b>(<i>fn, line, count</i>)
+<b>remoteBreakpointIgnore</b>(<i>debuggerId, fn, line, count</i>)
 
 <p>
         Public method to ignore a breakpoint the next couple of occurrences.
 </p>
 <dl>
 
-<dt><i>fn</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-filename the breakpoint belongs to (string)
+ID of the debugger backend
 </dd>
-<dt><i>line</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-linenumber of the breakpoint (int)
+filename the breakpoint belongs to
 </dd>
-<dt><i>count</i></dt>
+<dt><i>line</i> (int)</dt>
 <dd>
-number of occurrences to ignore (int)
+linenumber of the breakpoint
+</dd>
+<dt><i>count</i> (int)</dt>
+<dd>
+number of occurrences to ignore
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteCapabilities" ID="DebuggerInterfacePython.remoteCapabilities"></a>
 <h4>DebuggerInterfacePython.remoteCapabilities</h4>
-<b>remoteCapabilities</b>(<i></i>)
+<b>remoteCapabilities</b>(<i>debuggerId</i>)
 
 <p>
         Public slot to get the debug clients capabilities.
 </p>
+<dl>
+
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+</dl>
 <a NAME="DebuggerInterfacePython.remoteClientDisassembly" ID="DebuggerInterfacePython.remoteClientDisassembly"></a>
 <h4>DebuggerInterfacePython.remoteClientDisassembly</h4>
-<b>remoteClientDisassembly</b>(<i></i>)
+<b>remoteClientDisassembly</b>(<i>debuggerId</i>)
 
 <p>
         Public method to ask the client for the latest traceback disassembly.
 </p>
+<dl>
+
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+</dl>
 <a NAME="DebuggerInterfacePython.remoteClientSetFilter" ID="DebuggerInterfacePython.remoteClientSetFilter"></a>
 <h4>DebuggerInterfacePython.remoteClientSetFilter</h4>
-<b>remoteClientSetFilter</b>(<i>scope, filterStr</i>)
+<b>remoteClientSetFilter</b>(<i>debuggerId, scope, filterStr</i>)
 
 <p>
         Public method to set a variables filter list.
 </p>
 <dl>
 
-<dt><i>scope</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+<dt><i>scope</i> (int)</dt>
 <dd>
 the scope of the variables (0 = local, 1 = global)
 </dd>
-<dt><i>filterStr</i></dt>
+<dt><i>filterStr</i> (str)</dt>
 <dd>
 regexp string for variable names to filter out
-            (string)
+</dd>
+</dl>
+<a NAME="DebuggerInterfacePython.remoteClientStack" ID="DebuggerInterfacePython.remoteClientStack"></a>
+<h4>DebuggerInterfacePython.remoteClientStack</h4>
+<b>remoteClientStack</b>(<i>debuggerId</i>)
+
+<p>
+        Public method to request the stack of the main thread.
+</p>
+<dl>
+
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteClientVariable" ID="DebuggerInterfacePython.remoteClientVariable"></a>
 <h4>DebuggerInterfacePython.remoteClientVariable</h4>
-<b>remoteClientVariable</b>(<i>scope, filterList, var, framenr=0, maxSize=0</i>)
+<b>remoteClientVariable</b>(<i>debuggerId, scope, filterList, var, framenr=0, maxSize=0</i>)
 
 <p>
         Public method to request the variables of the debugged program.
 </p>
 <dl>
 
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
 <dt><i>scope</i> (int)</dt>
 <dd>
 the scope of the variables (0 = local, 1 = global)
 </dd>
-<dt><i>filterList</i> (list of int)</dt>
+<dt><i>filterList</i> (list of str)</dt>
 <dd>
 list of variable types to filter out
 </dd>
@@ -651,18 +829,22 @@
 </dl>
 <a NAME="DebuggerInterfacePython.remoteClientVariables" ID="DebuggerInterfacePython.remoteClientVariables"></a>
 <h4>DebuggerInterfacePython.remoteClientVariables</h4>
-<b>remoteClientVariables</b>(<i>scope, filterList, framenr=0, maxSize=0</i>)
+<b>remoteClientVariables</b>(<i>debuggerId, scope, filterList, framenr=0, maxSize=0</i>)
 
 <p>
         Public method to request the variables of the debugged program.
 </p>
 <dl>
 
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
 <dt><i>scope</i> (int)</dt>
 <dd>
 the scope of the variables (0 = local, 1 = global)
 </dd>
-<dt><i>filterList</i> (list of int)</dt>
+<dt><i>filterList</i> (list of str)</dt>
 <dd>
 list of variable types to filter out
 </dd>
@@ -679,7 +861,7 @@
 </dl>
 <a NAME="DebuggerInterfacePython.remoteCompletion" ID="DebuggerInterfacePython.remoteCompletion"></a>
 <h4>DebuggerInterfacePython.remoteCompletion</h4>
-<b>remoteCompletion</b>(<i>text</i>)
+<b>remoteCompletion</b>(<i>debuggerId, text</i>)
 
 <p>
         Public slot to get the a list of possible commandline completions
@@ -687,21 +869,29 @@
 </p>
 <dl>
 
-<dt><i>text</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-the text to be completed (string)
+ID of the debugger backend
+</dd>
+<dt><i>text</i> (str)</dt>
+<dd>
+the text to be completed
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteContinue" ID="DebuggerInterfacePython.remoteContinue"></a>
 <h4>DebuggerInterfacePython.remoteContinue</h4>
-<b>remoteContinue</b>(<i>special=False</i>)
+<b>remoteContinue</b>(<i>debuggerId, special=False</i>)
 
 <p>
         Public method to continue the debugged program.
 </p>
 <dl>
 
-<dt><i>special</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+<dt><i>special</i> (bool)</dt>
 <dd>
 flag indicating a special continue operation
 </dd>
@@ -715,22 +905,22 @@
 </p>
 <dl>
 
-<dt><i>fn</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-the filename to run (string)
+the filename to run
 </dd>
-<dt><i>argv</i></dt>
+<dt><i>argv</i> (str)</dt>
 <dd>
-the commandline arguments to pass to the program (string)
+the commandline arguments to pass to the program
 </dd>
-<dt><i>wd</i></dt>
+<dt><i>wd</i> (str)</dt>
 <dd>
-the working directory for the program (string)
+the working directory for the program
 </dd>
-<dt><i>erase=</i></dt>
+<dt><i>erase</i> (bool)</dt>
 <dd>
 flag indicating that coverage info should be
-            cleared first (boolean)
+            cleared first
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteEnvironment" ID="DebuggerInterfacePython.remoteEnvironment"></a>
@@ -742,66 +932,88 @@
 </p>
 <dl>
 
-<dt><i>env</i></dt>
+<dt><i>env</i> (dict)</dt>
 <dd>
-environment settings (dictionary)
+environment settings
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteLoad" ID="DebuggerInterfacePython.remoteLoad"></a>
 <h4>DebuggerInterfacePython.remoteLoad</h4>
-<b>remoteLoad</b>(<i>fn, argv, wd, traceInterpreter=False, autoContinue=True, autoFork=False, forkChild=False</i>)
+<b>remoteLoad</b>(<i>fn, argv, wd, traceInterpreter=False, autoContinue=True, enableMultiprocess=False</i>)
 
 <p>
         Public method to load a new program to debug.
 </p>
 <dl>
 
-<dt><i>fn</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-the filename to debug (string)
+the filename to debug
 </dd>
-<dt><i>argv</i></dt>
+<dt><i>argv</i> (str)</dt>
 <dd>
-the commandline arguments to pass to the program (string)
+the commandline arguments to pass to the program
 </dd>
-<dt><i>wd</i></dt>
+<dt><i>wd</i> (str)</dt>
 <dd>
-the working directory for the program (string)
+the working directory for the program
 </dd>
-<dt><i>traceInterpreter=</i></dt>
+<dt><i>traceInterpreter</i> (bool)</dt>
 <dd>
 flag indicating if the interpreter library
-            should be traced as well (boolean)
+            should be traced as well
 </dd>
-<dt><i>autoContinue=</i></dt>
+<dt><i>autoContinue</i> (bool)</dt>
 <dd>
 flag indicating, that the debugger should not
-            stop at the first executable line (boolean)
+            stop at the first executable line
 </dd>
-<dt><i>autoFork=</i></dt>
+<dt><i>enableMultiprocess</i> (bool)</dt>
 <dd>
-flag indicating the automatic fork mode (boolean)
-</dd>
-<dt><i>forkChild=</i></dt>
-<dd>
-flag indicating to debug the child after forking
-            (boolean)
+flag indicating to perform multiprocess
+            debugging
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteMoveIP" ID="DebuggerInterfacePython.remoteMoveIP"></a>
 <h4>DebuggerInterfacePython.remoteMoveIP</h4>
-<b>remoteMoveIP</b>(<i>line</i>)
+<b>remoteMoveIP</b>(<i>debuggerId, line</i>)
 
 <p>
         Public method to move the instruction pointer to a different line.
 </p>
 <dl>
 
-<dt><i>line</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+<dt><i>line</i> (int)</dt>
 <dd>
 the new line, where execution should be continued
 </dd>
 </dl>
+<a NAME="DebuggerInterfacePython.remoteNoDebugList" ID="DebuggerInterfacePython.remoteNoDebugList"></a>
+<h4>DebuggerInterfacePython.remoteNoDebugList</h4>
+<b>remoteNoDebugList</b>(<i>debuggerId, noDebugList</i>)
+
+<p>
+        Public method to set a list of programs not to be debugged.
+</p>
+<p>
+        The programs given in the list will not be run under the control
+        of the multi process debugger.
+</p>
+<dl>
+
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+<dt><i>noDebugList</i> (list of str)</dt>
+<dd>
+list of Python programs not to be debugged
+</dd>
+</dl>
 <a NAME="DebuggerInterfacePython.remoteProfile" ID="DebuggerInterfacePython.remoteProfile"></a>
 <h4>DebuggerInterfacePython.remoteProfile</h4>
 <b>remoteProfile</b>(<i>fn, argv, wd, erase=False</i>)
@@ -811,133 +1023,170 @@
 </p>
 <dl>
 
-<dt><i>fn</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-the filename to run (string)
+the filename to run
 </dd>
-<dt><i>argv</i></dt>
+<dt><i>argv</i> (str)</dt>
 <dd>
-the commandline arguments to pass to the program (string)
+the commandline arguments to pass to the program
 </dd>
-<dt><i>wd</i></dt>
+<dt><i>wd</i> (str)</dt>
 <dd>
-the working directory for the program (string)
+the working directory for the program
 </dd>
-<dt><i>erase=</i></dt>
+<dt><i>erase</i> (bool)</dt>
 <dd>
 flag indicating that timing info should be cleared
-            first (boolean)
+            first
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteRawInput" ID="DebuggerInterfacePython.remoteRawInput"></a>
 <h4>DebuggerInterfacePython.remoteRawInput</h4>
-<b>remoteRawInput</b>(<i>s</i>)
+<b>remoteRawInput</b>(<i>debuggerId, inputString</i>)
 
 <p>
         Public method to send the raw input to the debugged program.
 </p>
 <dl>
 
-<dt><i>s</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-the raw input (string)
+ID of the debugger backend
+</dd>
+<dt><i>inputString</i> (str)</dt>
+<dd>
+the raw input
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteRun" ID="DebuggerInterfacePython.remoteRun"></a>
 <h4>DebuggerInterfacePython.remoteRun</h4>
-<b>remoteRun</b>(<i>fn, argv, wd, autoFork=False, forkChild=False</i>)
+<b>remoteRun</b>(<i>fn, argv, wd</i>)
 
 <p>
         Public method to load a new program to run.
 </p>
 <dl>
 
-<dt><i>fn</i></dt>
+<dt><i>fn</i> (str)</dt>
 <dd>
-the filename to run (string)
+the filename to run
 </dd>
-<dt><i>argv</i></dt>
-<dd>
-the commandline arguments to pass to the program (string)
-</dd>
-<dt><i>wd</i></dt>
+<dt><i>argv</i> (str)</dt>
 <dd>
-the working directory for the program (string)
+the commandline arguments to pass to the program
 </dd>
-<dt><i>autoFork=</i></dt>
+<dt><i>wd</i> (str)</dt>
 <dd>
-flag indicating the automatic fork mode (boolean)
-</dd>
-<dt><i>forkChild=</i></dt>
-<dd>
-flag indicating to debug the child after forking
-            (boolean)
+the working directory for the program
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteSetThread" ID="DebuggerInterfacePython.remoteSetThread"></a>
 <h4>DebuggerInterfacePython.remoteSetThread</h4>
-<b>remoteSetThread</b>(<i>tid</i>)
+<b>remoteSetThread</b>(<i>debuggerId, tid</i>)
 
 <p>
         Public method to request to set the given thread as current thread.
 </p>
 <dl>
 
-<dt><i>tid</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-id of the thread (integer)
+ID of the debugger backend
+</dd>
+<dt><i>tid</i> (int)</dt>
+<dd>
+id of the thread
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteStatement" ID="DebuggerInterfacePython.remoteStatement"></a>
 <h4>DebuggerInterfacePython.remoteStatement</h4>
-<b>remoteStatement</b>(<i>stmt</i>)
+<b>remoteStatement</b>(<i>debuggerId, stmt</i>)
 
 <p>
         Public method to execute a Python statement.
 </p>
 <dl>
 
-<dt><i>stmt</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-the Python statement to execute (string). It
-              should not have a trailing newline.
+ID of the debugger backend
+</dd>
+<dt><i>stmt</i> (str)</dt>
+<dd>
+the Python statement to execute.
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteStep" ID="DebuggerInterfacePython.remoteStep"></a>
 <h4>DebuggerInterfacePython.remoteStep</h4>
-<b>remoteStep</b>(<i></i>)
+<b>remoteStep</b>(<i>debuggerId</i>)
 
 <p>
         Public method to single step the debugged program.
 </p>
+<dl>
+
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+</dl>
 <a NAME="DebuggerInterfacePython.remoteStepOut" ID="DebuggerInterfacePython.remoteStepOut"></a>
 <h4>DebuggerInterfacePython.remoteStepOut</h4>
-<b>remoteStepOut</b>(<i></i>)
+<b>remoteStepOut</b>(<i>debuggerId</i>)
 
 <p>
         Public method to step out the debugged program.
 </p>
+<dl>
+
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+</dl>
 <a NAME="DebuggerInterfacePython.remoteStepOver" ID="DebuggerInterfacePython.remoteStepOver"></a>
 <h4>DebuggerInterfacePython.remoteStepOver</h4>
-<b>remoteStepOver</b>(<i></i>)
+<b>remoteStepOver</b>(<i>debuggerId</i>)
 
 <p>
         Public method to step over the debugged program.
 </p>
+<dl>
+
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+</dl>
 <a NAME="DebuggerInterfacePython.remoteStepQuit" ID="DebuggerInterfacePython.remoteStepQuit"></a>
 <h4>DebuggerInterfacePython.remoteStepQuit</h4>
-<b>remoteStepQuit</b>(<i></i>)
+<b>remoteStepQuit</b>(<i>debuggerId</i>)
 
 <p>
         Public method to stop the debugged program.
 </p>
+<dl>
+
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+</dl>
 <a NAME="DebuggerInterfacePython.remoteThreadList" ID="DebuggerInterfacePython.remoteThreadList"></a>
 <h4>DebuggerInterfacePython.remoteThreadList</h4>
-<b>remoteThreadList</b>(<i></i>)
+<b>remoteThreadList</b>(<i>debuggerId</i>)
 
 <p>
         Public method to request the list of threads from the client.
 </p>
+<dl>
+
+<dt><i>debuggerId</i> (str)</dt>
+<dd>
+ID of the debugger backend
+</dd>
+</dl>
 <a NAME="DebuggerInterfacePython.remoteUTDiscover" ID="DebuggerInterfacePython.remoteUTDiscover"></a>
 <h4>DebuggerInterfacePython.remoteUTDiscover</h4>
 <b>remoteUTDiscover</b>(<i>syspath, workdir, discoveryStart</i>)
@@ -1052,49 +1301,55 @@
 </p>
 <a NAME="DebuggerInterfacePython.remoteWatchpoint" ID="DebuggerInterfacePython.remoteWatchpoint"></a>
 <h4>DebuggerInterfacePython.remoteWatchpoint</h4>
-<b>remoteWatchpoint</b>(<i>cond, setWatch, temp=False</i>)
+<b>remoteWatchpoint</b>(<i>debuggerId, cond, setWatch, temp=False</i>)
 
 <p>
         Public method to set or clear a watch expression.
 </p>
 <dl>
 
-<dt><i>cond</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-expression of the watch expression (string)
+ID of the debugger backend
 </dd>
-<dt><i>setWatch</i></dt>
+<dt><i>cond</i> (str)</dt>
+<dd>
+expression of the watch expression
+</dd>
+<dt><i>setWatch</i> (bool)</dt>
 <dd>
 flag indicating setting or resetting a watch expression
-            (boolean)
 </dd>
-<dt><i>temp</i></dt>
+<dt><i>temp</i> (bool)</dt>
 <dd>
-flag indicating a temporary watch expression (boolean)
+flag indicating a temporary watch expression
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteWatchpointEnable" ID="DebuggerInterfacePython.remoteWatchpointEnable"></a>
 <h4>DebuggerInterfacePython.remoteWatchpointEnable</h4>
-<b>remoteWatchpointEnable</b>(<i>cond, enable</i>)
+<b>remoteWatchpointEnable</b>(<i>debuggerId, cond, enable</i>)
 
 <p>
         Public method to enable or disable a watch expression.
 </p>
 <dl>
 
-<dt><i>cond</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-expression of the watch expression (string)
+ID of the debugger backend
 </dd>
-<dt><i>enable</i></dt>
+<dt><i>cond</i> (str)</dt>
+<dd>
+expression of the watch expression
+</dd>
+<dt><i>enable</i> (bool)</dt>
 <dd>
 flag indicating enabling or disabling a watch expression
-            (boolean)
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.remoteWatchpointIgnore" ID="DebuggerInterfacePython.remoteWatchpointIgnore"></a>
 <h4>DebuggerInterfacePython.remoteWatchpointIgnore</h4>
-<b>remoteWatchpointIgnore</b>(<i>cond, count</i>)
+<b>remoteWatchpointIgnore</b>(<i>debuggerId, cond, count</i>)
 
 <p>
         Public method to ignore a watch expression the next couple of
@@ -1102,27 +1357,35 @@
 </p>
 <dl>
 
-<dt><i>cond</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-expression of the watch expression (string)
+ID of the debugger backend
 </dd>
-<dt><i>count</i></dt>
+<dt><i>cond</i> (str)</dt>
 <dd>
-number of occurrences to ignore (int)
+expression of the watch expression
+</dd>
+<dt><i>count</i> (int)</dt>
+<dd>
+number of occurrences to ignore
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.setCallTraceEnabled" ID="DebuggerInterfacePython.setCallTraceEnabled"></a>
 <h4>DebuggerInterfacePython.setCallTraceEnabled</h4>
-<b>setCallTraceEnabled</b>(<i>on</i>)
+<b>setCallTraceEnabled</b>(<i>debuggerId, on</i>)
 
 <p>
         Public method to set the call trace state.
 </p>
 <dl>
 
-<dt><i>on</i></dt>
+<dt><i>debuggerId</i> (str)</dt>
 <dd>
-flag indicating to enable the call trace function (boolean)
+ID of the debugger backend
+</dd>
+<dt><i>on</i> (bool)</dt>
+<dd>
+flag indicating to enable the call trace function
 </dd>
 </dl>
 <a NAME="DebuggerInterfacePython.shutdown" ID="DebuggerInterfacePython.shutdown"></a>
@@ -1133,8 +1396,8 @@
         Public method to cleanly shut down.
 </p>
 <p>
-        It closes our socket and shuts down
-        the debug client. (Needed on Win OS)
+        It closes our sockets and shuts down the debug clients.
+        (Needed on Win OS)
 </p>
 <a NAME="DebuggerInterfacePython.startRemote" ID="DebuggerInterfacePython.startRemote"></a>
 <h4>DebuggerInterfacePython.startRemote</h4>

eric ide

mercurial