Public Member Functions | |
float | errorRPhi () const |
float | errorRZ () const |
void | init (const GlobalPoint &gp) |
float | phi () const |
float | r () const |
float | rOrZ () const |
SeedingHitImpl (const TransientTrackingRecHit::ConstRecHitPointer &ttrh, const SeedingLayer &layer) | |
SeedingHitImpl (const TrackingRecHit *hit, const SeedingLayer &layer, const edm::EventSetup &es) | |
SeedingHitImpl (const TrackingRecHit *hit, const edm::EventSetup &es) | |
void | setErrorsFromTTRH () const |
const TrackingRecHit * | trackingRecHit () const |
const TransientTrackingRecHit::ConstRecHitPointer & | transientRecHit () const |
float | z () const |
Private Attributes | |
bool | hasHitErrors |
bool | hasTransientHit |
float | theErrorRPhi |
float | theErrorRZ |
SeedingLayer | theLayer |
float | thePhi |
float | theR |
const TrackingRecHit * | theRecHit |
float | theRZ |
TransientTrackingRecHit::ConstRecHitPointer | theTransientRecHit |
float | theZ |
Definition at line 21 of file SeedingHit.cc.
ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl | ( | const TrackingRecHit * | hit, | |
const edm::EventSetup & | es | |||
) | [inline] |
Definition at line 25 of file SeedingHit.cc.
References TrackingRecHit::geographicalId(), edm::EventSetup::get(), ctfseeding::SeedingHit::SeedingHitImpl::hasTransientHit, TrackingRecHit::localPosition(), PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), PixelSubdetector::PixelBarrel, DetId::subdetId(), ctfseeding::SeedingHit::SeedingHitImpl::thePhi, ctfseeding::SeedingHit::SeedingHitImpl::theR, ctfseeding::SeedingHit::SeedingHitImpl::theRecHit, ctfseeding::SeedingHit::SeedingHitImpl::theRZ, ctfseeding::SeedingHit::SeedingHitImpl::theZ, StripSubdetector::TIB, StripSubdetector::TOB, and PV3DBase< T, PVType, FrameType >::z().
00026 : theRecHit(hit), hasTransientHit(false) 00027 { 00028 edm::ESHandle<TrackerGeometry> tracker; 00029 es.get<TrackerDigiGeometryRecord>().get(tracker); 00030 GlobalPoint gp = tracker->idToDet( 00031 hit->geographicalId())->surface().toGlobal(hit->localPosition()); 00032 thePhi = gp.phi(); 00033 theR = gp.perp(); 00034 theZ = gp.z(); 00035 unsigned int subid=hit->geographicalId().subdetId(); 00036 theRZ = ( subid == PixelSubdetector::PixelBarrel 00037 || subid == StripSubdetector::TIB 00038 || subid == StripSubdetector::TOB) ? theZ : theR; 00039 }
ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl | ( | const TrackingRecHit * | hit, | |
const SeedingLayer & | layer, | |||
const edm::EventSetup & | es | |||
) | [inline] |
Definition at line 42 of file SeedingHit.cc.
References TrackingRecHit::geographicalId(), edm::EventSetup::get(), ctfseeding::SeedingHit::SeedingHitImpl::hasTransientHit, init, TrackingRecHit::localPosition(), and ctfseeding::SeedingHit::SeedingHitImpl::theRecHit.
00043 : theLayer(layer), theRecHit(hit), hasTransientHit(false) 00044 { 00045 edm::ESHandle<TrackerGeometry> tracker; 00046 es.get<TrackerDigiGeometryRecord>().get(tracker); 00047 GlobalPoint gp = tracker->idToDet( 00048 hit->geographicalId())->surface().toGlobal(hit->localPosition()); 00049 init(gp); 00050 }
ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl | ( | const TransientTrackingRecHit::ConstRecHitPointer & | ttrh, | |
const SeedingLayer & | layer | |||
) | [inline] |
Definition at line 52 of file SeedingHit.cc.
References ctfseeding::SeedingHit::SeedingHitImpl::hasTransientHit, init, ctfseeding::SeedingHit::SeedingHitImpl::theRecHit, and ctfseeding::SeedingHit::SeedingHitImpl::theTransientRecHit.
00053 : theLayer(layer), theTransientRecHit(ttrh), theRecHit(0), hasTransientHit(true) 00054 { 00055 GlobalPoint gp = theTransientRecHit->globalPosition(); 00056 init(gp); 00057 }
float ctfseeding::SeedingHit::SeedingHitImpl::errorRPhi | ( | ) | const [inline] |
Definition at line 88 of file SeedingHit.cc.
References ctfseeding::SeedingHit::SeedingHitImpl::errorRPhi(), ctfseeding::SeedingHit::SeedingHitImpl::hasHitErrors, ctfseeding::SeedingHit::SeedingHitImpl::setErrorsFromTTRH(), and ctfseeding::SeedingHit::SeedingHitImpl::theErrorRPhi.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::errorRPhi().
00088 { 00089 if (!hasHitErrors) setErrorsFromTTRH(); 00090 return theErrorRPhi; 00091 }
float ctfseeding::SeedingHit::SeedingHitImpl::errorRZ | ( | ) | const [inline] |
Definition at line 82 of file SeedingHit.cc.
References ctfseeding::SeedingHit::SeedingHitImpl::errorRZ(), ctfseeding::SeedingHit::SeedingHitImpl::hasHitErrors, ctfseeding::SeedingHit::SeedingHitImpl::setErrorsFromTTRH(), and ctfseeding::SeedingHit::SeedingHitImpl::theErrorRZ.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::errorRZ().
00082 { 00083 if (!hasHitErrors) setErrorsFromTTRH(); 00084 return theErrorRZ; 00085 }
void ctfseeding::SeedingHit::SeedingHitImpl::init | ( | const GlobalPoint & | gp | ) | [inline] |
Definition at line 59 of file SeedingHit.cc.
References GeomDetEnumerators::barrel, PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), ctfseeding::SeedingHit::SeedingHitImpl::theErrorRPhi, ctfseeding::SeedingHit::SeedingHitImpl::theErrorRZ, theLayer, ctfseeding::SeedingHit::SeedingHitImpl::thePhi, ctfseeding::SeedingHit::SeedingHitImpl::theR, ctfseeding::SeedingHit::SeedingHitImpl::theRZ, ctfseeding::SeedingHit::SeedingHitImpl::theZ, and PV3DBase< T, PVType, FrameType >::z().
00059 { 00060 thePhi = gp.phi(); 00061 theR = gp.perp(); 00062 theZ = gp.z(); 00063 theLayer.detLayer()->location(); 00064 theRZ = (theLayer.detLayer()->location() == GeomDetEnumerators::barrel) ? theZ : theR; 00065 if (theLayer.hasPredefinedHitErrors()) { 00066 theErrorRZ = theLayer.predefinedHitErrorRZ(); 00067 theErrorRPhi = theLayer.predefinedHitErrorRPhi(); 00068 } else { 00069 theErrorRZ = 0.; 00070 theErrorRPhi = 0.; 00071 } 00072 }
float ctfseeding::SeedingHit::SeedingHitImpl::phi | ( | void | ) | const [inline] |
Definition at line 76 of file SeedingHit.cc.
References ctfseeding::SeedingHit::SeedingHitImpl::thePhi.
00076 {return thePhi;}
float ctfseeding::SeedingHit::SeedingHitImpl::r | ( | ) | const [inline] |
Definition at line 78 of file SeedingHit.cc.
References ctfseeding::SeedingHit::SeedingHitImpl::theR.
00078 {return theR; }
float ctfseeding::SeedingHit::SeedingHitImpl::rOrZ | ( | ) | const [inline] |
Definition at line 77 of file SeedingHit.cc.
References ctfseeding::SeedingHit::SeedingHitImpl::rOrZ(), and ctfseeding::SeedingHit::SeedingHitImpl::theRZ.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::rOrZ().
00077 { return theRZ; }
void ctfseeding::SeedingHit::SeedingHitImpl::setErrorsFromTTRH | ( | ) | const [inline] |
Definition at line 107 of file SeedingHit.cc.
References GeomDetEnumerators::barrel, GlobalErrorBase< T, ErrorWeightType >::czz(), ctfseeding::SeedingHit::SeedingHitImpl::hasHitErrors, GlobalErrorBase< T, ErrorWeightType >::phierr(), r, GlobalErrorBase< T, ErrorWeightType >::rerr(), ctfseeding::SeedingHit::SeedingHitImpl::setErrorsFromTTRH(), funct::sqrt(), ctfseeding::SeedingHit::SeedingHitImpl::theErrorRPhi, ctfseeding::SeedingHit::SeedingHitImpl::theErrorRZ, theLayer, and ctfseeding::SeedingHit::SeedingHitImpl::transientRecHit().
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::errorRPhi(), ctfseeding::SeedingHit::SeedingHitImpl::errorRZ(), and ctfseeding::SeedingHit::SeedingHitImpl::setErrorsFromTTRH().
00107 { 00108 const TransientTrackingRecHit::ConstRecHitPointer & hit = transientRecHit(); 00109 GlobalPoint hitPos = hit->globalPosition(); 00110 GlobalError hitErr = hit->globalPositionError(); 00111 theErrorRPhi = r()*sqrt(hitErr.phierr(hitPos)); 00112 theErrorRZ = (theLayer.detLayer()->location() == GeomDetEnumerators::barrel) ? 00113 sqrt(hitErr.czz()) 00114 : sqrt(hitErr.rerr(hitPos)); 00115 hasHitErrors = true; 00116 }
const TrackingRecHit* ctfseeding::SeedingHit::SeedingHitImpl::trackingRecHit | ( | ) | const [inline] |
Definition at line 94 of file SeedingHit.cc.
References ctfseeding::SeedingHit::SeedingHitImpl::hasTransientHit, ctfseeding::SeedingHit::SeedingHitImpl::theRecHit, ctfseeding::SeedingHit::SeedingHitImpl::theTransientRecHit, and ctfseeding::SeedingHit::SeedingHitImpl::trackingRecHit().
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::trackingRecHit().
00094 { 00095 return hasTransientHit ? theTransientRecHit->hit() : theRecHit; 00096 }
const TransientTrackingRecHit::ConstRecHitPointer& ctfseeding::SeedingHit::SeedingHitImpl::transientRecHit | ( | ) | const [inline] |
Definition at line 99 of file SeedingHit.cc.
References ctfseeding::SeedingHit::SeedingHitImpl::hasTransientHit, theLayer, ctfseeding::SeedingHit::SeedingHitImpl::theRecHit, ctfseeding::SeedingHit::SeedingHitImpl::theTransientRecHit, and ctfseeding::SeedingHit::SeedingHitImpl::transientRecHit().
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::setErrorsFromTTRH(), and ctfseeding::SeedingHit::SeedingHitImpl::transientRecHit().
00099 { 00100 if (!hasTransientHit) { 00101 theTransientRecHit = theLayer.hitBuilder()->build(theRecHit); 00102 hasTransientHit = true; 00103 } 00104 return theTransientRecHit; 00105 }
float ctfseeding::SeedingHit::SeedingHitImpl::z | ( | void | ) | const [inline] |
Definition at line 79 of file SeedingHit.cc.
References ctfseeding::SeedingHit::SeedingHitImpl::theZ.
00079 {return theZ; }
bool ctfseeding::SeedingHit::SeedingHitImpl::hasHitErrors [mutable, private] |
Definition at line 125 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::errorRPhi(), ctfseeding::SeedingHit::SeedingHitImpl::errorRZ(), and ctfseeding::SeedingHit::SeedingHitImpl::setErrorsFromTTRH().
bool ctfseeding::SeedingHit::SeedingHitImpl::hasTransientHit [mutable, private] |
Definition at line 124 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl(), ctfseeding::SeedingHit::SeedingHitImpl::trackingRecHit(), and ctfseeding::SeedingHit::SeedingHitImpl::transientRecHit().
float ctfseeding::SeedingHit::SeedingHitImpl::theErrorRPhi [mutable, private] |
Definition at line 126 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::errorRPhi(), ctfseeding::SeedingHit::SeedingHitImpl::init(), and ctfseeding::SeedingHit::SeedingHitImpl::setErrorsFromTTRH().
float ctfseeding::SeedingHit::SeedingHitImpl::theErrorRZ [mutable, private] |
Definition at line 126 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::errorRZ(), ctfseeding::SeedingHit::SeedingHitImpl::init(), and ctfseeding::SeedingHit::SeedingHitImpl::setErrorsFromTTRH().
Definition at line 120 of file SeedingHit.cc.
float ctfseeding::SeedingHit::SeedingHitImpl::thePhi [private] |
Definition at line 123 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::init(), ctfseeding::SeedingHit::SeedingHitImpl::phi(), and ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl().
float ctfseeding::SeedingHit::SeedingHitImpl::theR [private] |
Definition at line 123 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::init(), ctfseeding::SeedingHit::SeedingHitImpl::r(), and ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl().
const TrackingRecHit* ctfseeding::SeedingHit::SeedingHitImpl::theRecHit [private] |
Definition at line 122 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl(), ctfseeding::SeedingHit::SeedingHitImpl::trackingRecHit(), and ctfseeding::SeedingHit::SeedingHitImpl::transientRecHit().
float ctfseeding::SeedingHit::SeedingHitImpl::theRZ [private] |
Definition at line 123 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::init(), ctfseeding::SeedingHit::SeedingHitImpl::rOrZ(), and ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl().
TransientTrackingRecHit::ConstRecHitPointer ctfseeding::SeedingHit::SeedingHitImpl::theTransientRecHit [mutable, private] |
Definition at line 121 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl(), ctfseeding::SeedingHit::SeedingHitImpl::trackingRecHit(), and ctfseeding::SeedingHit::SeedingHitImpl::transientRecHit().
float ctfseeding::SeedingHit::SeedingHitImpl::theZ [private] |
Definition at line 123 of file SeedingHit.cc.
Referenced by ctfseeding::SeedingHit::SeedingHitImpl::init(), ctfseeding::SeedingHit::SeedingHitImpl::SeedingHitImpl(), and ctfseeding::SeedingHit::SeedingHitImpl::z().