4 namespace DeDxDiscriminatorTools {
10 if(FirstStrip==0 )
return true;
11 if(FirstStrip==128 )
return true;
12 if(FirstStrip==256 )
return true;
13 if(FirstStrip==384 )
return true;
14 if(FirstStrip==512 )
return true;
15 if(FirstStrip==640 )
return true;
17 if(FirstStrip<=127 && FirstStrip+ClusterSize>127)
return true;
18 if(FirstStrip<=255 && FirstStrip+ClusterSize>255)
return true;
19 if(FirstStrip<=383 && FirstStrip+ClusterSize>383)
return true;
20 if(FirstStrip<=511 && FirstStrip+ClusterSize>511)
return true;
21 if(FirstStrip<=639 && FirstStrip+ClusterSize>639)
return true;
23 if(FirstStrip+ClusterSize==127 )
return true;
24 if(FirstStrip+ClusterSize==255 )
return true;
25 if(FirstStrip+ClusterSize==383 )
return true;
26 if(FirstStrip+ClusterSize==511 )
return true;
27 if(FirstStrip+ClusterSize==639 )
return true;
28 if(FirstStrip+ClusterSize==767 )
return true;
36 for(
unsigned int i=0;
i<Ampls.size();
i++){
37 if(Ampls[
i]>=254)
return true;
43 double charge(
const vector<uint8_t>& Ampls)
46 for(
unsigned int a=0;
a<Ampls.size();
a++){charge+=Ampls[
a];}
51 double path(
double cosine,
double thickness)
53 return (10.0*thickness)/fabs(cosine);
59 if (dynamic_cast<const StripGeomDetUnit*>(it)==0 && dynamic_cast<const PixelGeomDetUnit*>(it)==0) {
60 std::cout <<
"this detID doesn't seem to belong to the Tracker" << std::endl;
71 double DistFromBorder = 1.0;
77 std::vector<float>
const &
parameters = (*trapezoidalBounds).parameters();
78 HalfLength = parameters[3];
79 double t = (HalfLength + HitLocalPos.
y()) / (2*HalfLength) ;
80 HalfWidth = parameters[0] + (parameters[1]-parameters[0]) * t;
81 }
else if(rectangularBounds){
87 if (fabs(HitLocalPos.
y())+HitLocalError.
yy() >= (HalfLength - DistFromBorder) )
return false;
virtual float length() const =0
LocalPoint localPosition() const
LocalError positionError() const
const LocalTrajectoryError & localError() const
const Bounds & bounds() const
virtual float width() const =0
virtual const BoundPlane & surface() const
The nominal surface of the GeomDet.