caba63508e83b155298598f7b31dadc3873dca8d
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf.core / src / org / eclipse / linuxtools / tmf / core / event / matching / ITmfMatchEventDefinition.java
1 /*******************************************************************************
2 * Copyright (c) 2013 École Polytechnique de Montréal
3 *
4 * All rights reserved. This program and the accompanying materials are made
5 * 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 implementation and API
11 *******************************************************************************/
12
13 package org.eclipse.linuxtools.tmf.core.event.matching;
14
15 import java.util.List;
16
17 import org.eclipse.linuxtools.tmf.core.event.ITmfEvent;
18 import org.eclipse.linuxtools.tmf.core.event.matching.TmfEventMatching.MatchingType;
19 import org.eclipse.linuxtools.tmf.core.trace.ITmfTrace;
20
21 /**
22 * This interface describe a concrete method to match events. Typically it
23 * manages for a given matching type what events/fields are used to match events
24 *
25 * @author Geneviève Bastien
26 * @since 3.0
27 */
28 public interface ITmfMatchEventDefinition {
29
30 /**
31 * Returns a list of values for an event that uniquely identifies this event
32 *
33 * @param event
34 * The event for which to compute the key
35 * @return the unique key for this event
36 */
37 List<Object> getUniqueField(ITmfEvent event);
38
39 /**
40 * Verifies whether a trace has all required events to match using this
41 * class
42 *
43 * @param trace
44 * The trace
45 * @return Whether the trace has all required information
46 */
47 boolean canMatchTrace(ITmfTrace trace);
48
49 /**
50 * Return all matching types this definition covers
51 *
52 * @return an array of matching types
53 */
54 MatchingType[] getApplicableMatchingTypes();
55
56 }
This page took 0.031401 seconds and 4 git commands to generate.