Converted all float (AliLHCDipValF) records to double (AliLHCDipValD)
authorshahoian <shahoian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 6 Apr 2012 12:44:52 +0000 (12:44 +0000)
committershahoian <shahoian@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 6 Apr 2012 12:44:52 +0000 (12:44 +0000)
to prevent FPE if LHC DIP supplies garbage values

STEER/STEER/AliLHCData.cxx
STEER/STEER/AliLHCData.h

index 8c5e79f..c18f588 100755 (executable)
@@ -355,8 +355,8 @@ Int_t AliLHCData::FillScalarRecord(int refs[2], const char* rec, const char* rec
     AliDCSArray *dcsVal = (AliDCSArray*) arr->At(iFirst++);\r
     double tstamp = dcsVal->GetTimeStamp();\r
     //\r
-    AliLHCDipValF* curValF = new AliLHCDipValF(dim,tstamp);  // start new period\r
-    (*curValF)[0] = ExtractDouble(dcsVal,0);     // value\r
+    AliLHCDipValD* curValD = new AliLHCDipValD(dim,tstamp);  // start new period\r
+    (*curValD)[0] = ExtractDouble(dcsVal,0);     // value\r
     //\r
     if (recErr) {\r
       double errVal = -1;\r
@@ -365,18 +365,18 @@ Int_t AliLHCData::FillScalarRecord(int refs[2], const char* rec, const char* rec
         double tstampE = dcsValE->GetTimeStamp();\r
         int tdif = TimeDifference(tstamp,tstampE);\r
         if (!tdif) { // error matches to value\r
-          errVal = ExtractDouble(dcsValE,0);\r
+         errVal = ExtractDouble(dcsVal,0);     // value\r
          iFirstE++; \r
          break;\r
        }\r
         else if (tdif>0) iFirstE++; // error time lags behind, read the next one\r
         else break;                 // error time is ahead of value, no error associated\r
       }\r
-      (*curValF)[dim-1] = errVal;   // error\r
-      curValF->SetLastSpecial();    // lable the last entry as an error\r
+      (*curValD)[dim-1] = errVal;   // error\r
+      curValD->SetLastSpecial();    // lable the last entry as an error\r
     }\r
     //\r
-    fData.Add(curValF);\r
+    fData.Add(curValD);\r
     refs[kNStor]++;\r
     // if (last) break;\r
   }\r
@@ -531,16 +531,16 @@ Int_t AliLHCData::FillBunchInfo(int refs[2],const char* rec, int ibm, Bool_t inR
       continue;\r
     }\r
     double* dcsArr = dcsVal->GetDouble();\r
-    AliLHCDipValF* curValF = new AliLHCDipValF(nbunch,tstamp);\r
+    AliLHCDipValD* curValD = new AliLHCDipValD(nbunch,tstamp);\r
     for (int i=nbunch;i--;) {\r
       int ind = inRealSlots ? (*bconf)[i]/10 : i;\r
       if (ind>nSlots) {\r
        AliError(Form("Bunch %d refers to wrong slot %d, set to -1",i,(*bconf)[i]));\r
-       (*curValF)[i] = -1;\r
+       (*curValD)[i] = -1;\r
       }\r
-      else (*curValF)[i] = dcsArr[ind];\r
+      else (*curValD)[i] = dcsArr[ind];\r
     }\r
-    fData.Add(curValF);\r
+    fData.Add(curValD);\r
     refs[kNStor]++;\r
   }\r
   if (fkFile2Process) delete arr;\r
@@ -597,7 +597,7 @@ Int_t AliLHCData::FillBCLuminosities(int refs[2],const char* rec, const char* re
       arrE=GetDCSEntry(recErr,iFirstE,iLastE,fTMin,fTMax);\r
       dim += 1;\r
     }\r
-    AliLHCDipValF* curValF = new AliLHCDipValF(dim,tstamp);\r
+    AliLHCDipValD* curValD = new AliLHCDipValD(dim,tstamp);\r
     int cnt = 0;\r
     for (int i=0;i<nbunch;i++) {\r
       int slot = (*bconf)[i];\r
@@ -606,9 +606,9 @@ Int_t AliLHCData::FillBCLuminosities(int refs[2],const char* rec, const char* re
       int ind = TMath::Abs(slot)/10;\r
       if (ind>nSlots) {\r
        AliError(Form("Bunch %d refers to wrong slot %d, set to -1",cnt,slot));\r
-       (*curValF)[cnt] = -1;\r
+       (*curValD)[cnt] = -1;\r
       }\r
-      else (*curValF)[cnt] = dcsArr[ind];\r
+      else (*curValD)[cnt] = dcsArr[ind];\r
       cnt++;\r
     }\r
     //\r
@@ -626,11 +626,11 @@ Int_t AliLHCData::FillBCLuminosities(int refs[2],const char* rec, const char* re
        else if (tdif>0) iFirstE++; // error time lags behind, read the next one\r
        else break;                 // error time is ahead of value, no error associated\r
       }\r
-      (*curValF)[dim-1] = errVal;   // error\r
-      curValF->SetLastSpecial();    // lable the last entry as an error\r
+      (*curValD)[dim-1] = errVal;   // error\r
+      curValD->SetLastSpecial();    // lable the last entry as an error\r
     }\r
     //\r
-    fData.Add(curValF);\r
+    fData.Add(curValD);\r
     refs[kNStor]++;\r
   }\r
   if (fkFile2Process) {\r
@@ -971,7 +971,7 @@ Int_t AliLHCData::GetMeanIntensity(int beamID, Double_t &colliding, Double_t &no
   //\r
   for (int irec=0;irec<nrec;irec++) {\r
     //\r
-    AliLHCDipValF* rInt = GetIntensityPerBunch(beamID,irec);\r
+    AliLHCDipValD* rInt = GetIntensityPerBunch(beamID,irec);\r
     for (int ib=0;ib<nb;ib++) {\r
       double val = rInt->GetValue(ib);\r
       if (val<0) continue;\r
index e10fdf3..06a3820 100755 (executable)
@@ -103,24 +103,24 @@ class AliLHCData : public TObject
   Int_t GetNCollimatorJawPos(int coll,int jaw)    const;\r
   //\r
   AliLHCDipValI* GetBunchConfigMeasured(int bm, int i=0)  const;\r
-  AliLHCDipValF* GetBunchLengths(int bm, int i=0)         const;\r
+  AliLHCDipValD* GetBunchLengths(int bm, int i=0)         const;\r
   AliLHCDipValI* GetBunchConfigDeclared(int bm, int i=0)  const;\r
-  AliLHCDipValF* GetTotalIntensity(int bm, int i=0)       const;\r
-  AliLHCDipValF* GetTotalIntensityAv(int bm, int i=0)     const;\r
-  AliLHCDipValF* GetIntensityPerBunch(int bm, int i=0)    const;\r
-  AliLHCDipValF* GetEmittanceH(int bm, int i=0)           const;\r
-  AliLHCDipValF* GetEmittanceV(int bm, int i=0)           const;\r
-  AliLHCDipValF* GetBeamSigmaH(int bm, int i=0)           const;\r
-  AliLHCDipValF* GetBeamSigmaV(int bm, int i=0)           const;\r
-  AliLHCDipValF* GetLuminosityTotal(int lr, int i=0)      const;\r
-  AliLHCDipValF* GetLuminosityPerBunch(int lr, int i=0)   const;\r
+  AliLHCDipValD* GetTotalIntensity(int bm, int i=0)       const;\r
+  AliLHCDipValD* GetTotalIntensityAv(int bm, int i=0)     const;\r
+  AliLHCDipValD* GetIntensityPerBunch(int bm, int i=0)    const;\r
+  AliLHCDipValD* GetEmittanceH(int bm, int i=0)           const;\r
+  AliLHCDipValD* GetEmittanceV(int bm, int i=0)           const;\r
+  AliLHCDipValD* GetBeamSigmaH(int bm, int i=0)           const;\r
+  AliLHCDipValD* GetBeamSigmaV(int bm, int i=0)           const;\r
+  AliLHCDipValD* GetLuminosityTotal(int lr, int i=0)      const;\r
+  AliLHCDipValD* GetLuminosityPerBunch(int lr, int i=0)   const;\r
   AliLHCDipValI* GetLuminosityAcqMode(int lr, int i=0)    const;\r
-  AliLHCDipValF* GetCrossAngle(int lr, int i=0)           const;\r
+  AliLHCDipValD* GetCrossAngle(int lr, int i=0)           const;\r
   AliLHCDipValC* GetInjectionScheme(int i=0)              const;\r
-  AliLHCDipValF* GetRCBetaStar(int i=0)                   const;\r
-  AliLHCDipValF* GetRCAngleH(int i=0)                     const; \r
-  AliLHCDipValF* GetRCAngleV(int i=0)                     const; \r
-  AliLHCDipValF* GetCollimJawPos(int coll, int jaw, int i=0) const;\r
+  AliLHCDipValD* GetRCBetaStar(int i=0)                   const;\r
+  AliLHCDipValD* GetRCAngleH(int i=0)                     const; \r
+  AliLHCDipValD* GetRCAngleV(int i=0)                     const; \r
+  AliLHCDipValD* GetCollimJawPos(int coll, int jaw, int i=0) const;\r
   //\r
   void           FlagInteractingBunches(const Int_t beam1[2],const Int_t beam2[2]);\r
   TObject*       FindRecValidFor(int start,int nrec, double tstamp) const;\r
@@ -227,7 +227,7 @@ class AliLHCData : public TObject
   const Char_t*   fkFile2Process;                      //! name of DCS file\r
   const TMap*     fkMap2Process;                       //! DCS map to process \r
 \r
-  ClassDef(AliLHCData,1)\r
+  ClassDef(AliLHCData,2)\r
 };\r
 \r
 \r
@@ -244,77 +244,77 @@ inline AliLHCDipValI* AliLHCData::GetBunchConfigMeasured(int bm, int i) const {
   return (GoodPairID(bm) && i>=0 && i<fBunchConfMeas[bm][kNStor]) ? (AliLHCDipValI*)fData[fBunchConfMeas[bm][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetBunchLengths(int bm, int i) const { // get record\r
-  return (GoodPairID(bm) && i>=0 && i<fBunchLengths[bm][kNStor]) ? (AliLHCDipValF*)fData[fBunchLengths[bm][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetBunchLengths(int bm, int i) const { // get record\r
+  return (GoodPairID(bm) && i>=0 && i<fBunchLengths[bm][kNStor]) ? (AliLHCDipValD*)fData[fBunchLengths[bm][kStart]+i]:0;\r
 }\r
 \r
 inline AliLHCDipValI* AliLHCData::GetBunchConfigDeclared(int bm, int i) const { // get record\r
   return (GoodPairID(bm) && i>=0 && i<fBunchConfDecl[bm][kNStor]) ? (AliLHCDipValI*)fData[fBunchConfDecl[bm][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetTotalIntensity(int bm, int i) const { // get record\r
-  return (GoodPairID(bm) && i>=0 && i<fIntensTotal[bm][kNStor]) ? (AliLHCDipValF*)fData[fIntensTotal[bm][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetTotalIntensity(int bm, int i) const { // get record\r
+  return (GoodPairID(bm) && i>=0 && i<fIntensTotal[bm][kNStor]) ? (AliLHCDipValD*)fData[fIntensTotal[bm][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetTotalIntensityAv(int bm, int i) const { // get record\r
-  return (GoodPairID(bm) && i>=0 && i<fIntensTotalAv[bm][kNStor]) ? (AliLHCDipValF*)fData[fIntensTotalAv[bm][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetTotalIntensityAv(int bm, int i) const { // get record\r
+  return (GoodPairID(bm) && i>=0 && i<fIntensTotalAv[bm][kNStor]) ? (AliLHCDipValD*)fData[fIntensTotalAv[bm][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetIntensityPerBunch(int bm, int i) const { // get record\r
-  return (GoodPairID(bm) && i>=0 && i<fIntensPerBunch[bm][kNStor]) ? (AliLHCDipValF*)fData[fIntensPerBunch[bm][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetIntensityPerBunch(int bm, int i) const { // get record\r
+  return (GoodPairID(bm) && i>=0 && i<fIntensPerBunch[bm][kNStor]) ? (AliLHCDipValD*)fData[fIntensPerBunch[bm][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetEmittanceH(int bm, int i) const { // get record\r
-  return (GoodPairID(bm) && i>=0 && i<fEmittanceH[bm][kNStor]) ? (AliLHCDipValF*)fData[fEmittanceH[bm][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetEmittanceH(int bm, int i) const { // get record\r
+  return (GoodPairID(bm) && i>=0 && i<fEmittanceH[bm][kNStor]) ? (AliLHCDipValD*)fData[fEmittanceH[bm][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetEmittanceV(int bm, int i) const { // get record\r
-  return (GoodPairID(bm) && i>=0 && i<fEmittanceV[bm][kNStor]) ? (AliLHCDipValF*)fData[fEmittanceV[bm][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetEmittanceV(int bm, int i) const { // get record\r
+  return (GoodPairID(bm) && i>=0 && i<fEmittanceV[bm][kNStor]) ? (AliLHCDipValD*)fData[fEmittanceV[bm][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetBeamSigmaH(int bm, int i) const { // get record\r
-  return (GoodPairID(bm) && i>=0 && i<fBeamSigmaH[bm][kNStor]) ? (AliLHCDipValF*)fData[fBeamSigmaH[bm][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetBeamSigmaH(int bm, int i) const { // get record\r
+  return (GoodPairID(bm) && i>=0 && i<fBeamSigmaH[bm][kNStor]) ? (AliLHCDipValD*)fData[fBeamSigmaH[bm][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetBeamSigmaV(int bm, int i) const { // get record\r
-  return (GoodPairID(bm) && i>=0 && i<fBeamSigmaV[bm][kNStor]) ? (AliLHCDipValF*)fData[fBeamSigmaV[bm][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetBeamSigmaV(int bm, int i) const { // get record\r
+  return (GoodPairID(bm) && i>=0 && i<fBeamSigmaV[bm][kNStor]) ? (AliLHCDipValD*)fData[fBeamSigmaV[bm][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetLuminosityTotal(int lr, int i) const { // get record\r
-  return (GoodPairID(lr) && i>=0 && i<fLuminTotal[lr][kNStor]) ? (AliLHCDipValF*)fData[fLuminTotal[lr][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetLuminosityTotal(int lr, int i) const { // get record\r
+  return (GoodPairID(lr) && i>=0 && i<fLuminTotal[lr][kNStor]) ? (AliLHCDipValD*)fData[fLuminTotal[lr][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetLuminosityPerBunch(int lr, int i) const { // get record\r
-  return (GoodPairID(lr) && i>=0 && i<fLuminPerBC[lr][kNStor]) ? (AliLHCDipValF*)fData[fLuminPerBC[lr][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetLuminosityPerBunch(int lr, int i) const { // get record\r
+  return (GoodPairID(lr) && i>=0 && i<fLuminPerBC[lr][kNStor]) ? (AliLHCDipValD*)fData[fLuminPerBC[lr][kStart]+i]:0;\r
 }\r
 \r
 inline AliLHCDipValI* AliLHCData::GetLuminosityAcqMode(int lr, int i) const { // get record\r
   return (GoodPairID(lr) && i>=0 && i<fLuminAcqMode[lr][kNStor]) ? (AliLHCDipValI*)fData[fLuminAcqMode[lr][kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetCrossAngle(int lr, int i) const { // get record\r
-  return (GoodPairID(lr) && i>=0 && i<fCrossAngle[lr][kNStor]) ? (AliLHCDipValF*)fData[fCrossAngle[lr][kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetCrossAngle(int lr, int i) const { // get record\r
+  return (GoodPairID(lr) && i>=0 && i<fCrossAngle[lr][kNStor]) ? (AliLHCDipValD*)fData[fCrossAngle[lr][kStart]+i]:0;\r
 }\r
 \r
 inline AliLHCDipValC* AliLHCData::GetInjectionScheme(int i) const { // get record\r
   return (i>=0 && i<fRCInjScheme[kNStor]) ? (AliLHCDipValC*)fData[fRCInjScheme[kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetRCBetaStar(int i) const { // get record\r
-  return (i>=0 && i<fRCBeta[kNStor]) ? (AliLHCDipValF*)fData[fRCBeta[kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetRCBetaStar(int i) const { // get record\r
+  return (i>=0 && i<fRCBeta[kNStor]) ? (AliLHCDipValD*)fData[fRCBeta[kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetRCAngleH(int i) const { // get record\r
-  return (i>=0 && i<fRCAngH[kNStor]) ? (AliLHCDipValF*)fData[fRCAngH[kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetRCAngleH(int i) const { // get record\r
+  return (i>=0 && i<fRCAngH[kNStor]) ? (AliLHCDipValD*)fData[fRCAngH[kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetRCAngleV(int i) const { // get record\r
-  return (i>=0 && i<fRCAngV[kNStor]) ? (AliLHCDipValF*)fData[fRCAngV[kStart]+i]:0;\r
+inline AliLHCDipValD* AliLHCData::GetRCAngleV(int i) const { // get record\r
+  return (i>=0 && i<fRCAngV[kNStor]) ? (AliLHCDipValD*)fData[fRCAngV[kStart]+i]:0;\r
 }\r
 \r
-inline AliLHCDipValF* AliLHCData::GetCollimJawPos(int coll, int jaw, int i) const { // get record\r
+inline AliLHCDipValD* AliLHCData::GetCollimJawPos(int coll, int jaw, int i) const { // get record\r
   return (coll>=0 && coll<kNCollimators && jaw>=0 && jaw<kNJaws && \r
-         i>=0 && i<fCollimators[coll][jaw][kNStor]) ? (AliLHCDipValF*)fData[fCollimators[coll][jaw][kStart]+i]:0;\r
+         i>=0 && i<fCollimators[coll][jaw][kNStor]) ? (AliLHCDipValD*)fData[fCollimators[coll][jaw][kStart]+i]:0;\r
 }\r
 \r
 \r