00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef STAR_StFtpcCalibMaker
00025 #define STAR_StFtpcCalibMaker
00026
00043 #ifndef StMaker_H
00044 #include "StMaker.h"
00045 #endif
00046
00047 #include "StarMagField.h"
00048
00049 class StFtpcLaserCalib;
00050 class StFtpcLaserTrafo;
00051 class StFtpcDbReader;
00052 class StFtpcParamReader;
00053
00054 class TH1F;
00055 class TH2F;
00056
00057 class TNtuple;
00058 class TFile;
00059
00060 class DetectorReader;
00061 class St_ftpcClusterPars;
00062 class St_ftpcDimensions;
00063
00064 class St_ftpcPadrowZ;
00065 class St_ftpcEField;
00066 class St_ftpcVDrift;
00067 class St_ftpcDeflection;
00068 class St_ftpcdVDriftdP;
00069 class St_ftpcdDeflectiondP;
00070 class St_ftpcElectronics;
00071 class St_ftpcDriftField;
00072 class St_ftpcGas;
00073
00074 class StFtpcCalibMaker : public StMaker
00075 {
00076 private:
00077
00078
00079
00080 St_ftpcClusterPars *m_clusterpars;
00081 St_ftpcDimensions *m_dimensions;
00082 St_ftpcPadrowZ *m_padrow_z;
00083 St_ftpcEField *m_efield;
00084 St_ftpcVDrift *m_vdrift;
00085 St_ftpcDeflection *m_deflection;
00086 St_ftpcdVDriftdP *m_dvdriftdp;
00087 St_ftpcdDeflectiondP *m_ddeflectiondp;
00088 St_ftpcElectronics *m_electronics;
00089 St_ftpcDriftField *m_driftfield;
00090 St_ftpcGas *m_gas;
00091
00092
00093
00094 StFtpcDbReader *dbReader;
00095 StFtpcParamReader *paramReader;
00096
00097 StFtpcLaserTrafo *trafo;
00098 StFtpcLaserTrafo *trafo2;
00099 TFile *anaf;
00100
00101 protected:
00102
00103 Int_t run;
00104 Int_t date;
00105 Int_t time;
00106
00107 Float_t micropertime;
00108 Float_t normalizedNowPressure;
00109 Float_t standardPressure;
00110 Float_t baseTemperature;
00111 Float_t gasTemperatureWest;
00112 Float_t gasTemperatureEast;
00113 Float_t deltapW;
00114 Float_t deltapE;
00115 Float_t deltap;
00116 Float_t tZero;
00117
00118 public:
00119
00120 TH1F *hradeall,*hradwall, *hrade, *hradw;
00121 TH1F *htimee, *htimew;
00122
00123 StFtpcCalibMaker(const char *name="ftpc_calib");
00124
00125
00126 void GetRunInfo(TString filename);
00127 void DoLaserCalib(TString filename,int ftpc, int lsec, int straight, int gfit, int minz, int maxz, int minrad, int maxrad, char* t0, char* gas,float gastemp,float mbfield);
00128 void DoT0Calib(TString filename,char* t0, char* gas, float mbfield);
00129 virtual Int_t DbInit(float mbfield);
00130 void HistInit(int nradbins,TString fname, char* t0, char* gas);
00131 void MakeT0Ps(int nradbins,TString psname, char* t0, char* gas);
00132 virtual ~StFtpcCalibMaker();
00133
00134
00135
00136
00137 Int_t RunNum() {return run;}
00138 Int_t Date() {return date;}
00139 Int_t Time() {return time;}
00140
00141 virtual const char *GetCVS() const
00142 {static const char cvs[]="Tag $Name: $ $Id: StFtpcCalibMaker.h,v 1.6 2009/10/14 15:59:55 jcs Exp $ built "__DATE__" "__TIME__ ; return cvs;}
00143
00144
00145 ClassDef(StFtpcCalibMaker,1)
00146
00147 };
00148 #endif