Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DReaction_factory_OmegaSkim.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: DReaction_factory_OmegaSkim.h
4 // Created: Wed Mar 11 20:34:22 EDT 2015
5 // Creator: jrsteven (on Linux halldw1.jlab.org 2.6.32-504.8.1.el6.x86_64 x86_64)
6 //
7 
8 #ifndef _DReaction_factory_OmegaSkim_
9 #define _DReaction_factory_OmegaSkim_
10 
11 #include <iostream>
12 #include <iomanip>
13 
14 #include <JANA/JFactory.h>
15 #include <ANALYSIS/DReaction.h>
17 #include <ANALYSIS/DCutActions.h>
18 
19 using namespace std;
20 using namespace jana;
21 
22 class DReaction_factory_OmegaSkim : public jana::JFactory<DReaction>
23 {
24  public:
26  {
27  // This is so that the created DReaction objects persist throughout the life of the program instead of being cleared each event.
28  SetFactoryFlag(PERSISTANT);
29  }
30  const char* Tag(void){return "OmegaSkim";}
31 
32  private:
33  jerror_t brun(JEventLoop* locEventLoop, int32_t locRunNumber);
34  jerror_t evnt(JEventLoop* locEventLoop, uint64_t locEventNumber);
35  jerror_t fini(void); ///< Called after last event of last event source has been processed.
36 
38  deque<DReactionStep*> dReactionStepPool; //to prevent memory leaks
39 
40  void PIDCuts(DReaction* locReaction);
41 };
42 
43 #endif // _DReaction_factory_OmegaSkim_
44 
deque< DReactionStep * > dReactionStepPool