fEndTime(0),
fDaqStartTime(0),
fDaqEndTime(0),
+ fCtpStartTime(0),
+ fCtpEndTime(0),
fGraphs("TGraph",kNGraphs),
fFEEParameters(NULL),
fIsProcessed(kFALSE)
fDeadChannel[i] = kFALSE;
fMeanHV[i] = 100.0;
fWidthHV[i] = 0.0;
+ fHv[i] = NULL;
}
}
//_____________________________________________________________________________
-AliVZERODataDCS::AliVZERODataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime, UInt_t daqStartTime, UInt_t daqEndTime):
+AliVZERODataDCS::AliVZERODataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime, UInt_t daqStartTime, UInt_t daqEndTime, UInt_t ctpStartTime, UInt_t ctpEndTime):
TObject(),
fRun(nRun),
fStartTime(startTime),
fEndTime(endTime),
fDaqStartTime(daqStartTime),
fDaqEndTime(daqEndTime),
+ fCtpStartTime(ctpStartTime),
+ fCtpEndTime(ctpEndTime),
fGraphs("TGraph",kNGraphs),
fFEEParameters(new TMap()),
fIsProcessed(kFALSE)
fMeanHV[i] = 100.0;
fWidthHV[i] = 0.0;
}
- AliInfo(Form("\n\tRun %d \n\tTime Created %s \n\tTime Completed %s \n\tDAQ start %s \n\tDAQ end %s ", nRun,
+ AliInfo(Form("\n\tRun %d \n\tTime Created %s \n\tTime Completed %s \n\tDAQ start %s \n\tDAQ end %s \n\tCTP start %s \n\tCTP end %s ", nRun,
TTimeStamp(startTime).AsString(),
TTimeStamp(endTime).AsString(),
TTimeStamp(daqStartTime).AsString(),
- TTimeStamp(daqEndTime).AsString()));
+ TTimeStamp(daqEndTime).AsString(),
+ TTimeStamp(ctpStartTime).AsString(),
+ TTimeStamp(ctpEndTime).AsString()
+ ));
fFEEParameters->SetOwnerValue();
Init();
}
//_____________________________________________________________________________
-void AliVZERODataDCS::ProcessData(TMap& aliasMap){
+Bool_t AliVZERODataDCS::ProcessData(TMap& aliasMap){
// method to process the data
+ Bool_t success = kTRUE;
if(!(fAliasNames[0])) Init();
aliasArr = (TObjArray*) aliasMap.GetValue(fAliasNames[iAlias].Data());
if(!aliasArr){
AliError(Form("Alias %s not found!", fAliasNames[iAlias].Data()));
+ success = kFALSE;
continue;
}
Float_t variation = 0.0;
while((aValue = (AliDCSValue*) iterarray.Next())) {
- values[iValue] = aValue->GetFloat();
UInt_t currentTime = aValue->GetTimeStamp();
+ if(currentTime>fCtpEndTime) break;
+
+ values[iValue] = aValue->GetFloat();
times[iValue] = (Double_t) (currentTime);
if(iValue>0) {
if(values[iValue-1]>0.) variation = TMath::Abs(values[iValue]-values[iValue-1])/values[iValue-1];
- if(currentTime>fDaqEndTime && variation>0.10) continue;
- if(variation > 0.10) fDeadChannel[GetOfflineChannel(iAlias)] = kTRUE;
+ if(variation > 0.01) fDeadChannel[GetOfflineChannel(iAlias)] = kTRUE;
}
fHv[iAlias]->Fill(values[iValue]);
- printf("%s %f Dead=%d\n",fAliasNames[iAlias].Data(),values[iValue],fDeadChannel[GetOfflineChannel(iAlias)]);
+ printf("%s : %s : %f Dead=%d\n",fAliasNames[iAlias].Data(),TTimeStamp(currentTime).AsString(),values[iValue],fDeadChannel[GetOfflineChannel(iAlias)]);
iValue++;
}
CreateGraph(iAlias, aliasArr->GetEntries(), times, values); // fill graphs
}
fIsProcessed=kTRUE;
+
+ return success;
}
//_____________________________________________________________________________
fAliasNames[iAlias++] = Form("V00/FEE/CIU%d/RollOver",iCIU);
}
+ for(int iCIU = 0; iCIU<8 ; iCIU++){
+ for(int iCh=1;iCh<=8;iCh++){
+ fAliasNames[iAlias++] = Form("V00/FEE/CIU%d/DelayHit%d",iCIU,iCh);
+ }
+ }
+
+ for(int iCIU = 0; iCIU<8 ; iCIU++){
+ for(int iCh=1;iCh<=8;iCh++){
+ fAliasNames[iAlias++] = Form("V00/FEE/CIU%d/DiscriThr%d",iCIU,iCh);
+ }
+ }
+
if(iAlias!=kNAliases)
AliError(Form("Number of DCS Aliases defined not correct"));