]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSHandleDaSSD.cxx
AddTaskFemto for train update
[u/mrichter/AliRoot.git] / ITS / AliITSHandleDaSSD.cxx
index 4a0223b3404d2bf5b7a4fa2f5a6f6f4d9b8b1f2f..fc01e7b1caba7963d1ff98a2f0e191b9e8cdaec9 100644 (file)
@@ -33,6 +33,7 @@
 #include "event.h"
 #include "TFile.h"
 #include "TString.h"
+#include "TMath.h"
 #include "AliLog.h"
 #include "AliITSNoiseSSDv2.h"
 #include "AliITSPedestalSSDv2.h"
@@ -311,7 +312,7 @@ Bool_t AliITSHandleDaSSD::Init(Char_t *rdfname)
       datasize = rawreaderdate->GetDataSize();
       eqbelsize = rawreaderdate->GetEquipmentElementSize();
       if ( datasize % eqbelsize ) {
-        AliError(Form("AliITSHandleDaSSD: Error Init(%s): event data size %i is not an integer of equipment data size %i", 
+        AliError(Form("AliITSHandleDaSSD: Error Init(%s): event data size %ld is not an integer of equipment data size %ld", 
                                    rdfname, datasize, eqbelsize));
         MakeZombie();
            return kFALSE;
@@ -319,7 +320,7 @@ Bool_t AliITSHandleDaSSD::Init(Char_t *rdfname)
       nofstripsev += (Int_t) (datasize / eqbelsize);
     }
     if (physeventind++) {
-      if (nofstrips != nofstripsev) AliWarning(Form("AliITSHandleDaSSD: number of strips varies from event to event, ev = %i, %i", 
+      if (nofstrips != nofstripsev) AliWarning(Form("AliITSHandleDaSSD: number of strips varies from event to event, ev = %ld, %ld", 
                                                      physeventind, nofstripsev));
       if (nofeqipment != nofeqipmentev) AliWarning("AliITSHandleDaSSD: number of DDLs varies from event to event");
     }
@@ -341,7 +342,7 @@ Bool_t AliITSHandleDaSSD::Init(Char_t *rdfname)
     else AliWarning(Form("AliITSHandleDaSSD: Error Init(%s): Index array for %i modules was not created", 
                                      rdfname, fgkNumberOfSSDModulesPerDdl * eqn));
     if (SetNumberOfModules(fgkNumberOfSSDModulesPerDdl * eqn)) {
-      TString str = TString::Format("Max number of equipment: %i, max number of channels: %i\n", eqn, strn);
+      TString str = TString::Format("Max number of equipment: %d, max number of channels: %ld\n", eqn, strn);
       DumpInitData(str.Data());
       return kTRUE;
     }  
@@ -509,7 +510,7 @@ Bool_t AliITSHandleDaSSD::ReadDDLModuleMap(const Char_t *filename)
   Int_t ind = 0;
   while((!ddlmfile.eof()) && (ind < (fgkNumberOfSSDDDLs * fgkNumberOfSSDModulesPerDdl))) {
     ddlmfile >> fDDLModuleMap[ind++];
-    if (ddlmfile.fail()) AliError(Form("Error extracting number from the DDL map file %s, ind: ", filename, ind));
+    if (ddlmfile.fail()) AliError(Form("Error extracting number from the DDL map file %s, ind: %d ", filename, ind));
   }
   if (ind != (fgkNumberOfSSDDDLs * fgkNumberOfSSDModulesPerDdl))
     AliWarning(Form("Only %i (< %i) entries were read from DDL Map!", ind, (fgkNumberOfSSDDDLs * fgkNumberOfSSDModulesPerDdl)));
@@ -642,9 +643,9 @@ Bool_t AliITSHandleDaSSD::RelocateModules()
 
 
 //______________________________________________________________________________
-Bool_t AliITSHandleDaSSD::AddFeromCm(AliITSModuleDaSSD *const module)
-// Restore the original signal value adding CM calculated and subtracted in ferom
+Bool_t AliITSHandleDaSSD::AddFeromCm(const AliITSModuleDaSSD *const module)
 {
+// Restore the original signal value adding CM calculated and subtracted in ferom
   AliITSChannelDaSSD *strip;
   Short_t            *signal, *cmferom;
 
@@ -676,7 +677,7 @@ Bool_t AliITSHandleDaSSD::AddFeromCm(AliITSModuleDaSSD *const module)
 
 
 //______________________________________________________________________________
-Bool_t AliITSHandleDaSSD::CalculatePedestal(AliITSModuleDaSSD *const module)
+Bool_t AliITSHandleDaSSD::CalculatePedestal(const AliITSModuleDaSSD *const module)
 {
 // Calculates Pedestal
   AliITSChannelDaSSD *strip;
@@ -725,7 +726,7 @@ Bool_t AliITSHandleDaSSD::CalculatePedestal(AliITSModuleDaSSD *const module)
 
 
 //______________________________________________________________________________
-Bool_t AliITSHandleDaSSD::CalculateNoise(AliITSModuleDaSSD *const module)
+Bool_t AliITSHandleDaSSD::CalculateNoise(const AliITSModuleDaSSD *const module)
 {
 // Calculates Noise
   AliITSChannelDaSSD *strip;
@@ -849,7 +850,7 @@ Bool_t AliITSHandleDaSSD::CalculateCM(AliITSModuleDaSSD *const module)
       if ((n = AliITSModuleDaSSD::GetStripsPerChip() - ovstr)) cmsum /= (Float_t)(n);
       else cmsum = 0.0L;
       if (!(module->SetCM(cmsum, chipind, ev))) 
-        AliError(Form("AliITSHandleDaSSD: Error, module->SetCM(...) returned kFALSE module:chip:event : [%i]:[%i]:[%i]\n",
+        AliError(Form("AliITSHandleDaSSD: Error, module->SetCM(...) returned kFALSE module:chip:event : [%d]:[%d]:[%ld]\n",
                           module->GetModuleId(), chipind, ev));
     } 
   }
@@ -1015,7 +1016,8 @@ Bool_t AliITSHandleDaSSD::SaveCalibrationSSDLDC(Char_t*& dafname)
   if (dafname) dadatafilename.Form("%s/", dafname);
   dadatafilename += TString::Format("ITSSSDda_%i.root", fLdcId);
   tmpfname = new Char_t[dadatafilename.Length()+1];
-  dafname = strcpy(tmpfname, dadatafilename.Data());
+  Int_t sz = dadatafilename.Sizeof();
+  dafname = strncpy(tmpfname, dadatafilename.Data(),sz);
   TFile *fileRun = new TFile (dadatafilename.Data(),"RECREATE");
   if (fileRun->IsZombie()) {
     AliError(Form("AliITSHandleDaSSD: SaveCalibrationSSDLDC() error open file %s", dadatafilename.Data()));
@@ -1188,6 +1190,7 @@ Bool_t AliITSHandleDaSSD::AllocateSimulatedModules(const Int_t copymodind)
       fModules[modind] = module;
       for (Int_t strind = 0; strind < module->GetNumberOfStrips(); strind++) {
         AliITSChannelDaSSD *cstrip = fModules[copymodind]->GetStrip(strind);
+       if(!cstrip)return kFALSE;
         Long_t      eventsnumber = cstrip->GetEventsNumber();
         AliITSChannelDaSSD *strip = new AliITSChannelDaSSD(strind, eventsnumber);
         for (Long_t evind = 0; evind < eventsnumber; evind++) {
@@ -1222,8 +1225,8 @@ Bool_t AliITSHandleDaSSD::AdDataPresent(const Int_t ddl, const Int_t ad) const
 
 //___________________________________________________________________________________________
 Bool_t AliITSHandleDaSSD::SaveEqSlotCalibrationData(const Int_t ddl, const Int_t ad, const Char_t *fname) const
-// Saves calibration files for selected equipment (DDL)
 {
+// Saves calibration files for selected equipment (DDL)
   fstream    feefile;
   Int_t      zsml, offsetml;
   ULong_t    zsth, offset, zsoffset;
@@ -1269,7 +1272,7 @@ Int_t AliITSHandleDaSSD::ChannelIsBad(const UChar_t ddl, const UChar_t ad, const
     modn = RetrieveModuleId(ddl, ad, adc);
     if (modn < 0) return -1;
     if (modn < fgkMinSSDModuleId) {
-      AliWarning(Form("Module ddl/ad/adc: %i/%i/%i has number %i which is wrong for SSD module", ddl, ad, adc, strn, modn));
+      AliWarning(Form("Module ddl/ad/adc: %d/%d/%d has number %d which is wrong for SSD module %d", ddl, ad, adc, strn, modn));
          return -1;
     }
     Short_t modid = modn - fgkMinSSDModuleId;
@@ -1376,7 +1379,7 @@ ULong_t AliITSHandleDaSSD::OffsetValue(const UChar_t ddl, const UChar_t ad, cons
 
 
 //______________________________________________________________________________
-ULong_t AliITSHandleDaSSD::ZsThreshold(AliITSChannelDaSSD *strip) const
+ULong_t AliITSHandleDaSSD::ZsThreshold(const AliITSChannelDaSSD *strip) const
 { 
 // Calculate the value of zero suppression threshold to be upload to FEROM
   ULong_t zs;
@@ -1488,7 +1491,7 @@ Int_t AliITSHandleDaSSD::CheckOffChips() const
 
 
 //______________________________________________________________________________
-Bool_t AliITSHandleDaSSD::CalculatePedNoiseW(AliITSModuleDaSSD *const module)
+Bool_t AliITSHandleDaSSD::CalculatePedNoiseW(const AliITSModuleDaSSD *const module)
 {
 // Calculates Pedestal and Noise using Welford algorithm
   AliITSChannelDaSSD *strip;
@@ -1590,10 +1593,10 @@ Bool_t AliITSHandleDaSSD::CalculateCMW(AliITSModuleDaSSD *const module)
       }
       if ((n = AliITSModuleDaSSD::GetStripsPerChip() - ovstr - 1) > 0) cmsigma = sqrt(cmsigma / static_cast<Double_t>(n));
       else {
-        AliWarning(Form("AliITSHandleDaSSD: Too little number of strips have a signal for module:chip:event : [%i]:[%i]:[%i]\n",
+        AliWarning(Form("AliITSHandleDaSSD: Too little number of strips have a signal for module:chip:event : [%d]:[%d]:[%ld]\n",
                    module->GetModuleId(), chipind, ev));
         if (!(module->SetCM(0.0f, chipind, ev))) 
-          AliError(Form("AliITSHandleDaSSD: Error, module->SetCM(...) returned kFALSE module:chip:event : [%i]:[%i]:[%i]\n",
+          AliError(Form("AliITSHandleDaSSD: Error, module->SetCM(...) returned kFALSE module:chip:event : [%d]:[%d]:[%ld]\n",
                    module->GetModuleId(), chipind, ev));
         continue;
       }
@@ -1610,7 +1613,7 @@ Bool_t AliITSHandleDaSSD::CalculateCMW(AliITSModuleDaSSD *const module)
       if ((n = AliITSModuleDaSSD::GetStripsPerChip() - ovstr)) cmsum /= (Double_t)(n);
       else cmsum = 0.0L;
       if (!(module->SetCM(static_cast<Float_t>(cmsum), chipind, ev))) 
-        AliError(Form("AliITSHandleDaSSD: Error, module->SetCM(...) returned kFALSE module:chip:event : [%i]:[%i]:[%i]\n",
+        AliError(Form("AliITSHandleDaSSD: Error, module->SetCM(...) returned kFALSE module:chip:event : [%d]:[%d]:[%ld]\n",
                  module->GetModuleId(), chipind, ev));
     } 
   }