]>
Commit | Line | Data |
---|---|---|
61e0abb5 | 1 | #ifndef ALIEMCALDigitizer_H |
2 | #define ALIEMCALDigitizer_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
7 | ||
8 | //_________________________________________________________________________ | |
9 | // Task Class for making SDigits in EMCAL | |
10 | // | |
11 | //*-- Author: Dmitri Peressounko(SUBATECH & KI) | |
12 | ||
13 | ||
14 | // --- ROOT system --- | |
15 | #include "TTask.h" | |
16 | #include "TObjString.h" | |
17 | class TArrayI ; | |
18 | // --- Standard library --- | |
19 | ||
20 | // --- AliRoot header files --- | |
21 | class AliEMCALSDigitizer ; | |
22 | ||
23 | ||
24 | class AliEMCALDigitizer: public TTask { | |
25 | ||
26 | public: | |
27 | AliEMCALDigitizer() ; // ctor | |
28 | AliEMCALDigitizer(const char *headerFile,const char * sDigitsBranchTitle = 0) ; | |
29 | virtual ~AliEMCALDigitizer() ; | |
30 | ||
31 | void Digitize(Option_t *option); // Make Digits from SDigits stored in fSDigits | |
32 | void Exec(Option_t *option); // Supervising method | |
33 | ||
34 | Float_t GetEMCThreshold() const { return fEMCDigitThreshold;} | |
35 | Float_t GetPedestal() const { return fPedestal; } | |
36 | Float_t GetPinNoise() const { return fPinNoise;} | |
37 | Float_t GetSlope() const { return fSlope; } | |
38 | char * GetDigitsBranch ()const { return (char*)fDigitsTitle.Data() ;} | |
39 | TClonesArray * GetHeadersFiles(){ return fHeaderFiles ;} | |
40 | TArrayI* GetCurrentEvents() { return fIevent ;} | |
41 | ||
42 | void MixWith(char* HeaderFile, char* SDigitsTitle =0) ; // Add another one file to mix | |
43 | virtual void Print(Option_t* option)const ; | |
44 | void Reset() ; //restarts starts event processing from 0 event(s) | |
45 | ||
46 | void SetEMCThreshold(Float_t EMCThreshold) {fEMCDigitThreshold = EMCThreshold;} | |
47 | void SetPinNoise(Float_t PinNoise ) {fPinNoise = PinNoise;} | |
48 | ||
49 | void SetDigitsBranch (const char* file) ; | |
50 | void SetSDigitsBranch(const char* file) ; | |
51 | ||
52 | private: | |
53 | Bool_t Combinator() ; // makes all desirable combination sig+Bg | |
54 | void Init(); | |
55 | Bool_t ReadSDigits() ; // Read sdigits for particular events | |
56 | void WriteDigits() ; // Writes Digits for particular event | |
57 | void PrintDigits(Option_t * option) ; | |
58 | ||
59 | private: | |
60 | TClonesArray * fSDigitsTitles ; // Titles of sdigits branches | |
61 | TClonesArray * fHeaderFiles ; // Names of files with headers to merge | |
62 | TString fDigitsTitle ; // Title of the Digits Branch | |
63 | TClonesArray * fSDigits ; // ! Lists of SDigits | |
64 | TClonesArray * fDigits ; // ! Final list of digits | |
65 | AliEMCALSDigitizer * fSDigitizer ; // ! SDigitizer to extarct some sdigitizing parameters | |
66 | Int_t fNinputs ; // Number of input files | |
67 | Bool_t fInitialized ; // | |
68 | TArrayI * fIevent ; // events to read at the next ReadSDigits() call | |
69 | TArrayI * fIeventMax ; // Maximal number of events in each input file | |
70 | ||
71 | Float_t fPedestal ; // Calibration parameters | |
72 | Float_t fSlope ; // read from SDigitizer | |
73 | ||
74 | Float_t fPinNoise ; // Electronics noise in EMC | |
75 | Float_t fEMCDigitThreshold ; // Threshold for storing digits in EMC | |
76 | ||
77 | ||
78 | ClassDef(AliEMCALDigitizer,1) // description | |
79 | ||
80 | }; | |
81 | ||
82 | ||
83 | #endif // AliEMCALDigitizer_H |