ss: Move plugins to Trace Compass namespace
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf.core / src / org / eclipse / linuxtools / tmf / core / analysis / IAnalysisParameterProvider.java
1 /*******************************************************************************
2 * Copyright (c) 2013 É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
13 package org.eclipse.linuxtools.tmf.core.analysis;
14
15 import org.eclipse.linuxtools.tmf.core.trace.ITmfTrace;
16
17 /**
18 * Interface for classes that can provide parameters to analysis when they are
19 * not set manually
20 *
21 * @author Geneviève Bastien
22 * @since 3.0
23 */
24 public interface IAnalysisParameterProvider {
25
26 // --------------------------------------------------------
27 // Getters and setters
28 // --------------------------------------------------------
29
30 /**
31 * Gets the name of the parameter provider
32 *
33 * @return Name of the parameter provider
34 */
35 String getName();
36
37 /**
38 * Gets the value of a parameter
39 *
40 * @param name
41 * Name of the parameter
42 * @return The value of a parameter
43 */
44 Object getParameter(String name);
45
46 // --------------------------------------------------------
47 // Functionalities
48 // --------------------------------------------------------
49
50 /**
51 * Does this parameter provider apply to a given trace
52 *
53 * @param trace
54 * The trace to analyse
55 * @return whether the parameter provider applies
56 */
57 boolean appliesToTrace(ITmfTrace trace);
58
59 /**
60 * Register an analysis module to be notified when a parameter value is
61 * changed
62 *
63 * @param module
64 * The listening analysis module
65 */
66 void registerModule(IAnalysisModule module);
67
68 }
This page took 0.059613 seconds and 5 git commands to generate.