00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041 void lasertest(TString filename,int ftpc, int lsec, int straight, int gfit,char* t0, char* gas,float gastemp,float mbfield)
00042 {
00043
00044 Int_t minz, maxz;
00045 Int_t minrad = 0;
00046 Int_t maxrad = 30;
00047 cout<<"Starting lasertest.C:"<<endl;
00048 cout<<" filename = "<<filename<<".root"<<endl;
00049 cout<<" ftpc = "<<ftpc;
00050 if ( ftpc == 1 ) cout<<" FTPC West"<<endl;
00051 if ( ftpc == 2 ) cout<<" FTPC East"<<endl;
00052 cout<<" lsec = "<<lsec<<endl;
00053 cout<<" straight = "<<straight<<endl;
00054 cout<<" gfit = "<<gfit<<endl;
00055
00056 if ( ftpc == 1 ) {
00057 minz = 0;
00058 maxz = 300;
00059 }
00060
00061 if ( ftpc == 2 ) {
00062 minz = -300;
00063 maxz = 0;
00064 }
00065 cout<<" minz = "<<minz<<endl;
00066 cout<<" maxz = "<<maxz<<endl;
00067 cout<<" minrad = "<<minrad<<endl;
00068 cout<<" maxrad = "<<maxrad<<endl;
00069 cout<<" t0 = "<<t0<<endl;
00070 cout<<" gas = "<<gas<<endl;
00071 cout<<" gastemp = "<<gastemp<<endl;
00072 cout<<" mbfield = "<<mbfield<<endl;
00073 cout<<endl;
00074
00075 if (gClassTable->GetID("TTable") < 0) gSystem->Load("libStar");
00076
00077 gSystem->Load("libMinuit.so");
00078 gSystem->Load("libSpectrum.so");
00079
00080 gSystem->Load("St_base");
00081 gSystem->Load("StChain");
00082
00083 gSystem->Load("libtpc_Tables");
00084
00085 gSystem->Load("StUtilities");
00086 gSystem->Load("StarClassLibrary");
00087 gSystem->Load("StEvent");
00088 gSystem->Load("StarMagField");
00089 gSystem->Load("StMagF");
00090
00091 gSystem->Load("libStDb_Tables.so");
00092 gSystem->Load("StDetectorDbMaker.so");
00093 gSystem->Load("StTpcDb");
00094 gSystem->Load("StDbUtilities");
00095 gSystem->Load("StDbLib.so");
00096 gSystem->Load("StDbBroker.so");
00097 gSystem->Load("libStDb_Tables.so");
00098 gSystem->Load("St_db_Maker.so");
00099
00100 gSystem->Load("StFtpcCalibMaker");
00101 gSystem->Load("libftpc_Tables");
00102 gSystem->Load("StFtpcClusterMaker");
00103 gSystem->Load("StFtpcTrackMaker");
00104
00105
00106 const char *mysqlDB = "MySQL:StarDb";
00107 const char *paramsDB = "$STAR/StarDb";
00108
00109
00110 StChain *chain = new StChain();
00111
00112 StFtpcCalibMaker *laser=new StFtpcCalibMaker();
00113 laser->GetRunInfo(filename);
00114 cout<<" date = "<<laser->Date()<<" time = "<<laser->Time()<<endl;
00115
00116 St_db_Maker *dbMk = new St_db_Maker("db",mysqlDB,paramsDB);
00117 dbMk->SetDateTime(laser->Date(),laser->Time());
00118
00119 dbMk->Init();
00120 dbMk->Make();
00121
00122 cout<<"dbDate = "<<dbMk->GetDateTime().GetDate()<<endl;
00123 cout<<"After Database init !!!"<<endl;
00124 cout<<endl;
00125
00126 if (laser->DbInit(mbfield) == kStWarn) {
00127 delete laser;
00128 break;
00129 }
00130
00131
00132 for (int i=-5;i<7;i++)
00133 {
00134 float step=i/10.0;
00135
00136
00137 for (int k=-5;k<8;k++)
00138 {
00139 float step2=k/10.0;
00140 char t[3];char g[3];
00141
00142 sprintf(t,"%.2f",step);
00143 sprintf(g,"%.2f",step2);
00144 cout<<endl;
00145 cout<<"laser->DoLaserCalib: deltat0 = "<<t<<" und deltaGas = "<<g<<endl;
00146 if (k==0 && i==0)
00147 cout<<"Kommt zum Schluss !!!"<<endl;
00148 else
00149 laser->DoLaserCalib(filename,ftpc,lsec,straight,gfit,minz,maxz,minrad,maxrad,t,g,gastemp,mbfield);
00150 }
00151 }
00152
00153 laser->DoLaserCalib(filename,ftpc,lsec,straight,gfit,minz,maxz,minrad,maxrad,"0","0",gastemp,mbfield);
00154
00155 delete laser;
00156 }