summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
9ccb80d)
Clear selection in CPU Usage view and Kernel Memory Usage View when
switching trace.
Change-Id: I57618581048995904fa71a9f24d65453eea9ae94
Signed-off-by: Jean-Christian Kouame <jean-christian.kouame@ericsson.com>
Reviewed-on: https://git.eclipse.org/r/74261
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Tested-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
import org.eclipse.tracecompass.statesystem.core.exceptions.TimeRangeException;
import org.eclipse.tracecompass.statesystem.core.interval.ITmfStateInterval;
import org.eclipse.tracecompass.statesystem.core.statevalue.ITmfStateValue;
import org.eclipse.tracecompass.statesystem.core.exceptions.TimeRangeException;
import org.eclipse.tracecompass.statesystem.core.interval.ITmfStateInterval;
import org.eclipse.tracecompass.statesystem.core.statevalue.ITmfStateValue;
+import org.eclipse.tracecompass.tmf.core.signal.TmfSignalHandler;
+import org.eclipse.tracecompass.tmf.core.signal.TmfTraceOpenedSignal;
+import org.eclipse.tracecompass.tmf.core.signal.TmfTraceSelectedSignal;
import org.eclipse.tracecompass.tmf.core.statesystem.TmfStateSystemAnalysisModule;
import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
import org.eclipse.tracecompass.tmf.core.trace.TmfTraceUtils;
import org.eclipse.tracecompass.tmf.core.statesystem.TmfStateSystemAnalysisModule;
import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
import org.eclipse.tracecompass.tmf.core.trace.TmfTraceUtils;
updateContent(getWindowStartTime(), getWindowEndTime(), false);
}
updateContent(getWindowStartTime(), getWindowEndTime(), false);
}
+ @Override
+ @TmfSignalHandler
+ public void traceSelected(TmfTraceSelectedSignal signal) {
+ setSelectedThread(null);
+ super.traceSelected(signal);
+ }
+
+ @Override
+ @TmfSignalHandler
+ public void traceOpened(TmfTraceOpenedSignal signal) {
+ setSelectedThread(null);
+ super.traceOpened(signal);
+ }
+
import org.eclipse.tracecompass.internal.analysis.os.linux.ui.Activator;
import org.eclipse.tracecompass.statesystem.core.ITmfStateSystem;
import org.eclipse.tracecompass.statesystem.core.exceptions.StateValueTypeException;
import org.eclipse.tracecompass.internal.analysis.os.linux.ui.Activator;
import org.eclipse.tracecompass.statesystem.core.ITmfStateSystem;
import org.eclipse.tracecompass.statesystem.core.exceptions.StateValueTypeException;
+import org.eclipse.tracecompass.tmf.core.signal.TmfSignalHandler;
+import org.eclipse.tracecompass.tmf.core.signal.TmfTraceOpenedSignal;
+import org.eclipse.tracecompass.tmf.core.signal.TmfTraceSelectedSignal;
import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
import org.eclipse.tracecompass.tmf.core.trace.TmfTraceUtils;
import org.eclipse.tracecompass.tmf.ui.viewers.xycharts.linecharts.TmfCommonXLineChartViewer;
import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
import org.eclipse.tracecompass.tmf.core.trace.TmfTraceUtils;
import org.eclipse.tracecompass.tmf.ui.viewers.xycharts.linecharts.TmfCommonXLineChartViewer;
*/
public class CpuUsageXYViewer extends TmfCommonXLineChartViewer {
*/
public class CpuUsageXYViewer extends TmfCommonXLineChartViewer {
+ private static final int NOT_SELECTED = -1;
+
private KernelCpuUsageAnalysis fModule = null;
/* Maps a thread ID to a list of y values */
private KernelCpuUsageAnalysis fModule = null;
/* Maps a thread ID to a list of y values */
// Timeout between updates in the updateData thread
private static final long BUILD_UPDATE_TIMEOUT = 500;
// Timeout between updates in the updateData thread
private static final long BUILD_UPDATE_TIMEOUT = 500;
- private long fSelectedThread = -1;
+ private long fSelectedThread = NOT_SELECTED;
private final @NonNull Set<@NonNull Integer> fCpus = new TreeSet<>();
private final @NonNull Set<@NonNull Integer> fCpus = new TreeSet<>();
fYValues.clear();
fYValues.put(Messages.CpuUsageXYViewer_Total, zeroFill(xvalues.length));
String stringSelectedThread = Long.toString(selectedThread);
fYValues.clear();
fYValues.put(Messages.CpuUsageXYViewer_Total, zeroFill(xvalues.length));
String stringSelectedThread = Long.toString(selectedThread);
- if (selectedThread != -1) {
+ if (selectedThread != NOT_SELECTED) {
fYValues.put(stringSelectedThread, zeroFill(xvalues.length));
}
fYValues.put(stringSelectedThread, zeroFill(xvalues.length));
}
getSwtChart().getTitle().setText(Messages.CpuUsageView_Title);
}
getSwtChart().getTitle().setText(Messages.CpuUsageView_Title);
}
+ @Override
+ @TmfSignalHandler
+ public void traceSelected(TmfTraceSelectedSignal signal) {
+ setSelectedThread(NOT_SELECTED);
+ super.traceSelected(signal);
+ }
+
+ @Override
+ @TmfSignalHandler
+ public void traceOpened(TmfTraceOpenedSignal signal) {
+ setSelectedThread(NOT_SELECTED);
+ super.traceOpened(signal);
+ }
+
import org.eclipse.tracecompass.statesystem.core.ITmfStateSystem;
import org.eclipse.tracecompass.statesystem.core.exceptions.StateSystemDisposedException;
import org.eclipse.tracecompass.statesystem.core.interval.ITmfStateInterval;
import org.eclipse.tracecompass.statesystem.core.ITmfStateSystem;
import org.eclipse.tracecompass.statesystem.core.exceptions.StateSystemDisposedException;
import org.eclipse.tracecompass.statesystem.core.interval.ITmfStateInterval;
+import org.eclipse.tracecompass.tmf.core.signal.TmfSignalHandler;
+import org.eclipse.tracecompass.tmf.core.signal.TmfTraceOpenedSignal;
+import org.eclipse.tracecompass.tmf.core.signal.TmfTraceSelectedSignal;
import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
import org.eclipse.tracecompass.tmf.core.trace.TmfTraceUtils;
import org.eclipse.tracecompass.tmf.ui.viewers.tree.AbstractTmfTreeViewer;
import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
import org.eclipse.tracecompass.tmf.core.trace.TmfTraceUtils;
import org.eclipse.tracecompass.tmf.ui.viewers.tree.AbstractTmfTreeViewer;
public void setSelectedThread(String tid) {
fSelectedThread = tid;
}
public void setSelectedThread(String tid) {
fSelectedThread = tid;
}
+
+ @Override
+ @TmfSignalHandler
+ public void traceSelected(TmfTraceSelectedSignal signal) {
+ setSelectedThread(null);
+ super.traceSelected(signal);
+ }
+
+ @Override
+ @TmfSignalHandler
+ public void traceOpened(TmfTraceOpenedSignal signal) {
+ setSelectedThread(null);
+ super.traceOpened(signal);
+ }
}
\ No newline at end of file
}
\ No newline at end of file
import org.eclipse.tracecompass.statesystem.core.exceptions.StateSystemDisposedException;
import org.eclipse.tracecompass.statesystem.core.exceptions.TimeRangeException;
import org.eclipse.tracecompass.statesystem.core.interval.ITmfStateInterval;
import org.eclipse.tracecompass.statesystem.core.exceptions.StateSystemDisposedException;
import org.eclipse.tracecompass.statesystem.core.exceptions.TimeRangeException;
import org.eclipse.tracecompass.statesystem.core.interval.ITmfStateInterval;
+import org.eclipse.tracecompass.tmf.core.signal.TmfSignalHandler;
+import org.eclipse.tracecompass.tmf.core.signal.TmfTraceOpenedSignal;
+import org.eclipse.tracecompass.tmf.core.signal.TmfTraceSelectedSignal;
import org.eclipse.tracecompass.tmf.core.statesystem.TmfStateSystemAnalysisModule;
import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
import org.eclipse.tracecompass.tmf.core.trace.TmfTraceUtils;
import org.eclipse.tracecompass.tmf.core.statesystem.TmfStateSystemAnalysisModule;
import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
import org.eclipse.tracecompass.tmf.core.trace.TmfTraceUtils;
+ @Override
+ @TmfSignalHandler
+ public void traceSelected(TmfTraceSelectedSignal signal) {
+ setSelectedThread(NOT_SELECTED);
+ super.traceSelected(signal);
+ }
+
+ @Override
+ @TmfSignalHandler
+ public void traceOpened(TmfTraceOpenedSignal signal) {
+ setSelectedThread(NOT_SELECTED);
+ super.traceOpened(signal);
+ }
+