1 void MakeAllDETsZeroMisAlignment(Char_t* CDBstorage = "local://$HOME/Zero"){
2 // Make zero 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
7 TString strStorage(CDBstorage);
8 if(strStorage.IsNull()){
9 gSystem->Setenv("TOCDB","kFALSE");
11 gSystem->Setenv("TOCDB","kTRUE");
12 gSystem->Setenv("STORAGE",strStorage.Data());
13 gSystem->Setenv("ARVERSION","v4-05-08");
16 // if not already present, create geometry file needed by those detectors
17 // producing their objects in the local RS
18 if(gSystem->AccessPathName("./geometry.root")){
20 gGeoManager->Export("geometry.root");
22 TGeoManager::Import("geometry.root");
25 TString dets="EMCAL,FMD,HMPID,ITS,MUON,PMD,PHOS,T0,TRD,TPC,TOF,VZERO,ZDC";
26 TObjArray *detArray = dets.Tokenize(',');
29 TString exec_det_macro;
31 while((ostr = (TObjString*) iter.Next())){
32 TString str(ostr->String());
33 exec_det_macro="aliroot -b -q $ALICE_ROOT/";
35 exec_det_macro+="/Make";
37 exec_det_macro+="ZeroMisAlignment.C";
39 gSystem->Exec(exec_det_macro.Data());