View Javadoc

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 }