StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StRichSpectra.h
1 
5 /***************************************************************************
6  *
7  * $Id: StRichSpectra.h,v 2.6 2014/08/06 11:43:08 jeromel Exp $
8  *
9  * Author: Brian Lasiuk, Dec 14, 2002
10  ***************************************************************************
11  *
12  * Description: Output from StRichSpectraMaker for uDST storage
13  *
14  ***************************************************************************
15  * $Log: StRichSpectra.h,v $
16  * Revision 2.6 2014/08/06 11:43:08 jeromel
17  * Suffix on literals need to be space (later gcc compiler makes it an error) - first wave of fixes
18  *
19  * Revision 2.5 2003/09/02 17:58:05 perev
20  * gcc 3.2 updates + WarnOff
21  *
22  * Revision 2.4 2002/02/22 22:56:50 jeromel
23  * Doxygen basic documentation in all header files. None of this is required
24  * for QM production.
25  *
26  * Revision 2.3 2002/02/19 23:22:30 ullrich
27  * Minor modifications.
28  *
29  * Revision 2.2 2002/02/19 16:54:33 ullrich
30  * Minor changes - code not altered.
31  *
32  * Revision 2.1 2002/02/19 04:24:03 lasiuk
33  * addition of StRichSpectra information for uDST purposes
34  *
35  **************************************************************************/
36 #ifndef StRichSpectra_hh
37 #define StRichSpectra_hh
38 
39 #include <Stiostream.h>
40 #include <float.h>
41 #include "StObject.h"
42 
43 class StRichSpectra : public StObject {
44 public:
45  StRichSpectra(int v=-999);
46  ~StRichSpectra();
47  StRichSpectra(float,float,float,float,float,float,
48  float,float,int,float,int,int,
49  float,float,float,float,int,float,
50  float, float, float,
51  int, int, int,
52  int=-999);
53 
54  //StRichSpectra(const StRichSpectra&) use default
55  //StRichSpectra& operator =(const StRichSpectra&) use default
56 
57  void setExtrapolatedPosition(float, float);
58  void setExtrapolatedResidual(float, float);
59  void setCorrectedExtrapolatedResidual(float, float);
60  void setCherenkovAngle(float);
61  void setCherenkovSigma(float);
62  void setCherenkovPhotons(int);
63  void setPeakAngle(float);
64  void setPeakPhotons(int);
65  void setTotalPhotons(int);
66  void setMassSquared(float);
67  void setLineIntegralRatio(float);
68  void setLineIntegral(float);
69  void setAlpha(float);
70  void setFlag(int);
71  void setReserved(float);
72 
73  void setMeanD(float pi=FLT_MAX, float k=FLT_MAX, float p=FLT_MAX);
74  void setNumberOfD(int pi=-100, int k=-100, int p=-100);
75  void setVersion(int);
76 
77  float getExtrapolatedX() const;
78  float getExtrapolatedY() const;
79  float getExtrapolatedXResidual() const;
80  float getExtrapolatedYResidual() const;
81  float getCorrectedExtrapolatedXResidual() const;
82  float getCorrectedExtrapolatedYResidual() const;
83  float getCherenkovAngle() const;
84  float getCherenkovSigma() const;
85  int getCherenkovPhotons() const;
86  float getPeakAngle() const;
87  int getPeakPhotons() const;
88  int getTotalPhotons() const;
89  float getMassSquared() const;
90  float getLineIntegralRatio() const;
91  float getLineIntegral() const;
92  float getAlpha() const;
93  int getFlag() const;
94  float getMeanDpi() const;
95  float getMeanDk() const;
96  float getMeanDp() const;
97  int getMeanDnpi() const;
98  int getMeanDnk() const;
99  int getMeanDnp() const;
100 
101  float getReserved() const;
102  int getVersion() const;
103 
104 protected:
105  Float_t mExtrapolatedX;
106  Float_t mExtrapolatedY;
107  Float_t mDx;
108  Float_t mDy;
109  Float_t mCdx;
110  Float_t mCdy;
111  Float_t mCherenkovAngle;
112  Float_t mCherenkovAngleSigma;
113  Int_t mNumberOfPhotons;
114  Float_t mPeakAngle;
115  Int_t mPeakPhotons;
116  Int_t mTotalPhotons;
117  Float_t mMassSquared;
118  Float_t mLineIntegralRatio;
119  Float_t mLineIntegral;
120  Float_t mAlpha;
121  Int_t mFlag;
122  Float_t mReserved;
123 
124  Float_t mDpi, mDk, mDp;
125  Int_t mNDpi, mNDk, mNDp;
126 
127  Int_t mVersion;
128  //
129  // Required Track Parameters:
130  // innerTrackHelix
131  // outerTrackHelix
132  // charge
133  // firstPointonTrack(x,y,z)
134  // lastPointonTrack(x,y,z)
135  // chi2
136  // numberOfFitPoints
137 
138  virtual const char *GetCVS() const {
139  static const char cvs[]=
140  "Tag $Name: $ $Id $ built " __DATE__ " " __TIME__ ;
141  return cvs;
142  }
143 private:
144  ClassDef(StRichSpectra, 1)
145 };
146 
147 inline void StRichSpectra::setExtrapolatedPosition(float x, float y) {mExtrapolatedX = x;mExtrapolatedY=y;}
148 inline void StRichSpectra::setExtrapolatedResidual(float dx, float dy) {mDx=dx;mDy=dy;}
149 inline void StRichSpectra::setCorrectedExtrapolatedResidual(float dx, float dy) {mCdx=dx;mCdy=dy;}
150 inline void StRichSpectra::setCherenkovAngle(float theta) {mCherenkovAngle=theta;}
151 inline void StRichSpectra::setCherenkovSigma(float s) {mCherenkovAngleSigma=s;}
152 inline void StRichSpectra::setCherenkovPhotons(int n) {mNumberOfPhotons=n;}
153 inline void StRichSpectra::setPeakAngle(float pa) {mPeakAngle=pa;}
154 inline void StRichSpectra::setPeakPhotons(int np) {mPeakPhotons=np;}
155 inline void StRichSpectra::setTotalPhotons(int tp) {mTotalPhotons=tp;}
156 inline void StRichSpectra::setMassSquared(float m2) {mMassSquared=m2;}
157 inline void StRichSpectra::setLineIntegralRatio(float lir) {mLineIntegralRatio=lir;}
158 inline void StRichSpectra::setLineIntegral(float li) {mLineIntegral = li;}
159 inline void StRichSpectra::setAlpha(float alpha) {mAlpha=alpha;}
160 inline void StRichSpectra::setFlag(int f) {mFlag = f;}
161 inline void StRichSpectra::setMeanD(float pi, float k, float p) {mDpi=pi; mDk=k, mDp=p;}
162 inline void StRichSpectra::setNumberOfD(int pi, int k, int p) {mNDpi=pi; mNDk=k; mNDp=p;}
163 inline void StRichSpectra::setReserved(float r) {mReserved = r;}
164 inline void StRichSpectra::setVersion(int v) {mVersion = v;}
165 
166 inline float StRichSpectra::getExtrapolatedX() const {return mExtrapolatedX;}
167 inline float StRichSpectra::getExtrapolatedY() const {return mExtrapolatedY;}
168 inline float StRichSpectra::getExtrapolatedXResidual() const {return mDx;}
169 inline float StRichSpectra::getExtrapolatedYResidual() const {return mDy;}
170 inline float StRichSpectra::getCorrectedExtrapolatedXResidual() const {return mCdx;}
171 inline float StRichSpectra::getCorrectedExtrapolatedYResidual() const {return mCdy;}
172 inline float StRichSpectra::getCherenkovAngle() const {return mCherenkovAngle;}
173 inline float StRichSpectra::getCherenkovSigma() const {return mCherenkovAngleSigma;}
174 inline int StRichSpectra::getCherenkovPhotons() const {return mNumberOfPhotons;}
175 inline float StRichSpectra::getPeakAngle() const {return mPeakAngle;}
176 inline int StRichSpectra::getPeakPhotons() const {return mPeakPhotons;}
177 inline int StRichSpectra::getTotalPhotons() const {return mTotalPhotons;}
178 inline float StRichSpectra::getMassSquared() const {return mMassSquared;}
179 inline float StRichSpectra::getLineIntegralRatio() const {return mLineIntegralRatio;}
180 inline float StRichSpectra::getLineIntegral() const {return mLineIntegral;}
181 inline float StRichSpectra::getAlpha() const {return mAlpha;}
182 inline int StRichSpectra::getFlag() const {return mFlag;}
183 inline float StRichSpectra::getMeanDpi() const { return mDpi; }
184 inline float StRichSpectra::getMeanDk() const { return mDk; }
185 inline float StRichSpectra::getMeanDp() const { return mDp; }
186 inline int StRichSpectra::getMeanDnpi() const { return mNDpi; }
187 inline int StRichSpectra::getMeanDnk() const { return mNDk; }
188 inline int StRichSpectra::getMeanDnp() const { return mNDp; }
189 
190 inline float StRichSpectra::getReserved() const {return mReserved;}
191 inline int StRichSpectra::getVersion() const {return mVersion;}
192 
193 //non-members
194 ostream& operator<<(ostream&, const StRichSpectra&);
195 #endif