ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitProd/TreeFiller/interface/FillerMCParticles.h
Revision: 1.10
Committed: Thu Jan 7 11:04:31 2010 UTC (15 years, 3 months ago) by bendavid
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_013pre1, Mit_012i, Mit_012h
Changes since 1.9: +8 -1 lines
Log Message:
Add filler support for TrackingParticles on bambu side

File Contents

# User Rev Content
1 bendavid 1.1 //--------------------------------------------------------------------------------------------------
2 bendavid 1.10 // $Id: FillerMCParticles.h,v 1.9 2009/09/25 08:42:50 loizides Exp $
3 bendavid 1.1 //
4     // FillerMCParticles
5     //
6 loizides 1.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 bendavid 1.1 //
11     // Authors: C.Loizides, J.Bendavid
12     //--------------------------------------------------------------------------------------------------
13    
14 loizides 1.4 #ifndef MITPROD_TREEFILLER_FILLERMCPARTICLES_H
15     #define MITPROD_TREEFILLER_FILLERMCPARTICLES_H
16 bendavid 1.1
17 loizides 1.8 #include "MitAna/DataTree/interface/MCParticleFwd.h"
18 bendavid 1.10 #include "MitAna/DataTree/interface/TrackingParticleFwd.h"
19 loizides 1.8 #include "MitProd/TreeFiller/interface/AssociationMaps.h"
20 bendavid 1.1 #include "MitProd/TreeFiller/interface/BaseFiller.h"
21 bendavid 1.10 #include "MitProd/TreeFiller/interface/HitPatternReader.h"
22    
23 bendavid 1.1
24     namespace mithep
25     {
26     class FillerMCParticles : public BaseFiller
27     {
28     public:
29     FillerMCParticles(const edm::ParameterSet &cfg, const char *name, bool active=1);
30     ~FillerMCParticles();
31    
32 loizides 1.9 void BookDataBlock(TreeWriter &tws, const edm::EventSetup &es);
33 loizides 1.7 void FillDataBlock(const edm::Event &e, const edm::EventSetup &es);
34     void ResolveLinks (const edm::Event &e, const edm::EventSetup &es);
35 bendavid 1.1
36     private:
37 loizides 1.6 bool genActive_; //=true if generated particles are filled
38     bool useAodGen_; //=true if AOD GenParticles to be used
39     bool simActive_; //=true if simulated particles are filled
40     bool trackingActive_; //=true if TrackingParticles are mapped
41 bendavid 1.10 bool fillTracking_; //=treu if detailed sim hit info is filled
42 loizides 1.6 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 bendavid 1.10 std::string mitTrackingName_; //name of TrackingParticles branch
50 loizides 1.6 mithep::MCParticleArr *mcParticles_; //array of MCParticles
51 bendavid 1.10 mithep::TrackingParticleArr *trackingParticles_; //array of TrackingParticles
52 loizides 1.6 mithep::GenParticleBarcodeMap *genMap_; //map wrt generated particles
53     mithep::AODGenParticleMap *aodGenMap_; //map wrt generated particles
54     mithep::SimTrackTidMap *simMap_; //map of SimTracks to G4 track ids
55     mithep::TrackingParticleMap *trackingMap_; //map wrt TrackingParticles
56 bendavid 1.10 mithep::HitPatternReader hitReader_; //hit pattern reader
57 bendavid 1.1 };
58     }
59     #endif