~ubuntu-branches/ubuntu/vivid/eclipse-linuxtools/vivid-proposed

« back to all changes in this revision

Viewing changes to lttng/org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/trace/ITmfTraceWithPreDefinedEvents.java

  • Committer: Package Import Robot
  • Author(s): Jakub Adam, Jakub Adam, tony mancill
  • Date: 2014-10-11 11:44:05 UTC
  • mfrom: (1.2.4)
  • Revision ID: package-import@ubuntu.com-20141011114405-yazjvxfzzhmi5sgj
Tags: 3.1.0-1
[ Jakub Adam ]
* New upstream release (Closes: #761524).
* Refreshed d/patches.
* Don't build removed feature org.eclipse.linuxtools.tools.launch
  - merged into org.eclipse.linuxtools.profiling.
* Use javac target 1.7.
* Build new feature org.eclipse.linuxtools.dataviewers.feature
  - required by Valgrind integration.
* Build-depend on eclipse-remote-services-api and eclipse-cdt-autotools.
* Bump Standards-Version to 3.9.6.
* Override incompatible-java-bytecode-format - linuxtools needs Java 7.
* Remove unused codeless-jar override.

[ tony mancill ]
* Tweak short package description to make lintian happy.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*******************************************************************************
 
2
 * Copyright (c) 2014 École Polytechnique de Montréal, Ericsson
 
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
 *   Matthew Khouzam - Initial API and implementation
 
12
 *******************************************************************************/
 
13
 
 
14
package org.eclipse.linuxtools.tmf.core.trace;
 
15
 
 
16
import java.util.Set;
 
17
 
 
18
import org.eclipse.linuxtools.tmf.core.event.ITmfEventType;
 
19
 
 
20
/**
 
21
 * This interface should be implemented by all trace classes who have a way to
 
22
 * know in advance what events it may contain. It allows analyses and other
 
23
 * external components to ask the list of events for the trace might contain.
 
24
 *
 
25
 * The methods from this interface will typically be called to determine whether
 
26
 * or not it is worth reading a trace. If we can know in advance that a trace
 
27
 * does not contain the events required by an analysis, then the analysis will
 
28
 * not be run. So the response should not involve having to actually read the
 
29
 * trace.
 
30
 *
 
31
 * @author Geneviève Bastien
 
32
 * @author Matthew Khouzam
 
33
 * @since 3.0
 
34
 */
 
35
public interface ITmfTraceWithPreDefinedEvents {
 
36
 
 
37
    /**
 
38
     * Return a set of event types declared in the trace, without actually
 
39
     * reading the trace. This method can be called before reading a trace but
 
40
     * after it is initialized, in order to compare this set with a set of
 
41
     * events that a request handles, to determine whether or not it is worth
 
42
     * reading the trace.
 
43
     *
 
44
     * Some trace types have ways to determine the events that were traced
 
45
     * without having to read the whole trace and this is what this method will
 
46
     * query. The presence of an event in the returned set does not guarantee
 
47
     * that an event with this name actually happened during this trace, only
 
48
     * that it can be there.
 
49
     *
 
50
     * The set should be immutable. Destructive set operations should be
 
51
     * performed on a copy of this set.A helper class
 
52
     * {@link TmfEventTypeCollectionHelper} will provide ways of working with
 
53
     * this data structure.
 
54
     *
 
55
     * @return The set of events that might be present in the trace
 
56
     */
 
57
    Set<ITmfEventType> getContainedEventTypes();
 
58
 
 
59
}