Go to the documentation of this file.00001
00002
00003
00004
00005 #ifndef RecoJets_JetAssociationAlgorithms_JetTracksAssociationXtrpCalo_h
00006 #define RecoJets_JetAssociationAlgorithms_JetTracksAssociationXtrpCalo_h
00007
00008
00009 #include "DataFormats/GeometryVector/interface/GlobalPoint.h"
00010 #include "DataFormats/Math/interface/Point3D.h"
00011 #include <vector>
00012 #include "RecoJets/JetAssociationAlgorithms/interface/JetTracksAssociationDR.h"
00013 #include "DataFormats/JetReco/interface/TrackExtrapolation.h"
00014 #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h"
00015 #include "TrackingTools/Records/interface/TrackingComponentsRecord.h"
00016 #include "FWCore/Framework/interface/Event.h"
00017 #include "DataFormats/Common/interface/View.h"
00018 #include "DataFormats/JetReco/interface/Jet.h"
00019 #include "DataFormats/TrackReco/interface/Track.h"
00020 #include "DataFormats/JetReco/interface/JetTracksAssociation.h"
00021 #include "Geometry/CaloGeometry/interface/CaloGeometry.h"
00022 #include "Geometry/Records/interface/CaloGeometryRecord.h"
00023 #include "DataFormats/HcalDetId/interface/HcalDetId.h"
00024
00025 class MagneticField;
00026 class Propagator;
00027
00028 class JetTracksAssociationXtrpCalo : public JetTracksAssociationDR {
00029
00030 public:
00032 JetTracksAssociationXtrpCalo();
00033
00035 ~JetTracksAssociationXtrpCalo();
00036
00038 void produce( Association*,
00039 JetRefs const &,
00040 std::vector<reco::TrackExtrapolation> const &,
00041 CaloGeometry const &,
00042 double dR );
00043
00044 void associateInputTracksToJet( reco::TrackRefVector& associated,
00045 const reco::Jet& fJet,
00046 std::vector<reco::TrackExtrapolation> const & fExtrapolations,
00047 double dR ) ;
00048
00049
00050
00051
00052 private:
00053
00055 virtual void associateTracksToJet( reco::TrackRefVector&,
00056 const reco::Jet&,
00057 const TrackRefs& ) {}
00058 };
00059
00060 #endif // RecoJets_JetAssociationAlgorithms_JetTracksAssociationXtrpCalo_h