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