]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EMCAL/AliEMCALQADataMakerRec.h
remove unnecessary redefinition of fitting algorithms index; remove extra semi-colons...
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALQADataMakerRec.h
index fbe71915615767f88d6d7147e77722df203a9c4d..29d98b035677759b8d82d7db9a2d22161167eccd 100644 (file)
@@ -1,5 +1,5 @@
-#ifndef ALIEMCALQADataMakerRec_H
-#define ALIEMCALQADataMakerRec_H
+#ifndef ALIEMCALQADATAMAKERREC_H
+#define ALIEMCALQADATAMAKERREC_H
 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
  * See cxx source for full Copyright notice                               */
 
@@ -37,11 +37,15 @@ class TObjArray ;
 #include "AliQADataMakerRec.h"
 class AliCaloRawAnalyzer;
 class AliCaloRawAnalyzerKStandard;
-class AliEMCALGeoParams;
+//class AliEMCALGeoParams;
+class AliEMCALGeometry;
+
+#include "AliCaloConstants.h"
 
 class AliEMCALQADataMakerRec: public AliQADataMakerRec {
 
 public:
+  
   //Histograms for Raw data control
   enum HRawType_t { 
     // first normal Low Gain and High Gain info
@@ -57,7 +61,10 @@ public:
     // and also LED Mon info
     kNsmodLGLEDMon,kNsmodHGLEDMon,kTimeLGLEDMon,kTimeHGLEDMon,
     kSigLGLEDMon,kSigHGLEDMon,kNtotLGLEDMon,kNtotHGLEDMon,
-    kPedLGLEDMon,kPedHGLEDMon
+    kPedLGLEDMon,kPedHGLEDMon,
+               //and STU info
+               kAmpL1, kGL1, kJL1,
+               kGL1V0, kJL1V0, kSTUTRU  
   } ;
 
   //Histograms for RecPoints  control
@@ -65,18 +72,17 @@ public:
 
   //Histograms for ESDs  control
   enum HESDType_t {kESDCaloClusE,kESDCaloClusM,kESDCaloCellA,kESDCaloCellM} ;
-                 
-
+  
 public:
-  enum fitAlgorithm {kFastFit=1, kNeuralNet = 2, kLMS = 4, kPeakFinder = 5, kCrude = 6};
-  AliEMCALQADataMakerRec(fitAlgorithm fitAlgo = kNeuralNet) ;          // ctor
+  
+  AliEMCALQADataMakerRec(Int_t fitAlgo = 0) ;          // ctor
  
   AliEMCALQADataMakerRec(const AliEMCALQADataMakerRec& qadm) ;   
   AliEMCALQADataMakerRec& operator = (const AliEMCALQADataMakerRec& qadm) ;
   virtual ~AliEMCALQADataMakerRec() {;} // dtor
 
   Int_t GetFittingAlgorithm() const {return fFittingAlgorithm; }
-  void SetFittingAlgorithm(Int_t val);
+  void  SetFittingAlgorithm(Int_t val);
   AliCaloRawAnalyzer *GetRawAnalyzer() const { return fRawAnalyzer;}
   AliCaloRawAnalyzerKStandard *GetRawAnalyzerTRU() const { return fRawAnalyzerTRU;}
 
@@ -84,43 +90,48 @@ public:
   int GetSuperModules() const {return fSuperModules;}; //The number of SuperModules
 
   // for pedestal calculation with raw data
-  void SetFirstPedestalSample(int i) {fFirstPedestalSample = i;}; // first sample 
-  int GetFirstPedestalSample() const {return fFirstPedestalSample;}; // first sample 
-  void SetLastPedestalSample(int i) {fLastPedestalSample = i;}; // last sample 
-  int GetLastPedestalSample() const {return fLastPedestalSample;}; // last sample 
-  void SetFirstPedestalSampleTRU(int i) {fFirstPedestalSampleTRU = i;}; // first sample, TRU 
-  int GetFirstPedestalSampleTRU() const {return fFirstPedestalSampleTRU;}; // first sample, TRU 
-  void SetLastPedestalSampleTRU(int i) {fLastPedestalSampleTRU = i;}; // last sample, TRU 
-  int GetLastPedestalSampleTRU() const {return fLastPedestalSampleTRU;}; // last sample, TRU 
+  void SetFirstPedestalSample(int i) {fFirstPedestalSample = i;}           // first sample
+  int  GetFirstPedestalSample() const {return fFirstPedestalSample;}       // first sample
+  void SetLastPedestalSample(int i) {fLastPedestalSample = i;}             // last sample
+  int  GetLastPedestalSample() const {return fLastPedestalSample;}         // last sample
+  
+  void SetFirstPedestalSampleTRU(int i) {fFirstPedestalSampleTRU = i;}     // first sample, TRU
+  int  GetFirstPedestalSampleTRU() const {return fFirstPedestalSampleTRU;} // first sample, TRU
+  void SetLastPedestalSampleTRU(int i) {fLastPedestalSampleTRU = i;}       // last sample, TRU
+  int  GetLastPedestalSampleTRU() const {return fLastPedestalSampleTRU;}   // last sample, TRU
   
   // for selection of interesting signal (max-min) range 
   // Low Gain channels
-  void SetMinSignalLG(int i) {fMinSignalLG = i;}; 
-  int GetMinSignalLG() const {return fMinSignalLG;}; 
-  void SetMaxSignalLG(int i) {fMaxSignalLG = i;}; 
-  int GetMaxSignalLG() const {return fMaxSignalLG;}; 
+  void SetMinSignalLG(int i) {fMinSignalLG = i;}
+  int  GetMinSignalLG() const {return fMinSignalLG;}
+  void SetMaxSignalLG(int i) {fMaxSignalLG = i;}
+  int  GetMaxSignalLG() const {return fMaxSignalLG;}
+  
   // High Gain channels
-  void SetMinSignalHG(int i) {fMinSignalHG = i;}; 
-  int GetMinSignalHG() const {return fMinSignalHG;}; 
-  void SetMaxSignalHG(int i) {fMaxSignalHG = i;}; 
-  int GetMaxSignalHG() const {return fMaxSignalHG;}; 
+  void SetMinSignalHG(int i) {fMinSignalHG = i;}
+  int  GetMinSignalHG() const {return fMinSignalHG;}
+  void SetMaxSignalHG(int i) {fMaxSignalHG = i;}
+  int  GetMaxSignalHG() const {return fMaxSignalHG;}
+  
   // TRU channels
-  void SetMinSignalTRU(int i) {fMinSignalTRU = i;}; 
-  int GetMinSignalTRU() const {return fMinSignalTRU;}; 
-  void SetMaxSignalTRU(int i) {fMaxSignalTRU = i;}; 
-  int GetMaxSignalTRU() const {return fMaxSignalTRU;}; 
+  void SetMinSignalTRU(int i) {fMinSignalTRU = i;}
+  int GetMinSignalTRU() const {return fMinSignalTRU;}
+  void SetMaxSignalTRU(int i) {fMaxSignalTRU = i;}
+  int GetMaxSignalTRU() const {return fMaxSignalTRU;}
+  
   // LEDMon channels
-  void SetMinSignalLGLEDMon(int i) {fMinSignalLGLEDMon = i;}
-  int GetMinSignalLGLEDMon() const {return fMinSignalLGLEDMon;}
-  void SetMaxSignalLGLEDMon(int i) {fMaxSignalLGLEDMon = i;}
-  int GetMaxSignalLGLEDMon() const {return fMaxSignalLGLEDMon;}
-  void SetMinSignalHGLEDMon(int i) {fMinSignalHGLEDMon = i;}
-  int GetMinSignalHGLEDMon() const {return fMinSignalHGLEDMon;}
-  void SetMaxSignalHGLEDMon(int i) {fMaxSignalHGLEDMon = i;}
-  int GetMaxSignalHGLEDMon() const {return fMaxSignalHGLEDMon;}
+  void SetMinSignalLGLEDMon(int i) {fMinSignalLGLEDMon = i;}
+  int GetMinSignalLGLEDMon() const {return fMinSignalLGLEDMon;}
+  void SetMaxSignalLGLEDMon(int i) {fMaxSignalLGLEDMon = i;}
+  int GetMaxSignalLGLEDMon() const {return fMaxSignalLGLEDMon;}
+  void SetMinSignalHGLEDMon(int i) {fMinSignalHGLEDMon = i;}
+  int GetMinSignalHGLEDMon() const {return fMinSignalHGLEDMon;}
+  void SetMaxSignalHGLEDMon(int i) {fMaxSignalHGLEDMon = i;}
+  int GetMaxSignalHGLEDMon() const {return fMaxSignalHGLEDMon;}
 
   virtual void   EndOfDetectorCycle(AliQAv1::TASKINDEX_t, TObjArray ** list) ;
   void           GetCalibRefFromOCDB() ;
+  void                GetTruChannelPosition( Int_t &globRow, Int_t &globColumn, Int_t module, Int_t ddl, Int_t branch, Int_t column ) const;
   virtual void   InitESDs() ; 
   virtual void   InitDigits() ; 
   virtual void   InitRecPoints() ; 
@@ -129,28 +140,31 @@ public:
   virtual void   MakeDigits() ;
   virtual void   MakeDigits(TTree * digTree) ; 
   virtual void   MakeRecPoints(TTree * recpoTree) ; 
-  virtual void   MakeRaws(AliRawReader* rawReader) ; 
+  virtual void   MakeRaws(AliRawReader* rawReader) ;
+  virtual void  MakeRawsSTU(AliRawReader* rawReader);
   virtual void   StartOfDetectorCycle() ; 
 
 private:
- void ConvertProfile2H(TProfile * p, TH2 * histo) ; //change the profile plot to a 2D histogram
   
- Int_t fFittingAlgorithm;             // select the fitting algorithm
+  void ConvertProfile2H(TProfile * p, TH2 * histo) ; //change the profile plot to a 2D histogram
+  
+  Int_t fFittingAlgorithm;             // select the fitting algorithm
 
- AliCaloRawAnalyzer *fRawAnalyzer;    // for signal fitting
- AliCaloRawAnalyzerKStandard *fRawAnalyzerTRU;    // for signal fitting, for TRU
+  AliCaloRawAnalyzer *fRawAnalyzer;                // for signal fitting
+  AliCaloRawAnalyzerKStandard *fRawAnalyzerTRU;    // for TRU signal fitting
+  AliEMCALGeometry *fGeom;                         // EMCAL geometry, needed for STU decoding
 
-  int fSuperModules; //The number of SuperModules activated
-  int fFirstPedestalSample; // first sample for pedestal calculation, in bunch
-  int fLastPedestalSample; // last sample for pedestal calculation, in bunch
+  int fSuperModules;           // The number of SuperModules activated
+  int fFirstPedestalSample;    // first sample for pedestal calculation, in bunch
+  int fLastPedestalSample;     // last sample for pedestal calculation, in bunch
   int fFirstPedestalSampleTRU; // first sample for pedestal calculation, in bunch
-  int fLastPedestalSampleTRU; // last sample for pedestal calculation, in bunch
-  int fMinSignalLG; // minimum signal, for Low Gain channels
-  int fMaxSignalLG; // maximum signal, for Low Gain channels
-  int fMinSignalHG; // minimum signal, for High Gain channels
-  int fMaxSignalHG; // maximum signal, for High Gain channels
-  int fMinSignalTRU; // minimum signal, for TRU channels
-  int fMaxSignalTRU; // maximum signal, for TRU channels
+  int fLastPedestalSampleTRU;  // last sample for pedestal calculation, in bunch
+  int fMinSignalLG;       // minimum signal, for Low Gain channels
+  int fMaxSignalLG;       // maximum signal, for Low Gain channels
+  int fMinSignalHG;       // minimum signal, for High Gain channels
+  int fMaxSignalHG;       // maximum signal, for High Gain channels
+  int fMinSignalTRU;      // minimum signal, for TRU channels
+  int fMaxSignalTRU;      // maximum signal, for TRU channels
   int fMinSignalLGLEDMon; // minimum signal, for LEDMon channels, low gain
   int fMaxSignalLGLEDMon; // maximum signal, for LEDMon channels, low gain
   int fMinSignalHGLEDMon; // minimum signal, for LEDMon channels, high gain
@@ -158,8 +172,8 @@ private:
 
   TProfile * fCalibRefHistoPro ; // Profile reference histogram from LED run
   TH2F     * fCalibRefHistoH2F ; // H2F reference histogram from LED run
-  TProfile * fLEDMonRefHistoPro ; // Profile reference histogram from LED monitor
-  TH2F     * fHighEmcHistoH2F ; // H2F reference histogram from LED run
+  TProfile * fLEDMonRefHistoPro; // Profile reference histogram from LED monitor
+  TH2F     * fHighEmcHistoH2F  ; // H2F reference histogram from LED run
 //  TText **    fTextSM        ; //! Text info for each SM  
 //  TLine *     fLineCol       ; //! line to distinguish the different SM side: A side and C side
 //  TLine *     fLineRow       ; //! line to distinguish the different SM sector 0 and 1 
@@ -168,4 +182,4 @@ private:
 
 };
 
-#endif // AliEMCALQADataMakerRec_H
+#endif // AliEMCALQADATAMAKERREC_H