X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=T0%2FAliT0CalibTimeEq.cxx;h=3b1724ede73affb58fc86fd7fe284d0e7dcc3655;hb=5c1827c4ae8bd526c6d3cd74463998e5e8096f47;hp=195ecc57e60dc2dcc000817f0060058af1a49160;hpb=b95e8d876a19c14438c4d9721e768b0a5a3abda9;p=u%2Fmrichter%2FAliRoot.git diff --git a/T0/AliT0CalibTimeEq.cxx b/T0/AliT0CalibTimeEq.cxx index 195ecc57e60..3b1724ede73 100644 --- a/T0/AliT0CalibTimeEq.cxx +++ b/T0/AliT0CalibTimeEq.cxx @@ -34,14 +34,18 @@ ClassImp(AliT0CalibTimeEq) //________________________________________________________________ - AliT0CalibTimeEq::AliT0CalibTimeEq():TNamed() + AliT0CalibTimeEq::AliT0CalibTimeEq():TNamed(), + fMeanVertex(0), + fRmsVertex(0) { // } //________________________________________________________________ -AliT0CalibTimeEq::AliT0CalibTimeEq(const char* name):TNamed() +AliT0CalibTimeEq::AliT0CalibTimeEq(const char* name):TNamed(), + fMeanVertex(0), + fRmsVertex(0) { //constructor @@ -52,7 +56,9 @@ AliT0CalibTimeEq::AliT0CalibTimeEq(const char* name):TNamed() } //________________________________________________________________ -AliT0CalibTimeEq::AliT0CalibTimeEq(const AliT0CalibTimeEq& calibda):TNamed(calibda) +AliT0CalibTimeEq::AliT0CalibTimeEq(const AliT0CalibTimeEq& calibda):TNamed(calibda), + fMeanVertex(0), + fRmsVertex(0) { // copy constructor SetName(calibda.GetName()); @@ -100,17 +106,20 @@ void AliT0CalibTimeEq::Print(Option_t*) const //________________________________________________________________ -void AliT0CalibTimeEq::ComputeOnlineParams(const char* filePhys) +Bool_t AliT0CalibTimeEq::ComputeOnlineParams(const char* filePhys) { // compute online equalized time Double_t mean=0, meanver=0; + Double_t rms=0, rmsver=0; + Int_t nent=0; + Bool_t ok=false; gFile = TFile::Open(filePhys); - - if(!gFile) { + if(!gFile) { AliError("No input PHYS data found "); } else { + ok=true; Char_t buf1[30]; for (Int_t i=0; i<24; i++) { @@ -118,18 +127,31 @@ void AliT0CalibTimeEq::ComputeOnlineParams(const char* filePhys) TH1F *cfd = (TH1F*) gFile->Get(buf1); if(!cfd) AliWarning(Form("no histograms collected by PHYS DA for channel %i", i)); // printf(" i = %d buf1 = %s\n", i, buf1); - if(cfd) mean=cfd->GetMean(); - SetTimeEq(i,mean); + if(cfd) { + mean=cfd->GetMean(); + rms=cfd->GetRMS(); + nent=cfd->GetEntries(); + // printf ("%f %f %i \n",mean,rms,nent); + if(nent<200 || rms>10 ) ok=false; + } + SetTimeEq(i,mean); + SetTimeEqRms(i,rms); if (cfd) delete cfd; } TH1F *ver = (TH1F*) gFile->Get("hVertex"); if(!ver) AliWarning("no Vertex histograms collected by PHYS DA for Zvertex"); - if(ver) meanver = ver->GetMean(); + if(ver) { + meanver = ver->GetMean(); + rmsver = ver->GetRMS(); + } SetMeanVertex(meanver); + SetRmsVertex(rmsver); gFile->Close(); delete gFile; - } + } + return ok; +}