1 /*******************************************************************************
2 * Copyright (c) 2014 École Polytechnique de Montréal
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 * Geneviève Bastien - Initial API and implementation
11 *******************************************************************************/
13 package org
.eclipse
.tracecompass
.tmf
.analysis
.xml
.core
.model
;
15 import org
.eclipse
.jdt
.annotation
.Nullable
;
16 import org
.eclipse
.tracecompass
.tmf
.analysis
.xml
.core
.module
.IXmlStateSystemContainer
;
17 import org
.eclipse
.tracecompass
.tmf
.core
.event
.ITmfEvent
;
20 * Interface that describe a state attribute defined in an XML element
22 * @author Geneviève Bastien
24 public interface ITmfXmlStateAttribute
{
27 * This method gets the quark for this state attribute in the State System.
29 * Unless this attribute is a location, in which case the quark must exist,
30 * the quark will be added to the state system if the state system is in
34 * root quark, use {@link IXmlStateSystemContainer#ROOT_QUARK} to
35 * search the full attribute tree
37 * The active scenario details. Or <code>null</code> if there is
39 * @return the quark described by attribute or
40 * {@link IXmlStateSystemContainer#ERROR_QUARK} if quark cannot be
44 int getAttributeQuark(int startQuark
, @Nullable TmfXmlScenarioInfo scenarioInfo
);
47 * This method gets the quark for this state attribute in the State System.
49 * Unless this attribute is a location, in which case the quark must exist,
50 * the quark will be added to the state system if the state system is in
54 * The current event being handled
56 * root quark, use {@link IXmlStateSystemContainer#ROOT_QUARK} to
57 * search the full attribute tree
59 * The active scenario details. Or <code>null</code> if there is
61 * @return the quark described by attribute or
62 * {@link IXmlStateSystemContainer#ERROR_QUARK} if quark cannot be
66 int getAttributeQuark(@Nullable ITmfEvent event
, int startQuark
, @Nullable TmfXmlScenarioInfo scenarioInfo
);