ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitProd/TreeFiller/interface/FillerMCParticles.h
Revision: 1.6
Committed: Sun Mar 15 11:20:40 2009 UTC (16 years, 1 month ago) by loizides
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_008pre2
Changes since 1.5: +21 -21 lines
Log Message:
Introduced BranchTable plus general cleanup.

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id: FillerMCParticles.h,v 1.5 2009/03/06 14:40:10 bendavid Exp $
3 //
4 // FillerMCParticles
5 //
6 // Imlementation of a filler to fill HepMC particles or the AOD GenParticle candidates (gen)
7 // and SimTracks (sim) with association map to TrackingParticles (for hit-based MC truth matching)
8 // into mithep::MCParticles. Generated and simulated particle information is thus merged into a
9 // single collection.
10 //
11 // Authors: C.Loizides, J.Bendavid
12 //--------------------------------------------------------------------------------------------------
13
14 #ifndef MITPROD_TREEFILLER_FILLERMCPARTICLES_H
15 #define MITPROD_TREEFILLER_FILLERMCPARTICLES_H
16
17 #include <map>
18 #include "FWCore/ParameterSet/interface/ParameterSet.h"
19 #include "MitAna/DataUtil/interface/TreeWriter.h"
20 #include "MitAna/DataTree/interface/Collections.h"
21 #include "MitProd/TreeFiller/interface/BaseFiller.h"
22 #include "MitProd/TreeFiller/interface/AssociationMaps.h"
23 #include "SimDataFormats/Track/interface/SimTrackContainer.h"
24
25 namespace mithep
26 {
27 class FillerMCParticles : public BaseFiller
28 {
29 public:
30 FillerMCParticles(const edm::ParameterSet &cfg, const char *name, bool active=1);
31 ~FillerMCParticles();
32
33 void BookDataBlock(TreeWriter &tws);
34 void FillDataBlock(const edm::Event &e, const edm::EventSetup &es);
35 void ResolveLinks (const edm::Event &e, const edm::EventSetup &es);
36
37 private:
38 bool genActive_; //=true if generated particles are filled
39 bool useAodGen_; //=true if AOD GenParticles to be used
40 bool simActive_; //=true if simulated particles are filled
41 bool trackingActive_; //=true if TrackingParticles are mapped
42 std::string genEdmName_; //edm name of generated particles
43 std::string simEdmName_; //edm name of simulated particles
44 std::string trackingEdmName_; //edm name of simulated TrackingParticles
45 std::string genMapName_; //name of exp map wrt generated particles
46 std::string simMapName_; //name of exp map wrt simulated particles
47 std::string trackingMapName_; //name of exp map wrt TrackingParticles
48 std::string mitName_; //name of MCParticles branch
49 mithep::MCParticleArr *mcParticles_; //array of MCParticles
50 mithep::GenParticleBarcodeMap *genMap_; //map wrt generated particles
51 mithep::AODGenParticleMap *aodGenMap_; //map wrt generated particles
52 mithep::SimTrackTidMap *simMap_; //map of SimTracks to G4 track ids
53 mithep::TrackingParticleMap *trackingMap_; //map wrt TrackingParticles
54 };
55 }
56 #endif