]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Additional protection in case of partial geometry
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 5 Jun 2007 13:35:08 +0000 (13:35 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 5 Jun 2007 13:35:08 +0000 (13:35 +0000)
TRD/AliTRDv1.cxx

index 697ab9fe7fe6a26b13078936b0657f6cc126439f..e61b4150b23ae338cf4444b5251faa50b5c18334 100644 (file)
@@ -176,21 +176,26 @@ void AliTRDv1::AddAlignableVolumes() const
         symName += snApp2;
         symName += iplan;
 
-        gGeoManager->SetAlignableEntry(symName.Data(),volPath.Data());
+        TGeoPNEntry *alignableEntry = 
+         gGeoManager->SetAlignableEntry(symName.Data(),volPath.Data());
 
        // Add the tracking to local matrix following the TPC example
-        TGeoPNEntry *alignableEntry = gGeoManager->GetAlignableEntry(symName.Data());
-        const char *path = alignableEntry->GetTitle();
-        if (!gGeoManager->cd(path)) {
-          AliFatal(Form("Volume path %s not valid!",path));
-       }
-        TGeoHMatrix *globMatrix = gGeoManager->GetCurrentMatrix();
-        Double_t sectorAngle = 20.0 * (isect % 18) + 10.0;
-        TGeoHMatrix *t2lMatrix  = new TGeoHMatrix();
-        t2lMatrix->RotateZ(sectorAngle);
-        t2lMatrix->MultiplyLeft(&(globMatrix->Inverse()));
-        alignableEntry->SetMatrix(t2lMatrix);
 
+       if (alignableEntry) {
+         const char *path = alignableEntry->GetTitle();
+         if (!gGeoManager->cd(path)) {
+           AliFatal(Form("Volume path %s not valid!",path));
+         }
+         TGeoHMatrix *globMatrix = gGeoManager->GetCurrentMatrix();
+         Double_t sectorAngle = 20.0 * (isect % 18) + 10.0;
+         TGeoHMatrix *t2lMatrix  = new TGeoHMatrix();
+         t2lMatrix->RotateZ(sectorAngle);
+         t2lMatrix->MultiplyLeft(&(globMatrix->Inverse()));
+         alignableEntry->SetMatrix(t2lMatrix);
+       }
+       else {
+         AliError(Form("Alignable entry %s is not valid!",symName.Data()));
+       }
       }
     }
   }