tmf: Mark TmfTraceManager @NonNullByDefault
[deliverable/tracecompass.git] / tmf / org.eclipse.tracecompass.tmf.core / src / org / eclipse / tracecompass / tmf / core / trace / ITmfTrace.java
index 7d2d768f691e4a3b6d946f24aff226c0ffb4be35..667fc069bb031e7a987b5ea7d2c37c1d2fa39573 100644 (file)
@@ -16,6 +16,7 @@
 
 package org.eclipse.tracecompass.tmf.core.trace;
 
+import org.eclipse.core.resources.IFile;
 import org.eclipse.core.resources.IProject;
 import org.eclipse.core.resources.IResource;
 import org.eclipse.core.runtime.IStatus;
@@ -26,6 +27,7 @@ import org.eclipse.tracecompass.tmf.core.component.ITmfEventProvider;
 import org.eclipse.tracecompass.tmf.core.event.ITmfEvent;
 import org.eclipse.tracecompass.tmf.core.event.aspect.ITmfEventAspect;
 import org.eclipse.tracecompass.tmf.core.exceptions.TmfTraceException;
+import org.eclipse.tracecompass.tmf.core.filter.ITmfFilter;
 import org.eclipse.tracecompass.tmf.core.synchronization.ITmfTimestampTransform;
 import org.eclipse.tracecompass.tmf.core.timestamp.ITmfTimestamp;
 import org.eclipse.tracecompass.tmf.core.timestamp.TmfTimeRange;
@@ -202,11 +204,6 @@ public interface ITmfTrace extends ITmfEventProvider {
     // Basic getters
     // ------------------------------------------------------------------------
 
-    /**
-     * @return the trace event type
-     */
-    Class<? extends ITmfEvent> getEventType();
-
     /**
      * @return the associated trace resource
      */
@@ -258,7 +255,7 @@ public interface ITmfTrace extends ITmfEventProvider {
      *
      * @return An iterable view of the analysis modules
      */
-    @NonNull Iterable<IAnalysisModule> getAnalysisModules();
+    @NonNull Iterable<@NonNull IAnalysisModule> getAnalysisModules();
 
     // ------------------------------------------------------------------------
     // Aspect getters
@@ -272,7 +269,7 @@ public interface ITmfTrace extends ITmfEventProvider {
      *
      * @return The event aspects for this trace
      */
-    @NonNull Iterable<ITmfEventAspect> getEventAspects();
+    @NonNull Iterable<@NonNull ITmfEventAspect<?>> getEventAspects();
 
     // ------------------------------------------------------------------------
     // Trace characteristics getters
@@ -433,4 +430,21 @@ public interface ITmfTrace extends ITmfEventProvider {
      */
     @NonNull ITmfTimestamp createTimestamp(long ts);
 
+    /**
+     * Build a new trace context.
+     *
+     * @param selection
+     *            The selected time range
+     * @param windowRange
+     *            The visible window's time range
+     * @param editorFile
+     *            The file representing the selected editor
+     * @param filter
+     *            The currently applied filter. 'null' for none.
+     * @return The newly created context
+     * @since 2.0
+     */
+    default @NonNull TmfTraceContext createTraceContext(@NonNull TmfTimeRange selection, @NonNull TmfTimeRange windowRange, @Nullable IFile editorFile, @Nullable ITmfFilter filter) {
+        return new TmfTraceContext(selection, windowRange, editorFile, filter);
+    }
 }
This page took 0.027501 seconds and 5 git commands to generate.