Inserting TMath.h where required by the new version of ROOT
[u/mrichter/AliRoot.git] / PHOS / AliPHOSTrackSegmentMaker.h
1 #ifndef ALIPHOSTRACKSEGMENTMAKER_H
2 #define ALIPHOSTRACKSEGMENTMAKER_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 /* History of cvs commits:
9  *
10  * $Log$
11  * Revision 1.39  2006/08/25 16:00:53  kharlov
12  * Compliance with Effective C++AliPHOSHit.cxx
13  *
14  * Revision 1.38  2005/05/28 14:19:05  schutz
15  * Compilation warnings fixed by T.P.
16  *
17  */
18
19 //_________________________________________________________________________
20 // Algorithm Base class to construct PHOS track segments
21 // Associates EMC and CPV clusters
22 // Unfolds the EMC cluster   
23 //                  
24 //*-- Author: Dmitri Peressounko (RRC Kurchatov Institute  & SUBATECH)
25
26 // --- ROOT system ---
27 #include "TTask.h"
28 #include "AliConfig.h"
29 class TFile ; 
30
31 // --- Standard library ---
32 //#include <iostream>
33
34 // --- AliRoot header files ---
35
36
37 class AliPHOSClusterizer ;
38 class AliPHOSGeometry ;
39 class AliESD ;
40
41 class  AliPHOSTrackSegmentMaker : public TTask {
42
43 public:
44
45   AliPHOSTrackSegmentMaker();
46   AliPHOSTrackSegmentMaker(const TString alirunFileName, const TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;                     
47   AliPHOSTrackSegmentMaker(const AliPHOSTrackSegmentMaker & tsmaker) ;
48   virtual ~ AliPHOSTrackSegmentMaker() ;
49   AliPHOSTrackSegmentMaker & operator = (const AliPHOSTrackSegmentMaker & /*rvalue*/)  {
50     Fatal("operator =", "not implemented") ; return *this ; }
51
52   virtual Int_t GetTrackSegmentsInRun()  const {Warning("GetTrackSegmentsInRun", "Not Defined" ) ; return 0 ; } 
53
54   virtual void    Print(const Option_t * = "")const {Warning("Print", "Not Defined" ) ; }
55
56   void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
57   void SetEventFolderName(TString name) { fEventFolderName = name ; }
58   void SetESD(AliESD *esd) { fESD = esd; }
59
60   TString GetEventFolderName() const {return fEventFolderName;}
61   Int_t   GetFirstEvent()      const {return fFirstEvent;     }
62   Int_t   GetLastEvent()       const {return fLastEvent;      }
63   AliESD *GetESD()             const {return fESD;            }
64
65   virtual void WriteTrackSegments() = 0;
66   
67 protected:
68   TString fEventFolderName ;  // event folder name
69   Int_t   fFirstEvent;        // first event to process
70   Int_t   fLastEvent;         // last  event to process
71   AliESD * fESD;              //! ESD object
72
73   ClassDef( AliPHOSTrackSegmentMaker,4)  // Algorithm class to make PHOS track segments (Base Class)
74 };
75
76 #endif // ALIPHOSTRACKSEGMENTMAKER_H