new design: singleton to be used instead od AliPHOS object during analysis; contains...
[u/mrichter/AliRoot.git] / PHOS / AliPHOSReconstructioner.h
CommitLineData
d15a28e7 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
6ad0bfa0 6/* $Id$ */
7
b2a60966 8//_________________________________________________________________________
9// Algorithm class for the reconstruction: clusterizer
10// track segment maker
11// particle identifier
a3dfe79c 12//*--
b2a60966 13//*-- Author: Gines Martinez & Yves Schutz (SUBATECH)
d15a28e7 14
15// --- ROOT system ---
16
17#include "TObject.h"
18#include "AliPHOSClusterizer.h"
19#include "AliPHOSTrackSegmentMaker.h"
26d4b141 20#include "AliPHOSPID.h"
d15a28e7 21#include "TClonesArray.h"
22
23// --- Standard library ---
24
25// --- AliRoot header files ---
26
27class AliPHOSReconstructioner : public TObject {
28
29public:
30
b2a60966 31 AliPHOSReconstructioner(){} //ctor
6ad0bfa0 32 AliPHOSReconstructioner(AliPHOSClusterizer * Clusterizer, AliPHOSTrackSegmentMaker * Tracker,
839ffcb3 33 AliPHOSPID * Identifier); //ctor
34 AliPHOSReconstructioner(const AliPHOSReconstructioner & phos) {
35 // cpy ctor: no implementation yet
36 // requested by the Coding Convention
37 assert(0==1) ;
38 }
39
b2a60966 40 ~AliPHOSReconstructioner(){} // dtor
d15a28e7 41
42 AliPHOSClusterizer * GetClusterizer() { return fClusterizer ; }
6ad0bfa0 43 void Init(AliPHOSClusterizer * Clusterizer, AliPHOSTrackSegmentMaker * Tracker,
26d4b141 44 AliPHOSPID * Identifier) ;
b73f246d 45 void Make(TClonesArray * DL,
46 AliPHOSRecPoint::RecPointsList * emccl,
47 AliPHOSRecPoint::RecPointsList * ppsdl,
b73f246d 48 AliPHOSTrackSegment::TrackSegmentsList * trsl,
49 AliPHOSRecParticle::RecParticlesList * rpl) ; // does the job
d15a28e7 50
364de5c6 51 void SetDebugReconstruction(Bool_t deb) { fDebugReconstruction = deb; }
52
839ffcb3 53 AliPHOSReconstructioner & operator = (const AliPHOSReconstructioner & rvalue) {
a3dfe79c 54 // assignement operator requested by coding convention but not needed
839ffcb3 55 assert(0==1) ;
56 return *this ;
57 }
58
d15a28e7 59
60private:
61
364de5c6 62 Bool_t fDebugReconstruction; // For debuging of the Reconstruction procedure
9f616d61 63 AliPHOSClusterizer * fClusterizer ; // Method for clusterization
6ad0bfa0 64 AliPHOSTrackSegmentMaker * fTrackSegmentMaker ; // Method for track segments finding
26d4b141 65 AliPHOSPID * fPID ; // Method for identifying the type of particle
92862013 66
b2a60966 67 ClassDef(AliPHOSReconstructioner,1) // Reconstruction algorithm class (Base Class)
d15a28e7 68
69};
70
71#endif // ALIPHOSRECONSTRUCTIONER_H