// 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"
+class TFile ;
// --- Standard library ---
+#include <iostream.h>
// --- 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() ;
+ AliPHOSTrackSegmentMaker(const char* headerFile, const char* name, const Bool_t toSplit) ;
- virtual ~ AliPHOSTrackSegmentMaker(){
- // dtor
- }
-
- virtual void MakeTrackSegments(DigitsList * DL,
- AliPHOSRecPoint::RecPointsList * emcl,
- AliPHOSRecPoint::RecPointsList * ppsdl,
- AliPHOSTrackSegment::TrackSegmentsList * trsl ) = 0 ; // does the job
- virtual void SetMaxEmcPpsdDistance(Float_t r) = 0 ;
- virtual void SetUnfoldFlag() = 0 ;
- virtual void UnsetUnfoldFlag() = 0 ;
+ virtual ~ AliPHOSTrackSegmentMaker() ;
+
+ virtual void Exec(Option_t * option){cout << "Not Defined" << endl ; }
+ // virtual char* GetRecPointsBranch ()const{cout << "Not Defined" << endl ; return 0 ; }
+ // virtual char* GetTrackSegmentsBranch ()const{cout << "Not Defined" << endl ; return 0 ; }
+ virtual const Int_t GetTrackSegmentsInRun() const {cout << "Not Defined" << endl ; return 0 ; }
+
+ virtual void Print(Option_t * option)const {cout << "Not Defined" << endl ; }
+ // virtual void Set... // method to choose recPoints: along z only, along x ...???
+ // virtual void SetChoosingAlgirithm(){cout << "Not Defined" << endl ; return 0 ; }
+ // virtual void SetMaxEmcCpvDistance(Float_t r) {cout << "Not Defined" << endl ; return 0 ; }
+ // virtual void SetRecPointsBranch(const char * title){cout << "Not Defined" << endl ; }
+ // virtual void SetTrackSegmentsBranch(const char * title){cout << "Not Defined" << endl ; }
+ // virtual void SetSplitFile(const TString splitFileName = "PHOS.RecData.root") const ;
+ virtual const char * Version() const {cout << "Not Defined" << endl ; return 0 ; }
+ virtual void WriteTrackSegments(Int_t event){cout << "Not Defined" << endl ; }
- protected:
+protected:
- Int_t fNTrackSegments ; // number of track segments found
- AliPHOSGeometry * fGeom ; // pointer to PHOS geometry
- AliPHOSIndexToObject * fPlease ; //
+ TFile * fSplitFile ; //! file in which TrackSegments will eventually be stored
+ Bool_t fToSplit ; //! Do we work in the split mode
ClassDef( AliPHOSTrackSegmentMaker,1) // Algorithm class to make PHOS track segments (Base Class)