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

Comparing UserCode/MitHzz4l/Selection/src/applySelection.cc (file contents):
Revision 1.13 by khahn, Sat May 5 11:04:01 2012 UTC vs.
Revision 1.15 by khahn, Sun May 6 23:51:01 2012 UTC

# Line 46 | Line 46 | using namespace std;
46   #include "MuonSelection.h"
47   #include "ElectronSelection.h"
48   #include "IsolationSelection.h"
49 < #include "Selection.h"
49 >
50 > //#include "Selection.h"
51 > #include "ReferenceSelection.h"
52 >
53   #include "TriggerUtils.h"
54   #include "PassHLT.h"
55   #include "Angles.h"
# Line 55 | Line 58 | using namespace std;
58   //#include "GenInfoStruct.h"
59   #include "WeightStruct.h"
60   #include "GlobalDataAndFuncs.h"
61 +
62   #include "AngleTuple.h"
63 + #include "FOTuple.h"
64  
65   #include "SampleWeight.h"
66   #include "EfficiencyWeightsInterface.h"
# Line 66 | Line 71 | using namespace std;
71  
72   using namespace mithep;
73  
74 + #include "SimpleLepton.h"
75 + vector<SimpleLepton> failedLeptons; // for fake estimation
76  
77   //----------------------------------------------------------------------------
78   bool setPV(ControlFlags,const mithep::Array<mithep::Vertex>*, mithep::Vertex& );
# Line 96 | Line 103 | int main(int argc, char** argv)
103        return 1;
104      }
105    ctrl.dump();
99  assert( ctrl.mH != 0 );
106  
107  
108  
# Line 144 | Line 150 | int main(int argc, char** argv)
150    WeightStruct weights;
151    //  GenInfoStruct geninfo;
152  
153 +  
154    AngleTuple nt( (const char*)ofname, (const char*)"zznt");
155    nt.makeAngleBranch(angles);
156    nt.makeKinematicsBranch(kinematics);
157    nt.makeInfoBranch(evtinfo);
158 +  FOTuple foTree( nt.getFile(), (const char*)"fo");
159 +  foTree.makeSimpleLeptonBranch(failedLeptons);
160  
161    TH1F * h_w_hpt;
162    if(ctrl.mc) {
# Line 170 | Line 179 | int main(int argc, char** argv)
179      initRunLumiRangeMap();
180    }
181  
182 <  initMuonIDMVA();
182 >  //  initMuonIDMVA();
183    initMuonIsoMVA();
184    initElectronIDMVA();
185    initElectronIsoMVA();
186    initTrigger();
187    
188 +
189    
190    //##########################################################################
191    // Setup tree I/O
# Line 279 | Line 289 | int main(int argc, char** argv)
289        // lepton/kinematic selection ...
290        //
291        EventData ret4l =
292 <        apply_HZZ4L_selection(ctrl, info,
292 >        apply_HZZ4L_reference_selection(ctrl, info,
293 >                              vtx,
294 >                              pfArr,
295 >                              puArr,
296 >                              electronArr,
297 >                              &electronReferencePreSelection,
298 >                              &electronReferenceIDMVASelection,
299 >                              &electronReferenceIsoSelection,
300 >                              muonArr,
301 >                              &muonReferencePreSelection,
302 >                              &muonIDPFSelection,
303 >                              &muonReferenceIsoSelection);
304 >        /*
305 >        apply_HZZ4L_reference_selection(ctrl, info,
306                                vtx,
307                                pfArr,
308                                puArr,
309                                electronArr,
310                                &electronPreSelection,
288                              //                              &electronBDTSelection,
311                                &electronIDMVASelection,
290                              //                              &electronIsoSelection,
312                                &electronIsoMVASelection,
313                                muonArr,
314                                &muonPreSelection,
315                                &muonIDPFSelection,
295                              //                              &muonIDMVASelection,
296                              //                              &passMuonSelection,
316                                &muonIsoMVASelection);
317 +        */
318 +
319        if( ctrl.debug ) cout << endl;
320 +
321 +      cout << "bits: " << ret4l.status.selectionBits << endl;
322        
323        if( ret4l.status.pass() ) {
324          
# Line 323 | Line 346 | int main(int argc, char** argv)
346          pass++;
347          //      if( pass > 3 ) break;
348  
349 <      }
349 >      } else if( ret4l.status.selectionBits.test(8) ) { // save for fakes ...
350 >        cout << "failedLeptons : " << failedLeptons.size() << endl;
351 >        for( int f=0; f<failedLeptons.size(); f++ ) {
352 >          cout << "f: " << f << "\t"
353 >               << "type: " << failedLeptons[f].type << "\t"
354 >               << "pT: " << failedLeptons[f].vec->Pt()
355 >               << endl;
356 >        }
357 >        cout << endl;
358 > //      foTree.Fill();
359 > //      break;
360 >      }
361      }  
362  
363 +  //  foTree.getTree()->Write();
364    nt.WriteClose();
365   }
366  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines