1 package org.lcsim.recon.tracking.trfbase;
2 /** A miss represents the crossing of a track with a layer surface.
3 * It returns the likelihood that the track would cross the layer
4 * without producing a cluster.
5 *
6 * This likelihood should reflect overlap with inactive parts of the
7 * detector (beyond boundaries, gaps, dead channels, ...) as well
8 * as the intrinsic inefficiency of active regions.
9 *
10 * This is an abstract base class. Concrete subclasses must provide
11 * methods to return the surface and likelihood, update the likelihood,
12 * clone and fill the output stream.
13 *
14 * These subclasses will typically be defined along with concrete
15 * layer classes.
16 *
17 * @author Norman A. Graf
18 * @version 1.0
19 */
20
21 public abstract class Miss
22 {
23
24 // methods
25
26 //
27
28 /**
29 *constructor
30 *
31 */
32 public Miss()
33 {
34 }
35
36 //
37
38 /**
39 *return a unique address specifying the type
40 * Default retuns zero--override for subclasses which are able to
41 * identify themselves.
42 *
43 * @return String representation of this class
44 * Included only for completeness with C++ code
45 */
46 public String type()
47 {return "Miss";
48 }
49
50 //
51
52 /**
53 *Clone the miss.
54 *
55 * @return new copy of this Miss
56 */
57 public abstract Miss newCopy();
58
59 //
60
61 /**
62 *update the likelihood with a new track
63 *
64 * @param tre ETrack to update the likelihood
65 */
66 public abstract void update( ETrack tre);
67
68 //
69
70 /**
71 *return the surface
72 *
73 * @return the Surface for this Miss
74 */
75 public abstract Surface surface() ;
76
77 //
78
79 /**
80 *return the likelihood
81 *
82 * @return the likelihood for this Miss
83 */
84 public abstract double likelihood() ;
85
86
87 /**
88 * String representation
89 *
90 * @return String representation of this Class
91 */
92 public String toString()
93 {
94 String className = getClass().getName();
95 int lastDot = className.lastIndexOf('.');
96 if(lastDot!=-1)className = className.substring(lastDot+1);
97
98 return className;
99 }
100 }