CMS 3D CMS Logo

DeDxTools.h

Go to the documentation of this file.
00001 #ifndef DeDxTools_H
00002 #define DeDxTools_H
00003 #include <vector>
00004 #include "DataFormats/TrackReco/interface/DeDxHit.h"
00005 #include "DataFormats/TrackReco/interface/TrackDeDxHits.h"
00006 #include "DataFormats/GeometryCommonDetAlgo/interface/Measurement1D.h"
00007 #include "DataFormats/DetId/interface/DetId.h"
00008 #include "TrackingTools/PatternTools/interface/Trajectory.h"
00009 
00010 class reco::Track;
00011 namespace DeDxTools  {
00012  
00013   struct RawHits {
00014 //    double charge[3]; // charge on the up to three fibers
00015     double charge;
00016     double angleCosine;
00017     DetId detId;
00018     const TrajectoryMeasurement* trajectoryMeasurement;
00019    
00020   };
00021 
00022   void trajectoryRawHits(const edm::Ref<std::vector<Trajectory> >& trajectory, std::vector<RawHits>& hits, bool usePixel, bool useStrip);
00023 //  std::vector<RawHits> trajectoryRawHits(const Trajectory & trajectory);
00024  
00026  
00027    float massFromBeta(float beta, const reco::Track &);
00028    
00029    double genericAverage(const reco::DeDxHitCollection &, float expo = 1.);
00030 
00039    Measurement1D beta(const reco::TrackDeDxHits & trackWithHits);
00040   
00041   /*
00042    * Invert bethe bloch formula
00043    */
00044    float betaFromInvertedBetheBloch(float dedx);
00045  
00046 }
00047 
00048 #endif

Generated on Tue Jun 9 17:45:24 2009 for CMSSW by  doxygen 1.5.4