Rename xxx.lttng to xxx.lttng.core
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf / src / org / eclipse / linuxtools / tmf / component / TmfComponent.java
1 /*******************************************************************************
2 * Copyright (c) 2009, 2010 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 * Francois Chouinard - Initial API and implementation
11 *******************************************************************************/
12
13 package org.eclipse.linuxtools.tmf.component;
14
15 import org.eclipse.linuxtools.tmf.signal.TmfSignal;
16 import org.eclipse.linuxtools.tmf.signal.TmfSignalManager;
17
18 /**
19 * <b><u>TmfComponent</u></b>
20 * <p>
21 * This is the base class of the TMF components.
22 * <p>
23 * Currently, it only addresses the inter-component signaling.
24 */
25 public abstract class TmfComponent implements ITmfComponent {
26
27 // ------------------------------------------------------------------------
28 // Attributes
29 // ------------------------------------------------------------------------
30
31 private String fName;
32
33 // ------------------------------------------------------------------------
34 // Constructor
35 // ------------------------------------------------------------------------
36
37 public TmfComponent() {
38 this(""); //$NON-NLS-1$
39 }
40
41 public void init(String name) {
42 fName = name;
43 TmfSignalManager.register(this);
44 }
45
46 public TmfComponent(String name) {
47 init(name);
48 }
49
50 public TmfComponent(TmfComponent other) {
51 init(other.fName);
52 }
53
54 // ------------------------------------------------------------------------
55 // Accessors
56 // ------------------------------------------------------------------------
57
58 protected void setName(String name) {
59 fName = name;
60 }
61
62 // ------------------------------------------------------------------------
63 // ITmfComponent
64 // ------------------------------------------------------------------------
65
66 @Override
67 public String getName() {
68 return fName;
69 }
70
71 @Override
72 public void dispose() {
73 TmfSignalManager.deregister(this);
74 // if (Tracer.isComponentTraced()) Tracer.traceComponent(this, "terminated");
75 }
76
77 @Override
78 public void broadcast(TmfSignal signal) {
79 TmfSignalManager.dispatchSignal(signal);
80 }
81
82 }
This page took 0.033134 seconds and 5 git commands to generate.