~ubuntu-branches/ubuntu/trusty/eclipse-linuxtools/trusty

« back to all changes in this revision

Viewing changes to oprofile/org.eclipse.linuxtools.oprofile.core/src/org/eclipse/linuxtools/internal/oprofile/core/IOpxmlProvider.java

  • Committer: Package Import Robot
  • Author(s): Jakub Adam
  • Date: 2012-06-29 12:07:30 UTC
  • Revision ID: package-import@ubuntu.com-20120629120730-bfri1xys1i71dpn6
Tags: upstream-1.0.0
ImportĀ upstreamĀ versionĀ 1.0.0

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*******************************************************************************
 
2
 * Copyright (c) 2004,2008 Red Hat, Inc.
 
3
 * All rights reserved. This program and the accompanying materials
 
4
 * are made available under the terms of the Eclipse Public License v1.0
 
5
 * which accompanies this distribution, and is available at
 
6
 * http://www.eclipse.org/legal/epl-v10.html
 
7
 *
 
8
 * Contributors:
 
9
 *    Keith Seitz <keiths@redhat.com> - initial API and implementation
 
10
 *    Kent Sebastian <ksebasti@redhat.com> - 
 
11
 *******************************************************************************/ 
 
12
package org.eclipse.linuxtools.internal.oprofile.core;
 
13
 
 
14
import java.util.ArrayList;
 
15
 
 
16
import org.eclipse.jface.operation.IRunnableWithProgress;
 
17
import org.eclipse.linuxtools.internal.oprofile.core.daemon.OpInfo;
 
18
import org.eclipse.linuxtools.internal.oprofile.core.model.OpModelEvent;
 
19
import org.eclipse.linuxtools.internal.oprofile.core.model.OpModelImage;
 
20
 
 
21
/**
 
22
 * Interface for the core to utilize opxml. Platform plugins should define/register an
 
23
 * OpxmlProvider for the core to use.
 
24
 */
 
25
public interface IOpxmlProvider {
 
26
        
 
27
        /**
 
28
         * Returns an <code>IRunnableWithProgress</code> that fetches generic information from opxml
 
29
         * @param info <code>OpInfo</code> object for results
 
30
         * @return <code>IRunnableWithProgress</code> that may be run by the caller
 
31
         */
 
32
        public IRunnableWithProgress info(OpInfo info);
 
33
        
 
34
        /**
 
35
         * Returns an <code>IRunnableWithProgress</code> that fetches samples for the
 
36
         * given <code>OpModelSession</code>
 
37
         * @param eventName the event for which to fetch samples
 
38
         * @param sessionName the session for which to fetch samples
 
39
         * @param image the image being profiled to be returned to the caller
 
40
         * @return <code>IRunnableWithProgress</code> that may be run by the caller
 
41
         */
 
42
        public IRunnableWithProgress modelData(String eventName, String sessionName, OpModelImage image);
 
43
        
 
44
        /**
 
45
         * Returns an <code>IRunnableWithProgress</code> that checks the validity of the given
 
46
         * event, unit mask, and counter combination 
 
47
         * @param ctr the counter
 
48
         * @param event the String event name
 
49
         * @param um the integer unit mask
 
50
         * @param eventValid a size one array to hold the return result (see <code>CheckEventsProcessor</code>)
 
51
         * @return <code>IRunnableWithProgress</code> that may be run by the caller
 
52
         */
 
53
        public IRunnableWithProgress checkEvents(int ctr, String event, int um, int[] eventValid);
 
54
        
 
55
        /**
 
56
         * Returns an /code>IRunnableWithProgress</code> that fetches the list of sessions
 
57
         * @param info the <code>OpInfo</code> for oprofile
 
58
         * @param sessionList an <code>ArrayList</code> in which to return the list of sessions
 
59
         * @return <code>IRunnableWithProgress</code> that may be run by the caller
 
60
         */
 
61
        public IRunnableWithProgress sessions(ArrayList<OpModelEvent> sessionList);
 
62
}