CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/RecoMuon/StandAloneTrackFinder/interface/StandAloneMuonRefitter.h

Go to the documentation of this file.
00001 #ifndef RecoMuon_StandAloneTrackFinder_StandAloneMuonRefitter_H
00002 #define RecoMuon_StandAloneTrackFinder_StandAloneMuonRefitter_H
00003 
00014 #include "FWCore/Framework/interface/ESHandle.h"
00015 #include "TrackingTools/PatternTools/interface/Trajectory.h"
00016 
00017 namespace edm {class ParameterSet;}
00018 class MuonServiceProxy;
00019 class TrajectoryFitter;
00020 class Trajectory;
00021 
00022 class StandAloneMuonRefitter {
00023  public:
00024   typedef std::pair<bool, Trajectory> RefitResult;
00025 
00026  public:
00028   StandAloneMuonRefitter(const edm::ParameterSet& par, const MuonServiceProxy* service);
00029 
00031   virtual ~StandAloneMuonRefitter();
00032 
00033   // Operations
00034 
00036   RefitResult singleRefit(const Trajectory&);
00037   RefitResult refit(const Trajectory&);
00038 
00039 protected:
00040 
00041 private:
00042   const MuonServiceProxy* theService;
00043   edm::ESHandle<TrajectoryFitter> theFitter;
00044   std::string  theFitterName;
00045   unsigned int theNumberOfIterations;
00046   bool isForceAllIterations;
00047   double theMaxFractionOfLostHits;
00048   double errorRescale;
00049 };
00050 #endif
00051