- for(Int_t imod=0;imod<fgkNumberOfSDD;imod++){
- AliITSCalibrationSDD *cal = new AliITSCalibrationSDD("simulated");
- numOfBadChannels[imod]=0;
- Int_t badch[fgkNumberOfChannels];
- for(Int_t isid=0;isid<=1;isid++){
- sprintf(inpFileName,"./SDDbase_mod%03d_sid%d.data",imod,isid);
- FILE* basFil = fopen(inpFileName,"read");
- if (basFil == 0) {
- Log(Form("File %s not found.",inpFileName));
- return 2;
- }
- fscanf(basFil,"%d %d %d\n",&im,&is,&isgoodmod);
- if(!isgoodmod) cal->SetDead();
- for(Int_t ian=0;ian<(fgkNumberOfChannels/2);ian++){
- fscanf(basFil,"%d %d %f %d %d %f %f %f %f\n",&i,&isgoodan,&baseline,&basmin,&basoff,&rawnoise,&cmn,&corn,&gain);
- Int_t ich=ian;
- if(isid==1) ich+=256;
- if(!isgoodan){
- Int_t ibad=numOfBadChannels[imod];
- numOfBadChannels[imod]++;
- badch[ibad]=ich;
- }
- cal->SetBaseline(ich,baseline);
- cal->SetNoiseAfterElectronics(ich,rawnoise);
- Int_t iChip=cal->GetChip(ich);
- Int_t iChInChip=cal->GetChipChannel(ich);
- cal->SetGain(gain,isid,iChip,iChInChip);
- }
- cal->SetDeadChannels(numOfBadChannels[imod]);
- for(Int_t ibad=0;ibad<numOfBadChannels[imod];ibad++){
- cal->SetBadChannel(ibad,badch[ibad]);
- }
- fclose(basFil);
+ for(Int_t iddl=0;iddl<kNumberOfDDL;iddl++){
+ for(Int_t imod=0;imod<kModulesPerDDL;imod++){
+ Int_t modID=ddlmap->GetModuleNumber(iddl,imod);
+ if(modID==-1) continue;
+ modID-=240; // to have SDD modules numbering from 0 to 260
+ AliITSCalibrationSDD *cal = new AliITSCalibrationSDD("simulated");
+ numOfBadChannels[modID]=0;
+ Int_t badch[kNumberOfChannels];
+ for(Int_t isid=0;isid<=1;isid++){
+ sprintf(inpFileName,"./SDDbase_ddl%02dc%02d_sid%d.data",iddl,imod,isid);
+ FILE* basFil = fopen(inpFileName,"read");
+ if (basFil == 0) {
+ Log(Form("File %s not found.",inpFileName));
+ return 2;
+ }
+ fscanf(basFil,"%d %d %d\n",&im,&is,&isgoodmod);
+ if(!isgoodmod) cal->SetDead();
+ for(Int_t ian=0;ian<(kNumberOfChannels/2);ian++){
+ fscanf(basFil,"%d %d %f %d %d %f %f %f %f\n",&i,&isgoodan,&baseline,&basmin,&basoff,&rawnoise,&cmn,&corn,&gain);
+ Int_t ich=ian;
+ if(isid==1) ich+=256;
+ if(!isgoodan){
+ Int_t ibad=numOfBadChannels[modID];
+ badch[ibad]=ich;
+ numOfBadChannels[modID]++;
+ }
+ cal->SetBaseline(ich,baseline);
+ cal->SetNoiseAfterElectronics(ich,rawnoise);
+ Int_t iChip=cal->GetChip(ich);
+ Int_t iChInChip=cal->GetChipChannel(ich);
+ cal->SetGain(gain,isid,iChip,iChInChip);
+ }
+ cal->SetDeadChannels(numOfBadChannels[modID]);
+ for(Int_t ibad=0;ibad<numOfBadChannels[modID];ibad++){
+ cal->SetBadChannel(ibad,badch[ibad]);
+ }
+ fclose(basFil);
+ }
+ calSDD.AddAt(cal,modID);