Using symbolic names (Raffaele)
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 14 Nov 2006 10:25:15 +0000 (10:25 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 14 Nov 2006 10:25:15 +0000 (10:25 +0000)
VZERO/AliVZERO.h
VZERO/AliVZEROv7.cxx
VZERO/AliVZEROv7.h

index 249eeac..8b9778e 100755 (executable)
@@ -39,6 +39,7 @@ public:
   virtual void   BuildGeometry();
   virtual void   CreateGeometry();
   virtual void   CreateMaterials();
+  virtual void   AddAlignableVolumes() const {}
   virtual Int_t  DistanceToPrimitive(Int_t px, Int_t py);
   virtual Int_t  IsVersion() const = 0;
   virtual void   Init();
index 3e79dad..5447e75 100644 (file)
@@ -592,6 +592,27 @@ void AliVZEROv7::CreateGeometry()
     vZERO->AddNode(v0LE,1,new TGeoTranslation(0, 0, +340));
     top->AddNode(vZERO,1);
 }
+
+//_____________________________________________________________________________
+void AliVZEROv7::AddAlignableVolumes() const
+{
+  //
+  // Create entries for alignable volumes associating the symbolic volume
+  // name with the corresponding volume path. Needs to be syncronized with
+  // eventual changes in the geometry.
+  // 
+  TString vpC = "/ALIC_1/VZERO_1/V0RI_1";
+  TString vpA = "/ALIC_1/VZERO_1/V0LE_1";
+  TString snC = "VZERO/V0C";
+  TString snA = "VZERO/V0A";
+  
+  if(!gGeoManager->SetAlignableEntry(snC.Data(),vpC.Data()))
+    AliFatal(Form("Alignable entry %s not created. Volume path %s not valid", snC.Data(),vpC.Data()));
+  if(!gGeoManager->SetAlignableEntry(snA.Data(),vpA.Data()))
+    AliFatal(Form("Alignable entry %s not created. Volume path %s not valid", snA.Data(),vpA.Data()));
+
+} 
+
 //_____________________________________________________________________________
 void AliVZEROv7::CreateMaterials()
 {
index 4f98bc6..3a0e7b6 100644 (file)
@@ -24,6 +24,7 @@ public:
   virtual void   AddHit(Int_t track, Int_t *vol, Float_t *hits); 
   virtual void   AddDigits(Int_t *tracks, Int_t *digits);
   virtual void   CreateGeometry();
+  virtual void   AddAlignableVolumes() const;
   virtual void   BuildGeometry();
   virtual void   CreateMaterials();
   virtual void   DrawModule() const;