]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSTrackSegmentMaker.h
Quality assurance added (Yves Schutz)
[u/mrichter/AliRoot.git] / PHOS / AliPHOSTrackSegmentMaker.h
index 704f8acd2aa303d41df47577d0519afbd35ce8a3..bfb72cee941634102e4e176c0b0fbceb656913e8 100644 (file)
@@ -5,59 +5,82 @@
 
 /* $Id$ */
 
+/* History of cvs commits:
+ *
+ * $Log$
+ * Revision 1.41  2007/07/11 13:43:30  hristov
+ * New class AliESDEvent, backward compatibility with the old AliESD (Christian)
+ *
+ * Revision 1.40  2006/08/29 11:41:19  kharlov
+ * Missing implementation of ctors and = operator are added
+ *
+ * Revision 1.39  2006/08/25 16:00:53  kharlov
+ * Compliance with Effective C++AliPHOSHit.cxx
+ *
+ * Revision 1.38  2005/05/28 14:19:05  schutz
+ * Compilation warnings fixed by T.P.
+ *
+ */
+
 //_________________________________________________________________________
 // Algorithm Base class to construct PHOS track segments
-// Associates EMC and PPSD clusters
+// Associates EMC and CPV clusters
 // Unfolds the EMC cluster   
 //                  
 //*-- Author: Dmitri Peressounko (RRC Kurchatov Institute  & SUBATECH)
 
 // --- ROOT system ---
 #include "TTask.h"
-class TFile ;
+#include "AliConfig.h"
+class TFile ; 
 
 // --- Standard library ---
+//#include <iostream>
 
 // --- AliRoot header files ---
-
-
 class AliPHOSClusterizer ;
 class AliPHOSGeometry ;
+class AliESDEvent ;
+class AliPHOSQualAssDataMaker ; 
 
 class  AliPHOSTrackSegmentMaker : public TTask {
 
 public:
 
-  AliPHOSTrackSegmentMaker() ;                     
-  AliPHOSTrackSegmentMaker(const char* headerFile, const char* name, const Bool_t toSplit) ;
-  AliPHOSTrackSegmentMaker(const AliPHOSTrackSegmentMaker & ts) ;                     
-  
-  
+  AliPHOSTrackSegmentMaker();
+  AliPHOSTrackSegmentMaker(const TString alirunFileName, const TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;                     
+  AliPHOSTrackSegmentMaker(const AliPHOSTrackSegmentMaker & tsmaker) ;
   virtual ~ AliPHOSTrackSegmentMaker() ;
+  AliPHOSTrackSegmentMaker & operator = (const AliPHOSTrackSegmentMaker & /*rvalue*/)  {
+    Fatal("operator =", "not implemented") ; return *this ; }
 
-  virtual void    Exec(Option_t * option){Warning("Exec", "Not Defined" ) ; } 
-  //  virtual char*   GetRecPointsBranch ()const{Warning("GetRecPointsBranch", "Not Defined" ) ; return 0 ; } 
-  //  virtual char*   GetTrackSegmentsBranch ()const{Warning(" GetTrackSegmentsBranch", "Not Defined" ) ; return 0 ; } 
-  virtual const Int_t GetTrackSegmentsInRun()  const {Warning("GetTrackSegmentsInRun", "Not Defined" ) ; return 0 ; } 
-
-  virtual void    Print(Option_t * option)const {Warning("Print", "Not Defined" ) ; }  
-  //  virtual void Set...   // method to choose recPoints: along z only, along x ...???
-  //  virtual void SetChoosingAlgirithm(){Warning("SetChoosingAlgirithm", "Not Defined" ) ; return 0 ; } 
-  //  virtual void SetMaxEmcCpvDistance(Float_t r) {Warning("SetMaxEmcCpvDistance", "Not Defined" ) ; return 0 ; } 
-  //  virtual void SetRecPointsBranch(const char * title){Warning("SetRecPointsBranch", "Not Defined" ) ; } 
-  //  virtual void SetTrackSegmentsBranch(const char * title){Warning("SetTrackSegmentsBranch", "Not Defined" ) ; } 
-  //  virtual void SetSplitFile(const TString splitFileName = "PHOS.RecData.root") const ; 
-  virtual const char * Version() const {Warning("Version", "Not Defined" ) ; return 0 ; }   
-  virtual void WriteTrackSegments(Int_t event){Warning("WriteTrackSegments", "Not Defined" ) ; } 
-  AliPHOSTrackSegmentMaker & operator = (const AliPHOSTrackSegmentMaker &ts) {return *this ; }
+  virtual Int_t GetTrackSegmentsInRun()  const {Warning("GetTrackSegmentsInRun", "Not Defined" ) ; return 0 ; } 
 
-protected:
+  virtual void    Print(const Option_t * = "")const {Warning("Print", "Not Defined" ) ; }
+
+  void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
+  void SetEventFolderName(TString name) { fEventFolderName = name ; }
+  void SetESD(AliESDEvent *esd) { fESD = esd; }
+
+  TString GetEventFolderName() const {return fEventFolderName;}
+  Int_t   GetFirstEvent()      const {return fFirstEvent;     }
+  Int_t   GetLastEvent()       const {return fLastEvent;      }
+  AliESDEvent *GetESD()             const {return fESD;            }
+
+  virtual void WriteTrackSegments() = 0;
   
-  TFile * fSplitFile ;             //! file in which TrackSegments will eventually be stored
-  Bool_t  fToSplit ;               //! Do we work in the split mode
+  AliPHOSQualAssDataMaker * GetQualAssDataMaker() const { return fQADM ; } 
+
+protected:
+
+  TString fEventFolderName ;  // event folder name
+  Int_t   fFirstEvent;        // first event to process
+  Int_t   fLastEvent;         // last  event to process
+  AliESDEvent * fESD;              //! ESD object
 
-  ClassDef( AliPHOSTrackSegmentMaker,1)    // Algorithm class to make PHOS track segments (Base Class)
+  AliPHOSQualAssDataMaker * fQADM ; //!Quality Assurance Data Maker
 
+  ClassDef( AliPHOSTrackSegmentMaker,5)  // Algorithm class to make PHOS track segments (Base Class)
 };
 
 #endif // ALIPHOSTRACKSEGMENTMAKER_H