StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StSvtHybridDriftVelocity.hh
1 /***************************************************************************
2  *
3  * $Id: StSvtHybridDriftVelocity.hh,v 1.1 2000/11/30 20:38:31 caines Exp $
4  *
5  * Author: Marcelo Munhoz
6  ***************************************************************************
7  *
8  * Description: SVT Drift Velocity class
9  *
10  ***************************************************************************
11  *
12  * $Log: StSvtHybridDriftVelocity.hh,v $
13  * Revision 1.1 2000/11/30 20:38:31 caines
14  * Drift Velocity files
15  *
16  **************************************************************************/
17 
18 #ifndef STSVTHYBRIDDRIFTVELOCITY_HH
19 #define STSVTHYBRIDDRIFTVELOCITY_HH
20 
21 #include "StSvtHybridObject.hh"
22 
24 {
25 public:
27  StSvtHybridDriftVelocity(int barrel, int ladder, int wafer, int hybrid);
29 
32  float operator [] (int anode);
33 
34  int getNumberOfAnodes(){return numberOfAnodes;}
35  float getV1(int anode){return mV1[anode-1];}
36  float getV2(int anode){return mV2[anode-1];}
37  float getV3(int anode){return mV3[anode-1];}
38  float getTotalLength(float l){return mTotalLength;}
39  float getFocusLength(float l){return mFocusLength;}
40  float getNoDriftLength(float l){return mNoDriftLength;}
41 
42  void setV1(float v, int anode){mV1[anode-1] = v;}
43  void setV2(float v, int anode){mV2[anode-1] = v;}
44  void setV3(float v, int anode){mV3[anode-1] = v;}
45  void setBilinearConst(float aa, float bb){mA = aa; mB = bb;}
46  void setTotalLength(float l){mTotalLength = l;}
47  void setFocusLength(float l){mFocusLength = l;}
48  void setNoDriftLength(float l){mNoDriftLength = l;}
49 
50 private:
51  int numberOfAnodes;
52  float mV1[240]; // focusing region velocity per anode
53  float mV2[240]; // drift region velocity per anode
54  float mV3[240]; // average velocity (considering just one region) per anode
55  float mA, mB; // v2 = a*v1 - b (model 1)
56  float mTotalLength; // wafer total length (time direction)
57  float mFocusLength; // focusing region length
58  float mAlpha; // deceleration in focusing region (model 2)
59  float mNoDriftLength; // length of No drift region (model 2)
60  float mDriftCorr[4]; // accounts for the PASA response time
61  float *mDevLinFit[240];
62 
63 
64  ClassDef(StSvtHybridDriftVelocity,1)
65 };
66 
67 #endif