ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/OSUT3Analysis/AnaTools/interface/CutFlow.h
Revision: 1.1
Committed: Mon Jul 23 08:20:07 2012 UTC (12 years, 9 months ago) by ahart
Content type: text/plain
Branch: MAIN
CVS Tags: mytag_0_0_0, V00-00-03, V00-00-02
Log Message:
First commit of CutFlow class.

File Contents

# Content
1 #ifndef CUT_FLOW
2
3 #define CUT_FLOW
4
5 #include <iostream>
6 #include <iomanip>
7 #include <map>
8 #include <string>
9 #include <vector>
10
11 #include "FWCore/ServiceRegistry/interface/Service.h"
12 #include "CommonTools/UtilAlgos/interface/TFileService.h"
13
14 #include "TH1D.h"
15 #include "TStopwatch.h"
16
17 using namespace std;
18
19 class CutFlow
20 {
21 public:
22 CutFlow () {};
23 CutFlow (map<string, TH1D *> &, const edm::Service<TFileService> &, const string &prefix = "");
24 ~CutFlow ();
25 bool &operator[] (const string &);
26 bool &at (const string &cutName) { return (*this)[cutName]; };
27
28 void fillCutFlow ();
29 void outputTime ();
30 void outputCutFlow ();
31
32 private:
33 TH1D *cutFlow_;
34 TH1D *selection_;
35 TH1D *complementarySelection_;
36
37 TStopwatch sw_;
38 string prefix_;
39 vector<string> cutNames_;
40 map<string, bool> cuts_;
41 };
42
43 #endif