CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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);
34  const PSimHit *findMuSimHit(const edm::PSimHitContainer &hits);
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
std::pair< double, double > findSegmentAlphaAndBeta(const LocalVector &direction)
std::map< DTWireId, edm::PSimHitContainer > mapSimHitsPerWire(const edm::PSimHitContainer &simhits)
std::pair< LocalVector, LocalPoint > findMuSimSegmentDirAndPos(const std::pair< const PSimHit *, const PSimHit * > &inAndOutSimHit, const DetId detId, const DTGeometry &muonGeom)
std::atomic< bool > debug
std::map< DTWireId, const PSimHit * > mapMuSimHitsPerWire(const std::map< DTWireId, edm::PSimHitContainer > &simHitWireMap)
Create a map between the Mu SimHits and corresponding MuBarWireId ;.
const PSimHit * findMuSimHit(const edm::PSimHitContainer &hits)
Select the SimHit from a muon in a vector of SimHits.
std::pair< const PSimHit *, const PSimHit * > findMuSimSegment(const std::map< DTWireId, const PSimHit * > &mapWireAndMuSimHit)
Definition: DetId.h:17
std::vector< PSimHit > PSimHitContainer
double sigmaAngle(double Angle, double sigma2TanAngle)