Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
phys_tree/Event.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: Event.h
4 // Created: Wed Sep 2 20:18:06 EDT 2009
5 // Creator: davidl (on Darwin Amelia.local 9.8.0 i386)
6 //
7 
8 #ifndef _Event_
9 #define _Event_
10 
11 #include <TObject.h>
12 #include <TLorentzVector.h>
13 #include <TClonesArray.h>
14 
15 // Maximum number of particles of a given type
16 #define MAX_PART 10
17 
18 class Event:public TObject{
19 
20  public:
21 
22  Event();
23  ~Event();
24  void Clear(void);
25 
26  int event;
27  UInt_t Npip;
28  UInt_t Npim;
29  UInt_t NKp;
30  UInt_t NKm;
31  UInt_t Nproton;
32  UInt_t Nphoton;
33  UInt_t Nneutron;
34 
35  TClonesArray *pip;
36  TClonesArray *pim;
37  TClonesArray *Kp;
38  TClonesArray *Km;
39  TClonesArray *proton;
40  TClonesArray *photon;
41  TClonesArray *neutron;
42 
43  TClonesArray *pip_match; ///< Closest match pi+ (truth or recon, whatever is not in pip)
44  TClonesArray *pim_match; ///< Closest match pi- (truth or recon, whatever is not in pim)
45  TClonesArray *Kp_match; ///< Closest match K+ (truth or recon, whatever is not in Kp)
46  TClonesArray *Km_match; ///< Closest match K- (truth or recon, whatever is not in Km)
47  TClonesArray *proton_match; ///< Closest match proton (truth or recon, whatever is not in proton)
48  TClonesArray *photon_match; ///< Closest match photon (truth or recon, whatever is not in photon)
49  TClonesArray *neutron_match; ///< Closest match neutron (truth or recon, whatever is not in neutron)
50 
51  TLorentzVector target; // Initial state target momentum
52  TLorentzVector beam; // Initial state target beam photon momentum
53  TVector3 vertex; // Vertex position
54  TLorentzVector W; // Final state 4-momentum of everything *except* the proton(s)
55 
56  bool all_fiducial; // True if the following four are true
57  bool all_mesons_fiducial; // True if all pi+ and pi- are in fiducial region
58  bool all_photons_fiducial; // True if all photons are in fiducial region
59  bool all_neutrons_fiducial; // True if all neutrons are in fiducial region
60  bool all_protons_fiducial; // True if all protons are in fiducial region
61 
62  private:
63  ClassDef(Event,1);
64 
65 };
66 
67 #endif // _Event_
68 
TClonesArray * proton_match
Closest match proton (truth or recon, whatever is not in proton)
bool all_neutrons_fiducial
TClonesArray * Kp
Definition: mc_tree/Event.h:51
bool all_mesons_fiducial
TClonesArray * pip
Definition: mc_tree/Event.h:49
UInt_t Npip
Definition: mc_tree/Event.h:36
TClonesArray * photon
Definition: mc_tree/Event.h:54
void Clear(void)
UInt_t Nphoton
Definition: mc_tree/Event.h:41
UInt_t Npim
Definition: mc_tree/Event.h:37
UInt_t Nneutron
Definition: mc_tree/Event.h:42
TClonesArray * Km_match
Closest match K- (truth or recon, whatever is not in Km)
TClonesArray * neutron
Definition: mc_tree/Event.h:55
TClonesArray * pip_match
Closest match pi+ (truth or recon, whatever is not in pip)
UInt_t NKm
Definition: mc_tree/Event.h:39
bool all_photons_fiducial
UInt_t NKp
Definition: mc_tree/Event.h:38
ClassDef(Event, 1)
TClonesArray * proton
Definition: mc_tree/Event.h:53
TLorentzVector W
Definition: mc_tree/Event.h:65
TClonesArray * pim_match
Closest match pi- (truth or recon, whatever is not in pim)
TLorentzVector target
Definition: mc_tree/Event.h:62
UInt_t Nproton
Definition: mc_tree/Event.h:40
bool all_fiducial
Definition: mc_tree/Event.h:67
TClonesArray * pim
Definition: mc_tree/Event.h:50
bool all_protons_fiducial
UInt_t event
TClonesArray * Km
Definition: mc_tree/Event.h:52
TClonesArray * neutron_match
Closest match neutron (truth or recon, whatever is not in neutron)
TLorentzVector beam
TVector3 vertex
TClonesArray * Kp_match
Closest match K+ (truth or recon, whatever is not in Kp)
TClonesArray * photon_match
Closest match photon (truth or recon, whatever is not in photon)