ROOT logo
/**************************************************************************
 * Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

/* $Id$ */

///////////////////////////////////////////////////////////////////
//                                                               //
// Implementation of the class for SDD DDL mapping in the OCDB   //
// Origin: F.Prino, Torino, prino@to.infn.it                     //
//                                                               //
///////////////////////////////////////////////////////////////////

#include "AliITSDDLModuleMapSDD.h"
#include "AliLog.h"

ClassImp(AliITSDDLModuleMapSDD)


//______________________________________________________________________
AliITSDDLModuleMapSDD::AliITSDDLModuleMapSDD():TObject(){
  // default constructor
  SetDefaultMap();
}
//______________________________________________________________________
AliITSDDLModuleMapSDD::AliITSDDLModuleMapSDD(Char_t *ddlmapfile):TObject(){
  // constructor used to read DDL map  from text file
  ReadDDLModuleMap(ddlmapfile);
}
//______________________________________________________________________
void AliITSDDLModuleMapSDD::SetDefaultMap(){
  // Fill DDL map according to the default connection scheme
  Int_t defaultmap[kDDLsNumber][kModulesPerDDL] = 
    {
 
      {240,241,242,246,247,248,252,253,254,258,259,260},
      {264,265,266,270,271,272,276,277,278,282,283,284},
      {288,289,290,294,295,296,300,301,302,306,307,308},
      {312,313,314,318,319,320,-1,-1,-1,-1,-1,-1},
      {243,244,245,249,250,251,255,256,257,261,262,263},
      {267,268,269,273,274,275,279,280,281,285,286,287},
      {291,292,293,297,298,299,303,304,305,309,310,311},
      {315,316,317,321,322,323,-1,-1,-1,-1,-1,-1},
      {324,325,326,327,332,333,334,335,340,341,342,343},
      {348,349,350,351,356,357,358,359,364,365,366,367},
      {372,373,374,375,380,381,382,383,388,389,390,391},
      {396,397,398,399,404,405,406,407,412,413,414,415},
      {420,421,422,423,428,429,430,431,436,437,438,439},
      {444,445,446,447,452,453,454,455,460,461,462,463},
      {468,469,470,471,476,477,478,479,484,485,486,487},
      {492,493,494,495,-1,-1,-1,-1,-1,-1,-1,-1},
      {328,329,330,331,336,337,338,339,344,345,346,347},
      {352,353,354,355,360,361,362,363,368,369,370,371},
      {376,377,378,379,384,385,386,387,392,393,394,395},
      {400,401,402,403,408,409,410,411,416,417,418,419},
      {424,425,426,427,432,433,434,435,440,441,442,443},
      {448,449,450,451,456,457,458,459,464,465,466,467},
      {472,473,474,475,480,481,482,483,488,489,490,491},
      {496,497,498,499,-1,-1,-1,-1,-1,-1,-1,-1}
    };

  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      fDDLModuleMap[iddl][ichan]=defaultmap[iddl][ichan];
    }
  }
}

//______________________________________________________________________
void AliITSDDLModuleMapSDD::SetDec07part1Map(){
  // Fill DDL map according to dec07 cosmic run connections (run<14435)
  Int_t dec07part1map[kDDLsNumber][kModulesPerDDL] = 
    {
      {328,329,330,331,336,337,338,339,344,345,346,347}, //Crate TOP
      {352,353,354,355,-1,-1,-1,-1,-1,-1,-1,-1},
      {376,377,378,379,384,385,386,387,408,409,410,411},
      {400,401,402,403,392,393,394,395,416,417,418,419},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
    
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},   //Crate MED
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {368,369,370,371,360,361,362,363,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
    
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},   //Crate BOT
      {240,241,242,246,247,248,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,264,265,266,270,271,272},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {267,268,269,273,274,275,-1,-1,-1,-1,-1,-1},
      {243,244,245,249,250,251,255,256,257,261,262,263}
    };
  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      fDDLModuleMap[iddl][ichan]=dec07part1map[iddl][ichan];
    }
  }
}


//______________________________________________________________________
void AliITSDDLModuleMapSDD::SetDec07part2Map(){
  // Fill DDL map according to dec07 cosmic run connection (run>14435)
  Int_t dec07part2map[kDDLsNumber][kModulesPerDDL] = 
    {
      {328,329,330,331,336,337,338,339,344,345,346,347}, //Crate TOP
      {352,353,354,355,360,361,362,363,368,369,370,371},
      {376,377,378,379,384,385,386,387,408,409,410,411},
      {400,401,402,403,392,393,394,395,416,417,418,419},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},   //Crate MED
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},   //Crate BOT
      {240,241,242,246,247,248,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,264,265,266,270,271,272},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {267,268,269,273,274,275,-1,-1,-1,-1,-1,-1},
      {243,244,245,249,250,251,255,256,257,261,262,263}
    };
  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      fDDLModuleMap[iddl][ichan]=dec07part2map[iddl][ichan];
    }
  }
}

//______________________________________________________________________
void AliITSDDLModuleMapSDD::SetFeb08Map(){
  // Fill DDL map according to feb08 cosmic run connection 
  Int_t feb08map[kDDLsNumber][kModulesPerDDL] = 
    {
      {328,329,330,331,336,337,338,339,344,345,346,347}, //Crate TOP
      {352,353,354,355,360,361,362,363,368,369,370,371},
      {376,377,378,379,384,385,386,387,392,393,394,395},
      {400,401,402,403,408,409,410,411,416,417,418,419},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      
      {324,325,326,327,332,333,334,335,340,341,342,343},   //Crate MED
      {348,349,350,351,356,357,358,359,364,365,366,367},
      {372,373,374,375,380,381,382,383,388,389,390,391},
      {396,397,398,399,404,405,406,407,412,413,414,415},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},   //Crate BOT
      {240,241,242,246,247,248,-1,-1,-1,-1,-1,-1},
      {252,253,254,-1,-1,-1,264,265,266,270,271,272},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1},
      {273,274,275,267,268,269,-1,-1,-1,-1,-1,-1},
      {243,244,245,249,250,251,255,256,257,261,262,263}
    };
  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      fDDLModuleMap[iddl][ichan]=feb08map[iddl][ichan];
    }
  }
}

//______________________________________________________________________
void AliITSDDLModuleMapSDD::SetJun08Map(){
  // Fill DDL map according to jun08 cosmic run connection 
  Int_t jun08map[kDDLsNumber][kModulesPerDDL] = 
    {
      {328,329,330,331,336,337,338,339,344,345,346,347}, //Crate TOP
      {352,353,354,355,360,361,362,363,368,369,370,371},
      {376,377,378,379,384,385,386,387,392,393,394,395},
      {400,401,402,403,408,409,410,411,416,417,418,419},
      {424,425,426,427,432,433,434,435,440,441,442,443},
      {448,449,450,451,456,457,458,459,464,465,466,467},
      {472,473,474,475,480,481,482,483,488,489,490,491},
      {496,497,498,499,-1,-1,-1,-1,-1,-1,-1,-1},
      {324,325,326,327,332,333,334,335,340,341,342,343},//Crate MED
      {348,349,350,351,356,357,358,359,364,365,366,367},
      {372,373,374,375,380,381,382,383,388,389,390,391},
      {396,397,398,399,404,405,406,407,412,413,414,415},
      {420,421,422,423,428,429,430,431,436,437,438,439},
      {444,445,446,447,452,453,454,455,460,461,462,463},
      {468,469,470,471,476,477,478,479,484,485,486,487},
      {492,493,494,495,-1,-1,-1,-1,-1,-1,-1,-1},
      {240,241,242,246,247,248,252,253,254,276,277,278},//Crate BOT
      {264,265,266,270,271,272,258,259,260,282,283,284},
      {288,289,290,294,295,296,300,301,302,306,307,308},
      {312,313,314,318,319,320,-1,-1,-1,-1,-1,-1},
      {315,316,317,321,322,323,-1,-1,-1,-1,-1,263},
      {291,292,293,297,298,299,303,304,305,309,310,311},
      {267,268,269,273,274,275,279,280,281,285,286,287},
      {243,244,245,249,250,251,255,256,257,261,262,-1},
    };
  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      fDDLModuleMap[iddl][ichan]=jun08map[iddl][ichan];
    }
  }
}
//______________________________________________________________________
void AliITSDDLModuleMapSDD::SetJun09Map(){
  // Fill DDL map according to 2009 cosmic run connection 
  Int_t jun09map[kDDLsNumber][kModulesPerDDL] = 
    {
      {336,337,338,339,328,329,330,331,344,345,346,347}, //Crate TOP
      {352,353,354,355,360,361,362,363,368,369,370,371},
      {376,377,378,379,384,385,386,387,392,393,394,395},
      {400,401,402,403,408,409,410,411,416,417,418,419},
      {424,425,426,427,432,433,434,435,440,441,442,443},
      {448,449,450,451,456,457,458,459,464,465,466,467},
      {472,474,473,475,480,481,482,483,488,489,490,491},
      {496,497,498,499,-1,-1,-1,-1,-1,-1,-1,-1},
      {324,325,326,327,332,333,334,335,340,341,342,343},//Crate MED
      {348,349,350,351,356,357,358,359,364,365,366,367},
      {372,373,374,375,380,381,382,383,388,389,390,391},
      {396,397,398,399,404,405,406,407,412,413,414,415},
      {420,421,422,423,428,429,430,431,436,437,438,439},
      {444,445,446,447,452,453,454,455,460,461,462,463},
      {468,469,470,471,476,477,478,479,484,485,486,487},
      {492,493,494,495,-1,-1,-1,-1,-1,-1,-1,-1},
      {240,241,242,246,247,248,252,253,254,276,277,278},//Crate BOT
      {264,265,266,270,271,272,258,259,260,282,283,284},
      {288,289,290,294,295,296,300,301,302,306,307,308},
      {312,313,314,318,319,320,-1,-1,-1,-1,-1,-1},
      {315,316,317,323,322,321,-1,-1,-1,-1,-1,263},
      {291,292,293,297,298,299,303,304,305,309,310,311},
      {273,274,275,267,268,269,279,280,281,285,286,287},
      {243,244,245,249,250,251,255,256,257,261,262,-1},
    };
  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      fDDLModuleMap[iddl][ichan]=jun09map[iddl][ichan];
    }
  }
}

//______________________________________________________________________
void AliITSDDLModuleMapSDD::SetDDLMap(AliITSDDLModuleMapSDD* ddlmap){
// Fill DDL map
  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      fDDLModuleMap[iddl][ichan]=ddlmap->GetModuleNumber(iddl,ichan);
    }
  }
}
//______________________________________________________________________
void AliITSDDLModuleMapSDD::FindInDDLMap(Int_t modIndex, Int_t &iDDL, Int_t &iCarlos) const {
  // finds DDL and carlos number for a given module
  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      if(fDDLModuleMap[iddl][ichan]==modIndex){
	iDDL=iddl;
	iCarlos=ichan;
	return;
      }
    }
  }
  AliWarning("Module not found in DDL map");
  iDDL=-1;
  iCarlos=-1;
  return;
}
//______________________________________________________________________
void AliITSDDLModuleMapSDD::ReadDDLModuleMap(Char_t *ddlmapfile){
  // Fill DDL map from ASCCI data file
  FILE *fil;
  fil=fopen(ddlmapfile,"r");  
  Int_t mod;
  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      if(fscanf(fil,"%d",&mod)<1)AliError(Form("Not able to read file %s ",ddlmapfile));
      fDDLModuleMap[iddl][ichan]=mod;
    }
  }
  fclose(fil);
}

//______________________________________________________________________
void AliITSDDLModuleMapSDD::PrintDDLMap() const {
  // printout DDL map
  for(Int_t iddl=0;iddl<kDDLsNumber;iddl++){
    for(Int_t ichan=0; ichan<kModulesPerDDL; ichan++){
      printf("%d  ",fDDLModuleMap[iddl][ichan]);
    }
    printf("\n");
  }
}
 AliITSDDLModuleMapSDD.cxx:1
 AliITSDDLModuleMapSDD.cxx:2
 AliITSDDLModuleMapSDD.cxx:3
 AliITSDDLModuleMapSDD.cxx:4
 AliITSDDLModuleMapSDD.cxx:5
 AliITSDDLModuleMapSDD.cxx:6
 AliITSDDLModuleMapSDD.cxx:7
 AliITSDDLModuleMapSDD.cxx:8
 AliITSDDLModuleMapSDD.cxx:9
 AliITSDDLModuleMapSDD.cxx:10
 AliITSDDLModuleMapSDD.cxx:11
 AliITSDDLModuleMapSDD.cxx:12
 AliITSDDLModuleMapSDD.cxx:13
 AliITSDDLModuleMapSDD.cxx:14
 AliITSDDLModuleMapSDD.cxx:15
 AliITSDDLModuleMapSDD.cxx:16
 AliITSDDLModuleMapSDD.cxx:17
 AliITSDDLModuleMapSDD.cxx:18
 AliITSDDLModuleMapSDD.cxx:19
 AliITSDDLModuleMapSDD.cxx:20
 AliITSDDLModuleMapSDD.cxx:21
 AliITSDDLModuleMapSDD.cxx:22
 AliITSDDLModuleMapSDD.cxx:23
 AliITSDDLModuleMapSDD.cxx:24
 AliITSDDLModuleMapSDD.cxx:25
 AliITSDDLModuleMapSDD.cxx:26
 AliITSDDLModuleMapSDD.cxx:27
 AliITSDDLModuleMapSDD.cxx:28
 AliITSDDLModuleMapSDD.cxx:29
 AliITSDDLModuleMapSDD.cxx:30
 AliITSDDLModuleMapSDD.cxx:31
 AliITSDDLModuleMapSDD.cxx:32
 AliITSDDLModuleMapSDD.cxx:33
 AliITSDDLModuleMapSDD.cxx:34
 AliITSDDLModuleMapSDD.cxx:35
 AliITSDDLModuleMapSDD.cxx:36
 AliITSDDLModuleMapSDD.cxx:37
 AliITSDDLModuleMapSDD.cxx:38
 AliITSDDLModuleMapSDD.cxx:39
 AliITSDDLModuleMapSDD.cxx:40
 AliITSDDLModuleMapSDD.cxx:41
 AliITSDDLModuleMapSDD.cxx:42
 AliITSDDLModuleMapSDD.cxx:43
 AliITSDDLModuleMapSDD.cxx:44
 AliITSDDLModuleMapSDD.cxx:45
 AliITSDDLModuleMapSDD.cxx:46
 AliITSDDLModuleMapSDD.cxx:47
 AliITSDDLModuleMapSDD.cxx:48
 AliITSDDLModuleMapSDD.cxx:49
 AliITSDDLModuleMapSDD.cxx:50
 AliITSDDLModuleMapSDD.cxx:51
 AliITSDDLModuleMapSDD.cxx:52
 AliITSDDLModuleMapSDD.cxx:53
 AliITSDDLModuleMapSDD.cxx:54
 AliITSDDLModuleMapSDD.cxx:55
 AliITSDDLModuleMapSDD.cxx:56
 AliITSDDLModuleMapSDD.cxx:57
 AliITSDDLModuleMapSDD.cxx:58
 AliITSDDLModuleMapSDD.cxx:59
 AliITSDDLModuleMapSDD.cxx:60
 AliITSDDLModuleMapSDD.cxx:61
 AliITSDDLModuleMapSDD.cxx:62
 AliITSDDLModuleMapSDD.cxx:63
 AliITSDDLModuleMapSDD.cxx:64
 AliITSDDLModuleMapSDD.cxx:65
 AliITSDDLModuleMapSDD.cxx:66
 AliITSDDLModuleMapSDD.cxx:67
 AliITSDDLModuleMapSDD.cxx:68
 AliITSDDLModuleMapSDD.cxx:69
 AliITSDDLModuleMapSDD.cxx:70
 AliITSDDLModuleMapSDD.cxx:71
 AliITSDDLModuleMapSDD.cxx:72
 AliITSDDLModuleMapSDD.cxx:73
 AliITSDDLModuleMapSDD.cxx:74
 AliITSDDLModuleMapSDD.cxx:75
 AliITSDDLModuleMapSDD.cxx:76
 AliITSDDLModuleMapSDD.cxx:77
 AliITSDDLModuleMapSDD.cxx:78
 AliITSDDLModuleMapSDD.cxx:79
 AliITSDDLModuleMapSDD.cxx:80
 AliITSDDLModuleMapSDD.cxx:81
 AliITSDDLModuleMapSDD.cxx:82
 AliITSDDLModuleMapSDD.cxx:83
 AliITSDDLModuleMapSDD.cxx:84
 AliITSDDLModuleMapSDD.cxx:85
 AliITSDDLModuleMapSDD.cxx:86
 AliITSDDLModuleMapSDD.cxx:87
 AliITSDDLModuleMapSDD.cxx:88
 AliITSDDLModuleMapSDD.cxx:89
 AliITSDDLModuleMapSDD.cxx:90
 AliITSDDLModuleMapSDD.cxx:91
 AliITSDDLModuleMapSDD.cxx:92
 AliITSDDLModuleMapSDD.cxx:93
 AliITSDDLModuleMapSDD.cxx:94
 AliITSDDLModuleMapSDD.cxx:95
 AliITSDDLModuleMapSDD.cxx:96
 AliITSDDLModuleMapSDD.cxx:97
 AliITSDDLModuleMapSDD.cxx:98
 AliITSDDLModuleMapSDD.cxx:99
 AliITSDDLModuleMapSDD.cxx:100
 AliITSDDLModuleMapSDD.cxx:101
 AliITSDDLModuleMapSDD.cxx:102
 AliITSDDLModuleMapSDD.cxx:103
 AliITSDDLModuleMapSDD.cxx:104
 AliITSDDLModuleMapSDD.cxx:105
 AliITSDDLModuleMapSDD.cxx:106
 AliITSDDLModuleMapSDD.cxx:107
 AliITSDDLModuleMapSDD.cxx:108
 AliITSDDLModuleMapSDD.cxx:109
 AliITSDDLModuleMapSDD.cxx:110
 AliITSDDLModuleMapSDD.cxx:111
 AliITSDDLModuleMapSDD.cxx:112
 AliITSDDLModuleMapSDD.cxx:113
 AliITSDDLModuleMapSDD.cxx:114
 AliITSDDLModuleMapSDD.cxx:115
 AliITSDDLModuleMapSDD.cxx:116
 AliITSDDLModuleMapSDD.cxx:117
 AliITSDDLModuleMapSDD.cxx:118
 AliITSDDLModuleMapSDD.cxx:119
 AliITSDDLModuleMapSDD.cxx:120
 AliITSDDLModuleMapSDD.cxx:121
 AliITSDDLModuleMapSDD.cxx:122
 AliITSDDLModuleMapSDD.cxx:123
 AliITSDDLModuleMapSDD.cxx:124
 AliITSDDLModuleMapSDD.cxx:125
 AliITSDDLModuleMapSDD.cxx:126
 AliITSDDLModuleMapSDD.cxx:127
 AliITSDDLModuleMapSDD.cxx:128
 AliITSDDLModuleMapSDD.cxx:129
 AliITSDDLModuleMapSDD.cxx:130
 AliITSDDLModuleMapSDD.cxx:131
 AliITSDDLModuleMapSDD.cxx:132
 AliITSDDLModuleMapSDD.cxx:133
 AliITSDDLModuleMapSDD.cxx:134
 AliITSDDLModuleMapSDD.cxx:135
 AliITSDDLModuleMapSDD.cxx:136
 AliITSDDLModuleMapSDD.cxx:137
 AliITSDDLModuleMapSDD.cxx:138
 AliITSDDLModuleMapSDD.cxx:139
 AliITSDDLModuleMapSDD.cxx:140
 AliITSDDLModuleMapSDD.cxx:141
 AliITSDDLModuleMapSDD.cxx:142
 AliITSDDLModuleMapSDD.cxx:143
 AliITSDDLModuleMapSDD.cxx:144
 AliITSDDLModuleMapSDD.cxx:145
 AliITSDDLModuleMapSDD.cxx:146
 AliITSDDLModuleMapSDD.cxx:147
 AliITSDDLModuleMapSDD.cxx:148
 AliITSDDLModuleMapSDD.cxx:149
 AliITSDDLModuleMapSDD.cxx:150
 AliITSDDLModuleMapSDD.cxx:151
 AliITSDDLModuleMapSDD.cxx:152
 AliITSDDLModuleMapSDD.cxx:153
 AliITSDDLModuleMapSDD.cxx:154
 AliITSDDLModuleMapSDD.cxx:155
 AliITSDDLModuleMapSDD.cxx:156
 AliITSDDLModuleMapSDD.cxx:157
 AliITSDDLModuleMapSDD.cxx:158
 AliITSDDLModuleMapSDD.cxx:159
 AliITSDDLModuleMapSDD.cxx:160
 AliITSDDLModuleMapSDD.cxx:161
 AliITSDDLModuleMapSDD.cxx:162
 AliITSDDLModuleMapSDD.cxx:163
 AliITSDDLModuleMapSDD.cxx:164
 AliITSDDLModuleMapSDD.cxx:165
 AliITSDDLModuleMapSDD.cxx:166
 AliITSDDLModuleMapSDD.cxx:167
 AliITSDDLModuleMapSDD.cxx:168
 AliITSDDLModuleMapSDD.cxx:169
 AliITSDDLModuleMapSDD.cxx:170
 AliITSDDLModuleMapSDD.cxx:171
 AliITSDDLModuleMapSDD.cxx:172
 AliITSDDLModuleMapSDD.cxx:173
 AliITSDDLModuleMapSDD.cxx:174
 AliITSDDLModuleMapSDD.cxx:175
 AliITSDDLModuleMapSDD.cxx:176
 AliITSDDLModuleMapSDD.cxx:177
 AliITSDDLModuleMapSDD.cxx:178
 AliITSDDLModuleMapSDD.cxx:179
 AliITSDDLModuleMapSDD.cxx:180
 AliITSDDLModuleMapSDD.cxx:181
 AliITSDDLModuleMapSDD.cxx:182
 AliITSDDLModuleMapSDD.cxx:183
 AliITSDDLModuleMapSDD.cxx:184
 AliITSDDLModuleMapSDD.cxx:185
 AliITSDDLModuleMapSDD.cxx:186
 AliITSDDLModuleMapSDD.cxx:187
 AliITSDDLModuleMapSDD.cxx:188
 AliITSDDLModuleMapSDD.cxx:189
 AliITSDDLModuleMapSDD.cxx:190
 AliITSDDLModuleMapSDD.cxx:191
 AliITSDDLModuleMapSDD.cxx:192
 AliITSDDLModuleMapSDD.cxx:193
 AliITSDDLModuleMapSDD.cxx:194
 AliITSDDLModuleMapSDD.cxx:195
 AliITSDDLModuleMapSDD.cxx:196
 AliITSDDLModuleMapSDD.cxx:197
 AliITSDDLModuleMapSDD.cxx:198
 AliITSDDLModuleMapSDD.cxx:199
 AliITSDDLModuleMapSDD.cxx:200
 AliITSDDLModuleMapSDD.cxx:201
 AliITSDDLModuleMapSDD.cxx:202
 AliITSDDLModuleMapSDD.cxx:203
 AliITSDDLModuleMapSDD.cxx:204
 AliITSDDLModuleMapSDD.cxx:205
 AliITSDDLModuleMapSDD.cxx:206
 AliITSDDLModuleMapSDD.cxx:207
 AliITSDDLModuleMapSDD.cxx:208
 AliITSDDLModuleMapSDD.cxx:209
 AliITSDDLModuleMapSDD.cxx:210
 AliITSDDLModuleMapSDD.cxx:211
 AliITSDDLModuleMapSDD.cxx:212
 AliITSDDLModuleMapSDD.cxx:213
 AliITSDDLModuleMapSDD.cxx:214
 AliITSDDLModuleMapSDD.cxx:215
 AliITSDDLModuleMapSDD.cxx:216
 AliITSDDLModuleMapSDD.cxx:217
 AliITSDDLModuleMapSDD.cxx:218
 AliITSDDLModuleMapSDD.cxx:219
 AliITSDDLModuleMapSDD.cxx:220
 AliITSDDLModuleMapSDD.cxx:221
 AliITSDDLModuleMapSDD.cxx:222
 AliITSDDLModuleMapSDD.cxx:223
 AliITSDDLModuleMapSDD.cxx:224
 AliITSDDLModuleMapSDD.cxx:225
 AliITSDDLModuleMapSDD.cxx:226
 AliITSDDLModuleMapSDD.cxx:227
 AliITSDDLModuleMapSDD.cxx:228
 AliITSDDLModuleMapSDD.cxx:229
 AliITSDDLModuleMapSDD.cxx:230
 AliITSDDLModuleMapSDD.cxx:231
 AliITSDDLModuleMapSDD.cxx:232
 AliITSDDLModuleMapSDD.cxx:233
 AliITSDDLModuleMapSDD.cxx:234
 AliITSDDLModuleMapSDD.cxx:235
 AliITSDDLModuleMapSDD.cxx:236
 AliITSDDLModuleMapSDD.cxx:237
 AliITSDDLModuleMapSDD.cxx:238
 AliITSDDLModuleMapSDD.cxx:239
 AliITSDDLModuleMapSDD.cxx:240
 AliITSDDLModuleMapSDD.cxx:241
 AliITSDDLModuleMapSDD.cxx:242
 AliITSDDLModuleMapSDD.cxx:243
 AliITSDDLModuleMapSDD.cxx:244
 AliITSDDLModuleMapSDD.cxx:245
 AliITSDDLModuleMapSDD.cxx:246
 AliITSDDLModuleMapSDD.cxx:247
 AliITSDDLModuleMapSDD.cxx:248
 AliITSDDLModuleMapSDD.cxx:249
 AliITSDDLModuleMapSDD.cxx:250
 AliITSDDLModuleMapSDD.cxx:251
 AliITSDDLModuleMapSDD.cxx:252
 AliITSDDLModuleMapSDD.cxx:253
 AliITSDDLModuleMapSDD.cxx:254
 AliITSDDLModuleMapSDD.cxx:255
 AliITSDDLModuleMapSDD.cxx:256
 AliITSDDLModuleMapSDD.cxx:257
 AliITSDDLModuleMapSDD.cxx:258
 AliITSDDLModuleMapSDD.cxx:259
 AliITSDDLModuleMapSDD.cxx:260
 AliITSDDLModuleMapSDD.cxx:261
 AliITSDDLModuleMapSDD.cxx:262
 AliITSDDLModuleMapSDD.cxx:263
 AliITSDDLModuleMapSDD.cxx:264
 AliITSDDLModuleMapSDD.cxx:265
 AliITSDDLModuleMapSDD.cxx:266
 AliITSDDLModuleMapSDD.cxx:267
 AliITSDDLModuleMapSDD.cxx:268
 AliITSDDLModuleMapSDD.cxx:269
 AliITSDDLModuleMapSDD.cxx:270
 AliITSDDLModuleMapSDD.cxx:271
 AliITSDDLModuleMapSDD.cxx:272
 AliITSDDLModuleMapSDD.cxx:273
 AliITSDDLModuleMapSDD.cxx:274
 AliITSDDLModuleMapSDD.cxx:275
 AliITSDDLModuleMapSDD.cxx:276
 AliITSDDLModuleMapSDD.cxx:277
 AliITSDDLModuleMapSDD.cxx:278
 AliITSDDLModuleMapSDD.cxx:279
 AliITSDDLModuleMapSDD.cxx:280
 AliITSDDLModuleMapSDD.cxx:281
 AliITSDDLModuleMapSDD.cxx:282
 AliITSDDLModuleMapSDD.cxx:283
 AliITSDDLModuleMapSDD.cxx:284
 AliITSDDLModuleMapSDD.cxx:285
 AliITSDDLModuleMapSDD.cxx:286
 AliITSDDLModuleMapSDD.cxx:287
 AliITSDDLModuleMapSDD.cxx:288
 AliITSDDLModuleMapSDD.cxx:289
 AliITSDDLModuleMapSDD.cxx:290
 AliITSDDLModuleMapSDD.cxx:291
 AliITSDDLModuleMapSDD.cxx:292
 AliITSDDLModuleMapSDD.cxx:293
 AliITSDDLModuleMapSDD.cxx:294
 AliITSDDLModuleMapSDD.cxx:295
 AliITSDDLModuleMapSDD.cxx:296
 AliITSDDLModuleMapSDD.cxx:297
 AliITSDDLModuleMapSDD.cxx:298
 AliITSDDLModuleMapSDD.cxx:299
 AliITSDDLModuleMapSDD.cxx:300
 AliITSDDLModuleMapSDD.cxx:301
 AliITSDDLModuleMapSDD.cxx:302
 AliITSDDLModuleMapSDD.cxx:303
 AliITSDDLModuleMapSDD.cxx:304
 AliITSDDLModuleMapSDD.cxx:305
 AliITSDDLModuleMapSDD.cxx:306
 AliITSDDLModuleMapSDD.cxx:307
 AliITSDDLModuleMapSDD.cxx:308
 AliITSDDLModuleMapSDD.cxx:309
 AliITSDDLModuleMapSDD.cxx:310
 AliITSDDLModuleMapSDD.cxx:311
 AliITSDDLModuleMapSDD.cxx:312
 AliITSDDLModuleMapSDD.cxx:313
 AliITSDDLModuleMapSDD.cxx:314
 AliITSDDLModuleMapSDD.cxx:315
 AliITSDDLModuleMapSDD.cxx:316
 AliITSDDLModuleMapSDD.cxx:317
 AliITSDDLModuleMapSDD.cxx:318
 AliITSDDLModuleMapSDD.cxx:319
 AliITSDDLModuleMapSDD.cxx:320
 AliITSDDLModuleMapSDD.cxx:321