1
2
3
4
5
6 package org.lcsim.recon.tracking.seedtracker.diagnostic;
7
8 import java.util.List;
9 import java.util.Set;
10 import org.lcsim.event.EventHeader;
11 import org.lcsim.event.MCParticle;
12 import org.lcsim.fit.helicaltrack.HelicalTrackFitter;
13 import org.lcsim.fit.helicaltrack.HelicalTrackHit;
14 import org.lcsim.recon.tracking.seedtracker.HitManager;
15 import org.lcsim.recon.tracking.seedtracker.MaterialManager;
16 import org.lcsim.recon.tracking.seedtracker.SeedCandidate;
17 import org.lcsim.recon.tracking.seedtracker.SeedStrategy;
18
19
20
21
22
23 public interface ISeedTrackerDiagnostics {
24
25
26
27
28
29 public void setBField(double bField);
30
31
32
33
34
35 public void setEvent(EventHeader event);
36
37
38
39
40
41 public void setHitManager(HitManager hm);
42
43
44
45
46
47 public void setMaterialManager(MaterialManager mm);
48
49
50
51
52
53 public void fireStrategyChanged(SeedStrategy strategy);
54
55 public void fireCheckHitPairFailed(HelicalTrackHit hit1, HelicalTrackHit hit2);
56
57 public void fireCheckHitTripletFailed(HelicalTrackHit hit1, HelicalTrackHit hit2, HelicalTrackHit hit3);
58
59 public void fireCheckHitFailed(HelicalTrackHit hit, SeedCandidate seed);
60
61 public void fireHelixFitFailed(SeedCandidate seed, HelicalTrackFitter.FitStatus status, boolean firstfit);
62
63 public void fireFailedChisqCut(SeedCandidate seed);
64
65 public void fireMergeKillingNewSeed(SeedCandidate seed, SeedCandidate newseed);
66
67 public void fireMergeKillingOldSeed(SeedCandidate seed, SeedCandidate newseed);
68
69
70
71
72
73
74 public void fireFinderDone(List<SeedCandidate> trackseeds, Set<MCParticle> mcp_seeds);
75
76 }