coding convention
[u/mrichter/AliRoot.git] / PHOS / AliPHOSTrackSegmentMaker.h
index 5295138..02de07a 100644 (file)
 // Associates EMC and PPSD clusters
 // Unfolds the EMC cluster   
 //                  
-//*-- Author: Dmitri Peressounko (RRC Ki & SUBATECH)
+//*-- Author: Dmitri Peressounko (RRC Kurchatov Institute  & SUBATECH)
 
 // --- ROOT system ---
+#include "TTask.h"
+#include "AliConfig.h"
+class TFile ; 
 
 // --- Standard library ---
+//#include <iostream>
 
 // --- AliRoot header files ---
 
-#include "TObjArray.h"
-#include "AliPHOSDigit.h"
-#include "AliPHOSRecPoint.h"
-#include "AliPHOSIndexToObject.h"
-#include "AliPHOSTrackSegment.h"
 
-class  AliPHOSTrackSegmentMaker : public TObject {
+class AliPHOSClusterizer ;
+class AliPHOSGeometry ;
+
+class  AliPHOSTrackSegmentMaker : public TTask {
 
 public:
 
-  AliPHOSTrackSegmentMaker() ;                     
-  
-  virtual ~ AliPHOSTrackSegmentMaker(){
-    // dtor 
-  } 
-
-  virtual void MakeTrackSegments(DigitsList * DL, 
-                                AliPHOSRecPoint::RecPointsList * emcl, 
-                                AliPHOSRecPoint::RecPointsList * ppsdl,
-                                AliPHOSRecPoint::RecPointsList * cpvl,
-                                AliPHOSTrackSegment::TrackSegmentsList * trsl ) = 0 ; // does the job
-  virtual void SetMaxEmcPpsdDistance(Float_t r) = 0 ; 
-  virtual void SetUnfoldFlag() = 0 ;
-  virtual void UnsetUnfoldFlag() = 0 ;
-  
- protected:
-  
-  Int_t                  fNTrackSegments ; // number of track segments found 
-  AliPHOSGeometry      * fGeom ;           // pointer to PHOS geometry  
-  AliPHOSIndexToObject * fPlease ;         //
+  AliPHOSTrackSegmentMaker();
+  AliPHOSTrackSegmentMaker(const TString alirunFileName, const TString eventFolderName = AliConfig::fgkDefaultEventFolderName) ;                     
+  AliPHOSTrackSegmentMaker(const AliPHOSTrackSegmentMaker & tsmaker) : TTask(tsmaker) { ; } 
+  virtual ~ AliPHOSTrackSegmentMaker() ;
 
-  ClassDef( AliPHOSTrackSegmentMaker,1)    // Algorithm class to make PHOS track segments (Base Class)
+  virtual void    Exec(Option_t *) = 0;
+
+  virtual const Int_t GetTrackSegmentsInRun()  const {Warning("GetTrackSegmentsInRun", "Not Defined" ) ; return 0 ; } 
+
+  virtual void    Print()const {Warning("Print", "Not Defined" ) ; }
+  void   SetEventFolderName(TString name) { fEventFolderName = name ; }
+
+  virtual void WriteTrackSegments() = 0;
+  
+protected:
+  TString fEventFolderName ;  // event folder name
 
+  ClassDef( AliPHOSTrackSegmentMaker,3)    // Algorithm class to make PHOS track segments (Base Class)
 };
 
 #endif // ALIPHOSTRACKSEGMENTMAKER_H