Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DEventProcessor_rho_p_hists.h
Go to the documentation of this file.
1 // $Id: DEventProcessor_rho_p_hists.h 1816 2006-06-06 14:38:18Z davidl $
2 //
3 // File: DEventProcessor_rho_p_hists.h
4 // Created: Sun Apr 24 06:45:21 EDT 2005
5 // Creator: davidl (on Darwin Harriet.local 7.8.0 powerpc)
6 //
7 
8 #ifndef _DEventProcessor_rho_p_hists_
9 #define _DEventProcessor_rho_p_hists_
10 
11 #include <pthread.h>
12 
13 #include <TFile.h>
14 #include <TH1.h>
15 #include <TH2.h>
16 #include <TH3.h>
17 #include <TTree.h>
18 
19 #include <JANA/JFactory.h>
20 #include <JANA/JEventProcessor.h>
21 #include <JANA/JEventLoop.h>
22 using namespace jana;
23 
24 #include <Event.h>
25 
26 class DTrackWireBased;
27 class DMCThrown;
28 
29 class DEventProcessor_rho_p_hists:public JEventProcessor{
30 
31  public:
34 
35  TH1D *sqrt_s; // center of mass energy for all events (shows coherent brem. peaks)
36  TH1D *mm_gp_to_pX; // missing mass of gamma p -> p + X reaction
37  TH1D *mm_gp_to_pX_thrown; // missing mass of gamma p -> p + X reaction
38 
39  TH1D *t_pX; // -t distribution for gamma p -> p X
40 
42  TTree *tree;
43 
44  private:
45  jerror_t init(void); ///< Invoked via DEventProcessor virtual method
46  jerror_t evnt(JEventLoop *loop, uint64_t eventnumber); ///< Invoked via DEventProcessor virtual method
47  jerror_t erun(void); ///< Invoked via DEventProcessor virtual method
48  jerror_t fini(void); ///< Invoked via DEventProcessor virtual method
49 
50  void SortChargedParticles(vector<const DParticle*> &particles, vector<TLorentzVector> &rec_piplus, vector<TLorentzVector> &rec_piminus, vector<TLorentzVector> &rec_protons);
51  TLorentzVector MakeTLorentz(const DKinematicData *track, double mass);
52  bool IsFiducial(TLorentzVector &pion);
53 
54  pthread_mutex_t mutex;
55 };
56 
57 #endif // _DEventProcessor_rho_p_hists_
58 
Definition: track.h:16