Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DEventProcessor_track_skimmer.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: DEventProcessor_track_skimmer.h
4 // Created: Tue Jan 13 11:08:16 EST 2015
5 // Creator: Paul (on Darwin Pauls-MacBook-Pro.local 14.0.0 i386)
6 //
7 
8 #ifndef _DEventProcessor_track_skimmer_
9 #define _DEventProcessor_track_skimmer_
10 
11 #include <map>
12 #include <fstream>
13 
14 #include <JANA/JEventProcessor.h>
15 #include <JANA/JApplication.h>
16 
18 #include <HDDM/DEventWriterREST.h>
20 
22 
23 #include <TRIGGER/DTrigger.h>
24 
25 using namespace jana;
26 using namespace std;
27 
28 class DEventProcessor_track_skimmer : public jana::JEventProcessor
29 {
30  public:
31  const char* className(void){return "DEventProcessor_track_skimmer";}
32 
33  private:
34  jerror_t init(void); ///< Called once at program start.
35  jerror_t brun(jana::JEventLoop* locEventLoop, int locRunNumber); ///< Called every time a new run number is detected.
36  jerror_t evnt(jana::JEventLoop* locEventLoop, uint64_t locEventNumber); ///< Called every event.
37  jerror_t erun(void); ///< Called every time run number changes, provided brun has been called.
38  jerror_t fini(void); ///< Called after last event of last event source has been processed.
39 
40  int Get_FileNumber(JEventLoop* locEventLoop) const;
41 
42  map<string, ofstream*> dIDXAStreamMap;
43 };
44 
45 #endif // _DEventProcessor_track_skimmer_
46