]>
Commit | Line | Data |
---|---|---|
92aeef15 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
4 | // $Id$ | |
5 | ||
6 | /// \ingroup sim | |
7 | /// \class AliMUONDigitizerV3 | |
05314992 | 8 | /// \brief Digitizer (from SDigit to Digit), performing digit de-calibration. |
9 | /// | |
92aeef15 | 10 | /// \author Laurent Aphecetche |
11 | ||
12 | #ifndef ALIMUONDIGITIZERV3_H | |
13 | #define ALIMUONDIGITIZERV3_H | |
14 | ||
15 | #ifndef ALIDIGITIZER_H | |
16 | #include "AliDigitizer.h" | |
17 | #endif | |
18 | ||
19 | class AliMUONCalibrationData; | |
20 | class AliMUONData; | |
21 | class AliMUONDigit; | |
22 | class TClonesArray; | |
23 | class TString; | |
24 | ||
25 | class AliMUONDigitizerV3 : public AliDigitizer | |
26 | { | |
27 | public: | |
28 | enum ETriggerCodeVersion | |
29 | { | |
30 | kTriggerDecision=-1, | |
31 | kTriggerElectronics | |
32 | }; | |
33 | ||
34 | AliMUONDigitizerV3(AliRunDigitizer* manager=0, | |
35 | ETriggerCodeVersion=kTriggerDecision); | |
36 | virtual ~AliMUONDigitizerV3(); | |
37 | ||
38 | virtual void Exec(Option_t* opt=""); | |
39 | ||
40 | virtual Bool_t Init(); | |
41 | ||
884a73f1 | 42 | protected: |
43 | AliMUONDigitizerV3(const AliMUONDigitizerV3& right); | |
44 | AliMUONDigitizerV3& operator = (const AliMUONDigitizerV3& right); | |
45 | ||
92aeef15 | 46 | private: |
47 | ||
48 | void AddOrUpdateDigit(TClonesArray& array, | |
49 | const AliMUONDigit& digit); | |
50 | ||
51 | void ApplyResponse(); | |
52 | ||
53 | void ApplyResponseToDigit(AliMUONDigit& digit); | |
54 | ||
55 | Int_t FindDigitIndex(TClonesArray& array, const AliMUONDigit& digit); | |
56 | ||
57 | AliMUONData* GetDataAccess(const TString& folderName); | |
58 | ||
59 | Bool_t MergeDigits(const AliMUONDigit& src, AliMUONDigit& srcAndDest); | |
60 | ||
05314992 | 61 | void MergeWithSDigits(AliMUONData& outputData, const AliMUONData& inputData, |
62 | Int_t mask); | |
92aeef15 | 63 | |
64 | private: | |
05314992 | 65 | Bool_t fIsInitialized; // are we initialized ? |
66 | AliMUONData* fOutputData; //! pointer to access digits | |
67 | AliMUONCalibrationData* fCalibrationData; //! pointer to access calib parameters | |
68 | TTask* fTriggerProcessor; // pointer to the trigger part of the job | |
69 | ETriggerCodeVersion fTriggerCodeVersion; // which version of trigger job | |
92aeef15 | 70 | |
05314992 | 71 | ClassDef(AliMUONDigitizerV3,2) // MUON Digitizer V3-2 |
92aeef15 | 72 | }; |
73 | ||
74 | #endif |