CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DTHitQualityUtils.h
Go to the documentation of this file.
1 #ifndef DTHitQualityUtils_H
2 #define DTHitQualityUtils_H
3 
17 
18 #include <map>
19 
20 class PSimHit;
21 class DTGeometry;
22 
24 public:
25 
28 
29 
31  virtual ~DTHitQualityUtils();
32 
35  static std::map<DTWireId, edm::PSimHitContainer > mapSimHitsPerWire(const edm::PSimHitContainer& simhits) ;
37  static std::map<DTWireId, const PSimHit*> mapMuSimHitsPerWire(const std::map<DTWireId, edm::PSimHitContainer>& simHitWireMap) ;
39  static const PSimHit* findMuSimHit(const edm::PSimHitContainer& hits);
41  static std::pair<const PSimHit*, const PSimHit*> findMuSimSegment(const std::map<DTWireId, const PSimHit*>& mapWireAndMuSimHit) ;
43  static std::pair<LocalVector, LocalPoint> findMuSimSegmentDirAndPos(const std::pair<const PSimHit*, const PSimHit*>& inAndOutSimHit,
44  const DetId detId, const DTGeometry *muonGeom);
48  static std::pair<double, double> findSegmentAlphaAndBeta(const LocalVector& direction);
49 
50  // Set the verbosity level
51  static bool debug;
52 
53  //Find angle error
54  static double sigmaAngle(double Angle, double sigma2TanAngle);
55 
56 protected:
57 
58 private:
59 
60 };
61 #endif
static double sigmaAngle(double Angle, double sigma2TanAngle)
static const PSimHit * findMuSimHit(const edm::PSimHitContainer &hits)
Select the SimHit from a muon in a vector of SimHits.
DTHitQualityUtils()
Constructor.
static std::map< DTWireId, const PSimHit * > mapMuSimHitsPerWire(const std::map< DTWireId, edm::PSimHitContainer > &simHitWireMap)
Create a map between the Mu SimHits and corresponding MuBarWireId ;.
static std::pair< const PSimHit *, const PSimHit * > findMuSimSegment(const std::map< DTWireId, const PSimHit * > &mapWireAndMuSimHit)
Find Innermost and outermost SimHit from Mu in a SL (they identify a simulated segment) ...
static std::pair< double, double > findSegmentAlphaAndBeta(const LocalVector &direction)
Definition: DetId.h:18
static std::pair< LocalVector, LocalPoint > findMuSimSegmentDirAndPos(const std::pair< const PSimHit *, const PSimHit * > &inAndOutSimHit, const DetId detId, const DTGeometry *muonGeom)
Find direction and position of a segment (in local RF) from outer and inner mu SimHit in the RF of ob...
Definition: Angle.h:17
virtual ~DTHitQualityUtils()
Destructor.
std::vector< PSimHit > PSimHitContainer
static std::map< DTWireId, edm::PSimHitContainer > mapSimHitsPerWire(const edm::PSimHitContainer &simhits)