File indexing completed on 2024-04-06 12:21:12
0001 #ifndef __L1Analysis_L1AnalysisRecoMuon2_H__
0002 #define __L1Analysis_L1AnalysisRecoMuon2_H__
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include "JetMETCorrections/JetCorrector/interface/JetCorrector.h"
0012 #include "DataFormats/JetReco/interface/CaloJetCollection.h"
0013 #include "DataFormats/JetReco/interface/JetID.h"
0014 #include "L1AnalysisRecoMuon2DataFormat.h"
0015
0016
0017 #include "DataFormats/MuonReco/interface/Muon.h"
0018 #include "DataFormats/MuonReco/interface/MuonFwd.h"
0019 #include "DataFormats/TrackReco/interface/Track.h"
0020 #include "DataFormats/TrackReco/interface/TrackFwd.h"
0021 #include "DataFormats/GeometrySurface/interface/Cylinder.h"
0022 #include "DataFormats/GeometrySurface/interface/Plane.h"
0023 #include "DataFormats/MuonReco/interface/MuonEnergy.h"
0024 #include "DataFormats/MuonReco/interface/MuonTime.h"
0025 #include "CondFormats/AlignmentRecord/interface/TrackerSurfaceDeformationRcd.h"
0026
0027 #include "FWCore/Framework/interface/Event.h"
0028 #include "FWCore/Framework/interface/EventSetup.h"
0029 #include "FWCore/Framework/interface/ConsumesCollector.h"
0030
0031
0032 #include "DataFormats/VertexReco/interface/Vertex.h"
0033 #include "DataFormats/VertexReco/interface/VertexFwd.h"
0034 #include "L1Trigger/L1TNtuples/interface/L1AnalysisRecoVertexDataFormat.h"
0035
0036
0037 #include "MuonAnalysis/MuonAssociators/interface/PropagateToMuonSetup.h"
0038 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h"
0039
0040 namespace L1Analysis {
0041 class L1AnalysisRecoMuon2 {
0042 public:
0043 L1AnalysisRecoMuon2(const edm::ParameterSet& pset, edm::ConsumesCollector);
0044 ~L1AnalysisRecoMuon2();
0045
0046 void init(const edm::EventSetup& eventSetup);
0047
0048
0049 void SetMuon(const edm::Event& event,
0050 const edm::EventSetup& setup,
0051 const edm::Handle<reco::MuonCollection> muons,
0052 const edm::Handle<reco::VertexCollection> vertices,
0053 double METx,
0054 double METy,
0055 unsigned maxMuon);
0056
0057
0058
0059
0060 L1AnalysisRecoMuon2DataFormat* getData() { return &recoMuon_; }
0061 void Reset() { recoMuon_.Reset(); }
0062
0063 private:
0064 L1AnalysisRecoMuon2DataFormat recoMuon_;
0065
0066 const PropagateToMuonSetup muPropagatorSetup1st_;
0067 const PropagateToMuonSetup muPropagatorSetup2nd_;
0068
0069 PropagateToMuon muPropagator1st_;
0070 PropagateToMuon muPropagator2nd_;
0071 };
0072 }
0073 #endif