]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TOF/AliTOFReconstructor.cxx
Code clean up
[u/mrichter/AliRoot.git] / TOF / AliTOFReconstructor.cxx
CommitLineData
121a60bd 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16/* $Id$ */
17
18///////////////////////////////////////////////////////////////////////////////
19// //
20// class for TOF reconstruction //
21// //
22///////////////////////////////////////////////////////////////////////////////
23
b09247a2 24#include <cstdlib>
5c7c93fa 25//#include "TFile.h"
6b025efd 26#include "TObjArray.h"
27#include "TString.h"
d08a92dd 28
29#include "AliLog.h"
0e46b9ae 30#include "AliRawReader.h"
d08a92dd 31
0e46b9ae 32#include "AliTOFClusterFinder.h"
a98acac1 33#include "AliTOFcalib.h"
d88fbf15 34#include "AliTOFtrackerMI.h"
0e46b9ae 35#include "AliTOFtracker.h"
eeef0c5d 36#include "AliTOFtrackerV1.h"
d08a92dd 37#include "AliTOFReconstructor.h"
121a60bd 38
0e46b9ae 39class TTree;
5c7c93fa 40//class TFile;
41//class TDirectory;
0e46b9ae 42
af885e0f 43class AliESDEvent;
0e46b9ae 44
5c7c93fa 45//extern TDirectory *gDirectory;
46//extern TFile *gFile;
0e46b9ae 47
121a60bd 48ClassImp(AliTOFReconstructor)
49
a98acac1 50 //____________________________________________________________________
51AliTOFReconstructor::AliTOFReconstructor()
52 : AliReconstructor(),
a98acac1 53 fTOFcalib(0)
54{
55//
56// ctor
57//
6b025efd 58
a98acac1 59 //Retrieving the TOF calibration info
ba66add8 60 fTOFcalib = new AliTOFcalib();
24d1e16e 61 fTOFcalib->CreateCalObjects();
17149e6b 62
63 if(!fTOFcalib->ReadParOnlineDelayFromCDB("TOF/Calib",-1)) {AliFatal("Exiting, no CDB object found!!!");exit(0);}
64 if(!fTOFcalib->ReadParOnlineStatusFromCDB("TOF/Calib",-1)) {AliFatal("Exiting, no CDB object found!!!");exit(0);}
65
ba66add8 66 if(!fTOFcalib->ReadParOfflineFromCDB("TOF/Calib",-1)) {AliFatal("Exiting, no CDB object found!!!");exit(0);}
a98acac1 67}
68
69//------------------------------------------------------------------------
70AliTOFReconstructor::AliTOFReconstructor(const AliTOFReconstructor &source)
71 : AliReconstructor(),
a98acac1 72 fTOFcalib(0)
73{
74//
75// copy ctor
76//
a98acac1 77 this->fTOFcalib=source.fTOFcalib;
78}
79
80//------------------------------------------------------------------------
81AliTOFReconstructor & AliTOFReconstructor::operator=(const AliTOFReconstructor &source)
82{
83//
84// assignment op.
85//
a98acac1 86 this->fTOFcalib=source.fTOFcalib;
87 return *this;
88}
89//_____________________________________________________________________________
90AliTOFReconstructor::~AliTOFReconstructor()
91{
92//
93// dtor
94//
a98acac1 95 delete fTOFcalib;
96}
97
d08a92dd 98//_____________________________________________________________________________
99void AliTOFReconstructor::Reconstruct(AliRawReader *rawReader,
100 TTree *clustersTree) const
101{
102// reconstruct clusters from Raw Data
103
b24266ca 104 static AliTOFClusterFinder tofClus(fTOFcalib);
d08a92dd 105 tofClus.Digits2RecPoints(rawReader, clustersTree);
121a60bd 106
107}
108
a98acac1 109//_____________________________________________________________________________
110void AliTOFReconstructor::Reconstruct(TTree *digitsTree,
111 TTree *clustersTree) const
112{
113// reconstruct clusters from Raw Data
114
115 AliDebug(2,Form("Global Event loop mode: Creating Recpoints from Digits Tree"));
b24266ca 116 static AliTOFClusterFinder tofClus(fTOFcalib);
a98acac1 117 tofClus.Digits2RecPoints(digitsTree, clustersTree);
118
119}
120//_____________________________________________________________________________
121 void AliTOFReconstructor::ConvertDigits(AliRawReader* reader, TTree* digitsTree) const
122{
123// reconstruct clusters from digits
124
125 AliDebug(2,Form("Global Event loop mode: Converting Raw Data to a Digits Tree"));
126 AliTOFClusterFinder tofClus(fTOFcalib);
127 tofClus.Raw2Digits(reader, digitsTree);
128
129}
130
121a60bd 131//_____________________________________________________________________________
d76c31f4 132AliTracker* AliTOFReconstructor::CreateTracker() const
121a60bd 133{
134// create a TOF tracker
135
d88fbf15 136 TString selectedTracker = GetOption();
137 // use MI tracker if selected
bc9f08da 138 if (selectedTracker.Contains("MI")) return new AliTOFtrackerMI();
eeef0c5d 139 if (selectedTracker.Contains("V1")) return new AliTOFtrackerV1();
bc9f08da 140 return new AliTOFtracker();
121a60bd 141}
142