]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOS.h
L1phase shift corrected
[u/mrichter/AliRoot.git] / PHOS / AliPHOS.h
index 0903baaaa875390d9933e3e57f6adf648f48a752..f1ce3c4732390abcec58350c978176882f342e2c 100644 (file)
@@ -4,6 +4,51 @@
  * See cxx source for full Copyright notice     */
 /* $Id$ */
 
+/* History of cvs commits:
+ *
+ * $Log$
+ * Revision 1.73  2007/08/07 14:12:03  kharlov
+ * Quality assurance added (Yves Schutz)
+ *
+ * Revision 1.72  2007/02/13 10:52:08  policheh
+ * Raw2SDigits() implemented
+ *
+ * Revision 1.71  2007/02/05 10:43:25  hristov
+ * Changes for correct initialization of Geant4 (Mihaela)
+ *
+ * Revision 1.70  2007/01/17 17:28:56  kharlov
+ * Extract ALTRO sample generation to a separate class AliPHOSPulseGenerator
+ *
+ * Revision 1.69  2006/11/14 17:11:15  hristov
+ * Removing inheritances from TAttLine, TAttMarker and AliRndm in AliModule. The copy constructor and assignment operators are moved to the private part of the class and not implemented. The corresponding changes are propagated to the detectors
+ *
+ * Revision 1.68  2006/08/11 12:36:25  cvetan
+ * Update of the PHOS code needed in order to read and reconstruct the beam test raw data (i.e. without an existing galice.root)
+ *
+ * Revision 1.67  2006/04/07 08:42:00  hristov
+ * Follow AliAlignObj framework and remove AliPHOSAlignData (Yu.Kharlov)
+ *
+ * Revision 1.66  2006/03/24 21:39:33  schutz
+ * Modification needed to include PHOS in the global trigger framework
+ *
+ * Revision 1.65  2006/03/07 18:56:25  kharlov
+ * CDB is passed via environment variable
+ *
+ * Revision 1.64  2005/11/03 13:09:19  hristov
+ * Removing meaningless const declarations (linuxicc)
+ *
+ * Revision 1.63  2005/07/26 13:32:39  kharlov
+ * Restoring raw data fit from version of 29-Aug-2004
+ *
+ * Revision 1.62  2005/07/06 10:10:32  hristov
+ * Moving the functions used to initialize TF1 and TF2 to the pivate part of the class
+ *
+ * Revision 1.61  2005/05/28 12:10:07  schutz
+ * Copy constructor is corrected (by T.P.)
+ *
+ */
+
+
 //_________________________________________________________________________
 //  Base Class for PHOS     
 //                  
 
 // --- ROOT system ---
 class TString ; 
-class TTask ;
 class TFolder ;
 class TTree ; 
 class TRandom ; 
 
 // --- AliRoot header files ---
 #include "AliDetector.h" 
+#include "AliLog.h"
 #include "AliPHOSGeometry.h" 
-class AliPHOSQAChecker ;
+#include "AliPHOSTrigger.h"
+class AliPHOSCalibData ;
 
 class AliPHOS : public AliDetector {
 
@@ -28,59 +74,40 @@ public:
 
   AliPHOS() ;
   AliPHOS(const char* name, const char* title="") ;  
-  AliPHOS(AliPHOS & phos) : AliDetector(phos) {
-    Copy(*this) ; 
-  }
   virtual ~AliPHOS() ; 
   virtual void   AddHit(Int_t, Int_t*, Float_t *) {
     // do not use this definition but the one below
-    Fatal("AddHit(Int_t, Int_t*, Float_t *)", "do not use") ;
+    AliFatal(Form("do not use")) ;
     
   }
   virtual void   AddHit( Int_t shunt, Int_t primary, Int_t track, 
                         Int_t id, Float_t *hits ) = 0 ;   
-  virtual void Copy(AliPHOS & phos) ; 
-  virtual AliDigitizer* CreateDigitizer(AliRunDigitizer* manager) const;
+  virtual AliDigitizer* CreateDigitizer(AliDigitizationInput* digInput) const;
   virtual void  CreateMaterials() ;            
   virtual void  Digits2Raw();
-  virtual void  FinishRun() {WriteQA();}
+  virtual Bool_t Raw2SDigits(AliRawReader* rawReader);
+  virtual void  FinishRun() {;}
   virtual AliPHOSGeometry * GetGeometry() const 
   {return AliPHOSGeometry::GetInstance(GetTitle(),"") ;  }
+
   virtual void    Hits2SDigits();
   virtual Int_t   IsVersion(void) const = 0 ;  
-  Int_t GetRawFormatHighGainFactor() const { return fHighGainFactor ; }  
-  Int_t GetRawFormatHighGainOffset() const { return fHighGainOffset ; }  
-  Int_t GetRawFormatTimeBins() const { return fkTimeBins ; }    
-  Double_t GetRawFormatTimeMax() const { return fTimeMax ; }   
-  Double_t GetRawFormatTimePeak() const { return fTimePeak ; }    
-  Double_t GetRawFormatTimeRes() const { return fTimeRes ; }   
+  virtual void    Init();
+  virtual AliTriggerDetector* CreateTriggerDetector() const 
+    { return new AliPHOSTrigger(); }
+
   virtual AliLoader* MakeLoader(const char* topfoldername);
-  AliPHOSQAChecker * QAChecker() {return fQATask;}  
-  static Double_t  RawResponseFunction(Double_t *x, Double_t *par) ; 
   virtual void    SetTreeAddress();   
-  virtual TTree * TreeQA() const {return fTreeQA; } 
   virtual const TString Version() const {return TString(" ") ; } 
-  virtual void WriteQA() ; 
-  AliPHOS & operator = (const AliPHOS & /*rvalue*/)  {
-    Fatal("operator =", "not implemented") ; return *this ; }
-
-
-protected:
-
-  Bool_t  RawSampledResponse(const Float_t dtime, const Int_t damp, Int_t * adcH, Int_t * adcL) const ; 
-
 
-  AliPHOSQAChecker * fQATask ; //! PHOS checkers container
-  TTree * fTreeQA ;            // the QA tree that contains the alarms
-  Int_t    fHighGainFactor ;   // High gain attenuation factor of the raw RO signal
-  Int_t    fHighGainOffset ;   // offset added to the module id to distinguish high and low gain data
-  static const Int_t fkTimeBins = 256 ;     // number of sampling bins of the raw RO signal  
-  Double_t fTimeMax ;          // maximum sampled time of the raw RO signal
-  Double_t fTimePeak ;         // peaking time of the raw RO signal
-  Double_t fTimeRes ;          // decay rime width of the raw RO signal 
+ private:                                        
+  AliPHOS(AliPHOS & phos);
+  AliPHOS & operator = (const AliPHOS & /*rvalue*/);
 
-  ClassDef(AliPHOS,3) // Photon Spectrometer Detector (base class)
+ protected:
+  AliPHOSCalibData * fgCalibData ; //!  Pointer to Calibration DB
 
+  ClassDef(AliPHOS,6) // Photon Spectrometer Detector (base class)
 } ;
 
 #endif // ALIPHOS_H