1 package org.hps.recon.tracking;
2
3 import org.lcsim.event.GenericObject;
4 import org.lcsim.event.LCRelation;
5 import org.lcsim.event.RawTrackerHit;
6 import org.lcsim.event.base.BaseLCRelation;
7
8
9
10
11
12
13
14
15 public class FittedRawTrackerHit extends BaseLCRelation {
16
17 public FittedRawTrackerHit(RawTrackerHit hit, ShapeFitParameters fit) {
18 super(hit, fit);
19 }
20
21 public RawTrackerHit getRawTrackerHit() {
22 return (RawTrackerHit) getFrom();
23 }
24
25 public ShapeFitParameters getShapeFitParameters() {
26 return (ShapeFitParameters) getTo();
27 }
28
29 public double getT0() {
30 return getShapeFitParameters().getT0();
31 }
32
33 public double getAmp() {
34 return getShapeFitParameters().getAmp();
35 }
36
37 public static RawTrackerHit getRawTrackerHit(LCRelation rel) {
38 return (RawTrackerHit) rel.getFrom();
39 }
40
41 public static GenericObject getShapeFitParameters(LCRelation rel) {
42 return (GenericObject) rel.getTo();
43 }
44
45 public static double getT0(LCRelation rel) {
46 return ShapeFitParameters.getT0(getShapeFitParameters(rel));
47 }
48
49 public static double getAmp(LCRelation rel) {
50 return ShapeFitParameters.getAmp(getShapeFitParameters(rel));
51 }
52
53 @Override
54 public String toString() {
55 return String.format("HPSFittedRawTrackerHit: hit cell id %d on sensor %s with fit %s\n", this.getRawTrackerHit().getCellID(), getRawTrackerHit().getDetectorElement().getName(), this.getShapeFitParameters().toString());
56 }
57 }