CMS 3D CMS Logo

DTHitQualityUtils.h
Go to the documentation of this file.
1 #ifndef Validation_DTRecHits_DTHitQualityUtils_h
2 #define Validation_DTRecHits_DTHitQualityUtils_h
3 
17 
18 #include <atomic>
19 #include <map>
20 
21 class PSimHit;
22 class DTGeometry;
23 
24 namespace DTHitQualityUtils {
25 
29  std::map<DTWireId, edm::PSimHitContainer> mapSimHitsPerWire(const edm::PSimHitContainer &simhits);
31  std::map<DTWireId, const PSimHit *> mapMuSimHitsPerWire(
32  const std::map<DTWireId, edm::PSimHitContainer> &simHitWireMap);
37  std::pair<const PSimHit *, const PSimHit *> findMuSimSegment(
38  const std::map<DTWireId, const PSimHit *> &mapWireAndMuSimHit);
41  std::pair<LocalVector, LocalPoint> findMuSimSegmentDirAndPos(
42  const std::pair<const PSimHit *, const PSimHit *> &inAndOutSimHit, const DetId detId, const DTGeometry &muonGeom);
47  std::pair<double, double> findSegmentAlphaAndBeta(const LocalVector &direction);
48 
49  // Set the verbosity level
50  extern std::atomic<bool> debug;
51 
52  // Find angle error
53  double sigmaAngle(double Angle, double sigma2TanAngle);
54 
55 } // namespace DTHitQualityUtils
56 #endif
Vector3DBase< float, LocalTag >
DTGeometry
Definition: DTGeometry.h:28
hfClusterShapes_cfi.hits
hits
Definition: hfClusterShapes_cfi.py:5
DTHitQualityUtils::mapMuSimHitsPerWire
std::map< DTWireId, const PSimHit * > mapMuSimHitsPerWire(const std::map< DTWireId, edm::PSimHitContainer > &simHitWireMap)
Create a map between the Mu SimHits and corresponding MuBarWireId ;.
DTHitQualityUtils::debug
std::atomic< bool > debug
Definition: DTHitQualityUtils.h:50
PSimHitContainer.h
DTHitQualityUtils::findSegmentAlphaAndBeta
std::pair< double, double > findSegmentAlphaAndBeta(const LocalVector &direction)
DTHitQualityUtils::findMuSimSegment
std::pair< const PSimHit *, const PSimHit * > findMuSimSegment(const std::map< DTWireId, const PSimHit * > &mapWireAndMuSimHit)
DetId
Definition: DetId.h:17
DTHitQualityUtils::findMuSimHit
const PSimHit * findMuSimHit(const edm::PSimHitContainer &hits)
Select the SimHit from a muon in a vector of SimHits.
HLTBitAnalyser_cfi.simhits
simhits
SIM objects.
Definition: HLTBitAnalyser_cfi.py:21
DTHitQualityUtils::mapSimHitsPerWire
std::map< DTWireId, edm::PSimHitContainer > mapSimHitsPerWire(const edm::PSimHitContainer &simhits)
DTHitQualityUtils::findMuSimSegmentDirAndPos
std::pair< LocalVector, LocalPoint > findMuSimSegmentDirAndPos(const std::pair< const PSimHit *, const PSimHit * > &inAndOutSimHit, const DetId detId, const DTGeometry &muonGeom)
Angle
Definition: Angle.h:17
DTWireId.h
DetId.h
LocalPoint.h
DTHitQualityUtils::sigmaAngle
double sigmaAngle(double Angle, double sigma2TanAngle)
DTHitQualityUtils
Definition: DTHitQualityUtils.h:24
edm::PSimHitContainer
std::vector< PSimHit > PSimHitContainer
Definition: PSimHitContainer.h:11
PSimHit
Definition: PSimHit.h:15
LocalVector.h