Commit | Line | Data |
---|---|---|
171cccee GB |
1 | /******************************************************************************* |
2 | * Copyright (c) 2014 École Polytechnique de Montréal | |
3 | * | |
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 | |
8 | * | |
9 | * Contributors: | |
10 | * Geneviève Bastien - Initial API and implementation | |
11 | *******************************************************************************/ | |
12 | ||
2bdf0193 | 13 | package org.eclipse.tracecompass.tmf.analysis.xml.core.module; |
171cccee | 14 | |
4c4e2816 | 15 | import org.eclipse.jdt.annotation.NonNull; |
e894a508 | 16 | import org.eclipse.tracecompass.statesystem.core.ITmfStateSystem; |
2bdf0193 | 17 | import org.eclipse.tracecompass.tmf.analysis.xml.core.model.TmfXmlLocation; |
171cccee GB |
18 | |
19 | /** | |
20 | * Interface that all XML defined objects who provide, use or contain state | |
21 | * system must implement in order to use the state provider model elements in | |
2bdf0193 | 22 | * {@link org.eclipse.tracecompass.tmf.analysis.xml.core.model} package |
171cccee GB |
23 | * |
24 | * @author Geneviève Bastien | |
25 | */ | |
26 | public interface IXmlStateSystemContainer extends ITmfXmlTopLevelElement { | |
27 | ||
28 | /** Root quark, to get values at the root of the state system */ | |
304712fe | 29 | int ROOT_QUARK = -1; |
171cccee GB |
30 | /** |
31 | * Error quark, value taken when a state system quark query is in error. | |
32 | * | |
33 | * FIXME: Originally in the code, the -1 was used for both root quark and | |
34 | * return errors, so it has the same value as root quark, but maybe it can | |
35 | * be changed to something else -2? A quark can never be negative | |
36 | */ | |
304712fe | 37 | int ERROR_QUARK = -1; |
171cccee GB |
38 | |
39 | /** | |
40 | * Get the state system managed by this XML object | |
41 | * | |
42 | * @return The state system | |
43 | */ | |
44 | ITmfStateSystem getStateSystem(); | |
45 | ||
46 | /** | |
47 | * Get the list of locations defined in this top level XML element | |
48 | * | |
49 | * @return The list of {@link TmfXmlLocation} | |
50 | */ | |
4c4e2816 | 51 | @NonNull Iterable<@NonNull TmfXmlLocation> getLocations(); |
171cccee GB |
52 | |
53 | } |