]>
Commit | Line | Data |
---|---|---|
bf6bf84c | 1 | #ifndef ALITOFRECONSTRUCTIONERV2_H |
2 | #define ALITOFRECONSTRUCTIONERV2_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | //_________________________________________________________________________ | |
7 | // Task Class for Reconstruction V2 in TOF | |
8 | // | |
9 | //-- Author: F. Pierella | |
10 | ||
11 | ||
12 | #include "TTask.h" | |
13 | ||
14 | class AliTOFDigitMap; | |
15 | class AliTOFHitMap; | |
16 | class TClonesArray; | |
bf6bf84c | 17 | class TString; |
18 | class TTree; | |
19 | class TBranch; | |
20 | ||
21 | class AliTOFReconstructionerV2: public TTask { | |
22 | ||
23 | public: | |
24 | AliTOFReconstructionerV2() ; // ctor | |
25 | AliTOFReconstructionerV2(char* tpcBackTracks, char* tofDigits="digits.root"); | |
26 | AliTOFReconstructionerV2(const AliTOFReconstructionerV2 & rec); | |
27 | virtual ~AliTOFReconstructionerV2() ; // dtor | |
28 | Bool_t BackPropagation(){return kTRUE;}; | |
0085f44e | 29 | //void CreateNTuple(); |
bf6bf84c | 30 | void Comparison(Int_t* rtIndex); // for MC comparison |
31 | virtual void Exec(Option_t* option); // do the main work | |
32 | Int_t GetDbgFlag() const {return fdbg;} | |
33 | const char* GetTOFDigitsFile() const {return (char*)fTOFDigitsFile.Data();} | |
34 | const char* GetTPCBackTracksFile() const {return (char*)fTPCBackTracksFile.Data();} | |
35 | void Init(Option_t* opt); | |
36 | Int_t LoadTPCTracks(); | |
37 | Int_t LoadTOFDigits(); | |
38 | Int_t LoadTRDTracks(); | |
39 | Int_t SaveTracks(const Char_t* outname="tofTracks.root", const Int_t split=0); | |
40 | void SetDbg(Int_t dbgflag) {fdbg=dbgflag;} | |
41 | void SetTOFDigitsFile(char * tofDigitsFile ) {fTOFDigitsFile=tofDigitsFile;} | |
42 | void SetTPCBackTracksFile(char * tpcBackTracksFile ){fTPCBackTracksFile=tpcBackTracksFile;} | |
43 | void SetField(Float_t field) {fField=field;} | |
44 | void SetNDummyTracks(Int_t nDummyTracks){fNDummyTracks=nDummyTracks;} | |
45 | void SetScaleSigmaFactor(Float_t factor){fScaleSigmaFactor=factor;} | |
46 | void SetStep(Float_t step) {fStep=step;} | |
47 | Bool_t operator == (const AliTOFReconstructionerV2 & tofrecv2) const ; | |
48 | ||
49 | private: | |
50 | ||
51 | Int_t fdbg; //! Flag for debug, 0 no debug, 1 debug | |
52 | AliTOFDigitMap* fDigitsMap;//! pointer to the map of TOF digits | |
53 | //AliTOFHitMap* fDigitsMap; //! pointer to the map of TOF digits | |
54 | Float_t fField; //! mag field value [Tesla] | |
bf6bf84c | 55 | Int_t fNDummyTracks; // number of test tracks used to search |
56 | // the signal on TOF | |
57 | Float_t fScaleSigmaFactor; // scale factor for sigma (common value for sigmaY and sigmaZ) | |
58 | Float_t fStep; //! step inside the TOF volumes during | |
59 | // back propagation | |
60 | TClonesArray* fTOFDigits; //! pointer to the TClonesArray with TOF digits | |
61 | TClonesArray* fTOFTracks; //! pointer to the TClonesArray with TOF tracks | |
62 | TString fTOFDigitsFile; //! file with TOF digits | |
63 | TString fTPCBackTracksFile;//! seed TPC to TOF file name | |
64 | TTree* fKalmanTree ;//! tree with reconstructed tracks in TPC | |
65 | TBranch* fBranchWithTracks;//! branch with backpropagated tracks in TPC | |
66 | ||
67 | virtual void IsInsideThePad(Float_t x, Float_t y, Float_t z, Int_t *nGeom, Float_t& zPad, Float_t& xPad); | |
68 | virtual void GetGlobalXYZ(Double_t alpha, Double_t& x, Double_t& y, Double_t& z); | |
69 | Bool_t DigitFinder(TArrayI *secArray, TArrayI *plaArray, TArrayI *strArray, TArrayI *pdzArray, TArrayI *pdxArray, Int_t* assignedVol, Int_t* digitTrackArray, Float_t& tdc); | |
70 | ||
71 | protected: | |
72 | // the class is assumed to have a streamer | |
73 | ClassDef(AliTOFReconstructionerV2,1) // Task class for TOF reconstruction V2 | |
74 | ||
75 | }; | |
76 | ||
77 | #endif // AliTOFRECONSTRUCTIONERV2_H |