]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - FMD/AliFMD2.cxx
Compilation warnings
[u/mrichter/AliRoot.git] / FMD / AliFMD2.cxx
index 1affdf0cba796a851bb27356db0af7017c31f0dd..8e86894a199a16be8a9d3f54a0354dbab7fff1ef 100644 (file)
  * about the suitability of this software for any purpose. It is          *
  * provided "as is" without express or implied warranty.                  *
  **************************************************************************/
-
 /* $Id$ */
-
+/** @file    AliFMD2.cxx
+    @author  Christian Holm Christensen <cholm@nbi.dk>
+    @date    Sun Mar 26 18:25:51 2006
+    @brief   Concrete implementation of AliFMDDetector for FMD2
+*/
 //____________________________________________________________________
 //                                                                          
-// Concrete implementation of AliFMDSubDetector 
+// Concrete implementation of AliFMDDetector 
 //
 // This implements the geometry for FMD2
+// The FMD2 has two ring, one of both types. 
+// FMD2 is mounted on the space-frame via 4 flanges
+// Support is not fleshed ot yet. 
+// Support will be simple compared to FMD3.
 //
-#ifndef ALIFMD2_H
-# include "AliFMD2.h"
-#endif 
-#ifndef ROOT_TVirtualMC
-# include <TVirtualMC.h>
-#endif
-#ifndef ALILOG_H
-# include "AliLog.h"
-#endif
-#ifndef ALIFMDRING_H
-# include "AliFMDRing.h"
-#endif 
+#include "AliFMD2.h"           // ALIFMD2_H 
+#include "AliLog.h"
+// #include "AliFMDRing.h"             // ALIFMDRING_H 
 
-//____________________________________________________________________
-ClassImp(AliFMD2);
-
-//____________________________________________________________________
-AliFMD2::AliFMD2() 
-  : AliFMDSubDetector(2) 
-{
-  // Default constructor for the FMD2 sub-detector 
-}
+//====================================================================
+ClassImp(AliFMD2)
+#if 0
+  ; // This is here to keep Emacs for indenting the next line
+#endif
 
 //____________________________________________________________________
-AliFMD2::~AliFMD2() 
+AliFMD2::AliFMD2(AliFMDRing* inner, AliFMDRing* outer) 
+  : AliFMDDetector(2, inner, outer)
 {
-  // Destructor - does nothing 
+  // Constructor 
+  // SetInnerZ(83.4);
+  // SetOuterZ(75.2);
+  // Double_t off = 0.414256-0.1963; // 2.35
+  Double_t off = 0; // 0.414256-0.1963+.27; // 2.35
+  if (off < 0) off = 0;
+  if (off != 0) 
+    AliWarning(Form("Z position of FMD2 rings may be wrong by %fcm!", off));
+  SetInnerZ(83.4+off);
+  SetOuterZ(75.2+off);
 }
 
 
 //____________________________________________________________________
-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);
+  // Initialize 
+  AliFMDDetector::Init();
+  SetInnerHoneyHighR(GetOuterHoneyHighR());
 }
 
-//____________________________________________________________________
-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);  
-}
-
-  
-
 //____________________________________________________________________
 //
 // EOF