00001 #ifndef ANALYZER_VIS_MUON_H 00002 # define ANALYZER_VIS_MUON_H 00003 00004 //<<<<<< INCLUDES >>>>>> 00005 00006 # include "FWCore/Framework/interface/EDAnalyzer.h" 00007 # include "FWCore/Framework/interface/ESHandle.h" 00008 # include "DataFormats/TrackReco/interface/TrackFwd.h" 00009 # include "MagneticField/Engine/interface/MagneticField.h" 00010 # include "Iguana/Framework/interface/IgCollection.h" 00011 00012 //<<<<<< PUBLIC DEFINES >>>>>> 00013 //<<<<<< PUBLIC CONSTANTS >>>>>> 00014 //<<<<<< PUBLIC TYPES >>>>>> 00015 00016 class IgDataStorage; 00017 class edm::InputTag; 00018 00019 //<<<<<< PUBLIC VARIABLES >>>>>> 00020 //<<<<<< PUBLIC FUNCTIONS >>>>>> 00021 //<<<<<< CLASS DECLARATIONS >>>>>> 00022 00023 class VisMuon : public edm::EDAnalyzer 00024 { 00025 public: 00026 VisMuon (const edm::ParameterSet&); 00027 // implicit copy constructor 00028 // implicit assignment operator 00029 // implicit destructor 00030 virtual ~VisMuon() {} 00031 00032 virtual void analyze( const edm::Event&, const edm::EventSetup& ); 00033 00034 private: 00035 edm::InputTag inputTag_; 00036 double in_; 00037 double out_; 00038 double step_; 00039 00040 void refitTrack (IgCollectionItem &item, IgAssociationSet &association, 00041 reco::TrackRef track, double in, double out, double step); 00042 00043 IgDataStorage *storage_; 00044 edm::ESHandle<MagneticField> field_; 00045 }; 00046 00047 //<<<<<< INLINE PUBLIC FUNCTIONS >>>>>> 00048 //<<<<<< INLINE MEMBER FUNCTIONS >>>>>> 00049 00050 #endif // ANALYZER_VIS_MUON_H