ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/grimes/VHbbAnalysisCode/interface/VHbbCandidateCuts.h
(Generate patch)

Comparing UserCode/grimes/VHbbAnalysisCode/interface/VHbbCandidateCuts.h (file contents):
Revision 1.1 by grimes, Tue Feb 14 01:43:14 2012 UTC vs.
Revision 1.3 by grimes, Wed Aug 15 22:37:47 2012 UTC

# Line 10 | Line 10
10  
11   #include "VHbbAnalysis/VHbbDataFormats/interface/VHbbCandidate.h"
12  
13 + // Forward declarations
14 + namespace trkupgradeanalysis
15 + {
16 +        namespace variables
17 +        {
18 +                class VHbbCandidateVariable;
19 +        }
20 + }
21 +
22  
23   namespace trkupgradeanalysis
24   {
25 +        /** @brief Cut that takes a HistogramVariable and a CutType to create a cut
26 +         *
27 +         * @author Mark Grimes (mark.grimes@bristol.ac.uk)
28 +         * @date 07/Jul/2012
29 +         */
30 +        class CutOnVariable : public trkupgradeanalysis::IBasicVHbbCandidateCut
31 +        {
32 +        public:
33 +                CutOnVariable( const trkupgradeanalysis::variables::VHbbCandidateVariable& variable, const trkupgradeanalysis::cuts::ICutType& cut );
34 +                virtual ~CutOnVariable();
35 +
36 +                // The methods from BasicCut
37 +                virtual std::string name() const;
38 +                virtual const trkupgradeanalysis::IHistogramVariable& cutVariable() const;
39 +
40 +                // The method from BasicVHbbCandidateCut
41 +                virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
42 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
43 +        private:
44 +                std::auto_ptr<trkupgradeanalysis::cuts::ICutType> pCut_;
45 +                std::auto_ptr<trkupgradeanalysis::variables::VHbbCandidateVariable> pVHbbCandidateVariable_;
46 +        };
47  
48          class CandidateTypeEquals : public trkupgradeanalysis::IBasicVHbbCandidateCut, public trkupgradeanalysis::IHistogramVariable
49          {
50          public:
51                  CandidateTypeEquals( VHbbCandidate::CandidateType candidateType );
52 +                CandidateTypeEquals( const std::vector<VHbbCandidate::CandidateType>& candidateTypes );
53                  virtual ~CandidateTypeEquals();
54  
55                  // The methods from BasicCut
# Line 26 | Line 58 | namespace trkupgradeanalysis
58  
59                  // The method from BasicVHbbCandidateCut
60                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
61 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
62  
63                  // The methods from HistogramVariable I need to implement
64                  std::string variableName() const;
# Line 34 | Line 67 | namespace trkupgradeanalysis
67                  double suggestedLowerEdge() const;
68                  double suggestedUpperEdge() const;
69          private:
70 <                VHbbCandidate::CandidateType requiredCandidateType_;
70 >                std::vector<VHbbCandidate::CandidateType> requiredCandidateTypes_;
71                  mutable VHbbCandidate::CandidateType lastValue_;
72          };
73  
# Line 50 | Line 83 | namespace trkupgradeanalysis
83  
84                  // The method from BasicVHbbCandidateCut
85                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
86 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
87  
88                  // The methods from HistogramVariable I need to implement
89                  std::string variableName() const;
# Line 74 | Line 108 | namespace trkupgradeanalysis
108  
109                  // The method from BasicVHbbCandidateCut
110                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
111 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
112  
113                  // The methods from HistogramVariable I need to implement
114                  std::string variableName() const;
# Line 99 | Line 134 | namespace trkupgradeanalysis
134  
135                  // The method from BasicVHbbCandidateCut
136                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
137 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
138  
139                  // The methods from HistogramVariable I need to implement
140                  std::string variableName() const;
# Line 123 | Line 159 | namespace trkupgradeanalysis
159  
160                  // The method from BasicVHbbCandidateCut
161                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
162 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
163  
164                  // The methods from HistogramVariable I need to implement
165                  std::string variableName() const;
# Line 135 | Line 172 | namespace trkupgradeanalysis
172                  mutable double lastValue_;
173          };
174  
175 <        class NumberOfAdditionalJets : public trkupgradeanalysis::IBasicVHbbCandidateCut, public trkupgradeanalysis::IHistogramVariable
175 >        class NumberOfAdditionalJetsCut : public trkupgradeanalysis::IBasicVHbbCandidateCut, public trkupgradeanalysis::IHistogramVariable
176          {
177          public:
178 <                NumberOfAdditionalJets( const trkupgradeanalysis::cuts::ICutType& cut );
179 <                virtual ~NumberOfAdditionalJets();
178 >                NumberOfAdditionalJetsCut( const trkupgradeanalysis::cuts::ICutType& cut, bool applyCleaning=true );
179 >                virtual ~NumberOfAdditionalJetsCut();
180  
181                  // The methods from BasicCut
182                  virtual std::string name() const;
# Line 147 | Line 184 | namespace trkupgradeanalysis
184  
185                  // The method from BasicVHbbCandidateCut
186                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
187 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
188  
189                  // The methods from HistogramVariable I need to implement
190                  std::string variableName() const;
# Line 158 | Line 196 | namespace trkupgradeanalysis
196                  std::auto_ptr<trkupgradeanalysis::cuts::ICutType> pCut_;
197                  mutable unsigned int lastValue_;
198                  bool jetId( const VHbbEvent::SimpleJet& jet ) const;
199 +                bool applyCleaning_;
200          };
201  
202          class NumberOfAdditionalLeptons : public trkupgradeanalysis::IBasicVHbbCandidateCut, public trkupgradeanalysis::IHistogramVariable
# Line 172 | Line 211 | namespace trkupgradeanalysis
211  
212                  // The method from BasicVHbbCandidateCut
213                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
214 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
215  
216                  // The methods from HistogramVariable I need to implement
217                  std::string variableName() const;
# Line 196 | Line 236 | namespace trkupgradeanalysis
236  
237                  // The method from BasicVHbbCandidateCut
238                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
239 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
240  
241                  // The methods from HistogramVariable I need to implement
242                  std::string variableName() const;
# Line 220 | Line 261 | namespace trkupgradeanalysis
261  
262                  // The method from BasicVHbbCandidateCut
263                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
264 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
265  
266                  // The methods from HistogramVariable I need to implement
267                  std::string variableName() const;
# Line 245 | Line 287 | namespace trkupgradeanalysis
287  
288                  // The method from BasicVHbbCandidateCut
289                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
290 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
291  
292                  // The methods from HistogramVariable I need to implement
293                  std::string variableName() const;
# Line 269 | Line 312 | namespace trkupgradeanalysis
312  
313                  // The method from BasicVHbbCandidateCut
314                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
315 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
316  
317                  // The methods from HistogramVariable I need to implement
318                  std::string variableName() const;
# Line 309 | Line 353 | namespace trkupgradeanalysis
353  
354                  // The method from BasicVHbbCandidateCut
355                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
356 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
357  
358                  // The methods from HistogramVariable I need to implement
359                  std::string variableName() const;
# Line 350 | Line 395 | namespace trkupgradeanalysis
395  
396                  // The method from BasicVHbbCandidateCut
397                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
398 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
399  
400                  // The methods from HistogramVariable I need to implement
401                  std::string variableName() const;
# Line 385 | Line 431 | namespace trkupgradeanalysis
431  
432                  // The method from BasicVHbbCandidateCut
433                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
434 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
435  
436                  // The methods from HistogramVariable I need to implement
437                  std::string variableName() const;
# Line 417 | Line 464 | namespace trkupgradeanalysis
464  
465                  // The method from BasicVHbbCandidateCut
466                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
467 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
468  
469                  // The methods from HistogramVariable I need to implement
470                  std::string variableName() const;
# Line 430 | Line 478 | namespace trkupgradeanalysis
478                  mutable double lastValue_;
479          };
480  
481 <        class DeltaPhiVH : public trkupgradeanalysis::IBasicVHbbCandidateCut, public trkupgradeanalysis::IHistogramVariable
481 >        class DeltaPhiVHCut : public trkupgradeanalysis::IBasicVHbbCandidateCut, public trkupgradeanalysis::IHistogramVariable
482          {
483          public:
484 <                DeltaPhiVH( const trkupgradeanalysis::cuts::ICutType& cut );
485 <                virtual ~DeltaPhiVH();
484 >                DeltaPhiVHCut( const trkupgradeanalysis::cuts::ICutType& cut );
485 >                virtual ~DeltaPhiVHCut();
486  
487                  // The methods from BasicCut
488                  virtual std::string name() const;
# Line 442 | Line 490 | namespace trkupgradeanalysis
490  
491                  // The method from BasicVHbbCandidateCut
492                  virtual bool applyCut( const VHbbCandidate& vhbbCandidate ) const;
493 +                virtual bool applyCut( const trkupgradeanalysis::tools::NTupleRow& ntupleRow ) const;
494  
495                  // The methods from HistogramVariable I need to implement
496                  std::string variableName() const;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines