  | 
  
    ATLAS Offline Software
    
   | 
 
 
 
 
Go to the documentation of this file.
    5 #ifndef DCMATH_SEGMENTFINDER_H 
    6 #define DCMATH_SEGMENTFINDER_H 
   48         bool dropHits(
Segment& segment, 
bool& hasDroppedHit, 
unsigned int& dropDepth) 
const;
 
   60         void setPhiRoad(
double phiRoad, 
double phiChamber, 
double sinPhiCut = 0.2, 
bool useRoadPhi = 
true, 
bool useChamberPhi = 
true);
 
  149             if (prodRoad < 0.) prodRoad *= -1.;
 
  154             if (prodChamber < 0.) prodChamber *= -1.;
 
  
const ShapeFitter * fitter
 
SegVec findSegments(const DCVec &dcs) const
 
void setRemoveSingleOutliers(bool removeSingleOutliers)
 
void setDeltaCutT0(double deltaCut)
 
SegmentFinder & operator=(const SegmentFinder &)=delete
assignment deleted to prevent ownership/leak issues
 
void setRatioEmptyTubesCut(double ratioEmptyTubesCut)
 
void handleSeedPair(const DriftCircle &seed1, const DriftCircle &seeds2, const DCVec &dcs, const CLVec &cls, MatchDCWithLine &matchWithLine, ResolvedCollection< Segment, IsSubsetSegment< SortDcsByY >> &segments) const
 
void setSortSegmentsUsingAllHits(bool doAllHitsSort)
 
void setChi2DropCut(double chi2)
 
DCVec emptyNeighbours(const DCVec &dcs) const
 
std::shared_ptr< const DCSLFitter > m_fitter
 
double m_ratioEmptyTubesCut
 
std::vector< Cluster > CLVec
 
void setDeltaCut(double cut)
 
void setCurvedSegmentFinder(bool doCurvedSegmentFinder)
 
std::vector< int > m_dropDepthAcceptCounts ATLAS_THREAD_SAFE
 
Function object to check whether two Segments are sub/super sets or different.
 
SegVec refitSegments(const SegVec &segs) const
 
void setMaxDropDepth(int max)
 
void setTGCPullCut(double cut)
 
SegVec cleanSegments(const SegVec &segments) const
 
virtual double tubeRadius() const =0
 
This class represents a drift time measurement.
 
bool m_removeSingleOutliers
 
MatchCrossedTubes m_matchCrossed
 
void setRPCPullCut(double cut)
 
Implementation of 2 dimensional vector class.
 
std::vector< DriftCircle > DCVec
 
void updateDirections()
update the cached values for the phi road and chamber road
 
static DCVec selectSeeds(const DCVec &dcs, int maxSerie)
 
unsigned int emptyCrossedTubes(const Line &line, const DCVec &closeEmptyTubes) const
 
void setResidualCutT0(double resCut)
 
void setUseChamberPhi(bool useChamberPhi)
 
bool m_singleMultiLayerScan
 
static void updateMatch(Segment &seg, MatchDCWithLine &matchWithLine)
 
void crossedTubes(Segment &seg) const
 
void setSeedCleaning(bool doCleanup)
 
void setSingleMultiLayerScan(bool doScan)
 
static std::pair< DCVec, DCVec > splitInMulitlayers(const DCVec &dcs)
 
void setUseSegmentQuality(bool useQ)
 
double chi2(TH1 *h0, TH1 *h1)
 
cut
This script demonstrates how to call a C++ class from Python Also how to use PyROOT is shown.
 
void setFitter(std::shared_ptr< const DCSLFitter > fitter)
 
DCSLHitSelector m_hitSelector
 
bool goodHitRatio(Segment &seg) const
 
void handleHits(const DCVec &dcs, const CLVec &clusters, ResolvedCollection< Segment, IsSubsetSegment< SortDcsByY >> &segments) const
 
void associateClusters(SegVec &segs, const CLVec &cls) const
 
bool directionCheck(const LocVec2D &LocVec2D) const
 
void twoMultiLayerScan(const DCVec &seeds_ml1, const DCVec &seeds_ml2, const DCVec &dcs, const CLVec &cls, ResolvedCollection< Segment, IsSubsetSegment< SortDcsByY >> &segments) const
 
double tubeRadius() const
 
void setDropHits(bool doDrop)
 
void printSettings() const
print settings
 
void fullScan(const DCVec &seeds, const DCVec &dcs, const CLVec &cls, ResolvedCollection< Segment, IsSubsetSegment< SortDcsByY >> &segments) const
 
void setPhiRoad(double phiRoad, double phiChamber, double sinPhiCut=0.2, bool useRoadPhi=true, bool useChamberPhi=true)
 
bool dropHits(Segment &segment, bool &hasDroppedHit, unsigned int &dropDepth) const
 
std::vector< Segment > SegVec
 
void setMdtGeometry(const ChamberGeometry *mdtGeo)
 
SegmentFinder(const SegmentFinder &)=delete
copy c'tor deleted to prevent ownership/leak issues
 
bool m_doCurvedSegmentFinder
 
Define macros for attributes used to control the static checker.
 
const ChamberGeometry * m_mdtGeometry
 
unsigned int m_dropDepthMax
 
static DCVec removeDCOnSegments(const DCVec &dcs, const SegVec &segs)
 
void setRecoverMDT(bool doRecover)
 
void debugLevel(int debugLevel)