#include <DTCombinatorialExtendedPatternReco.h>
Public Member Functions | |
virtual std::string | algoName () const |
return the algo name More... | |
DTCombinatorialExtendedPatternReco (const edm::ParameterSet &pset) | |
Constructor. More... | |
virtual edm::OwnVector < DTSLRecSegment2D > | reconstruct (const DTSuperLayer *sl, const std::vector< DTRecHit1DPair > &hits) |
this function is called in the producer More... | |
void | setClusters (const std::vector< DTSLRecCluster > &clusters) |
virtual void | setES (const edm::EventSetup &setup) |
virtual | ~DTCombinatorialExtendedPatternReco () |
Destructor. More... | |
Private Types | |
typedef std::pair < DTHitPairForFit *, DTEnums::DTCellSide > | AssPoint |
Private Member Functions | |
DTSegmentExtendedCand * | buildBestSegment (std::vector< AssPoint > &assHits, const DTSuperLayer *sl) |
void | buildPointsCollection (std::vector< AssPoint > &points, std::deque< DTHitPairForFit * > &pointsNoLR, std::vector< DTSegmentCand * > &candidates, const DTSuperLayer *sl) |
std::vector< DTSegmentCand * > | buildSegments (const DTSuperLayer *sl, const std::vector< DTHitPairForFit * > &hits) |
bool | checkDoubleCandidates (std::vector< DTSegmentCand * > &segs, DTSegmentCand *seg) |
bool | closeSL (const DTSuperLayerId &id1, const DTSuperLayerId &id2) |
std::vector < DTSegmentExtendedCand * > | extendCandidates (std::vector< DTSegmentCand * > &candidates, const DTSuperLayer *sl) |
std::vector< AssPoint > | findCompatibleHits (const LocalPoint &pos, const LocalVector &dir, const std::vector< DTHitPairForFit * > &hits) |
std::vector< DTHitPairForFit * > | initHits (const DTSuperLayer *sl, const std::vector< DTRecHit1DPair > &hits) |
Private Member Functions inherited from DTRecSegment2DBaseAlgo | |
DTRecSegment2DBaseAlgo (const edm::ParameterSet &) | |
Constructor. More... | |
virtual | ~DTRecSegment2DBaseAlgo () |
Destructor. More... | |
Private Attributes | |
bool | debug |
std::string | theAlgoName |
double | theAlphaMaxPhi |
double | theAlphaMaxTheta |
DTSegmentCleaner * | theCleaner |
std::vector< DTSLRecCluster > | theClusters |
edm::ESHandle< DTGeometry > | theDTGeometry |
unsigned int | theMaxAllowedHits |
std::vector< std::vector< int > > | theTriedPattern |
DTSegmentUpdator * | theUpdator |
bool | usePairs |
Algo for reconstructing 2d segment in DT using a combinatorial approach
Definition at line 41 of file DTCombinatorialExtendedPatternReco.h.
|
private |
Definition at line 71 of file DTCombinatorialExtendedPatternReco.h.
DTCombinatorialExtendedPatternReco::DTCombinatorialExtendedPatternReco | ( | const edm::ParameterSet & | pset | ) |
Constructor.
Definition at line 35 of file DTCombinatorialExtendedPatternReco.cc.
References debug, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), theAlphaMaxPhi, theAlphaMaxTheta, theCleaner, theMaxAllowedHits, theUpdator, and usePairs.
|
virtual |
|
inlinevirtual |
return the algo name
Implements DTRecSegment2DBaseAlgo.
Definition at line 59 of file DTCombinatorialExtendedPatternReco.h.
References theAlgoName.
|
private |
Definition at line 302 of file DTCombinatorialExtendedPatternReco.cc.
References buildPointsCollection(), gather_cfg::cout, debug, extendCandidates(), and DTEnums::undefLR.
Referenced by buildSegments().
|
private |
build collection of compatible hits for L/R hits: the candidates is updated with the segment candidates found
Definition at line 374 of file DTCombinatorialExtendedPatternReco.cc.
References filterCSVwithJSON::copy, gather_cfg::cout, debug, DTSegmentUpdator::fit(), DTEnums::Left, DTEnums::Right, and theUpdator.
Referenced by buildBestSegment().
|
private |
get two hits in different layers and see if there are other / hits
Definition at line 109 of file DTCombinatorialExtendedPatternReco.cc.
References buildBestSegment(), checkDoubleCandidates(), DTSegmentCleaner::clean(), gather_cfg::cout, debug, findCompatibleHits(), DTSegmentExtendedCand::good(), DTSuperLayer::id(), listHistos::IP, DTEnums::Left, query::result, DTEnums::Right, theAlphaMaxPhi, theAlphaMaxTheta, theCleaner, theMaxAllowedHits, PV3DBase< T, PVType, FrameType >::theta(), GeomDet::toGlobal(), and csvLumiCalc::unit.
Referenced by reconstruct().
|
private |
Definition at line 431 of file DTCombinatorialExtendedPatternReco.cc.
Referenced by buildSegments().
|
private |
Definition at line 511 of file DTCombinatorialExtendedPatternReco.cc.
References funct::abs(), DTChamberId::sector(), and DTChamberId::wheel().
Referenced by extendCandidates().
|
private |
extend the candidates with clusters from external SL
Definition at line 440 of file DTCombinatorialExtendedPatternReco.cc.
References DTSegmentExtendedCand::addClus(), closeSL(), gather_cfg::cout, debug, DTSegmentUpdator::fit(), DTSuperLayer::id(), DTSegmentExtendedCand::isCompatible(), DTSegmentExtendedCand::nHits(), query::result, DTSuperLayerId::superLayer(), DTSegmentCand::superLayer(), theClusters, theDTGeometry, theUpdator, GeomDet::toGlobal(), and GeomDet::toLocal().
Referenced by buildBestSegment().
|
private |
Definition at line 238 of file DTCombinatorialExtendedPatternReco.cc.
References filterCSVwithJSON::copy, gather_cfg::cout, debug, spr::find(), DTEnums::Left, query::result, DTEnums::Right, lumiQTWidget::t, theTriedPattern, DTEnums::undefLR, and usePairs.
Referenced by buildSegments().
|
private |
Definition at line 97 of file DTCombinatorialExtendedPatternReco.cc.
References query::result, and theDTGeometry.
Referenced by reconstruct().
|
virtual |
this function is called in the producer
Implements DTRecSegment2DBaseAlgo.
Definition at line 54 of file DTCombinatorialExtendedPatternReco.cc.
References edm::OwnVector< T, P >::back(), buildSegments(), gather_cfg::cout, debug, initHits(), edm::OwnVector< T, P >::push_back(), query::result, theTriedPattern, theUpdator, and DTSegmentUpdator::update().
void DTCombinatorialExtendedPatternReco::setClusters | ( | const std::vector< DTSLRecCluster > & | clusters | ) |
Definition at line 92 of file DTCombinatorialExtendedPatternReco.cc.
References theClusters.
|
virtual |
Through this function the EventSetup is percolated to the objs which request it
Implements DTRecSegment2DBaseAlgo.
Definition at line 86 of file DTCombinatorialExtendedPatternReco.cc.
References edm::EventSetup::get(), DTSegmentUpdator::setES(), theDTGeometry, and theUpdator.
|
private |
Definition at line 112 of file DTCombinatorialExtendedPatternReco.h.
Referenced by buildBestSegment(), buildPointsCollection(), buildSegments(), DTCombinatorialExtendedPatternReco(), extendCandidates(), findCompatibleHits(), and reconstruct().
|
private |
Definition at line 108 of file DTCombinatorialExtendedPatternReco.h.
Referenced by algoName().
|
private |
Definition at line 111 of file DTCombinatorialExtendedPatternReco.h.
Referenced by buildSegments(), and DTCombinatorialExtendedPatternReco().
|
private |
Definition at line 110 of file DTCombinatorialExtendedPatternReco.h.
Referenced by buildSegments(), and DTCombinatorialExtendedPatternReco().
|
private |
Definition at line 115 of file DTCombinatorialExtendedPatternReco.h.
Referenced by buildSegments(), and DTCombinatorialExtendedPatternReco().
|
private |
Definition at line 122 of file DTCombinatorialExtendedPatternReco.h.
Referenced by extendCandidates(), and setClusters().
|
private |
Definition at line 117 of file DTCombinatorialExtendedPatternReco.h.
Referenced by extendCandidates(), initHits(), and setES().
|
private |
Definition at line 109 of file DTCombinatorialExtendedPatternReco.h.
Referenced by buildSegments(), and DTCombinatorialExtendedPatternReco().
|
private |
Definition at line 121 of file DTCombinatorialExtendedPatternReco.h.
Referenced by findCompatibleHits(), and reconstruct().
|
private |
Definition at line 114 of file DTCombinatorialExtendedPatternReco.h.
Referenced by buildPointsCollection(), DTCombinatorialExtendedPatternReco(), extendCandidates(), reconstruct(), and setES().
|
private |
Definition at line 113 of file DTCombinatorialExtendedPatternReco.h.
Referenced by DTCombinatorialExtendedPatternReco(), and findCompatibleHits().