Package: IVdmDebugTarget

IVdmDebugTarget

Coverage

1: /*
2: * #%~
3: * org.overture.ide.debug
4: * %%
5: * Copyright (C) 2008 - 2014 Overture
6: * %%
7: * This program is free software: you can redistribute it and/or modify
8: * it under the terms of the GNU General Public License as
9: * published by the Free Software Foundation, either version 3 of the
10: * License, or (at your option) any later version.
11: *
12: * This program is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15: * GNU General Public License for more details.
16: *
17: * You should have received a copy of the GNU General Public
18: * License along with this program. If not, see
19: * <http://www.gnu.org/licenses/gpl-3.0.html>.
20: * #~%
21: */
22: package org.overture.ide.debug.core.model;
23:
24: import java.net.URI;
25:
26: import org.eclipse.debug.core.DebugException;
27: import org.eclipse.debug.core.model.IDebugTarget;
28: import org.overture.ide.core.resources.IVdmProject;
29: import org.overture.ide.debug.core.IDebugOptions;
30: import org.overture.ide.debug.core.dbgp.IDbgpSession;
31: import org.overture.ide.debug.core.model.internal.IVdmStreamProxy;
32: import org.overture.ide.debug.logging.LogItem;
33:
34: public interface IVdmDebugTarget extends IDebugTarget
35: {
36:         boolean isInitialized();
37:
38:         //
39:         String getSessionId();
40:
41:         // Listener
42:         void addListener(IVdmDebugTargetListener listener);
43:
44:         void removeListener(IVdmDebugTargetListener listener);
45:
46:         // Request timeout
47:         void setRequestTimeout(int timeout);
48:
49:         int getRequestTimeout();
50:
51:         // Stream proxy management
52:         void setStreamProxy(IVdmStreamProxy proxy);
53:
54:         IVdmStreamProxy getStreamProxy();
55:
56:         // Run to line
57:         void runToLine(URI uri, int lineNumber) throws DebugException;
58:
59:         void setFilters(String[] activeFilters);
60:
61:         String[] getFilters();
62:
63:         void setUseStepFilters(boolean useStepFilters);
64:
65:         boolean isUseStepFilters();
66:
67:         // IDLTKLanguageToolkit getLanguageToolkit();
68:
69:         /**
70:          * Returns <code>true</code> if the thread should break on the first executable line of code, <code>false</code>
71:          * otherwise.
72:          */
73:         boolean breakOnFirstLineEnabled();
74:
75:         void toggleGlobalVariables(boolean enabled);
76:
77:         void toggleClassVariables(boolean enabled);
78:
79:         void toggleLocalVariables(boolean enabled);
80:
81:         boolean retrieveGlobalVariables();
82:
83:         boolean retrieveClassVariables();
84:
85:         boolean retrieveLocalVariables();
86:
87:         String getConsoleEncoding();
88:
89:         IDebugOptions getOptions();
90:
91:         IDbgpSession[] getSessions();
92:
93:         IVdmBreakpointPathMapper getPathMapper();
94:
95:         /**
96:          * @since 2.0
97:          */
98:         boolean isRemote();
99:
100:         IVdmProject getVdmProject();
101:
102:         public void printLog(LogItem item);
103: }