ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitHzz4l/Selection/src/PassHLT.cc
(Generate patch)

Comparing UserCode/MitHzz4l/Selection/src/PassHLT.cc (file contents):
Revision 1.5 by khahn, Thu Sep 15 20:44:10 2011 UTC vs.
Revision 1.12 by dkralph, Tue Jun 19 17:11:28 2012 UTC

# Line 1 | Line 1
1 + #include "TriggerUtilsBits.h"
2   #include "PassHLT.h"
3 < #include "HiggsAnaDefs.hh"
3 > #include <assert.h>
4 > #include <bitset>
5 > #include <iostream>
6 > using namespace std;
7 >
8 >
9 > bool passHLTSingleMuon(std::bitset<TRIGGER_BIG_NUMBER> triggerBits) {
10 >  if ( triggerBits.test(kHLT_Mu8)  ||
11 >       triggerBits.test(kHLT_Mu12) ||  
12 >       triggerBits.test(kHLT_Mu15) ||  
13 >       triggerBits.test(kHLT_Mu24) ||  
14 >       triggerBits.test(kHLT_Mu30) )
15 >    return true;
16 >  return false;
17 > }
18 >
19 > //--------------------------------------------------------------------------
20 > // for sync ...
21 > bool passHLTMC(std::bitset<TRIGGER_BIG_NUMBER> triggerBits,
22 >               unsigned runNum,
23 >               unsigned channel,
24 >                                 EMCYear mc_year)
25 > //--------------------------------------------------------------------------
26 > {
27  
28 < bool passHLT(uint64_t triggerBits, unsigned runNum, unsigned channel) {
28 >        assert(mc_year == k2011_MC || mc_year == k2012_MC);
29 >
30 >  bool pass = false;  
31 >
32 >        if(mc_year == k2011_MC){
33 >                
34 >                //electron trigger
35 >        if ( triggerBits.test(kHLT_Ele17_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL_Ele8_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL) )
36 >        pass = true;
37 >
38 >        //muon trigger
39 >        if( triggerBits.test(kHLT_Mu17_Mu8) )    
40 >        pass = true;
41 >                        
42 >                //cross triggers        
43 >  
44 >        }
45 >
46 >        if(mc_year == k2012_MC){
47 >                
48 >                //electron trigger
49 >        if ( triggerBits.test(kHLT_Ele17_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL_Ele8_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL) )
50 >        pass = true;
51 >
52 >        //muon trigger
53 >        if( triggerBits.test(kHLT_Mu17_Mu8) || triggerBits.test(kHLT_Mu17_TkMu8))    
54 >        pass = true;
55 >                        
56 >                //cross triggers        
57 >        if( triggerBits.test(kHLT_Mu8_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL) || triggerBits.test(kHLT_Mu17_Ele8_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL))    
58 >        pass = true;
59 >        
60 >        }
61 >        
62 >  return pass;
63 > }
64 >
65 >
66 > //--------------------------------------------------------------------------
67 > bool passHLT(std::bitset<TRIGGER_BIG_NUMBER> triggerBits,
68 >             unsigned runNum,
69 >             unsigned channel)
70 > //--------------------------------------------------------------------------
71 > {
72  
73    bool isMC = false;
74    bool pass = false;  
# Line 15 | Line 82 | bool passHLT(uint64_t triggerBits, unsig
82      pass = true; //punt for now, Si doesn't have the needed triggers
83    }
84    if ( runNum >= 160404 && runNum <= 170826 ) { // may10 & PRv4
85 <    if ( triggerBits & kHLT_Ele17_CaloIdL_CaloIsoVL_Ele8_CaloIdL_CaloIsoVL)
85 >    if ( triggerBits.test(kHLT_Ele17_CaloIdL_CaloIsoVL_Ele8_CaloIdL_CaloIsoVL))
86        pass = true;
87    }
88    if (  runNum > 170826 ) { // aug05 & PRv6
89 <    if ( triggerBits & kHLT_Ele17_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL_Ele8_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL )
89 >    if ( triggerBits.test(kHLT_Ele17_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL_Ele8_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL) )
90        pass = true;
91    }
92  
93    // 58 pb-1 had a prescale issue, run range is 171050-171578
94    // they allow electron evts to pass kHLT_Ele17_CaloIdVT_CaloIsoVT_TrkIdT_TrkIsoVT_SC8_Mass30 in this period
95    if (runNum >= 171050 && runNum <= 171578 ) {  
96 <    if( triggerBits & kHLT_Ele17_CaloIdVT_CaloIsoVT_TrkIdT_TrkIsoVT_SC8_Mass30 )
96 >    if( triggerBits.test(kHLT_Ele17_CaloIdVT_CaloIsoVT_TrkIdT_TrkIsoVT_SC8_Mass30) )
97        pass=true;
98    }
99  
# Line 43 | Line 110 | bool passHLT(uint64_t triggerBits, unsig
110      //      if( triggerBits & kHLT_DoubleMu3 )     pass = true;
111    }
112    if( runNum >= 160404 && runNum <= 163869 ) { // may10
113 <      if( triggerBits & kHLT_DoubleMu7 )    
113 >    if( triggerBits.test(kHLT_DoubleMu7) )    
114          pass = true;
115    }
116    if( runNum >= 165088  ) {  // PRv4 and on ....
117 <    if( triggerBits & kHLT_Mu13_Mu8 )    
117 >    if( triggerBits.test(kHLT_Mu13_Mu8) )    
118        pass = true;
119    }
120    //  }
121    
122    return pass;
123   };
124 + //----------------------------------------------------------------------------------------
125 + bool passHLTEMU(ControlFlags &ctrl, std::bitset<TRIGGER_BIG_NUMBER> triggerBits)
126 + //--------------------------------------------------------------------------
127 + {
128 +  if(ctrl.debug) cout << "testing bits for emu..." << endl;
129 +  bool pass = false;  
130 +  // double electron dset
131 +  if( triggerBits.test(kHLT_Ele17_CaloIdL_CaloIsoVL) )                  { if(ctrl.debug) cout << "\tpasses kHLT_Ele17_CaloIdL_CaloIsoVL" << endl;                pass = true; }
132 +  if( triggerBits.test(kHLT_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL) ) { if(ctrl.debug) cout << "\tpasses kHLT_Ele17_CaloIdT_CaloIsoVL_TrkIdVL_TrkIsoVL" << endl;pass = true; }  
133 +  // single electron dset                                                
134 +  if( triggerBits.test(kHLT_Ele22_CaloIdL_CaloIsoVL) )                  { if(ctrl.debug) cout << "\tpasses kHLT_Ele22_CaloIdL_CaloIsoVL" << endl;                pass = true; }
135 +  if( triggerBits.test(kHLT_Ele27_WP80_PFMET_MT50) )                    { if(ctrl.debug) cout << "\tpasses kHLT_Ele27_WP80_PFMET_MT50" << endl;                  pass = true; }
136 +  if( triggerBits.test(kHLT_Ele27_WP80) )                               { if(ctrl.debug) cout << "\tpasses kHLT_Ele27_WP80" << endl;                             pass = true; }
137 +  // single mudset                                                        
138 +  if( triggerBits.test(kHLT_Mu12) )                                     { if(ctrl.debug) cout << "\tpasses kHLT_Mu12" << endl;                                   pass = true; }
139 +  if( triggerBits.test(kHLT_Mu15_eta2p1) )                              { if(ctrl.debug) cout << "\tpasses kHLT_Mu15_eta2p1" << endl;                            pass = true; }
140 +  if( triggerBits.test(kHLT_Mu24_eta2p1) )                              { if(ctrl.debug) cout << "\tpasses kHLT_Mu24_eta2p1" << endl;                            pass = true; }
141 +  if( triggerBits.test(kHLT_Mu24) )                                     { if(ctrl.debug) cout << "\tpasses kHLT_Mu24" << endl;                                   pass = true; }
142 +  // double mu dset                                                      
143 +  if( triggerBits.test(kHLT_Mu17) )                                     { if(ctrl.debug) cout << "\tpasses kHLT_Mu17" << endl;                                   pass = true; }
144  
58
59
60
61 bool passHLTMC(uint64_t triggerBits) {
62
63  bool pass=false;
64  if( triggerBits & kHLT_DoubleMu7 // ||
65      // triggerBits & kHLT_DoubleMu6 ||
66      // triggerBits & kHLT_Mu5
67      ) {
68    pass = true;
69  } else if ( triggerBits & kHLT_Ele17_CaloIdL_CaloIsoVL_Ele8_CaloIdL_CaloIsoVL ||
70              triggerBits & kHLT_Ele27_CaloIdVT_CaloIsoT_TrkIdT_TrkIsoT ||
71              triggerBits & kHLT_Ele8 ||
72              triggerBits & kHLT_Ele8_CaloIdL_CaloIsoVL ||
73              triggerBits & kHLT_Ele17_CaloIdL_CaloIsoVL ||
74              triggerBits & kHLT_Ele8_CaloIdT_TrkIdVL_CaloIsoVL_TrkIsoVL ) {
75    pass = true;
76  }
145    return pass;
146 < };
79 <
80 <
146 > }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines