2 * Copyright (C) 2017 EfficiOS Inc., Alexandre Montplaisir <alexmonthy@efficios.com>
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 package org
.lttng
.scope
.tmf2
.views
.core
.timegraph
.model
.render
.states
;
12 import java
.util
.Collections
;
14 import org
.lttng
.scope
.tmf2
.views
.core
.config
.ConfigOption
;
15 import org
.lttng
.scope
.tmf2
.views
.core
.timegraph
.model
.render
.ColorDefinition
;
16 import org
.lttng
.scope
.tmf2
.views
.core
.timegraph
.model
.render
.LineThickness
;
17 import org
.lttng
.scope
.tmf2
.views
.core
.timegraph
.model
.render
.tree
.TimeGraphTreeElement
;
20 * Dummy interval model object representing a "multi-state", which means a case
21 * where more than one state exists for a given pixel.
23 * @author Alexandre Montplaisir
25 public final class MultiStateInterval
extends BasicTimeGraphStateInterval
{
27 /** Configuration option for the line thickness of multi-state intervals */
28 public static final ConfigOption
<LineThickness
> MULTI_STATE_THICKNESS_OPTION
= new ConfigOption
<>(LineThickness
.NORMAL
);
30 private static final String MULTI_STATE_NAME
= "Multi-state"; //$NON-NLS-1$
31 private static final ColorDefinition MULTI_STATE_COLOR
= new ColorDefinition(0, 0, 0);
32 private static final ConfigOption
<ColorDefinition
> MULTI_STATE_COLOR_OPTION
= new ConfigOption
<>(MULTI_STATE_COLOR
);
42 * The tree element to which this interval is associated
44 public MultiStateInterval(long startTime
, long endTime
, TimeGraphTreeElement treeElement
) {
51 MULTI_STATE_COLOR_OPTION
,
52 MULTI_STATE_THICKNESS_OPTION
,
53 Collections
.emptyMap());
57 public boolean isMultiState() {