Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 11:57:32

0001 #ifndef TrackInfo_TrackingRecHitInfo_h
0002 #define TrackInfo_TrackingRecHitInfo_h
0003 /** \class reco::TrackingRecHitInfo TrackingRecHitInfo.h DataFormats/TrackAnalysisInfo/interface/TrackingRecHitInfo.h
0004  *
0005  * It contains additional info
0006  * for tracker studies
0007  * 
0008  *
0009  * \author Chiara Genta
0010  *
0011  *
0012  */
0013 
0014 #include "AnalysisDataFormats/TrackInfo/interface/TrackingStateInfo.h"
0015 #include "AnalysisDataFormats/TrackInfo/interface/TrackInfoEnum.h"
0016 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0017 #include "DataFormats/TrajectoryState/interface/PTrajectoryStateOnDet.h"
0018 #include "DataFormats/TrackingRecHit/interface/TrackingRecHitFwd.h"
0019 #include "DataFormats/TrajectorySeed/interface/TrajectorySeed.h"
0020 
0021 namespace reco {
0022   class TrackingRecHitInfo {
0023   public:
0024     typedef reco::StateType StateType;
0025     typedef std::map<StateType, TrackingStateInfo> TrackingStates;
0026 
0027     TrackingRecHitInfo() {}
0028     TrackingRecHitInfo(RecHitType type, TrackingStates &states) : type_(type), states_(states) {}
0029     const RecHitType type() const { return type_; }
0030     const LocalVector localTrackMomentumOnMono(StateType statetype) const;
0031     const LocalVector localTrackMomentumOnStereo(StateType statetype) const;
0032     const LocalPoint localTrackPositionOnMono(StateType statetype) const;
0033     const LocalPoint localTrackPositionOnStereo(StateType statetype) const;
0034     const TrackingStates &statesOnDet() const { return states_; }
0035     const PTrajectoryStateOnDet *stateOnDet(StateType statetype) const;
0036 
0037   private:
0038     RecHitType type_;
0039     TrackingStates states_;
0040   };
0041 
0042 }  // namespace reco
0043 #endif