StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StPeCEvent.h
1 //
3 // $Id: StPeCEvent.h,v 1.16 2015/07/22 20:11:43 ramdebbe Exp $
4 // $Log: StPeCEvent.h,v $
5 // Revision 1.16 2015/07/22 20:11:43 ramdebbe
6 // removed RP container copy to output, needs to come back
7 //
8 // Revision 1.15 2015/02/25 01:34:26 ramdebbe
9 // added copy of the Roman Pot StMuRpsCollection to output tree
10 //
11 // Revision 1.14 2014/06/18 16:38:30 ramdebbe
12 // added more variables to event summary
13 //
14 // Revision 1.13 2013/12/27 16:49:58 ramdebbe
15 // added a set method setTOFgeometry to pass pointer to StBTofGeometry
16 //
17 // Revision 1.12 2013/01/24 15:41:24 ramdebbe
18 // added more flags to choose input or output tracks tof etc.
19 //
20 // Revision 1.11 2012/07/03 20:44:44 ramdebbe
21 // removed some comments
22 //
23 // Revision 1.10 2012/07/03 19:37:25 ramdebbe
24 // raised ClassDef from 1 to 2
25 //
26 // Revision 1.9 2012/06/13 15:45:06 ramdebbe
27 // Added flags to include TOF and Vertex branches in tree
28 //
29 // Revision 1.8 2003/11/25 01:54:28 meissner
30 // correct several bugs: eta cut for tracks, charge sorting, add counting of FTPC and TPC primary tracks, Add bbc information
31 //
32 // Revision 1.7 2003/02/05 17:14:05 yepes
33 // Adding bField and pPairs.psi to tree
34 //
35 // Revision 1.6 2002/12/19 18:09:53 yepes
36 // MuDST input added
37 //
38 // Revision 1.5 2002/03/19 22:23:28 meissner
39 // New variables: zdc unatt., Trigger word, MC tree if Geant Branch, DCA for primary pairs, all tracks for secondary pairs (Test)
40 //
41 // Revision 1.4 2001/04/27 19:32:07 akio
42 // fixing a #define conflict bug
43 //
44 // Revision 1.3 2001/02/12 21:15:44 yepes
45 // New version of StPeCMaker, lots of changes
46 //
47 // Revision 1.2 2000/04/21 19:10:27 nystrand
48 // Include StPeCPair class
49 //
50 // Revision 1.1 2000/03/24 22:36:56 nystrand
51 // First version of StPeCEvent
52 //
53 // Revision 1.0 2000/01/20 23:28:51 nystrand
54 // First Version of StPeCEvent
55 //
57 //
58 // StPeCEvent
59 //
60 // Event class for Peripheral Collisions
61 //
63 #ifndef StPeCEvent_h
64 #define StPeCEvent_h
65 
66 #include "Rtypes.h"
67 #include "StPeCEnumerations.h"
68 #include "TObject.h"
69 #include "TClonesArray.h"
70 #ifndef __CINT__
71 #include "PhysicalConstants.h"
73 #endif /* __CINT__ */
74 #include "StPeCPair.h"
75 #include "StPeCTrack.h"
76 #include "SystemOfUnits.h"
77 #include "StEpcMaker/StEpcMaker.h"
78 #include "StEmcADCtoEMaker/StEmcADCtoEMaker.h"
79 #include "StBTofUtil/StBTofGeometry.h"
80 #include "StMuDSTMaker/COMMON/StMuRpsCollection.h"
81 
82 
83 class StPeCEvent: public TObject {
84 
85 public:
86 
87  StPeCEvent(bool useBemc, bool useTOF, bool useVertex, bool useTracks, bool useRP, bool readStMuDst, bool readStEvent, bool readBothInputs);
88  virtual ~StPeCEvent();
89 
90 
91  Long_t eventNumber() const;
92  Long_t runNumber() const;
93  Int_t getNTot() const;
94  Int_t getNPrim() const;
95  Int_t getQTot() const;
96  Int_t getNPriPairs ( ) { return nPPairs ; } ;
97  Int_t getNSecPairs ( ) { return nSPairs ; } ;
98  StPeCPair* getPriPair ( Int_t i ) ;
99  StPeCPair* getSecPair ( Int_t i ) ;
100  Float_t getPt() const;
101  Float_t yRap() const;
102  Float_t getXVertex() const;
103  Float_t getYVertex() const;
104  Float_t getZVertex() const;
105 #ifndef __CINT__
106  StMuDst* muDst;
107  StEvent* eventP ;
108  void addPair(StPeCPair* pair) const;
109  Int_t fill ( StEvent* event ) ;
110  Int_t fill(StMuDst* mudst);
111  std::vector<int> fill(StEvent* event, StMuDst* mudst);
112  Int_t infoLevel ;
113  void setInfoLevel ( Int_t in ) { infoLevel = in ; } ;
114  void setTOFgeometry(StBTofGeometry * mTOFgeo) {mTOFgeoEv = mTOFgeo; };
115  StLorentzVectorF getEvent4Momentum(StPeCSpecies pid) const;
116 #endif /*__CINT__*/
117  void clear ( ) ;
118  void reset ( ) ;
119 
120  Float_t mInv(StPeCSpecies pid) const;
121  Float_t yRap(StPeCSpecies pid) const;
122  void matchTOFhitsToTracks(StMuDst *mudst);
123 
124 private:
125  Int_t eventN;
126  Int_t runN;
127  Int_t nTot; //FLK keept for backwards compatibility
128  Int_t nPrim; //FLK keept for backwards compatibility
129  Int_t qTot;
130  Int_t nGlobalTracks;
131  Int_t nPrimaryTracks;
132  Int_t nPrimaryTPC;
133  Int_t nPrimaryFTPC;
134  Float_t bField ;
135  Float_t pt;
136  Float_t xVertex;
137  Float_t yVertex;
138  Float_t zVertex;
139  Float_t rVertex;
140  Int_t nVertices;
141  Int_t nTracks ;
142  Int_t nPPairs ;
143  Int_t nSPairs ;
144  //
145  //3-JUNE2014 add more information to event summary
146  //
147  Int_t nTOFhitsSum;
148  Int_t nBtofTriggerHitsSum;
149  Int_t nTOFtracksSum;
150  Float_t zdcEastUASum;
151  Float_t zdcWestUASum;
152  Float_t zdcCoincidenceRateSum;
153  unsigned short lastDSM0Sum;
154  unsigned short lastDSM1Sum;
155  TClonesArray *pPairs ;
156  TClonesArray *sPairs ;
157  TClonesArray *tracks;
158  TClonesArray *treecalo;
159  TClonesArray *tofHits;
160  TClonesArray *tofTracks;
161  TClonesArray *vertices;
162 /* StMuRpsCollection *romanPots; */
163 
164  StBTofGeometry *mTOFgeoEv;
165  Int_t shotCount;
166  Bool_t useBemcLocal;
167  Bool_t useTOFlocal;
168  Bool_t useVertexLocal;
169  Bool_t useTracksLocal;
170  Bool_t useRPLocal;
171 
172  Bool_t readStMuDstLocal;
173  Bool_t readStEventLocal;
174  Bool_t readBothInputsLocal;
175 
176  ClassDef(StPeCEvent,2)
177 };
178 
179 #endif
180 
181 
182 
183 
184 
#include &quot;StEventTypes.h&quot;
Definition: StPeCEvent.h:83