]>
Commit | Line | Data |
---|---|---|
7d62fb64 | 1 | #ifndef ALIITSDIGITIZER_H |
2 | #define ALIITSDIGITIZER_H | |
9ad8b5dd | 3 | /* Copyright (c) 1998-2001, ALICE Experiment at CERN, All rights reserved * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* | |
7 | $Id$ | |
8 | */ | |
7d62fb64 | 9 | ////////////////////////////////////////////////////////////////// |
10 | // Digitizer class for ITS // | |
11 | ////////////////////////////////////////////////////////////////// | |
9ad8b5dd | 12 | class TObjArray; |
fd04285a | 13 | class TTree; |
9ad8b5dd | 14 | |
9ad8b5dd | 15 | class AliRunDigitizer; |
16 | ||
17 | #include "AliDigitizer.h" // Base class from which this one is derived | |
18 | #include "AliITS.h" // ITS class functions used in inline functions. | |
9ad8b5dd | 19 | class AliITSmodule; |
20 | ||
9ad8b5dd | 21 | class AliITSDigitizer : public AliDigitizer{ |
22 | public: | |
23 | AliITSDigitizer(); | |
24 | AliITSDigitizer(AliRunDigitizer *manager); | |
7d62fb64 | 25 | |
9ad8b5dd | 26 | virtual ~AliITSDigitizer(); |
27 | // Standard routines. | |
28 | virtual Bool_t Init(); | |
fd04285a | 29 | // Perform SDigits to Digits, with or without merging, depending on the |
30 | // number of files. | |
9ad8b5dd | 31 | virtual void Exec(Option_t* opt=0); |
f1888ca5 | 32 | // Sets a particular module active |
0b572028 | 33 | virtual void SetModuleActive(Int_t i){if(fModActive) fModActive[i] = kTRUE;} |
f1888ca5 | 34 | // Sets a particular module inactive |
0b572028 | 35 | virtual void SetModuleInActive(Int_t i){if(fModActive) fModActive[i] = kFALSE;} |
fd04285a | 36 | // Sets Region of Interst Flag. if fRiof=0 then no Region of Interest |
37 | // cut applyed | |
38 | virtual void SetByRegionOfInterestFlag(Int_t i=0){fRoif = i;}; | |
39 | // Sets the SDigits file number to be used to define the region of | |
40 | // interest. Default is file=-1, assumed that a region of interest | |
41 | // cut will be applied. A value of 0 means no cut to be applyed. Other | |
42 | // values have yet to be defined. | |
43 | virtual void SetByRegionOfFileNumber(Int_t i=-1){fRoiifile = i;}; | |
44 | // Clears the region of interest flag. Calling this implies that a | |
45 | // Region of interest cut will not be made. | |
46 | virtual void ClearByRegionOfInterestFlag(){fRoif = 0;}; | |
9ad8b5dd | 47 | private: |
ca860b9b | 48 | AliITSDigitizer(const AliITSDigitizer& dig); |
49 | AliITSDigitizer& operator=(const AliITSDigitizer &source); | |
9ad8b5dd | 50 | // Routines used internaly |
fd04285a | 51 | // Returns a pointer to the TObjecArray of Modules. |
9ad8b5dd | 52 | TObjArray* GetModules(){return fITS->GetModules();} |
fd04285a | 53 | // Returns a pointer to a specific module. |
9ad8b5dd | 54 | AliITSmodule* GetModule(Int_t i){return fITS->GetModule(i);} |
fd04285a | 55 | // Returns a pointer to the manager |
9ad8b5dd | 56 | AliRunDigitizer* GetManager(){return fManager;} |
fd04285a | 57 | // Sets the region of Interest based on which module have SDigits |
58 | // Defined (non-noise SDigits). | |
fca85276 | 59 | virtual void SetByRegionOfInterest(TTree *ts); |
9ad8b5dd | 60 | private: |
fd04285a | 61 | AliITS *fITS; //! local pointer to ITS |
0b572028 | 62 | Bool_t *fModActive;//! flag to indicate which module to digitize. |
fd04285a | 63 | Bool_t fInit; //! flag to indecate Initilization when well. |
64 | Int_t fRoif; //! Region of interest flag. | |
fca85276 | 65 | Int_t fRoiifile; //! The file number with which to determing the region |
66 | // of interest from. | |
2a476797 | 67 | Bool_t fFlagFirstEv; //! Flag to control calibration access |
9ad8b5dd | 68 | |
2a476797 | 69 | ClassDef(AliITSDigitizer,2) // Task to Digitize ITS from summable hits. |
9ad8b5dd | 70 | }; |
71 | #endif |