CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_1_8_patch13/src/RecoJets/JetAssociationAlgorithms/interface/JetTracksAssociationXtrpCalo.h

Go to the documentation of this file.
00001 // \class JetTracksAssociationXtrpCalo
00002 // Associate jets with tracks by extrapolation to calo face
00003 // $Id: JetTracksAssociationXtrpCalo.h,v 1.1 2010/03/16 21:48:51 srappocc Exp $
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