+ const char* filenameOut="ITSfullModuleMisalignment.root";
+ TClonesArray* ar = 0;
+
+ AliCDBManager* cdb = AliCDBManager::Instance();
+
+ // Activate CDB storage and load geometry from CDB
+ if( TString(gSystem->Getenv("TOCDB")) == TString("kTRUE") ){
+ TString Storage = gSystem->Getenv("STORAGE");
+ if(!Storage.BeginsWith("local://") && !Storage.BeginsWith("alien://")) {
+ Error(macroname,"STORAGE variable set to %s is not valid. Exiting\n",Storage.Data());
+ return;
+ }
+ cdb->SetDefaultStorage(Storage.Data());
+ cdb->SetRun(0);
+ AliCDBEntry *entry = cdb->Get("GRP/Geometry/Data");
+ if(!entry) Fatal("Could not get the specified CDB entry!");
+ entry->SetOwner(0);
+ TGeoManager* geom = (TGeoManager*) entry->GetObject();
+ AliGeomManager::SetGeometry(geom);
+ AliCDBEntry* eItsAlign = cdb->Get("ITS/Align/Data");
+ ar = (TClonesArray*)eItsAlign->GetObject();
+ if(!ar) {
+ Fatal("Could not get the alignment-objects array from the CDB entry!");
+ return;
+ }
+ }else{
+ cdb->SetDefaultStorage("local://$ALICE_ROOT/OCDB");
+ cdb->SetRun(0);
+ AliGeomManager::LoadGeometry("geometry.root"); //load geom from default CDB storage
+ const char* filename="ITSfullMisalignment.root";
+ TFile* f = TFile::Open(filename);
+ if(!f) {cerr<<"cannot open input file\n"; return;}
+ ar = (TClonesArray*)f->Get("ITSAlignObjs");
+ if(!ar) {
+ Fatal("Could not get the alignment-objects array from the file %s!", filename);
+ return;
+ }
+ }
+