00001
00002
00003
00004
00005
00006
00007
00008 #ifndef STAR_StFtpcLaserTrafo
00009 #define STAR_StFtpcLaserTrafo
00010
00011 #include <Stiostream.h>
00012 #include <fstream>
00013 #include <cmath>
00014
00015 #include "StFtpcClusterMaker/StFtpcDbReader.hh"
00016 #include "StFtpcClusterMaker/StFtpcParamReader.hh"
00017 #include "TVector.h"
00018
00019
00020 #include "TObject.h"
00021
00022 class StFtpcLaserTrafo
00023 {
00024
00025 private:
00026
00027 Double_t *pradius;
00028 Double_t *pdeflection;
00029 StFtpcDbReader *mDb;
00030 StFtpcParamReader *mParam;
00031 Float_t deltat0;
00032 Float_t deltagas;
00033 Float_t micropertime;
00034 Double_t deltap;
00035 Float_t mBField;
00036 Float_t tZero;
00037
00038
00039
00040
00041
00042 Double_t vd_gas_slope(float rad);
00043 Double_t vd_gas_y(float rad);
00044 Double_t lor_gas_slope(float rad);
00045 Double_t lor_gas_y(float rad);
00046
00047
00048
00049
00050 protected:
00051
00052 public:
00053
00054 StFtpcLaserTrafo(StFtpcDbReader *getdb,StFtpcParamReader *getparam,float getdeltat0,float getdeltagas, float getmicropertime, float getdeltap, float getmbfield, float getTZero);
00055 StFtpcLaserTrafo();
00056 virtual ~StFtpcLaserTrafo();
00057
00058
00059
00060 Double_t vd_gas(float rad);
00061 Double_t lor_gas(float rad);
00062 virtual int calcpadtrans();
00063 virtual int padtrans(int iRow,int iSec,float timepos, float padpos,float *x1,float *y1);
00064 };
00065 #endif