#include <DataFormats/TrackerRecHit2D/interface/SiStripRecHit2D.h>
Definition at line 10 of file SiStripRecHit2D.h.
Definition at line 18 of file SiStripRecHit2D.h.
typedef edm::Ref< edm::LazyGetter<SiStripCluster>, SiStripCluster, edm::FindValue<SiStripCluster> > SiStripRecHit2D::ClusterRegionalRef |
Definition at line 23 of file SiStripRecHit2D.h.
SiStripRecHit2D::SiStripRecHit2D | ( | ) | [inline] |
Definition at line 13 of file SiStripRecHit2D.h.
Referenced by clone().
00013 : BaseSiTrackerRecHit2DLocalPos(),cluster_(),clusterRegional_(), 00014 sigmaPitch_(-1.){}
SiStripRecHit2D::~SiStripRecHit2D | ( | ) | [inline] |
SiStripRecHit2D::SiStripRecHit2D | ( | const LocalPoint & | pos, | |
const LocalError & | err, | |||
const DetId & | id, | |||
ClusterRef const & | cluster | |||
) |
Definition at line 4 of file SiStripRecHit2D.cc.
00006 : 00007 00008 BaseSiTrackerRecHit2DLocalPos(pos,err,id), 00009 cluster_(cluster), 00010 clusterRegional_(), 00011 sigmaPitch_(-1.) 00012 {}
SiStripRecHit2D::SiStripRecHit2D | ( | const LocalPoint & | , | |
const LocalError & | , | |||
const DetId & | , | |||
ClusterRegionalRef const & | cluster | |||
) |
virtual SiStripRecHit2D* SiStripRecHit2D::clone | ( | void | ) | const [inline, virtual] |
Implements RecHit2DLocalPos.
Definition at line 28 of file SiStripRecHit2D.h.
References SiStripRecHit2D().
00028 {return new SiStripRecHit2D( * this); }
ClusterRef const& SiStripRecHit2D::cluster | ( | ) | const [inline] |
Definition at line 32 of file SiStripRecHit2D.h.
References cluster_.
Referenced by SiStripQualityHotStripIdentifier::algoAnalyze(), SiStripGainCosmicCalculator::algoAnalyze(), SiStripElectronAnalyzer::analyze(), SiStripRecHitsValid::analyze(), SiStripLAProfileBooker::analyze(), SiStripTrackingRecHitsValid::analyze(), TrackerHitAssociator::associateSimpleRecHit(), SimpleCosmicBONSeeder::checkCharge(), TSiStripMatchedRecHit::clone(), TSiStripRecHit2DLocalPos::clone(), ProjectedRecHit2D::clone(), helper::MuonCollectionStoreManager::clusterRefsOK(), SiStripGainFromData::ComputeChargeOverPath(), DeDxDiscriminatorProducer::ComputeChargeOverPath(), CalibrationTrackSelector::isOkCharge(), AlignmentTrackSelector::isOkChargeStripHit(), HitComparator::less(), VisEventSetupService::localPositions(), VisLocalPosition::localPositions(), VisTrackerRechit2DTwig::localPositions(), DetIdLess::operator()(), TrackClusterRemover::process(), ClusterShapeTrajectoryFilter::processHit(), SiStripMonitorTrack::RecHitInfo(), cms::ClusterAnalysis::RecHitInfo(), SiStripMonitorTrackEfficiency::RecHitInfo(), ClusterRemovalRefSetter::reKey(), sharesInput(), and DeDxTools::trajectoryRawHits().
00032 { return cluster_;}
ClusterRegionalRef const& SiStripRecHit2D::cluster_regional | ( | ) | const [inline] |
Definition at line 30 of file SiStripRecHit2D.h.
References clusterRegional_.
Referenced by TrackerHitAssociator::associateSimpleRecHit(), SimpleCosmicBONSeeder::checkCharge(), TSiStripMatchedRecHit::clone(), TSiStripRecHit2DLocalPos::clone(), ProjectedRecHit2D::clone(), VisEventSetupService::localPositions(), VisLocalPosition::localPositions(), VisTrackerRechit2DTwig::localPositions(), and sharesInput().
00030 { return clusterRegional_;}
void SiStripRecHit2D::setClusterRef | ( | ClusterRef const & | ref | ) | [inline] |
Definition at line 34 of file SiStripRecHit2D.h.
References cluster_.
Referenced by ClusterRemovalRefSetter::reKey().
00034 { cluster_ = ref; }
void SiStripRecHit2D::setClusterRegionalRef | ( | ClusterRegionalRef const & | ref | ) | [inline] |
Definition at line 35 of file SiStripRecHit2D.h.
References clusterRegional_.
00035 { clusterRegional_ = ref; }
void SiStripRecHit2D::setSigmaPitch | ( | double | sigmap | ) | const [inline] |
Definition at line 40 of file SiStripRecHit2D.h.
References sigmaPitch_.
Referenced by SiStripRecHitMatcher::match().
00040 { sigmaPitch_=sigmap;}
bool SiStripRecHit2D::sharesInput | ( | const TrackingRecHit * | other, | |
SharedInputType | what | |||
) | const [virtual] |
Returns true if the two TrackingRecHits are using the same input information (like Digis, Clusters, etc), false otherwise.
The second argument specifies how much sharing is needed in order to return true: the value "all" means that all inputs of the two hits must be identical; the value "some" means that at least one of the inputs is in common.
Reimplemented from TrackingRecHit.
Definition at line 25 of file SiStripRecHit2D.cc.
References TrackingRecHit::all, cluster(), cluster_, cluster_regional(), clusterRegional_, TrackingRecHit::geographicalId(), i, edm::Ref< C, T, F >::isNonnull(), TrackingRecHit::isValid(), DetId::kSubdetOffset, DetId::rawId(), and TrackingRecHit::recHits().
Referenced by ProjectedSiStripRecHit2D::sharesInput(), and SiStripMatchedRecHit2D::sharesInput().
00027 { 00028 //here we exclude non si-strip subdetectors 00029 if( ((geographicalId().rawId()) >> (DetId::kSubdetOffset) ) != ( (other->geographicalId().rawId())>> (DetId::kSubdetOffset)) ) return false; 00030 00031 //Protection against invalid hits 00032 if(! other->isValid()) return false; 00033 00034 // ProjectedSiStripRecHit2D have different det id so we have to check the type before 00035 bool sametype=(typeid(*other)==typeid(SiStripRecHit2D)); 00036 if (sametype && (geographicalId() != other->geographicalId())) return false; 00037 00038 if(!sametype){ 00039 int ncomponents=other->recHits().size(); 00040 if(ncomponents==0)return false; 00041 else if(ncomponents==1)return sharesInput(other->recHits()[0],what); 00042 else if (ncomponents>1){ 00043 if(what == all )return false; 00044 else{ 00045 for(int i=0;i<ncomponents;i++){ 00046 if(sharesInput(other->recHits()[i],what))return true; 00047 } 00048 return false; 00049 } 00050 } 00051 return false; 00052 } 00053 else{ 00054 const SiStripRecHit2D* otherCast = static_cast<const SiStripRecHit2D*>(other); 00055 // as 'null == null' is true, we can't just "or" the two equality tests: one of the two refs is always null! (gpetrucc) 00056 if (cluster_.isNonnull()) { 00057 return (cluster_ == otherCast->cluster()); 00058 } else { 00059 return (clusterRegional_ == otherCast->cluster_regional()); 00060 } 00061 } 00062 }
double SiStripRecHit2D::sigmaPitch | ( | ) | const [inline] |
Definition at line 39 of file SiStripRecHit2D.h.
References sigmaPitch_.
Referenced by SiStripRecHitMatcher::match().
00039 { return sigmaPitch_;}
ClusterRef SiStripRecHit2D::cluster_ [private] |
Definition at line 45 of file SiStripRecHit2D.h.
Referenced by cluster(), setClusterRef(), and sharesInput().
Definition at line 49 of file SiStripRecHit2D.h.
Referenced by cluster_regional(), setClusterRegionalRef(), and sharesInput().
double SiStripRecHit2D::sigmaPitch_ [mutable, private] |
cache for the matcher....
Definition at line 52 of file SiStripRecHit2D.h.
Referenced by setSigmaPitch(), and sigmaPitch().