]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - FMD/AliFMD2.cxx
Added new library libFMDutil. This library contains utility classes that
[u/mrichter/AliRoot.git] / FMD / AliFMD2.cxx
index 0e72c477b65ef3b08dec6bb8c1caf7a6bf71d9ea..37ac44a271b2b7ff45fb5915bbcc295c9b65dec9 100644 (file)
 
 //____________________________________________________________________
 //                                                                          
-// Concrete implementation of AliFMDSubDetector 
+// Concrete implementation of AliFMDDetector 
 //
 // This implements the geometry for FMD2
 //
 #include "AliFMD2.h"           // ALIFMD2_H 
-#include "TVirtualMC.h"                // ROOT_TVirtualMC
-#include "AliLog.h"            // ALILOG_H
 #include "AliFMDRing.h"                // ALIFMDRING_H 
 
-//____________________________________________________________________
-ClassImp(AliFMD2);
+//====================================================================
+ClassImp(AliFMD2)
+#if 0
+  ; // This is here to keep Emacs for indenting the next line
+#endif
 
 //____________________________________________________________________
-AliFMD2::AliFMD2() 
-  : AliFMDSubDetector(2) 
+AliFMD2::AliFMD2(AliFMDRing* inner, AliFMDRing* outer
+  : AliFMDDetector(2, inner, outer)
 {
-  // Default constructor for the FMD2 sub-detector 
-}
-
-//____________________________________________________________________
-AliFMD2::~AliFMD2() 
-{
-  // Destructor - does nothing 
+  SetInnerZ(83.4);
+  SetOuterZ(75.2);
 }
 
 
 //____________________________________________________________________
-void 
-AliFMD2::SetupGeometry(Int_t airId, Int_t kaptionId
+void
+AliFMD2::Init(
 {
-  // Setup the FMD2 sub-detector geometry 
-  // 
-  // Parameters:
-  // 
-  //     airId         Id # of the Air medium 
-  //     kaptionId     Id # of the Aluminium medium 
-  // 
-  fInnerHoneyLowR  = fInner->GetLowR() + 1;
-  fInnerHoneyHighR = fOuter->GetHighR() + 1;
-  fOuterHoneyLowR  = fOuter->GetLowR() + 1;
-  fOuterHoneyHighR = fOuter->GetHighR() + 1;
-
-  Double_t par[3];
-  par[0] = fInner->GetLowR();
-  par[1] = fOuterHoneyHighR;
-  par[2] = fDz = (TMath::Abs(fInnerZ - fOuterZ)
-                 + fInner->GetSiThickness() 
-                 + fInner->GetPrintboardThickness() 
-                 + fInner->GetLegLength() 
-                 + fInner->GetModuleSpacing() 
-                 + fHoneycombThickness) / 2;
-  fVolumeId = gMC->Gsvolu("FMD2", "TUBE", airId, par, 3);
-
-  // Rotate the full sub-detector 
-  gMC->Matrix(fRotationId, 270, 180, 90, 90, 180, 0); 
-
-  AliFMDSubDetector::SetupGeometry(airId, kaptionId);
-}
-
-//____________________________________________________________________
-void 
-AliFMD2::Geometry(const char* mother, Int_t pbRotId, 
-                 Int_t idRotId, Double_t z) 
-{
-  // Position the FMD2 sub-detector volume 
-  // 
-  // Parameters 
-  //
-  //     mother     name of the mother volume 
-  //     pbRotId    Printboard roation matrix ID 
-  //     idRotId    Identity rotation matrix ID 
-  //     z          Z position (not really used here, but passed down)
-  //
-  z = fDz + fOuterZ;
-  AliFMDSubDetector::Geometry("FMD2", pbRotId, idRotId, z);
-  gMC->Gspos("FMD2", 1, mother, 0, 0, z, fRotationId);  
+  AliFMDDetector::Init();
+  SetInnerHoneyHighR(GetOuterHoneyHighR());
 }
 
-  
-
 //____________________________________________________________________
 //
 // EOF