ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitProd/TreeFiller/interface/FillerPFTaus.h
Revision: 1.10
Committed: Fri Sep 23 15:43:14 2011 UTC (13 years, 7 months ago) by mhchan
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_025pre2
Changes since 1.9: +5 -1 lines
Log Message:
Added new CombinedIsolationDBSumPtCorr discriminators, charge variable, and separate collections for signal PF candidates of different types

File Contents

# User Rev Content
1 bendavid 1.1 //--------------------------------------------------------------------------------------------------
2 mhchan 1.10 // $Id: FillerPFTaus.h,v 1.9 2011/09/14 15:26:53 bendavid Exp $
3 bendavid 1.1 //
4     // FillerPFTaus
5     //
6     // Implementation of a filler to fill EDM pf taus into our mithep::PFTau data structure.
7     //
8     // Authors: C.Loizides, J.Bendavid
9     //--------------------------------------------------------------------------------------------------
10    
11     #ifndef MITPROD_TREEFILLER_FILLERPFTAUS_H
12     #define MITPROD_TREEFILLER_FILLERPFTAUS_H
13    
14 loizides 1.3 #include "MitAna/DataTree/interface/PFTauFwd.h"
15 bendavid 1.8 #include "DataFormats/Common/interface/RefToPtr.h"
16 loizides 1.3 #include "MitProd/TreeFiller/interface/AssociationMaps.h"
17 bendavid 1.1 #include "MitProd/TreeFiller/interface/BaseFiller.h"
18    
19     namespace mithep
20     {
21     class FillerPFTaus : public BaseFiller
22     {
23     public:
24     FillerPFTaus(const edm::ParameterSet &cfg, const char *name, bool active=1);
25     ~FillerPFTaus();
26    
27 bendavid 1.5 void BookDataBlock(TreeWriter &tws);
28 loizides 1.2 void FillDataBlock(const edm::Event &e, const edm::EventSetup &es);
29 bendavid 1.1
30     private:
31 bendavid 1.8 //template <typename C> edm::Ptr<typename C::value_type> refToPtrHack(edm::Ref<typename C, edm::refhelper::FindUsingAdvance<C, typename C::value_type> > const &ref) { return edm::Ptr<typename C::value_type>(ref.id(), ref.get(), ref.key()); }
32    
33 mhchan 1.6 bool hpsActive_; //=true if HPS discriminants are filled
34 loizides 1.2 std::string edmName_; //edm name of jets collection
35     std::string mitName_; //mit name of jets collection
36 mhchan 1.7 std::string discriminationByLooseElectronRejectionName_; // HPS discriminant
37     std::string discriminationByMediumElectronRejectionName_; // HPS discriminant
38     std::string discriminationByTightElectronRejectionName_; // HPS discriminant
39     std::string discriminationByLooseMuonRejectionName_; // HPS discriminant
40     std::string discriminationByTightMuonRejectionName_; // HPS discriminant
41 mhchan 1.6 std::string discriminationByDecayModeFindingName_; // HPS discriminant
42 mhchan 1.7 std::string discriminationByVLooseIsolationName_; // HPS discriminant
43 mhchan 1.6 std::string discriminationByLooseIsolationName_; // HPS discriminant
44     std::string discriminationByMediumIsolationName_; // HPS discriminant
45     std::string discriminationByTightIsolationName_; // HPS discriminant
46 mhchan 1.10 std::string discriminationByVLooseCombinedIsolationDBSumPtCorrName_; // HPS discriminant
47     std::string discriminationByLooseCombinedIsolationDBSumPtCorrName_; // HPS discriminant
48     std::string discriminationByMediumCombinedIsolationDBSumPtCorrName_; // HPS discriminant
49     std::string discriminationByTightCombinedIsolationDBSumPtCorrName_; // HPS discriminant
50 loizides 1.2 std::string trackMapName_; //name of imported TrackMap
51     std::string jetMapName_; //name of imported PFJetMap
52     std::string pfCandMapName_; //name of imported PFCandidateMap
53 bendavid 1.9 bool allowMissingTrackRef_; //allow missing track reference (needed for tau embedding samples)
54 loizides 1.2 const mithep::TrackMap *trackMap_; //map wrt Tracks
55     const mithep::PFJetMap *jetMap_; //map wrt pfjets
56     const mithep::PFCandidateMap *pfCandMap_; //map wrt pf candidates
57     mithep::PFTauArr *taus_; //array of taus
58 bendavid 1.8
59     template <typename C>
60     edm::Ptr<typename C::value_type> refToPtrHack(edm::Ref<C, typename C::value_type, edm::refhelper::FindUsingAdvance<C, typename C::value_type> > const& ref) {
61     typedef typename C::value_type T;
62     return edm::Ptr<T>(ref.id(), ref.get(), ref.key());
63     }
64 mhchan 1.6
65 bendavid 1.1 };
66     }
67     #endif