]>
Commit | Line | Data |
---|---|---|
d8a72780 | 1 | #ifndef ALIRICHMERGER_H |
2 | #define ALIRICHMERGER_H | |
3 | /* Copyright(c) 1998-2000, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | // #include "AliMerger.h" | |
9 | // #include "AliMergable.h" | |
10 | ||
11 | class AliRICHSDigit; | |
12 | class AliHitMap; | |
13 | ||
14 | typedef enum {kDigitize=0, kMerge = 1} MergeMode_t; | |
15 | ||
16 | class AliRICHMerger { | |
17 | public: | |
18 | ||
19 | AliRICHMerger(); | |
20 | virtual ~AliRICHMerger(); | |
21 | ||
22 | // Compare pad hits | |
23 | virtual Bool_t Exists(const AliRICHSDigit * sdigit); | |
24 | // Update a pad hit | |
25 | virtual void Update(AliRICHSDigit *sdigit); | |
26 | // Create a new hit | |
27 | virtual void CreateNew(AliRICHSDigit *sdigit); | |
28 | ||
29 | // Initialize merging and digitisation | |
30 | virtual void Init(); | |
31 | ||
32 | // Do the main work | |
33 | void Digitise(Int_t nev,Int_t flag) ; | |
34 | ||
35 | // Setters -> Later Communication with gAlice | |
36 | void SetSignalEventNumber(Int_t i) {fEvNrSig = i;} | |
37 | void SetBackgroundEventNumber(Int_t i) {fEvNrBgr = i;} | |
38 | void SetBackgroundFileName(char* file) {fFnBgr = file;} | |
39 | void SetMode(MergeMode_t mode) {fMerge = mode;} | |
40 | ||
41 | enum {kBgTag = -1}; | |
42 | ||
43 | private: | |
44 | // Open the bgr file | |
45 | TFile *InitBgr(); | |
46 | private: | |
47 | TTree *fTrH1; // ! Hits Tree for background event | |
48 | TClonesArray *fHitsBgr; // ! List of hits for one track only | |
49 | TClonesArray *fSDigitsBgr; // ! List of clusters for one track only | |
50 | AliHitMap **fHitMap; // ! pointer to array of pointers to hitmaps | |
51 | Int_t fNch; // ! chamber nr (loop variable) | |
52 | Int_t fTrack; // ! track nr (loop variable) | |
53 | TObjArray *fList; // ! list of AliRICHTransientDigit | |
54 | TObjArray *fTrList; // ! list of tracks | |
55 | TClonesArray *fAddress; // ! pointer to TClonesArray of TVectors with trackinfo | |
56 | Int_t fCounter; // ! nr. of AliRICHTransientDigit | |
57 | Int_t fCountadr; // ! counter for trinfo | |
58 | Int_t fDigits[6]; // ! array with digits | |
59 | Int_t fEvNrSig; // signal event number | |
60 | Int_t fEvNrBgr; // background event number | |
61 | MergeMode_t fMerge; // merging type kDigitize, kMerge | |
62 | char *fFnBgr; // background file name | |
63 | TFile *fBgrFile; // Pointer to background file | |
64 | ||
65 | ClassDef(AliRICHMerger,0) | |
66 | }; | |
67 | #endif | |
68 |