ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/Morgan/interface/MCAssociator.h
Revision: 1.2
Committed: Thu Dec 18 18:01:48 2008 UTC (16 years, 4 months ago) by lethuill
Content type: text/plain
Branch: MAIN
CVS Tags: pat_2_2_5_01, pat_2_1_12_02
Changes since 1.1: +13 -4 lines
Log Message:
add missing matched genParticles in MCParticles branch

File Contents

# User Rev Content
1 lethuill 1.1 #ifndef MCAssociator_h
2     #define MCAssociator_h
3    
4     #include <memory>
5     #include <string>
6     #include <iostream>
7     #include <map>
8    
9 lethuill 1.2 #include "FWCore/Framework/interface/Event.h"
10     #include "FWCore/ParameterSet/interface/ParameterSet.h"
11     #include "DataFormats/Common/interface/Handle.h"
12     #include "DataFormats/HepMCCandidate/interface/GenParticle.h"
13     #include "DataFormats/HepMCCandidate/interface/GenParticleFwd.h"
14    
15 lethuill 1.1 #include "../interface/TRootParticle.h"
16     #include "../interface/TRootMCParticle.h"
17     #include "../interface/TRootElectron.h"
18    
19     #include "TClonesArray.h"
20    
21    
22     class MCAssociator{
23    
24     public:
25 lethuill 1.2 MCAssociator();
26     MCAssociator(const edm::ParameterSet& producersNames, int verbosity);
27 lethuill 1.1 ~MCAssociator() {};
28     void setVerbosity(int verbosity) {verbosity_ = verbosity; };
29 lethuill 1.2 void init(const edm::Event& iEvent, TClonesArray* mcParticles);
30 lethuill 1.1 void process(TClonesArray* recoParticles);
31     void printParticleAssociation(TClonesArray* recoParticles);
32    
33     private:
34     int verbosity_;
35 lethuill 1.2 int nMC_;
36 lethuill 1.1 TClonesArray* mcParticles_;
37 lethuill 1.2 edm::Handle <reco::GenParticleCollection> genParticles_;
38     std::map<int,int> mcParticlesMap_; // map between index in genParticle collection and index in mcParticles TClonesArray
39     edm::InputTag genParticlesProducer_;
40 lethuill 1.1
41     };
42    
43     #endif