]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MFT/AliMFTPlane.h
Corrected EINCLUDE
[u/mrichter/AliRoot.git] / MFT / AliMFTPlane.h
index 6961ee2470de78cd1d335e90c4aa264cd1d1e667..e50da0b763bd5d80d9fc034d8459dc7892da290f 100644 (file)
@@ -33,9 +33,10 @@ public:
   AliMFTPlane(const Char_t *name, const Char_t *title);
   AliMFTPlane(const AliMFTPlane& pt);
   AliMFTPlane& operator=(const AliMFTPlane &source);
-
-  virtual ~AliMFTPlane() {};  // destructor
-
+  
+  virtual ~AliMFTPlane();  // destructor
+  virtual void Clear(const Option_t* /*opt*/);
+  
   Bool_t Init(Int_t    planeNumber,
              Double_t zCenter, 
              Double_t rMin, 
@@ -44,13 +45,14 @@ public:
              Double_t pixelSizeY, 
              Double_t thicknessActive, 
              Double_t thicknessSupport, 
-             Double_t thicknessReadout);
+             Double_t thicknessReadout,
+             Bool_t   hasPixelRectangularPatternAlongY);
   
   Bool_t CreateStructure();
 
-  Int_t GetNActiveElements()  { return fActiveElements->GetEntries();  }
-  Int_t GetNReadoutElements() { return fReadoutElements->GetEntries(); }
-  Int_t GetNSupportElements() { return fSupportElements->GetEntries(); }
+  Int_t GetNActiveElements()  const { return fActiveElements->GetEntries();  }
+  Int_t GetNReadoutElements() const { return fReadoutElements->GetEntries(); }
+  Int_t GetNSupportElements() const { return fSupportElements->GetEntries(); }
 
   TClonesArray* GetActiveElements()  { return fActiveElements;  }
   TClonesArray* GetReadoutElements() { return fReadoutElements; }
@@ -60,37 +62,40 @@ public:
   THnSparseC* GetReadoutElement(Int_t id);
   THnSparseC* GetSupportElement(Int_t id);
 
-  Bool_t IsFront(THnSparseC *element) { return (element->GetAxis(2)->GetXmin() < fZCenter); }
+  Bool_t IsFront(THnSparseC *element) const { return (element->GetAxis(2)->GetXmin() < fZCenter); }
 
-  void DrawPlane(Char_t *opt="");
+  void DrawPlane(Option_t *opt="");
 
-  Double_t GetRMinSupport() { return fRMinSupport; }
-  Double_t GetRMaxSupport() { return fRMaxSupport; }
+  Double_t GetRMinSupport() const { return fRMinSupport; }
+  Double_t GetRMaxSupport() const { return fRMaxSupport; }
   Double_t GetThicknessSupport() { return GetSupportElement(0)->GetAxis(2)->GetXmax() - GetSupportElement(0)->GetAxis(2)->GetXmin(); }
   
-  Double_t GetZCenter() { return fZCenter; }
-  Double_t GetZCenterActiveFront() { return fZCenterActiveFront; }
-  Double_t GetZCenterActiveBack()  { return fZCenterActiveBack; }
+  Double_t GetZCenter()            const { return fZCenter; }
+  Double_t GetZCenterActiveFront() const { return fZCenterActiveFront; }
+  Double_t GetZCenterActiveBack()  const { return fZCenterActiveBack; }
 
   void SetEquivalentSilicon(Double_t equivalentSilicon)                       { fEquivalentSilicon            = equivalentSilicon; }
   void SetEquivalentSiliconBeforeFront(Double_t equivalentSiliconBeforeFront) { fEquivalentSiliconBeforeFront = equivalentSiliconBeforeFront; }
   void SetEquivalentSiliconBeforeBack(Double_t equivalentSiliconBeforeBack)   { fEquivalentSiliconBeforeBack  = equivalentSiliconBeforeBack; }
-  Double_t GetEquivalentSilicon()            { return fEquivalentSilicon; }
-  Double_t GetEquivalentSiliconBeforeFront() { return fEquivalentSiliconBeforeFront; }
-  Double_t GetEquivalentSiliconBeforeBack()  { return fEquivalentSiliconBeforeBack; }
+  Double_t GetEquivalentSilicon()            const { return fEquivalentSilicon; }
+  Double_t GetEquivalentSiliconBeforeFront() const { return fEquivalentSiliconBeforeFront; }
+  Double_t GetEquivalentSiliconBeforeBack()  const { return fEquivalentSiliconBeforeBack; }
+
+  Int_t GetNumberOfChips(Option_t *opt);
+  Bool_t HasPixelRectangularPatternAlongY() { return fHasPixelRectangularPatternAlongY; }
   
 private:
 
   // measures in cm
 
-  static const Double_t fRadiusMin = 2.225;           // minimum radial distance of the MFT sensors. To be carefully coordinated with fActiveSuperposition
+  static const Double_t fRadiusMin           // minimum radial distance of the MFT sensors. To be carefully coordinated with fActiveSuperposition
 
-  static const Double_t fActiveSuperposition = 0.05;  // superposition between the active elements tasselling the MFT planes, for having a 
-                                                      // full acceptance coverage even in case of 10 degrees inclined tracks
-  static const Double_t fHeightActive = 0.5;          // height of the active elements
-  static const Double_t fHeightReadout = 0.3;         // height of the readout elements attached to the active ones
+  static const Double_t fActiveSuperposition;  // superposition between the active elements tasselling the MFT planes, for having a 
+                                               // full acceptance coverage even in case of 10 degrees inclined tracks
+  static const Double_t fHeightActive;         // height of the active elements
+  static const Double_t fHeightReadout;        // height of the readout elements attached to the active ones
 
-  static const Double_t fSupportExtMargin = 0.3 + 0.3;    // minimum border size between the end of the support plane and the sensors: fHeightReadout + 0.3
+  static const Double_t fSupportExtMargin    // minimum border size between the end of the support plane and the sensors: fHeightReadout + 0.3
 
   Int_t fPlaneNumber;
 
@@ -99,6 +104,8 @@ private:
 
   TClonesArray *fActiveElements, *fReadoutElements, *fSupportElements;
 
+  Bool_t fHasPixelRectangularPatternAlongY, fPlaneIsOdd;
+
   ClassDef(AliMFTPlane, 1)
 
 };