Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEugene Tarassov2015-08-10 14:31:51 -0400
committerEugene Tarassov2015-08-10 14:31:51 -0400
commitb0013659c3e62fcabcc7e2cb196466810ebc76bc (patch)
treeea77c7d4a430909ae50c1864f137a78c6ccf6e76
parent2c34662a2d423f6161847105334431de5fa89465 (diff)
downloadorg.eclipse.tcf-b0013659c3e62fcabcc7e2cb196466810ebc76bc.tar.gz
org.eclipse.tcf-b0013659c3e62fcabcc7e2cb196466810ebc76bc.tar.xz
org.eclipse.tcf-b0013659c3e62fcabcc7e2cb196466810ebc76bc.zip
TCF Agent: added new flags in RegAccessTypes property of a context: "rd-stop" and "wr-stop"
The flags can be used by context implementation to indicate that debugger should stop the context to access its registers
-rw-r--r--plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IRunControl.java12
-rw-r--r--plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java4
2 files changed, 13 insertions, 3 deletions
diff --git a/plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IRunControl.java b/plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IRunControl.java
index c2d4e2bc9..1b8cd2a6b 100644
--- a/plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IRunControl.java
+++ b/plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IRunControl.java
@@ -235,8 +235,16 @@ public interface IRunControl extends IService {
* @since 1.3
*/
static final String
- REG_ACCESS_RD_RUNNING = "rd-running", /** Context supports reading registers while running */
- REG_ACCESS_WR_RUNNUNG = "wr-running"; /** Context supports writing registers while running */
+ REG_ACCESS_RD_RUNNING = "rd-running", /** Context supports reading registers while running */
+ REG_ACCESS_WR_RUNNUNG = "wr-running"; /** Context supports writing registers while running */
+
+ /**
+ * Values of "RegAccessTypes".
+ * @since 1.4
+ */
+ static final String
+ REG_ACCESS_RD_STOP = "rd-stop", /** Debugger should stop the context to read registers */
+ REG_ACCESS_WR_STOP = "wr-stop"; /** Debugger should stop the context to write registers */
/* Optional parameters of context state -------------------------------- */
diff --git a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java
index 015f69202..7a355b605 100644
--- a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java
+++ b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java
@@ -236,7 +236,9 @@ public class TCFNodeRegister extends TCFNode implements IElementEditor, IWatchIn
IRunControl.RunControlContext ctx_data = ctx_cache.getData();
if (ctx_data != null && ctx_data.hasState()) {
Collection<String> access_types = ctx_data.getRegAccessTypes();
- if (access_types == null || !access_types.contains(IRunControl.REG_ACCESS_RD_RUNNING)) {
+ if (access_types == null ||
+ !(access_types.contains(IRunControl.REG_ACCESS_RD_RUNNING) ||
+ access_types.contains(IRunControl.REG_ACCESS_RD_STOP))) {
TCFDataCache<TCFContextState> state_cache = exe.getState();
if (!state_cache.validate(done)) return null;
TCFContextState state_data = state_cache.getData();

Back to the top