Commit | Line | Data |
---|---|---|
5c82e602 AM |
1 | /******************************************************************************* |
2 | * Copyright (c) 2015 EfficiOS Inc., Alexandre Montplaisir | |
3 | * | |
4 | * All rights reserved. This program and the accompanying materials | |
5 | * are made available under the terms of the Eclipse Public License v1.0 | |
6 | * which accompanies this distribution, and is available at | |
7 | * http://www.eclipse.org/legal/epl-v10.html | |
8 | *******************************************************************************/ | |
9 | ||
10 | package org.eclipse.tracecompass.lttng2.ust.core.trace; | |
11 | ||
12 | import org.eclipse.jdt.annotation.NonNullByDefault; | |
13 | import org.eclipse.jdt.annotation.Nullable; | |
5c82e602 | 14 | import org.eclipse.tracecompass.ctf.core.event.IEventDeclaration; |
e8ece272 | 15 | import org.eclipse.tracecompass.ctf.core.event.IEventDefinition; |
a103fe67 | 16 | import org.eclipse.tracecompass.lttng2.ust.core.analysis.debuginfo.UstDebugInfoSourceAspect; |
5c82e602 AM |
17 | import org.eclipse.tracecompass.tmf.core.event.lookup.ITmfCallsite; |
18 | import org.eclipse.tracecompass.tmf.core.event.lookup.ITmfSourceLookup; | |
19 | import org.eclipse.tracecompass.tmf.core.timestamp.TmfNanoTimestamp; | |
20 | import org.eclipse.tracecompass.tmf.ctf.core.event.CtfTmfEvent; | |
21 | import org.eclipse.tracecompass.tmf.ctf.core.trace.CtfTmfTrace; | |
22 | ||
23 | /** | |
24 | * Event type for use in LTTng-UST traces. | |
25 | * | |
26 | * @author Alexandre Montplaisir | |
27 | * @since 2.0 | |
28 | */ | |
29 | @NonNullByDefault | |
30 | public class LttngUstEvent extends CtfTmfEvent implements ITmfSourceLookup { | |
31 | ||
32 | /** | |
33 | * Default constructor. Only for use by extension points, should not be | |
34 | * called directly. | |
35 | */ | |
36 | @Deprecated | |
37 | public LttngUstEvent() { | |
38 | super(); | |
39 | } | |
40 | ||
41 | /** | |
42 | * Constructor | |
43 | * | |
44 | * @param trace | |
45 | * The trace to which this event belongs | |
46 | * @param rank | |
47 | * The rank of the event | |
48 | * @param timestamp | |
49 | * The timestamp | |
50 | * @param channel | |
51 | * The CTF channel of this event | |
52 | * @param cpu | |
53 | * The event's CPU | |
54 | * @param declaration | |
55 | * The event declaration | |
56 | * @param eventDefinition | |
57 | * The event definition | |
58 | */ | |
59 | protected LttngUstEvent(CtfTmfTrace trace, long rank, TmfNanoTimestamp timestamp, | |
e8ece272 | 60 | String channel, int cpu, IEventDeclaration declaration, IEventDefinition eventDefinition) { |
5c82e602 AM |
61 | super(trace, rank, timestamp, channel, cpu, declaration, eventDefinition); |
62 | } | |
63 | ||
64 | @Override | |
65 | public @Nullable ITmfCallsite getCallsite() { | |
a103fe67 | 66 | return UstDebugInfoSourceAspect.INSTANCE.resolve(this); |
5c82e602 AM |
67 | } |
68 | } |