X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TRD%2FTRDPEDESTALda.cxx;h=667c968839c5c8d9cfeb4a33a6c2d1997b195757;hb=744ae47978969f31efabc1c9353df7fa66767d9d;hp=ddac68dc362f520ebc6efd86024987ef949cbf22;hpb=1785640c0e3d52e0f5d032d7cb9a00f6651e174f;p=u%2Fmrichter%2FAliRoot.git diff --git a/TRD/TRDPEDESTALda.cxx b/TRD/TRDPEDESTALda.cxx index ddac68dc362..667c968839c 100644 --- a/TRD/TRDPEDESTALda.cxx +++ b/TRD/TRDPEDESTALda.cxx @@ -31,14 +31,15 @@ extern "C" { #include #include "TROOT.h" #include "TPluginManager.h" +#include "TSystem.h" // // AliRoot includes // #include "AliRawReader.h" #include "AliRawReaderDate.h" -#include "AliTRDrawStream.h" -#include "AliTRDrawStreamBase.h" +#include "AliTRDgeometry.h" #include "AliCDBManager.h" +#include "AliLog.h" // //AMORE @@ -51,7 +52,7 @@ extern "C" { #include "AliTRDCalibPadStatus.h" //functios, implementation below -//void SendToAmoreDB(TObject *o, unsigned long32 runNb); +void SendToAmoreDB(TObject *o, unsigned long32 runNb); /* Main routine Arguments: list of DATE raw data files @@ -99,21 +100,11 @@ int main(int argc, char **argv) { // AliTRDCalibPadStatus object AliTRDCalibPadStatus calipad = AliTRDCalibPadStatus(); Bool_t passpadstatus = kTRUE; - //unsigned long32 runNb=0; //run number + unsigned long32 runNb=0; //run number // setting - // AliTRDrawStream::SetNoDebug(); - AliTRDrawStream::DisableSkipData(); - AliTRDrawStream::SetNoErrorWarning(); - //AliTRDrawStream::SetForceCleanDataOnly(); - //AliTRDrawStream::AllowCorruptedData(); - //AliTRDrawStream::DisableStackNumberChecker(); - //AliTRDrawStream::DisableStackLinkNumberChecker(); - //AliTRDrawStream::SetSkipCDH(); - //AliTRDrawStream::SetExtraWordsFix(); - //AliTRDrawStream::EnableDebugStream(); - //AliTRDrawStream::SetDumpHead(320); - //AliTRDrawStream::SetDumpHead(80); + //AliTRDrawFastStream::DisableSkipData(); + AliLog::SetGlobalLogLevel(AliLog::kFatal); /* read the data files */ int n; @@ -155,8 +146,10 @@ int main(int argc, char **argv) { AliRawReader *rawReader = new AliRawReaderDate((void*)event); rawReader->Select("TRD"); + // for debug + //rawReader->SelectEquipment(-1,1024,1025); - Int_t result = calipad.ProcessEvent2((AliTRDrawReader *)rawReader); + Int_t result = calipad.ProcessEvent((AliRawReader *) rawReader); // 0 error, 1 no input, 2 output if(result == 2) nevents++; if(result == 0) passpadstatus = kFALSE; @@ -167,7 +160,7 @@ int main(int argc, char **argv) { nevents_total++; // get the run number - //runNb = event->eventRunNb; + runNb = event->eventRunNb; /* free resources */ free(event); @@ -184,6 +177,10 @@ int main(int argc, char **argv) { calipad.AnalyseHisto(); calipad.Write("calibpadstatus"); fileTRD->Close(); + + /* Send to amore */ + SendToAmoreDB(&calipad,runNb); + /* store the result file on FES */ status=daqDA_FES_storeFile(RESULT_FILE,FILE_ID); @@ -195,13 +192,9 @@ int main(int argc, char **argv) { return status; - /* - - // send objects to AMORE - //SendToAmoreDB(calibpad,runNb); - - void SendToAmoreDB(TObject *calipad, unsigned long32 runNb) - { +} +void SendToAmoreDB(TObject *calipad, unsigned long32 runNb) +{ //cheet a little -- temporary solution (hopefully) // //currently amoreDA uses the environment variable AMORE_DA_NAME to create the mysql @@ -221,22 +214,22 @@ int main(int argc, char **argv) { // PadStatus6 for sm-15-16-17 // PadStatus0 if nothing found..means problems // - + /////////////////// // Find wich LDC /////////////////// Int_t ldcnumber = -1; Int_t sm = -1; for (Int_t idet=0; idet<540; idet++) { - AliTRDCalROC *rocMean = calipad->GetCalRocMean(idet, kFALSE); + AliTRDCalROC *rocMean = ((AliTRDCalibPadStatus *) calipad)->GetCalRocMean(idet, kFALSE); if ( rocMean ) { sm = AliTRDgeometry::GetSector(idet); if((sm==0) || (sm==1) || (sm==2)) ldcnumber = 1; if((sm==3) || (sm==4) || (sm==5)) ldcnumber = 2; if((sm==6) || (sm==7) || (sm==8)) ldcnumber = 3; - if((sm==9) || (sm==10) || (sm==11)) ldcnumber = 1; - if((sm==12) || (sm==13) || (sm==14)) ldcnumber = 2; - if((sm==15) || (sm==16) || (sm==17)) ldcnumber = 3; + if((sm==9) || (sm==10) || (sm==11)) ldcnumber = 4; + if((sm==12) || (sm==13) || (sm==14)) ldcnumber = 5; + if((sm==15) || (sm==16) || (sm==17)) ldcnumber = 6; } } const char *amoreDANameorig=gSystem->Getenv("AMORE_DA_NAME"); @@ -247,27 +240,23 @@ int main(int argc, char **argv) { // Send the stuff //////////////////// if (ldcnumber>-1){ - TDatime time; - TObjString info(Form("Run: %u; Date: %s",runNb,time.AsSQLString())); - - amore::da::AmoreDA amoreDA(amore::da::AmoreDA::kSender); - Int_t statusDA=0; - statusDA+=amoreDA.Send("Pedestals",calibpad); - statusDA+=amoreDA.Send("Info",&info); - if ( statusDA ) - printf("Waring: Failed to write one of the calib objects to the AMORE database\n"); + TDatime time; + TObjString info(Form("Run: %u; Date: %s",runNb,time.AsSQLString())); + + amore::da::AmoreDA amoreDA(amore::da::AmoreDA::kSender); + Int_t statusDA=0; + statusDA+=amoreDA.Send("Pedestals",calipad); + statusDA+=amoreDA.Send("Info",&info); + if ( statusDA ) + printf("Warning: Failed to write one of the calib objects to the AMORE database\n"); } else { - printf("Waring: No data found!\n"); + printf("Warning: No data found!\n"); } // reset env var if (amoreDANameorig) gSystem->Setenv("AMORE_DA_NAME",amoreDANameorig); - } +} - */ - -} -