Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEugene Tarassov2016-08-03 18:04:05 +0000
committerEugene Tarassov2016-08-03 18:04:05 +0000
commit6f677acc5f8547486ad35181a2d8c250b17e2495 (patch)
tree0a4ea1fcf27247cf6e867608bce3deaf529ef03c /plugins
parent02c52f218426307fb63cfa34e8db88128cf3a344 (diff)
downloadorg.eclipse.tcf-6f677acc5f8547486ad35181a2d8c250b17e2495.tar.gz
org.eclipse.tcf-6f677acc5f8547486ad35181a2d8c250b17e2495.tar.xz
org.eclipse.tcf-6f677acc5f8547486ad35181a2d8c250b17e2495.zip
Bug 499059 - Support for displaying cross trigger breakpoints in Breakpoint view
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IBreakpoints.java19
-rw-r--r--plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModelPresentation.java19
-rw-r--r--plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java4
3 files changed, 39 insertions, 3 deletions
diff --git a/plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IBreakpoints.java b/plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IBreakpoints.java
index 9616ea144..f85231930 100644
--- a/plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IBreakpoints.java
+++ b/plugins/org.eclipse.tcf.core/src/org/eclipse/tcf/services/IBreakpoints.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007, 2015 Wind River Systems, Inc. and others.
+ * Copyright (c) 2007, 2016 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -77,6 +77,20 @@ public interface IBreakpoints extends IService {
// to be moved in case of inexact line info match
/**
+ * Breakpoints service can control cross trigger matrix - if the target hardware has one.
+ * If a breakpoint has cross trigger attributes, planting of the breakpoint enables routing of
+ * CrossTriggerInp signals to CrossTriggerOut signals. If CrossTriggerOut array includes
+ * CPU stop request, any CrossTriggerInp signal also stops software execution. In such case,
+ * breakpoint attributes like Condition or StopGroup have same meaning as for regular breakpoint.
+ * Values of cross trigger attributes are arrays of signal IDs. Signal ID can be either Number or String.
+ * Mapping of signal IDs to hardware depends on the target.
+ * @since 1.5
+ */
+ static final String
+ PROP_CT_INP = "CrossTriggerInp", // Array - Cross trigger inputs
+ PROP_CT_OUT = "CrossTriggerOut"; // Array - Cross trigger outputs
+
+ /**
* @deprecated
*/
static final String
@@ -165,6 +179,9 @@ public interface IBreakpoints extends IService {
/** @since 1.3 */
static final String
CAPABILITY_SKIP_PROLOGUE = "SkipPrologue"; // Boolean
+ /** @since 1.5 */
+ static final String
+ CAPABILITY_CROSS_TRIGGER = "CrossTrigger"; // Boolean
/**
* @deprecated
diff --git a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModelPresentation.java b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModelPresentation.java
index 813d9ef32..da0662b29 100644
--- a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModelPresentation.java
+++ b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFModelPresentation.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007, 2015 Wind River Systems, Inc. and others.
+ * Copyright (c) 2007, 2016 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -202,6 +202,23 @@ public class TCFModelPresentation implements IDebugModelPresentation {
bf.append(s);
bf.append(']');
}
+ String ct_inp = marker.getAttribute(TCFBreakpointsModel.ATTR_CT_INP, null);
+ String ct_out = marker.getAttribute(TCFBreakpointsModel.ATTR_CT_OUT, null);
+ if (ct_inp != null || ct_out != null) {
+ bf.append("[cross trigger:");
+ if (ct_inp != null) {
+ if (ct_inp.startsWith("JSON:")) ct_inp = ct_inp.substring(5);
+ bf.append(" in ");
+ bf.append(ct_inp);
+ }
+ if (ct_out != null) {
+ if (ct_out.startsWith("JSON:")) ct_out = ct_out.substring(5);
+ if (ct_inp != null) bf.append(',');
+ bf.append(" out ");
+ bf.append(ct_out);
+ }
+ bf.append(']');
+ }
if (bf.length() == 0) {
String id = marker.getAttribute(TCFBreakpointsModel.ATTR_ID, null);
if (id == null) id = Long.toString(marker.getId());
diff --git a/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java b/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java
index 4fb363653..5df554dc5 100644
--- a/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java
+++ b/plugins/org.eclipse.tcf.debug/src/org/eclipse/tcf/internal/debug/model/TCFBreakpointsModel.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2007, 2015 Wind River Systems, Inc. and others.
+ * Copyright (c) 2007, 2016 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -81,6 +81,8 @@ public class TCFBreakpointsModel {
ATTR_CONTEXT_QUERY = ITCFConstants.ID_TCF_DEBUG_MODEL + '.' + IBreakpoints.PROP_CONTEXT_QUERY,
ATTR_LINE_OFFSET = ITCFConstants.ID_TCF_DEBUG_MODEL + '.' + IBreakpoints.PROP_LINE_OFFSET,
ATTR_SKIP_PROLOGUE = ITCFConstants.ID_TCF_DEBUG_MODEL + '.' + IBreakpoints.PROP_SKIP_PROLOGUE,
+ ATTR_CT_INP = ITCFConstants.ID_TCF_DEBUG_MODEL + '.' + IBreakpoints.PROP_CT_INP,
+ ATTR_CT_OUT = ITCFConstants.ID_TCF_DEBUG_MODEL + '.' + IBreakpoints.PROP_CT_OUT,
ATTR_EVENT_TYPE = "org.eclipse.cdt.debug.core.eventbreakpoint_event_id",
ATTR_EVENT_ARGS = "org.eclipse.cdt.debug.core.eventbreakpoint_event_arg",
ATTR_TYPE = "org.eclipse.cdt.debug.core.breakpointType",

Back to the top