ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/grimes/VHbbAnalysisCode/interface/VHbbCandidateCutSets.h
Revision: 1.2
Committed: Mon Feb 27 11:01:07 2012 UTC (13 years, 2 months ago) by grimes
Content type: text/plain
Branch: MAIN
Changes since 1.1: +2 -17 lines
Log Message:
Added a pass-through cut type
Added a number of primary vertices plot to MCInfoPlotSet (even though not MC)
Restructured the "name" method of VHbbCandidateCutSets
Added sliding dijet mass cut

File Contents

# User Rev Content
1 grimes 1.1 #ifndef trkupgradeanalysis_VHbbCandidateCutSets_h
2     #define trkupgradeanalysis_VHbbCandidateCutSets_h
3    
4     #include "TrkUpgradeAnalysis/VHbb/interface/ICutSet.h"
5     #include "TrkUpgradeAnalysis/VHbb/interface/IBasicVHbbCandidateCut.h"
6    
7     // Forward declarations
8     class VHbbCandidate;
9    
10     namespace trkupgradeanalysis
11     {
12     class VHbbCandidateCutSet : public trkupgradeanalysis::ICutSet
13     {
14     public:
15     VHbbCandidateCutSet();
16     virtual ~VHbbCandidateCutSet();
17    
18     // These are methods from CutSet that are being implemented. Note that "name" is not being
19     // implemented so this class is still abstract.
20     size_t numberOfCuts() const;
21     bool allCutsPassed() const;
22     bool cutNPassed( size_t cutNumber ) const;
23     bool everythingOtherThanCutNPassed( size_t cutNumber ) const;
24     const trkupgradeanalysis::IBasicCut& cutAt( size_t a ) const;
25    
26     // Add a method to apply cuts on a VHbbCandidate
27     virtual bool applyCuts( const VHbbCandidate& vhbbCandidate );
28 grimes 1.2 virtual std::string name() const;
29 grimes 1.1 protected:
30     std::vector<trkupgradeanalysis::IBasicVHbbCandidateCut*> basicCuts_;
31     bool allCutsPassed_;
32     std::vector<bool> cutsPassed_;
33 grimes 1.2 std::string name_;
34 grimes 1.1 };
35    
36     class SignalSelectionZee : public VHbbCandidateCutSet
37     {
38     public:
39     SignalSelectionZee( float mass );
40     };
41    
42     class SignalSelectionZmumu : public VHbbCandidateCutSet
43     {
44     public:
45     SignalSelectionZmumu( float mass );
46     };
47    
48    
49     class SignalSelectionWen : public VHbbCandidateCutSet
50     {
51     public:
52     SignalSelectionWen( float mass );
53     };
54    
55     class SignalSelectionWmun : public VHbbCandidateCutSet
56     {
57     public:
58     SignalSelectionWmun( float mass );
59     };
60    
61     /** @brief All of the cuts in SignalSelectionZmumu except for the additonal jets less than 2 cut.
62     *
63     * @author Mark Grimes (mark.grimes@bristol.ac.uk)
64     * @date 30/Jan/2012
65     */
66     class SignalSelectionZmumuWithoutAdditionalJetsCut : public VHbbCandidateCutSet
67     {
68     public:
69     SignalSelectionZmumuWithoutAdditionalJetsCut( float mass );
70     };
71    
72    
73    
74    
75     /** @brief Straight copy of the VlightRegionHWmun cut in the VHllbb analysis framework.
76     *
77     * Note that it doesn't cut on the trigger because that information is not stored in
78     * VHbbCandidate, which this class operates on.
79     *
80     * @author Mark Grimes (mark.grimes@bristol.ac.uk)
81     * @date 26/Nov/2011
82     */
83     class VlightRegionHWmun : public VHbbCandidateCutSet
84     {
85     public:
86     VlightRegionHWmun();
87     };
88    
89    
90     class VlightRegionHWen : public VHbbCandidateCutSet
91     {
92     public:
93     VlightRegionHWen();
94     };
95    
96    
97     class VlightRegionHZmumu : public VHbbCandidateCutSet
98     {
99     public:
100     VlightRegionHZmumu();
101     };
102    
103    
104     class VlightRegionHZee : public VHbbCandidateCutSet
105     {
106     public:
107     VlightRegionHZee();
108     };
109    
110    
111     class TTbarRegionHWmun : public VHbbCandidateCutSet
112     {
113     public:
114     TTbarRegionHWmun();
115     };
116    
117    
118     class TTbarRegionHWen : public VHbbCandidateCutSet
119     {
120     public:
121     TTbarRegionHWen();
122     };
123    
124    
125     class TTbarRegionHZmumu : public VHbbCandidateCutSet
126     {
127     public:
128     TTbarRegionHZmumu();
129     };
130    
131    
132     class TTbarRegionHZee : public VHbbCandidateCutSet
133     {
134     public:
135     TTbarRegionHZee();
136     };
137    
138    
139     class VbbRegionHWmun : public VHbbCandidateCutSet
140     {
141     public:
142     VbbRegionHWmun();
143     };
144    
145    
146     class VbbRegionHWen : public VHbbCandidateCutSet
147     {
148     public:
149     VbbRegionHWen();
150     };
151    
152    
153     class VbbRegionHZmumu : public VHbbCandidateCutSet
154     {
155     public:
156     VbbRegionHZmumu();
157     };
158    
159    
160     class VbbRegionHZee : public VHbbCandidateCutSet
161     {
162     public:
163     VbbRegionHZee();
164     };
165    
166     } // end of namespace trkupgradeanalysis
167    
168    
169     #endif // end of "#ifndef trkupgradeanalysis_VHbbCandidateCutSets_h"
170