mev2adc defined to be const
[u/mrichter/AliRoot.git] / PMD / AliPMDDigitizer.h
index d62fe78a07046fd924802c0b73798299e9d85d0d..f2532cf944c8de84f15765f1bff826f5724f6cc6 100644 (file)
@@ -1,5 +1,7 @@
-#ifndef PMDDigitizer_H
-#define PMDDigitizer_H
+#ifndef ALIPMDDIGITIZER_H
+#define ALIPMDDIGITIZER_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice                               */
 //-----------------------------------------------------//
 //                                                     //
 //  Header File : PMDDigitization.h, Version 00        //
@@ -8,16 +10,9 @@
 //                                                     //
 //-----------------------------------------------------//
 
-#include <Riostream.h>
-#include <stdlib.h>
-#include <math.h>
-#include <TMath.h>
-#include <vector>
-#include <algorithm>
-
 class TClonesArray;
 class TFile;
-
+class TMath;
 class TObjArray;
 class TParticle;
 class TTree;
@@ -35,69 +30,26 @@ class AliPMDcell;
 class AliPMDsdigit;
 class AliPMDdigit;
 class AliPMDClustering;
-class AliPMDContainer;
-class AliPMDrecpoint;
-
-using namespace std;
 
 class AliPMDDigitizer
 {
- protected:
-  AliRunLoader *fRunLoader;
-  AliRun       *gAlice;
-  AliPMDhit    *pmdHit;   /* Pointer to specific detector hits. */
-  AliDetector  *PMD;      /* Get pointers to Alice detectors 
-                            and Hits containers */
-  AliLoader    *pmdloader;
-
-  TClonesArray *PMDhits;
-  TObjArray    *Particles;
-  TParticle    *particle;
-
-  TTree        *treeH;
-  TTree        *treeS;
-  TTree        *treeD;
-  TTree        *treeR;
-
-  TClonesArray *fSDigits;
-  TClonesArray *fDigits;
-  TClonesArray *fRecpoints;
-
-  TObjArray    *fCell;
-  AliPMDcell   *pmdcell;
-  vector<int> vjunkTRN;
-
-  Int_t fNsdigit;
-  Int_t fNdigit;
-  Int_t fDetNo;
-  Float_t fZPos;
-
-  static const Int_t fTotSM = 27;
-  static const Int_t fNCell = 72;
-  Float_t fCPV[fTotSM][fNCell][fNCell];
-  Float_t fPMD[fTotSM][fNCell][fNCell];
-  Int_t   fPMDCounter[fTotSM][fNCell][fNCell];
-  Int_t   fPMDTrackNo[fTotSM][fNCell][fNCell];
-  Int_t   fCPVTrackNo[fTotSM][fNCell][fNCell];
-
  public:
 
   AliPMDDigitizer();
   virtual ~AliPMDDigitizer();
 
-  void OpengAliceFile(char * /* galice.root */, Option_t * /* option */);
+  void OpengAliceFile(char *file, Option_t *option);
 
-  void Hits2SDigits(Int_t /* ievt */);
-  void Hits2Digits(Int_t /* ievt */);
-  void SDigits2Digits(Int_t /* ievt */);
+  void Hits2SDigits(Int_t ievt);
+  void Hits2Digits(Int_t ievt);
+  void SDigits2Digits(Int_t ievt);
   void TrackAssignment2Cell();
-  void MeV2ADC(Float_t /* mev */, Float_t & /* adc */);
-  void AddSDigit(Int_t /* trnumber */, Int_t /* det */, Int_t /* smnumber */, 
-                Int_t /* cellnumber */, Float_t /* adc */);
-  void AddDigit(Int_t /* trnumber */, Int_t /* det */, Int_t /* smnumber */, 
-               Int_t /* cellnumber */, Float_t /* adc */);
-  Int_t Convert2RealSMNumber(Int_t /* smnumber1 */ );
-  void SetZPosition(Float_t /* zpos */);
+  void MeV2ADC(Float_t mev, Float_t & adc) const;
+  void AddSDigit(Int_t trnumber, Int_t det, Int_t smnumber, 
+                Int_t cellnumber, Float_t adc);
+  void AddDigit(Int_t trnumber, Int_t det, Int_t smnumber, 
+               Int_t cellnumber, Float_t adc);
+  void  SetZPosition(Float_t zpos);
   Float_t GetZPosition() const;
   void ResetCell();
   void ResetSDigit();
@@ -105,7 +57,44 @@ class AliPMDDigitizer
   void ResetCellADC();
   void UnLoad(Option_t * /* option */);
 
-  ClassDef(AliPMDDigitizer,1)
+ protected:
+  AliRunLoader *fRunLoader;  // Pointer to Run Loader
+  AliPMDhit    *fPMDHit;     // Pointer to specific detector hits
+  AliDetector  *fPMD;        // Get pointers to Alice detectors 
+                             // and Hits containers 
+  AliLoader    *fPMDLoader;  // Pointer to specific detector loader
+
+  TClonesArray *fHits;       // Pointer to hits array
+  TObjArray    *fPArray;     // Pointer to particle array
+  TParticle    *fParticle;   // Pointer to a given particle
+
+  TTree        *fTreeH;      // Hits tree
+  TTree        *fTreeS;      // Summable Digits tree
+  TTree        *fTreeD;      // Digits tree
+
+  TClonesArray *fSDigits;    // List of summable digits
+  TClonesArray *fDigits;     // List of digits
+
+  TObjArray    *fCell;       // List of pmd cells
+  AliPMDcell   *fPMDcell;    // Pointer to a PMD cell
+
+  Int_t   fNsdigit;          // Summable digits counter
+  Int_t   fNdigit;           // Digits counter
+  Int_t   fDetNo;            // Detector Number (0:PRE, 1:CPV)
+  Float_t fZPos;             // z-position of the detector
+
+  static const Int_t fgkTotUM = 24; // Total Unit modules in one detector
+  static const Int_t fgkRow   = 48; // Total number of rows in one unitmodule
+  static const Int_t fgkCol   = 96; // Total number of cols in one unitmodule
+  Float_t fCPV[fgkTotUM][fgkRow][fgkCol]; // CPV Array containing total edep
+  Float_t fPRE[fgkTotUM][fgkRow][fgkCol]; // PRE Array containing total edep
+  Int_t   fPRECounter[fgkTotUM][fgkRow][fgkCol]; // Number of times each cell
+                                                 // is fired in PMD
+  Int_t   fPRETrackNo[fgkTotUM][fgkRow][fgkCol]; // PRE Array containing track number
+  Int_t   fCPVTrackNo[fgkTotUM][fgkRow][fgkCol]; // CPV Array containing track number
+
+
+  ClassDef(AliPMDDigitizer,2)    // To digitize PMD Hits
 };
 #endif