--- /dev/null
+/*******************************************************************************
+ * Copyright (c) 2016 EfficiOS Inc., Alexandre Montplaisir
+ *
+ * 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
+ * http://www.eclipse.org/legal/epl-v10.html
+ *******************************************************************************/
+
+package org.eclipse.tracecompass.internal.provisional.tmf.core.views.timegraph2;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+
+import com.google.common.collect.ImmutableList;
+
+public class TimeGraphModelRender {
+
+ public static final TimeGraphModelRender EMPTY_RENDER =
+ new TimeGraphModelRender(0, 0,
+ new TimeGraphTreeRender(Collections.EMPTY_LIST),
+ Collections.EMPTY_LIST,
+ Collections.EMPTY_LIST,
+ Collections.EMPTY_LIST);
+
+ private final long fStartTime;
+ private final long fEndTime;
+ private final TimeGraphTreeRender fTreeRender;
+ private final List<List<TimeGraphStateInterval>> fStateIntervals;
+ private final List<List<TimeGraphDrawnEvent>> fDrawnEvents;
+ private final Collection<TimeGraphArrowSeries> fArrowSeries;
+
+ public TimeGraphModelRender(long startTime, long endTime,
+ TimeGraphTreeRender treeRender,
+ List<List<TimeGraphStateInterval>> stateIntervals,
+ List<List<TimeGraphDrawnEvent>> drawnEvents,
+ Collection<TimeGraphArrowSeries> arrowSeries) {
+ fStartTime = startTime;
+ fEndTime = endTime;
+ fTreeRender = treeRender;
+ fStateIntervals = ImmutableList.copyOf(stateIntervals);
+ fDrawnEvents = ImmutableList.copyOf(drawnEvents);
+ fArrowSeries = ImmutableList.copyOf(arrowSeries);
+ }
+
+ public long getStartTime() {
+ return fStartTime;
+ }
+
+ public long getEndTime() {
+ return fEndTime;
+ }
+
+ public TimeGraphTreeRender getTreeRender() {
+ return fTreeRender;
+ }
+
+ public List<List<TimeGraphStateInterval>> getStateIntervals() {
+ return fStateIntervals;
+ }
+
+ public List<List<TimeGraphDrawnEvent>> getDrawnEvents() {
+ return fDrawnEvents;
+ }
+
+ public Collection<TimeGraphArrowSeries> getArrowsSeries() {
+ return fArrowSeries;
+ }
+
+}