Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
p3pi_hists/DCustomAction_CutExtraPi0.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: DCustomAction_CutExtraPi0.h
4 // Created: Sun Jun 28 15:10:48 EDT 2015
5 // Creator: pmatt (on Darwin Pauls-MacBook-Pro-2.local 13.4.0 i386)
6 //
7 
8 #ifndef _DCustomAction_CutExtraPi0_
9 #define _DCustomAction_CutExtraPi0_
10 
11 #include <string>
12 #include <iostream>
13 
14 #include "JANA/JEventLoop.h"
15 #include "JANA/JApplication.h"
16 
18 #include "ANALYSIS/DReaction.h"
21 
22 using namespace std;
23 using namespace jana;
24 
26 {
27  public:
28 
29  DCustomAction_CutExtraPi0(const DReaction* locReaction, double locLowMassCut, double locHighMassCut, string locActionUniqueString = "") :
30  DAnalysisAction(locReaction, "Custom_CutExtraPi0", false, locActionUniqueString),
31  dLowMassCut(locLowMassCut), dHighMassCut(locHighMassCut) {}
32 
33  void Initialize(JEventLoop* locEventLoop);
34  void Reset_NewEvent(void){dPreviousSourceObjects.clear();}
35 
36  private:
37 
38  bool Perform_Action(JEventLoop* locEventLoop, const DParticleCombo* locParticleCombo);
39 
40  // Cut away combos with pi0 invariant mass BETWEEN these bounds
41  double dLowMassCut;
42  double dHighMassCut;
43 
45 
46  //Store any histograms as member variables here
48 
49  //To check for double counting
50  set<set<const DNeutralParticleHypothesis*> > dPreviousSourceObjects;
51 };
52 
53 #endif // _DCustomAction_CutExtraPi0_
54 
DCustomAction_CutExtraPi0(const DReaction *locReaction, double locLowMassCut, double locHighMassCut, string locActionUniqueString="")
set< set< const DNeutralParticleHypothesis * > > dPreviousSourceObjects