Minor corrections needed on HP and Sun
[u/mrichter/AliRoot.git] / PHOS / AliPHOSReconstructioner.h
1 #ifndef ALIPHOSRECONSTRUCTIONER_H
2 #define ALIPHOSRECONSTRUCTIONER_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 //_________________________________________________________________________
9 //  Wrapping class for reconstruction
10 //*--
11 //*-- Author: Gines Martinez & Yves Schutz (SUBATECH) 
12 //*--         Dmitri Peressounko (SUBATECH & Kurchatov Institute)
13
14 #include <stdlib.h>
15
16 // --- ROOT system ---
17
18 #include "TTask.h"
19 class AliPHOSDigitizer ;
20 class AliPHOSClusterizer ;
21 class AliPHOSTrackSegmentMaker ;
22 class AliPHOSPID ;
23 class AliPHOSSDigitizer ;
24
25 // --- Standard library ---
26
27 // --- AliRoot header files ---
28
29 class AliPHOSReconstructioner : public TTask {
30
31 public:
32
33   AliPHOSReconstructioner() ; //ctor            
34   AliPHOSReconstructioner(const char * headreFile) ;
35   AliPHOSReconstructioner(const AliPHOSReconstructioner & rec) {
36     // cpy ctor: 
37     // requested by the Coding Convention
38     abort() ; 
39   }
40    
41   virtual ~AliPHOSReconstructioner() ;
42
43   virtual void Exec(Option_t * option) ;
44
45   AliPHOSDigitizer         * GetDigitizer()  const { return fDigitizer   ; }
46   AliPHOSClusterizer       * GetClusterizer()const { return fClusterizer ; }
47   AliPHOSPID               * GetPID()        const { return fPID;          }
48   AliPHOSTrackSegmentMaker * GetTSMaker()    const { return fTSMaker ;     }
49   AliPHOSSDigitizer        * GetSDigitizer() const { return fSDigitizer  ; }
50
51   void Print(Option_t * option)const ;
52   
53   void SetBranchTitle(const char* branch,const char * title) ;
54             // Sets the branch titles to separate different reconstruction flows 
55
56   void StartFrom(char * module = "SDigitizer",char * title = 0) ;
57             // From wich step reconstruction begins, 
58             // title to be set to all reconstructed branches
59
60   AliPHOSReconstructioner & operator = (const AliPHOSReconstructioner & rvalue)  {
61     // assignement operator requested by coding convention but not needed
62     abort() ;
63     return *this ; 
64   }
65   
66
67 private:
68   void Init() ;  
69
70 private:
71   
72   TString  fHeaderFileName ;    // File with headers and gAlice
73   TString  fDigitsBranch ;      // Title of digits branch
74   TString  fRecPointBranch ;    // -"-      RecPoints     -"-
75   TString  fTSBranch  ;         // -"-      TrackSegments -"-
76   TString  fRecPartBranch ;     // -"-      RecParticles  -"-
77   TString  fSDigitsBranch ;     // -"-      SDigits       -"-
78
79
80   AliPHOSDigitizer         * fDigitizer ;   // Pointer to AliPHOSDigitizer
81   AliPHOSClusterizer       * fClusterizer ; // Pointer to AliPHOSClusterizer
82   AliPHOSPID               * fPID ;         // Pointer to AliPHOSPID
83   AliPHOSTrackSegmentMaker * fTSMaker ;     // Pointer to AliPHOSTrackSegmentMaker
84   AliPHOSSDigitizer        * fSDigitizer ;  // Pointer to AliPHOSSDigitizer
85
86   Bool_t   fIsInitialized ; // kTRUE if reconstructioner is initialized
87  
88   ClassDef(AliPHOSReconstructioner,1)  // Reconstruction algorithm class (Base Class)
89
90 }; 
91
92 #endif // ALIPHOSRECONSTRUCTIONER_H