**************************************************************************/
/*
-$Log$
+$Log: AliTOFDataDCS.cxx,v $
+Revision 1.9 2007/05/04 14:02:45 decaro
+AliTOFDataDCS::Draw(Option_t *) method declared const: compiling warning suppression
+
+Revision 1.8 2007/05/03 09:45:09 decaro
+Coding convention: RN11 violation -> suppression
+
+Revision 1.7 2007/05/02 14:09:39 arcelli
+Retrieval of Env. Temperature removed (will get it from the GRP)
+
+Revision 1.6 2007/04/04 17:19:19 arcelli
+Moved some printout to debug level
+
Revision 1.5 2007/02/20 15:57:00 decaro
Raw data update: to read the TOF raw data defined in UNPACKED mode
*/
-#include "AliTOFDataDCS.h"
+// AliTOFDataDCS class
+// main aim to introduce the aliases for the TOF DCS
+// data points to be then
+// stored in the OCDB, and to process them.
+// Process() method called by TOFPrepr
+
+#include "TString.h"
+#include "TTimeStamp.h"
+#include "TMap.h"
+#include "TCanvas.h"
#include "AliDCSValue.h"
#include "AliLog.h"
-//#include "TString.h"
+#include "AliTOFDataDCS.h"
#include "AliTOFFormatDCS.h"
-#include "TF1.h"
-#include "TCanvas.h"
-#include "TH1F.h"
-#include "TTimeStamp.h"
-#include "TMap.h"
class TH2;
class AliCDBMetaData;
class TDatime;
-// AliTOFDataDCS class
-// main aim to introduce the aliases for the TOF DCS
-// data points to be then
-// stored in the OCDB, and to process them.
-// Process() method called by TOFPrepr
-
ClassImp(AliTOFDataDCS)
//---------------------------------------------------------------
fRun(0),
fStartTime(0),
fEndTime(0),
- fIsProcessed(kFALSE)
+ fStartTimeDCSQuery(0),
+ fEndTimeDCSQuery(0),
+ fIsProcessed(kFALSE),
+ fFDR(kFALSE)
{
// main constructor
fHVip[i]=0x0;
fHVin[i]=0x0;
}
-
- for(int i=0;i<kNLV;i++) {
- fLVv[i]=0x0;
- fLVi[i]=0x0;
- }
-
- for(int i=0;i<kNLV33;i++) {
- fLVv33[i]=0x0;
- fLVi33[i]=0x0;
- }
-
- for(int i=0;i<kNLV50;i++) {
- fLVv50[i]=0x0;
- fLVi50[i]=0x0;
- }
-
- for(int i=0;i<kNLV48;i++) {
- fLVv48[i]=0x0;
- fLVi48[i]=0x0;
- }
-
- for(int i=0;i<kNFEEthr;i++) {
- fFEEthr[i]=0x0;
- }
-
- for(int i=0;i<kNFEEtfeac;i++) {
- fFEEtfeac[i]=0x0;
- }
-
- for(int i=0;i<kNFEEttrm;i++) {
- fFEEttrm[i]=0x0;
- }
-
- for(int i=0;i<3;i++) {
- fT[i]=0;
- fP[i]=0;
- }
+
}
//---------------------------------------------------------------
-AliTOFDataDCS::AliTOFDataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime):
+AliTOFDataDCS::AliTOFDataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime, UInt_t startTimeDCSQuery, UInt_t endTimeDCSQuery):
TObject(),
fRun(nRun),
fStartTime(startTime),
fEndTime(endTime),
- fIsProcessed(kFALSE)
+ fStartTimeDCSQuery(startTimeDCSQuery),
+ fEndTimeDCSQuery(endTimeDCSQuery),
+ fIsProcessed(kFALSE),
+ fFDR(kFALSE)
{
// constructor with arguments
- AliInfo(Form("\n\tRun %d \n\tStartTime %s \n\tEndTime %s", nRun,
+ AliInfo(Form("\n\tRun %d \n\tStartTime %s \n\tEndTime %s \n\tStartTime DCS Query %s \n\tEndTime DCS Query %s", nRun,
TTimeStamp(startTime).AsString(),
- TTimeStamp(endTime).AsString()));
+ TTimeStamp(endTime).AsString(),
+ TTimeStamp(startTimeDCSQuery).AsString(),
+ TTimeStamp(endTimeDCSQuery).AsString()));
Init();
//---------------------------------------------------------------
AliTOFDataDCS::AliTOFDataDCS(const AliTOFDataDCS & data):
- TObject(),
- fRun(0),
- fStartTime(0),
- fEndTime(0),
- fIsProcessed(kFALSE)
+ TObject(data),
+ fRun(data.fRun),
+ fStartTime(data.fStartTime),
+ fEndTime(data.fEndTime),
+ fStartTimeDCSQuery(data.fStartTimeDCSQuery),
+ fEndTimeDCSQuery(data.fEndTimeDCSQuery),
+ fIsProcessed(data.fIsProcessed),
+ fFDR(data.fFDR)
{
-// copy constructor
-
- fRun=data.fRun;
- fStartTime=data.fStartTime;
- fEndTime=data.fEndTime;
- fIsProcessed=data.fIsProcessed;
+ // copy constructor
for(int i=0;i<kNAliases;i++) {
fAliasNames[i]=data.fAliasNames[i];
fHVin[i]=data.fHVin[i];
}
- for(int i=0;i<kNLV;i++) {
- fLVv[i]=data.fLVv[i];
- fLVi[i]=data.fLVi[i];
- }
-
- for(int i=0;i<kNLV33;i++) {
- fLVv33[i]=data.fLVv33[i];
- fLVi33[i]=data.fLVi33[i];
- }
-
- for(int i=0;i<kNLV50;i++) {
- fLVv50[i]=data.fLVv50[i];
- fLVi50[i]=data.fLVi50[i];
- }
-
- for(int i=0;i<kNLV48;i++) {
- fLVv48[i]=data.fLVv48[i];
- fLVi48[i]=data.fLVi48[i];
- }
-
- for(int i=0;i<kNFEEthr;i++) {
- fFEEthr[i]=data.fFEEthr[i];
- }
-
- for(int i=0;i<kNFEEtfeac;i++) {
- fFEEtfeac[i]=data.fFEEtfeac[i];
- }
-
- for(int i=0;i<kNFEEttrm;i++) {
- fFEEttrm[i]=data.fFEEttrm[i];
- }
-
- for(int i=0;i<3;i++) {
- fT[i]=data.fT[i];
- fP[i]=data.fP[i];
- }
-
+
}
//---------------------------------------------------------------
AliTOFDataDCS& AliTOFDataDCS:: operator=(const AliTOFDataDCS & data) {
-// assignment operator
+ // assignment operator
- this->fRun=data.GetRun();
- this->fStartTime=data.GetStartTime();
- this->fEndTime=data.GetEndTime();
+ if (this == &data)
+ return *this;
- for(int i=0;i<kNAliases;i++) {
- this->fAliasNames[i]=data.GetAliasName(i);
- }
+ TObject::operator=(data);
+ fRun=data.GetRun();
+ fStartTime=data.GetStartTime();
+ fEndTime=data.GetEndTime();
+ fStartTimeDCSQuery=data.GetStartTimeDCSQuery();
+ fEndTimeDCSQuery=data.GetEndTimeDCSQuery();
- for(int i=0;i<3;i++) {
- this->fT[i]=data.GetT(i);
- this->fP[i]=data.GetP(i);
+ for(int i=0;i<kNAliases;i++) {
+ fAliasNames[i]=data.GetAliasName(i);
}
-
for(int i=0;i<kNHV;i++) {
- this->fHVvp[i]=data.GetHVvp(i);
- this->fHVvn[i]=data.GetHVvn(i);
- this->fHVip[i]=data.GetHVip(i);
- this->fHVin[i]=data.GetHVin(i);
- }
-
- for(int i=0;i<kNLV;i++) {
- this->fLVv[i]=data.GetLVv(i);
- this->fLVi[i]=data.GetLVi(i);
- }
-
- for(int i=0;i<kNLV33;i++) {
- this->fLVv33[i]=data.GetLVv33(i);
- this->fLVi33[i]=data.GetLVi33(i);
- }
-
- for(int i=0;i<kNLV50;i++) {
- this->fLVv50[i]=data.GetLVv50(i);
- this->fLVi50[i]=data.GetLVi50(i);
- }
-
- for(int i=0;i<kNLV48;i++) {
- this->fLVv48[i]=data.GetLVv48(i);
- this->fLVi48[i]=data.GetLVi48(i);
+ fHVvp[i]=data.GetHVvp(i);
+ fHVvn[i]=data.GetHVvn(i);
+ fHVip[i]=data.GetHVip(i);
+ fHVin[i]=data.GetHVin(i);
}
- for(int i=0;i<kNFEEthr;i++) {
- this->fFEEthr[i]=data.GetFEEthr(i);
- }
-
- for(int i=0;i<kNFEEtfeac;i++) {
- this->fFEEtfeac[i]=data.GetFEEtfeac(i);
- }
-
- for(int i=0;i<kNFEEttrm;i++) {
- this->fFEEttrm[i]=data.GetFEEttrm(i);
- }
-
- this->fIsProcessed=data.fIsProcessed;
return *this;
}
fHVin[i]=0;
}
- for(int i=0;i<kNLV;i++) {
- delete fLVv[i];
- fLVv[i]=0;
- delete fLVi[i];
- fLVi[i]=0;
- }
-
- for(int i=0;i<kNLV33;i++) {
- delete fLVv33[i];
- fLVv33[i]=0;
- delete fLVi33[i];
- fLVi33[i]=0;
- }
-
- for(int i=0;i<kNLV50;i++) {
- delete fLVv50[i];
- fLVv50[i]=0;
- delete fLVi50[i];
- fLVi50[i]=0;
- }
-
- for(int i=0;i<kNLV48;i++) {
- delete fLVv48[i];
- fLVv48[i]=0;
- delete fLVi48[i];
- fLVi48[i]=0;
- }
-
- for(int i=0;i<kNFEEthr;i++) {
- delete fFEEthr[i];
- fFEEthr[i]=0;
- }
-
- for(int i=0;i<kNFEEtfeac;i++) {
- delete fFEEtfeac[i];
- fFEEtfeac[i]=0;
- }
-
- for(int i=0;i<kNFEEttrm;i++) {
- delete fFEEttrm[i];
- fFEEttrm[i]=0;
- }
-}
-
-//-----------------------------------------------------------------------------
-Float_t* AliTOFDataDCS::GetT()const {
-
- // method to retrieve environment temperature info
-
- Float_t* t=0;
- for (Int_t i=0;i<3;i++){
- t[i]=this->fT[i];
- }
- return t;
-}
-//-----------------------------------------------------------------------------
-Float_t* AliTOFDataDCS::GetP() const{
-
- // method to retrieve environment pressure info
-
- Float_t* p=0;
- for (Int_t i=0;i<3;i++){
- p[i]=this->fP[i];
- }
- return p;
}
//---------------------------------------------------------------
if(!(fAliasNames[0])) Init();
- Float_t timeMin = (Float_t)fStartTime;
- Float_t timeMax = (Float_t)fEndTime;
Float_t val=0;
+ Float_t val0=0;
Float_t val1=0;
Float_t time=0;
+ Float_t time0=0;
+ Float_t time1=0;
Float_t delta[2];
Float_t timedelta[2];
+ AliInfo(Form(" Start Time = %i",fStartTime));
+ AliInfo(Form(" End Time = %i",fEndTime));
+ AliInfo(Form(" Start Time DCS Query= %i",fStartTimeDCSQuery));
+ AliInfo(Form(" End Time DCS Query= %i",fEndTimeDCSQuery));
+
+ if (fEndTime==fStartTime){
+ AliError(Form(" Run with null time length: start time = %i = end time = %i",fStartTime,fEndTime));
+ return kFALSE;
+ }
+
TObjArray *aliasArr;
AliDCSValue* aValue;
+ AliDCSValue* aValue0;
AliDCSValue* aValue1;
- TH1F * histoT=0x0;
- TH1F * histoP=0x0;
// starting loop on aliases
for(int j=0; j<kNAliases; j++){
aliasArr = (TObjArray*) aliasMap.GetValue(fAliasNames[j].Data());
if(!aliasArr){
AliError(Form("Alias %s not found!", fAliasNames[j].Data()));
- return kFALSE;
+ if (!fFDR){
+ return kFALSE; // returning only in case we are not in a FDR run
+ }
+ else {
+ continue;
+ }
}
Introduce(j, aliasArr);
- if(aliasArr->GetEntries()<3){
- AliError(Form("Alias %s has just %d entries!",
+ if(aliasArr->GetEntries()==0){
+ AliError(Form("Alias %s has no entries! Nothing will be stored",
+ fAliasNames[j].Data()));
+ continue;
+ }
+ if(aliasArr->GetEntries() == 1){
+ AliWarning(Form("Alias %s has just %d entries! Only first value will be stored",
+ fAliasNames[j].Data(),aliasArr->GetEntries()));
+ aValue0 = (AliDCSValue*) aliasArr->At(0);
+ val0 = aValue0->GetFloat();
+ time0 = (Float_t) (aValue0->GetTimeStamp());
+ if (j<kNHV){
+ fHVvp[j]->SetFloat(0,val0);
+ fHVvp[j]->SetTimeStampFloat(0,time0);
+ }
+ else if (j<kNHV*2){
+ fHVvn[j-kNHV]->SetFloat(0,val0);
+ fHVvn[j-kNHV]->SetTimeStampFloat(0,time0);
+ }
+ else if (j<kNHV*3){
+ fHVip[j-2*kNHV]->SetFloat(0,val0);
+ fHVip[j-2*kNHV]->SetTimeStampFloat(0,time0);
+ }
+ else if (j<kNHV*4){
+ fHVin[j-3*kNHV]->SetFloat(0,val0);
+ fHVin[j-3*kNHV]->SetTimeStampFloat(0,time0);
+ }
+ continue;
+ }
+ if(aliasArr->GetEntries()==2){
+ AliWarning(Form("Alias %s has just %d entries! Storing first and second entry only and the delta between these two",
fAliasNames[j].Data(),aliasArr->GetEntries()));
+ aValue0 = (AliDCSValue*) aliasArr->At(0);
+ val0 = aValue0->GetFloat();
+ time0 = (Float_t) (aValue0->GetTimeStamp());
+ aValue1 = (AliDCSValue*) aliasArr->At(1);
+ val1 = aValue1->GetFloat();
+ time1 = (Float_t) (aValue1->GetTimeStamp());
+ if (j<kNHV){
+ fHVvp[j]->SetFloat(0,val0);
+ fHVvp[j]->SetTimeStampFloat(0,time0);
+ fHVvp[j]->SetFloat(1,val1);
+ fHVvp[j]->SetTimeStampFloat(1,time1);
+ fHVvp[j]->SetDelta(0,TMath::Abs(val1-val0));
+ fHVvp[j]->SetTimeStampDelta(0,time1-time0);
+ }
+ else if (j<kNHV*2){
+ fHVvn[j-kNHV]->SetFloat(0,val0);
+ fHVvn[j-kNHV]->SetTimeStampFloat(0,time0);
+ fHVvn[j-kNHV]->SetFloat(1,val1);
+ fHVvn[j-kNHV]->SetTimeStampFloat(1,time1);
+ fHVvn[j-kNHV]->SetDelta(0,TMath::Abs(val1-val0));
+ fHVvn[j-kNHV]->SetTimeStampDelta(0,time1-time0);
+ }
+ else if (j<kNHV*3){
+ fHVip[j-2*kNHV]->SetFloat(0,val0);
+ fHVip[j-2*kNHV]->SetTimeStampFloat(0,time0);
+ fHVip[j-2*kNHV]->SetFloat(1,val1);
+ fHVip[j-2*kNHV]->SetTimeStampFloat(1,time1);
+ fHVip[j-2*kNHV]->SetDelta(0,TMath::Abs(val1-val0));
+ fHVip[j-2*kNHV]->SetTimeStampDelta(0,time1-time0);
+ }
+ else if (j<kNHV*4){
+ fHVin[j-3*kNHV]->SetFloat(0,val0);
+ fHVin[j-3*kNHV]->SetTimeStampFloat(0,time0);
+ fHVin[j-3*kNHV]->SetFloat(1,val1);
+ fHVin[j-3*kNHV]->SetTimeStampFloat(1,time1);
+ fHVin[j-3*kNHV]->SetDelta(0,TMath::Abs(val1-val0));
+ fHVin[j-3*kNHV]->SetTimeStampDelta(0,time1-time0);
+ }
continue;
}
Int_t nentries = aliasArr->GetEntries();
Int_t deltaTimeStamp = (Int_t) nentries/3;
Int_t deltaTimeStamp1 = (Int_t) nentries/2;
- AliDCSValue *lastDCSvalue = (AliDCSValue*) aliasArr->At(nentries-1);
- Float_t maxTimeStamp = (Float_t) (lastDCSvalue->GetTimeStamp());
- Float_t minTimeStamp = 0;
// filling aliases with 10 floats+1 Usign
- if (j < kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm){
- Int_t index = 0;
- for (Int_t k=0;k<3;k++){
- index = deltaTimeStamp*k;
- if (k==0) {
- index=0;
- }
- else if (k==1) {
- index=deltaTimeStamp1;
- }
- else if (k==2) {
- index=nentries-1;
- }
- aValue = (AliDCSValue*) aliasArr->At(index);
- val = aValue->GetFloat();
- time = (Float_t) (aValue->GetTimeStamp());
- if (j<kNHV){
- fHVvp[j]->SetFloat(k,val);
- fHVvp[j]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*2){
- fHVvn[j-kNHV]->SetFloat(k,val);
- fHVvn[j-kNHV]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*3){
- fHVip[j-2*kNHV]->SetFloat(k,val);
- fHVip[j-2*kNHV]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4){
- fHVin[j-3*kNHV]->SetFloat(k,val);
- fHVin[j-3*kNHV]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV){
- fLVv[j-4*kNHV]->SetFloat(k,val);
- fLVv[j-4*kNHV]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV*2){
- fLVi[j-4*kNHV-kNLV]->SetFloat(k,val);
- fLVi[j-4*kNHV-kNLV]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33){
- fLVv33[j-4*kNHV-2*kNLV]->SetFloat(k,val);
- fLVv33[j-4*kNHV-2*kNLV]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2){
- fLVi33[j-4*kNHV-2*kNLV-kNLV33]->SetFloat(k,val);
- fLVi33[j-4*kNHV-2*kNLV-kNLV33]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50){
- fLVv50[j-4*kNHV-2*kNLV-2*kNLV33]->SetFloat(k,val);
- fLVv50[j-4*kNHV-2*kNLV-2*kNLV33]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2){
- fLVi50[j-4*kNHV-2*kNLV-2*kNLV33-kNLV50]->SetFloat(k,val);
- fLVi50[j-4*kNHV-2*kNLV-2*kNLV33-kNLV50]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48){
- fLVv48[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50]->SetFloat(k,val);
- fLVv48[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2){
- fLVi48[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-kNLV48]->SetFloat(k,val);
- fLVi48[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-kNLV48]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr){
- fFEEthr[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48]->SetFloat(k,val);
- fFEEthr[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48]->SetTimeStampFloat(k,time);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac){
- fFEEtfeac[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr]->SetFloat(k,val);
- fFEEtfeac[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr]->SetTimeStampFloat(k,time);
- }
- else {
- fFEEttrm[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr-kNFEEtfeac]->SetFloat(k,val);
- fFEEttrm[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr-kNFEEtfeac]->SetTimeStampFloat(k,time);
- }
+ Int_t index = 0;
+ for (Int_t k=0;k<3;k++){
+ index = deltaTimeStamp*k;
+ if (k==0) {
+ index=0;
}
- }
-
- //filling Temperature and Pressure aliases
-
- else {
- Int_t entriesT=0;
- Int_t entriesP=0;
- if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm+1){
- histoT=new TH1F("histoT","histoT",nentries,minTimeStamp,maxTimeStamp);
+ else if (k==1) {
+ index=deltaTimeStamp1;
+ }
+ else if (k==2) {
+ index=nentries-1;
}
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm+2) {
- histoP=new TH1F("histoP","histoP",nentries,minTimeStamp,maxTimeStamp);
+ aValue = (AliDCSValue*) aliasArr->At(index);
+ val = aValue->GetFloat();
+ time = (Float_t) (aValue->GetTimeStamp());
+ if (j<kNHV){
+ fHVvp[j]->SetFloat(k,val);
+ fHVvp[j]->SetTimeStampFloat(k,time);
}
- while ((aValue = (AliDCSValue*) iterarray.Next())) {
- val = aValue->GetFloat();
- time = (Float_t) (aValue->GetTimeStamp());
- if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm+1){
- histoT->Fill(time,val);
- entriesT = (Int_t)(histoT->GetEntries());
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm+2){
- histoP->Fill(time,val);
- entriesP = (Int_t)(histoP->GetEntries());
- }
+ else if (j<kNHV*2){
+ fHVvn[j-kNHV]->SetFloat(k,val);
+ fHVvn[j-kNHV]->SetTimeStampFloat(k,time);
}
-
- if (j==kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm+1){
- entriesT = (Int_t)(histoT->GetEntries());
- histoT->Fit("pol1","Q","");
- histoP->Fit("pol1","Q","");
-
- TF1 *tempFunc = histoT->GetFunction("pol1");
- TF1 *pressFunc = histoP->GetFunction("pol1");
-
- SetInterceptT((Float_t)tempFunc->GetParameter(0));
- SetSlopeT((Float_t)tempFunc->GetParameter(1));
- SetMaxT((Float_t)histoT->GetMaximum());
- SetInterceptP((Float_t)pressFunc->GetParameter(0));
- SetSlopeP((Float_t)pressFunc->GetParameter(1));
- SetMaxP((Float_t)histoP->GetMaximum());
-
- TCanvas *chT;
- TString canvasHistoNameT="HistosT";
- chT=new TCanvas(canvasHistoNameT,canvasHistoNameT,20,20,600,600);
- chT->cd();
- histoT->Draw();
- TCanvas *chP;
- TString canvasHistoNameP="HistosP";
- chP=new TCanvas(canvasHistoNameP,canvasHistoNameP,20,20,600,600);
- chP->cd();
- histoP->Draw();
+ else if (j<kNHV*3){
+ fHVip[j-2*kNHV]->SetFloat(k,val);
+ fHVip[j-2*kNHV]->SetTimeStampFloat(k,time);
+ }
+ else if (j<kNHV*4){
+ fHVin[j-3*kNHV]->SetFloat(k,val);
+ fHVin[j-3*kNHV]->SetTimeStampFloat(k,time);
}
}
-
+
//computing the most significant variations
- Int_t deltamin = (Int_t)(60/(timeMax-timeMin)*nentries);
+ //Float_t timeDiff = (Float_t)(fEndTime-fStartTime);
+ Float_t timeDiff = (Float_t)(fEndTimeDCSQuery-fStartTimeDCSQuery);
+ Int_t deltamin = (Int_t)(60/timeDiff*nentries); //sampling every minute
Int_t klast = nentries-deltamin;
-
+
for (Int_t k=0;k<klast;k++){
aValue = (AliDCSValue*) aliasArr->At(k);
aValue1 = (AliDCSValue*) aliasArr->At(k+deltamin);
}
for (Int_t kk=0;kk<2;kk++){
- if (j < kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac){
- if (j<kNHV){
- fHVvp[j]->SetDelta(kk,delta[kk]);
- fHVvp[j]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*2){
- fHVvn[j-kNHV]->SetDelta(kk,delta[kk]);
- fHVvn[j-kNHV]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*3){
- fHVip[j-2*kNHV]->SetDelta(kk,delta[kk]);
- fHVip[j-2*kNHV]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4){
- fHVin[j-3*kNHV]->SetDelta(kk,delta[kk]);
- fHVin[j-3*kNHV]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV){
- fLVv[j-4*kNHV]->SetDelta(kk,delta[kk]);
- fLVv[j-4*kNHV]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2){
- fLVi[j-4*kNHV-kNLV]->SetDelta(kk,delta[kk]);
- fLVi[j-4*kNHV-kNLV]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33){
- fLVv33[j-4*kNHV-2*kNLV]->SetDelta(kk,delta[kk]);
- fLVv33[j-4*kNHV-2*kNLV]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2){
- fLVi33[j-4*kNHV-2*kNLV-kNLV33]->SetDelta(kk,delta[kk]);
- fLVi33[j-4*kNHV-2*kNLV-kNLV33]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50){
- fLVv50[j-4*kNHV-2*kNLV-2*kNLV33]->SetDelta(kk,delta[kk]);
- fLVv50[j-4*kNHV-2*kNLV-2*kNLV33]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2){
- fLVi50[j-4*kNHV-2*kNLV-2*kNLV33-kNLV50]->SetDelta(kk,delta[kk]);
- fLVi50[j-4*kNHV-2*kNLV-2*kNLV33-kNLV50]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48){
- fLVv48[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50]->SetDelta(kk,delta[kk]);
- fLVv48[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2){
- fLVi48[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-kNLV48]->SetDelta(kk,delta[kk]);
- fLVi48[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-kNLV48]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr){
- fFEEthr[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48]->SetDelta(kk,delta[kk]);
- fFEEthr[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac){
- fFEEtfeac[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr]->SetDelta(kk,delta[kk]);
- fFEEtfeac[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
- else if (j<kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm){
- fFEEttrm[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr-kNFEEtfeac]->SetDelta(kk,delta[kk]);
- fFEEttrm[j-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr-kNFEEtfeac]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
- }
+ if (j<kNHV){
+ fHVvp[j]->SetDelta(kk,delta[kk]);
+ fHVvp[j]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
}
-
-
- //filling for temperature and pressure
-
- else if (j==kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm){
- fT[2]=delta[1];
+ else if (j<kNHV*2){
+ fHVvn[j-kNHV]->SetDelta(kk,delta[kk]);
+ fHVvn[j-kNHV]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
}
- else if (j==kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm+1){
- fP[2]=delta[1];
+ else if (j<kNHV*3){
+ fHVip[j-2*kNHV]->SetDelta(kk,delta[kk]);
+ fHVip[j-2*kNHV]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
+ }
+ else if (j<kNHV*4){
+ fHVin[j-3*kNHV]->SetDelta(kk,delta[kk]);
+ fHVin[j-3*kNHV]->SetTimeStampDelta(kk,(Float_t)timedelta[kk]);
}
-
}
}
-
+
fIsProcessed=kTRUE;
return kTRUE;
fAliasNames[i] += sindex;
fHVin[i-3*kNHV] = new AliTOFFormatDCS();
}
- //LV, v
- else if (i<(kNHV*4+kNLV)){
- fAliasNames[i] = "tof_lv_vfea_";
- sindex.Form("%03i",i-4*kNHV);
- fAliasNames[i] += sindex;
- fLVv[i-4*kNHV] = new AliTOFFormatDCS();
- }
- //LV, i
- else if (i<(kNHV*4+kNLV*2)){
- fAliasNames[i] = "tof_lv_ifea_";
- sindex.Form("%03i",i-4*kNHV-kNLV);
- fAliasNames[i] += sindex;
- fLVi[i-4*kNHV-kNLV] = new AliTOFFormatDCS();
- }
- //LV 3.3, v
- else if (i<(kNHV*4+kNLV*2+kNLV33)){
- fAliasNames[i] = "tof_lv_v33_";
- sindex.Form("%02i",i-4*kNHV-2*kNLV);
- fAliasNames[i] += sindex;
- fLVv33[i-4*kNHV-2*kNLV] = new AliTOFFormatDCS();
- }
- //LV 3.3, i
- else if (i<(kNHV*4+kNLV*2+kNLV33*2)){
- fAliasNames[i] = "tof_lv_i33_";
- sindex.Form("%02i",i-4*kNHV-2*kNLV-kNLV33);
- fAliasNames[i] += sindex;
- fLVi33[i-4*kNHV-2*kNLV-kNLV33] = new AliTOFFormatDCS();
- }
- //LV 5.0, v
- else if (i<(kNHV*4+kNLV*2+kNLV33*2+kNLV50)){
- fAliasNames[i] = "tof_lv_v50_";
- sindex.Form("%02i",i-4*kNHV-2*kNLV-2*kNLV33);
- fAliasNames[i] += sindex;
- fLVv50[i-4*kNHV-2*kNLV-2*kNLV33] = new AliTOFFormatDCS();
- }
- //LV 5.0, i
- else if (i<(kNHV*4+kNLV*2+kNLV33*2+kNLV50*2)){
- fAliasNames[i] = "tof_lv_i50_";
- sindex.Form("%02i",i-4*kNHV-2*kNLV-2*kNLV33-kNLV50);
- fAliasNames[i] += sindex;
- fLVi50[i-4*kNHV-2*kNLV-2*kNLV33-kNLV50] = new AliTOFFormatDCS();
- }
- //LV 48, v
- else if (i<(kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48)){
- fAliasNames[i] = "tof_lv_v48_";
- sindex.Form("%02i",i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50);
- fAliasNames[i] += sindex;
- fLVv48[i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50] = new AliTOFFormatDCS();
- }
- //LV 48, i
- else if (i<(kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2)){
- fAliasNames[i] = "tof_lv_i48_";
- sindex.Form("%02i",i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-kNLV48);
- fAliasNames[i] += sindex;
- fLVi48[i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-kNLV48] = new AliTOFFormatDCS();
- }
- //FEE thresholds
- else if (i<(kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr)){
- fAliasNames[i] = "tof_fee_th_";
- sindex.Form("%04i",i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48);
- fAliasNames[i] += sindex;
- fFEEthr[i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48] = new AliTOFFormatDCS();
- }
- //FEE FEAC temperatures
- else if (i<(kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac)){
- fAliasNames[i] = "tof_fee_tfeac_";
- sindex.Form("%03i",i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr);
- fAliasNames[i] += sindex;
- fFEEtfeac[i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr] = new AliTOFFormatDCS();
- }
- //FEE trms temperatures
- else if (i<(kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm)){
- AliInfo(Form("**before temperature "));
- fAliasNames[i] = "tof_fee_ttrm_";
- sindex.Form("%04i",i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr-kNFEEtfeac);
- fAliasNames[i] += sindex;
- fFEEttrm[i-4*kNHV-2*kNLV-2*kNLV33-2*kNLV50-2*kNLV48-kNFEEthr-kNFEEtfeac] = new AliTOFFormatDCS();
- }
- //environment temperature
- else if (i<(kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm+1)){
- AliInfo(Form("**temperature "));
-
- fAliasNames[i] = "temperature";
- }
- //environment pressure
- else if (i<(kNHV*4+kNLV*2+kNLV33*2+kNLV50*2+kNLV48*2+kNFEEthr+kNFEEtfeac+kNFEEttrm+2)){
- fAliasNames[i] = "pressure";
- }
}
}
}
//---------------------------------------------------------------
-void AliTOFDataDCS::Draw(const Option_t* /*option*/) /*const*/
+void AliTOFDataDCS::Draw(const Option_t* /*option*/)
{
-// Draw all histos and graphs
+ // Draw all histos and graphs
if(!fIsProcessed) return;