START becomes T0
[u/mrichter/AliRoot.git] / macros / MakeAllDETsFullMisAlignment.C
1 void MakeAllDETsFullMisAlignment(Char_t* CDBstorage = "local://$HOME/Full"){
2   // Make full misalignment objects for all detectors
3   // Pass different "CDBstorage" argument if needed (e.g. to fill
4   // conditions' data base on alien) or set it to null string to have
5   // the objects saved locally on file 
6   // This macro defines the default name and place for the detector-macros
7   // in charge of producing the full misalignment objects as 
8   // $ALICE_ROOT/DET/MakeDETFullMisAlignment.C
9   //
10   TString strStorage(CDBstorage);
11   if(strStorage.IsNull()){
12     gSystem->Setenv("$TOCDB","kFALSE");
13   }else{  
14     gSystem->Setenv("$TOCDB","kTRUE");
15     gSystem->Setenv("$STORAGE",strStorage.Data());
16     gSystem->Setenv("$ARVERSION","v4-04-Release");
17   }
18
19   // if not already present, create geometry file needed by those detectors
20   // producing their objects in the local RS
21   if(gSystem->AccessPathName("./geometry.root")){
22     gAlice->Init();
23     gGeoManager->Export("geometry.root");
24   }else{
25     TGeoManager::Import("geometry.root");
26   }
27
28   TString dets = "EMCAL,FMD,ITS,MUON,PHOS,PMD,HMPID,T0,TOF,TPC,TRD,VZERO,ZDC";
29 //   TString dets = "ABSO,DIPO,FMD,FRAME,HALL,ITS,MAG,MUON,PHOS,PIPE,PMD,HMPID,SHIL,T0,TOF,TPC,TRD,ZDC,EMCAL,CRT,VZERO";
30   TObjArray *detArray = dets.Tokenize(',');
31   TIter iter(detArray);
32   TObjString *ostr;
33   TString exec_det_macro;
34
35   while((ostr = (TObjString*) iter.Next())){
36     TString str(ostr->String());
37     exec_det_macro="aliroot -b -q $ALICE_ROOT/";
38     exec_det_macro+=str;
39     exec_det_macro+="/Make";
40     exec_det_macro+=str;
41     exec_det_macro+="FullMisAlignment.C";
42     
43     gSystem->Exec(exec_det_macro.Data());
44   }
45
46   return;
47 }