// $Id$ // // File: DCustomAction_HistTotalPVsBeamE.h // Created: Mon May 5 13:46:49 PDT 2014 // Creator: pmatt (on Darwin pmattLaptop 10.8.0 i386) // #ifndef _DCustomAction_HistTotalPVsBeamE_ #define _DCustomAction_HistTotalPVsBeamE_ #include #include #include "TH1D.h" #include "TH2D.h" #include "JANA/JEventLoop.h" #include "JANA/JApplication.h" #include "PID/DBeamPhoton.h" #include "ANALYSIS/DAnalysisAction.h" #include "ANALYSIS/DReaction.h" #include "ANALYSIS/DParticleCombo.h" #include "ANALYSIS/DAnalysisUtilities.h" using namespace std; using namespace jana; class DCustomAction_HistTotalPVsBeamE : public DAnalysisAction { public: //user can call any of these three constructors DCustomAction_HistTotalPVsBeamE(const DReaction* locReaction, string locActionUniqueString = "") : DAnalysisAction(locReaction, "Custom_HistTotalPVsBeamE", false, locActionUniqueString), dMinThrownMatchFOM(5.73303E-7) {} DCustomAction_HistTotalPVsBeamE(string locActionUniqueString) : DAnalysisAction(NULL, "Custom_HistTotalPVsBeamE", false, locActionUniqueString), dMinThrownMatchFOM(5.73303E-7) {} DCustomAction_HistTotalPVsBeamE(void) : DAnalysisAction(NULL, "Custom_HistTotalPVsBeamE", false, ""), dMinThrownMatchFOM(5.73303E-7) {} void Initialize(JEventLoop* locEventLoop); double dMinThrownMatchFOM; private: bool Perform_Action(JEventLoop* locEventLoop, const DParticleCombo* locParticleCombo = NULL); // Optional: Useful utility functions. // const DAnalysisUtilities* dAnalysisUtilities; //Store any histograms as member variables here TH1D* dHist_TotalP; TH1D* dHist_TotalP_True; TH2D* dHist_TotalPVsBeamE; TH2D* dHist_TotalPVsBeamE_True; TH1D* dHist_TotalPt; TH1D* dHist_TotalPt_True; TH2D* dHist_TotalPyVsPx; TH2D* dHist_TotalPyVsPx_True; TH1D* dHist_TotalP_ParticleFOMCuts; TH1D* dHist_TotalP_True_ParticleFOMCuts; TH2D* dHist_TotalPVsBeamE_ParticleFOMCuts; TH2D* dHist_TotalPVsBeamE_True_ParticleFOMCuts; TH1D* dHist_TotalPt_ParticleFOMCuts; TH1D* dHist_TotalPt_True_ParticleFOMCuts; TH2D* dHist_TotalPyVsPx_ParticleFOMCuts; TH2D* dHist_TotalPyVsPx_True_ParticleFOMCuts; TH1D* dHist_TotalP_HasDetectorHits; TH1D* dHist_TotalP_True_HasDetectorHits; TH2D* dHist_TotalPVsBeamE_HasDetectorHits; TH2D* dHist_TotalPVsBeamE_True_HasDetectorHits; TH1D* dHist_TotalPt_HasDetectorHits; TH1D* dHist_TotalPt_True_HasDetectorHits; TH2D* dHist_TotalPyVsPx_HasDetectorHits; TH2D* dHist_TotalPyVsPx_True_HasDetectorHits; }; #endif // _DCustomAction_HistTotalPVsBeamE_