Merge Generic State System core part
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf.core / src / org / eclipse / linuxtools / tmf / core / statesystem / helpers / IStateChangeInput.java
CommitLineData
a52fde77
AM
1/*******************************************************************************
2 * Copyright (c) 2012 Ericsson
3 * Copyright (c) 2010, 2011 École Polytechnique de Montréal
4 * Copyright (c) 2010, 2011 Alexandre Montplaisir <alexandre.montplaisir@gmail.com>
5 *
6 * All rights reserved. This program and the accompanying materials are
7 * made available under the terms of the Eclipse Public License v1.0 which
8 * accompanies this distribution, and is available at
9 * http://www.eclipse.org/legal/epl-v10.html
10 *
11 *******************************************************************************/
12
13package org.eclipse.linuxtools.tmf.core.statesystem.helpers;
14
15import org.eclipse.linuxtools.tmf.core.statesystem.StateSystem;
16
17/**
18 * This is the interface used to define the "state change input", which is the
19 * main type of input that goes in the state system.
20 *
21 * Usually a state change input, also called "state provider" is the piece of
22 * the pipeline which converts trace events to state changes.
23 *
24 * @author alexmont
25 *
26 */
27public interface IStateChangeInput extends Runnable {
28
29 /**
30 * Return the start time of this "state change input", which is normally the
31 * start time of the originating trace (or it can be the time of the first
32 * state-changing event).
33 *
34 * @return The start time
35 */
36 public long getStartTime();
37
38 /**
39 * Assign the target state system where this SCI will insert its state
40 * changes. Because of dependencies issues, this can normally not be done at
41 * the constructor.
42 *
43 * This needs to be called before .run()!
44 *
45 * @param ss
46 */
47 public void assignTargetStateSystem(StateSystem ss);
48
49 /**
50 * Return the State System that was assigned to this SCI.
51 *
52 * @return The target state system
53 */
54 public StateSystem getStateSystem();
55
56}
This page took 0.026583 seconds and 5 git commands to generate.