]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TOF/AliTOFClusterFinder.h
Compilation on Windoiws/Cygwin
[u/mrichter/AliRoot.git] / TOF / AliTOFClusterFinder.h
CommitLineData
d08a92dd 1#ifndef ALITOFCLUSTERFINDER_H
2#define ALITOFCLUSTERFINDER_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
340693af 5// AliTOFClusterFinder Class
6// Task: Transform digits/raw data to TOF Clusters, to fill TOF RecPoints
7// and feed TOF tracking
d08a92dd 8
0e46b9ae 9#include "TObject.h"
d08a92dd 10
11class TClonesArray;
12class TFile;
13class TTree;
14
15class AliLoader;
16class AliRunLoader;
0e46b9ae 17class AliRawReader;
d08a92dd 18
19class AliTOFGeometry;
0e46b9ae 20class AliTOFcluster;
94f5f8f2 21class AliTOFcalib;
d08a92dd 22
23class AliTOFClusterFinder : public TObject
24{
25
26 enum {kTofMaxCluster=77777}; //maximal number of the TOF clusters
27
28 public:
29
94f5f8f2 30 AliTOFClusterFinder(AliTOFcalib *calib);
31 AliTOFClusterFinder(AliRunLoader* runLoader, AliTOFcalib *calib);
7aeeaf38 32 AliTOFClusterFinder(const AliTOFClusterFinder &source); // copy constructor
33 AliTOFClusterFinder& operator=(const AliTOFClusterFinder &source); // ass. op.
d08a92dd 34 virtual ~AliTOFClusterFinder();
ba66add8 35
94f5f8f2 36 void Digits2RecPoints(TTree* digitsTree, TTree* clusterTree);
d08a92dd 37 void Digits2RecPoints(Int_t ievt);
38 void Digits2RecPoints(AliRawReader *rawReader, TTree *clustersTree);
39 void Digits2RecPoints(Int_t ievt, AliRawReader *rawReader);
40 void Raw2Digits(Int_t ievt, AliRawReader *rawReader); // temporary solution
94f5f8f2 41 void Raw2Digits(AliRawReader *rawReader, TTree* digitsTree);
d08a92dd 42 void FillRecPoint();
43 void ResetRecpoint();
44 void Load();
45 void LoadClusters();
46 void UnLoad();
47 void UnLoadClusters();
15ec34b9 48 void SetVerbose(Int_t Verbose){fVerbose=Verbose;} // To set the verbose level
7813bb1a 49 void SetDecoderVersion(Int_t version){fDecoderVersion=version;} // To set the decoder version
50 Bool_t GetDecoderVersion() const {return fDecoderVersion;} // To get the decoder version
ac359ffe 51 UShort_t GetClusterVolIndex(Int_t *ind) const; //Volume Id getter
52 void GetClusterPars(Int_t *ind, Double_t *pos, Double_t *cov) const; //cluster par getter
d08a92dd 53
54 protected:
55 AliRunLoader *fRunLoader; // Pointer to Run Loader
56 AliLoader *fTOFLoader; // Pointer to specific detector loader
57
58 TTree *fTreeD; // Digits tree
59 TTree *fTreeR; // Reconstructed points
60
61 AliTOFcluster *fTofClusters[kTofMaxCluster]; // pointers to the TOF clusters
62
d08a92dd 63 TClonesArray *fDigits; // List of digits
64 TClonesArray *fRecPoints; // List of reconstructed points
65
66 Int_t fNumberOfTofClusters; // Number of TOF Clusters
67
68 private:
69
70 //Int_t InsertCluster(Int_t *aa, Double_t *bb); // Fills TofClusters Array
71 //Int_t InsertCluster(Int_t *aa, Double_t *bb, Int_t *cc, Int_t d); // Fills TofClusters Array
72 Int_t InsertCluster(AliTOFcluster *tofCluster); // Fills TofClusters Array
73 Int_t FindClusterIndex(Double_t z) const; // Returns cluster index
37879eed 74 void CalibrateRecPoint(); // Apply calibration pars to Clusters
d08a92dd 75
15ec34b9 76 Int_t fVerbose; //Verbose level (0:no msg, 1:msg, 2:digits in txt files)
7813bb1a 77 Bool_t fDecoderVersion; //setting whether to use the new decoder version
78 // -true -> new version
79 // -false ->old version (default value!!)
94f5f8f2 80 AliTOFcalib *fTOFcalib; // pointer to the TOF calibration info
d08a92dd 81
ac359ffe 82 ClassDef(AliTOFClusterFinder,4) // To run TOF clustering
d08a92dd 83};
84#endif
85