#ifndef __CINT__ #include #include #include #endif #include #include #include #include #include #include #include "TString.h" using namespace std; void cr8pideff(string arm = "left") { const char* dbname = "mysql://jmysql/hapvdis"; const char* username = "hapvdis"; const char* userpass = "to<9uLkp"; TSQLServer *db = TSQLServer::Connect(dbname, username, userpass); printf("Server info: %s\n", db->ServerInfo()); cout<<"Database is: "<GetDB()< DateOfChange, Correction; TString inputfile; TString outfile; if (arm == "left") { inputfile = "PIDEff_L.txt"; outfile = "PIDCorL.txt"; } else if (arm == "right") { inputfile = "PIDEff_R.txt"; outfile = "PIDCorR.txt"; } cout<>datetmp>>cortmp; DateOfChange.push_back(datetmp*100); Correction.push_back(cortmp); } Int_t vectorsize = Correction.size(); vector Error (vectorsize); for (Int_t i = 0; i < (Int_t) Correction.size(); i ++) { if (i == 0) Error[i] = fabs(Correction[i] - Correction[i+1]); else Error[i] = fabs(Correction[i] - Correction[i-1]); if (Error[i] == 0) Error[i] = Error[i-1]; } TString sql = "select run_num, date, start_time from runlist"; res = db->Query(sql); const Int_t nrows = res->GetRowCount(); cout<<"total rows: "<Next(); runnum[i] = atoi(row->GetField(0)); date[i] = row->GetField(1); start_time[i] = row->GetField(2); Int_t monthtmp = atoi(((date[i]).substr(5,2)).c_str()); Int_t daytmp = atoi((date[i]).substr(8,2).c_str()); Int_t hourtmp = atoi((start_time[i]).substr(0,2).c_str()); cout<<"run: "< DateOfChange[j]) index = j+1; } PID[i] = Correction[index]; PIDErr[i] = Error[index]; cout<