// $Id$ // // File: DCustomAction_BackgroundSelector.h // Created: Mon Jun 16 09:56:25 EDT 2014 // Creator: mstaib (on Linux max.phys.cmu.edu 2.6.18-371.3.1.el5 x86_64) // #ifndef _DCustomAction_BackgroundSelector_ #define _DCustomAction_BackgroundSelector_ #include #include #include "JANA/JEventLoop.h" #include "JANA/JApplication.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_BackgroundSelector : public DAnalysisAction { public: DCustomAction_BackgroundSelector(const DReaction* locReaction, bool locUseKinFitResultsFlag, string locActionUniqueString = "") : DAnalysisAction(locReaction, "Custom_BackgroundSelector", locUseKinFitResultsFlag, locActionUniqueString) {} void Initialize(JEventLoop* locEventLoop); private: int CheckIsCorrectTopology(const DReaction* locReaction, JEventLoop* locEventLoop); int CheckIsCorrectPID(const DReaction* locReaction, JEventLoop* locEventLoop, const DParticleCombo* locParticleCombo); bool Perform_Action(JEventLoop* locEventLoop, const DParticleCombo* locParticleCombo); // Optional: Useful utility functions. const DAnalysisUtilities* dAnalysisUtilities; //Store any histograms as member variables here }; #endif // _DCustomAction_BackgroundSelector_