CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
JetMatchingTools.h
Go to the documentation of this file.
1 #ifndef JetMatchingTools_h
2 #define JetMatchingTools_h
3 
4 #include <vector>
5 
12 
13 namespace edm {
14  class Event;
15 }
16 namespace reco {
17  class CaloJet;
18  class GenJet;
19 }
20 class CaloTower;
21 class CaloRecHit;
22 class DetId;
23 class PCaloHit;
24 
26  public:
27  JetMatchingTools (const edm::Event& fEvent);
29 
31  std::vector <const CaloTower*> getConstituents (const reco::CaloJet& fJet ) ;
33  std::vector <const CaloRecHit*> getConstituents (const CaloTower& fTower) ;
35  std::vector <DetId> getConstituentIds (const CaloTower& fTower) ;
37  std::vector <const PCaloHit*> getPCaloHits (DetId fId) ;
39  int getTrackId (const PCaloHit& fHit) ;
41  const SimTrack* getTrack (unsigned fSimTrackId);
43  int generatorId (unsigned fSimTrackId) ;
45  const reco::GenParticle* getGenParticle (int fGeneratorId);
47  std::vector <const reco::GenParticle*> getGenParticles (const reco::CaloJet& fJet, bool fVerbose = true);
49  std::vector <const reco::GenParticle*> getGenParticles (const reco::GenJet& fJet);
50 
51  // reverse propagation
53  std::vector <const PCaloHit*> getPCaloHits (int fGeneratorId);
55  std::vector <const CaloRecHit*> getCaloRecHits (int fGeneratorId);
57  std::vector <const CaloTower*> getCaloTowers (int fGeneratorId);
58 
60  double lostEnergyFraction (const reco::CaloJet& fJet );
61 
63  double overlapEnergyFraction (const std::vector <const reco::GenParticle*>& fObject,
64  const std::vector <const reco::GenParticle*>& fReference) const;
65 
66 
78 
79 
80 
81  private:
94 };
95 
96 #endif
const edm::PCaloHitContainer * mHcalSimHitCollection
std::vector< const PCaloHit * > getPCaloHits(DetId fId)
get PCaloHits contributing to the detId
int generatorId(unsigned fSimTrackId)
Generator ID.
std::vector< PCaloHit > PCaloHitContainer
const EBRecHitCollection * mEBRecHitCollection
Jets made from CaloTowers.
Definition: CaloJet.h:30
const edm::SimVertexContainer * getSimVertexCollection()
const reco::CandidateCollection * getGenParticlesCollection()
const edm::PCaloHitContainer * mEBSimHitCollection
std::vector< DetId > getConstituentIds(const CaloTower &fTower)
get cells contributing to the tower
const HFRecHitCollection * getHFRecHitCollection()
const reco::CandidateCollection * mGenParticleCollection
std::vector< const CaloRecHit * > getCaloRecHits(int fGeneratorId)
CaloRecHits.
const reco::GenParticle * getGenParticle(int fGeneratorId)
GenParticle.
const edm::PCaloHitContainer * mEESimHitCollection
const edm::SimTrackContainer * mSimTrackCollection
const edm::PCaloHitContainer * getEESimHitCollection()
JetMatchingTools(const edm::Event &fEvent)
const edm::PCaloHitContainer * getEBSimHitCollection()
const EERecHitCollection * mEERecHitCollection
const EBRecHitCollection * getEBRecHitCollection()
Jets made from MC generator particles.
Definition: GenJet.h:25
const EERecHitCollection * getEERecHitCollection()
const HORecHitCollection * getHORecHitCollection()
const HBHERecHitCollection * getHBHERecHitCollection()
std::vector< const CaloTower * > getCaloTowers(int fGeneratorId)
CaloTowers.
Definition: DetId.h:20
const edm::SimVertexContainer * mSimVertexCollection
std::vector< SimVertex > SimVertexContainer
double lostEnergyFraction(const reco::CaloJet &fJet)
energy in broken links
const edm::SimTrackContainer * getSimTrackCollection()
std::vector< const reco::GenParticle * > getGenParticles(const reco::CaloJet &fJet, bool fVerbose=true)
GenParticles for CaloJet.
const edm::PCaloHitContainer * getHcalSimHitCollection()
const edm::Event * mEvent
std::vector< const CaloTower * > getConstituents(const reco::CaloJet &fJet)
get towers contributing to CaloJet
const SimTrack * getTrack(unsigned fSimTrackId)
convert trackId to SimTrack
const HORecHitCollection * mHORecHitCollection
int getTrackId(const PCaloHit &fHit)
GEANT track ID.
std::vector< SimTrack > SimTrackContainer
double overlapEnergyFraction(const std::vector< const reco::GenParticle * > &fObject, const std::vector< const reco::GenParticle * > &fReference) const
energy overlap
const HFRecHitCollection * mHFRecHitCollection
const HBHERecHitCollection * mHBHERecHitCollection