New MUON data container AliMUONData implementation
[u/mrichter/AliRoot.git] / MUON / AliMUONDigitizerv1.h
... / ...
CommitLineData
1#ifndef ALIMUONDIGITIZERV1_H
2#define ALIMUONDIGITIZERV1_H
3/* Copyright(c) 1998-2001, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6// The AliMUONDigitizer procees :
7// - Addition of hits from different tracks
8// - Merging of hits from different files
9// - The response function of the chamber.
10// - Simulation of the electronic noise, threshold and saturation
11//
12// Gines MARTINEZ Subatech Feb 2003
13
14#include "AliDigitizer.h"
15class AliRunDigitizer;
16class AliMUONPadHit;
17class AliMUONHitMapA1;
18
19class AliMUONDigitizerv1 : public AliDigitizer {
20
21 public:
22 AliMUONDigitizerv1();
23 AliMUONDigitizerv1(AliRunDigitizer * manager);
24 virtual ~AliMUONDigitizerv1();
25
26 // Create a new TransientDigit
27 virtual void AddTransientDigit(AliMUONTransientDigit * mTD);
28 // Do the main work
29 virtual void Exec(Option_t* option=0);
30 // Verifying a TransientDigit
31 virtual Bool_t ExistTransientDigit(AliMUONTransientDigit * mTD);
32 // Getting debug level
33 Int_t GetDebug() const {return fDebug;} // get debug level
34 // Initialize merging and digitization
35 virtual Bool_t Init();
36 // Generation of a TransientDigit : Response function of the chamber
37 virtual void MakeTransientDigit(Int_t itrack, Int_t ihit, AliMUONHit * mHit);
38 // Setting debug level
39 void SetDebug(Int_t level){fDebug = level;} // set debug level
40 enum {kBgTag = -1};
41 // Updating a TransientDigit
42 virtual void UpdateTransientDigit(Int_t itrack, AliMUONTransientDigit * mTD);
43
44 private:
45 void SortTracks(Int_t *tracks,Int_t *charges,Int_t ntr);
46
47 private:
48 AliMUONHitMapA1 **fHitMap; //! pointer to array of pointers to hitmaps
49 TObjArray *fTDList; //! list of AliMUONTransientDigits
50 Int_t fTDCounter; //! nr. of AliMUONTransientDigits
51 Int_t fDebug; //! debug level
52 Int_t fMask; //! mask dependent on input file
53 Bool_t fSignal; //! kTRUE if signal file is processed
54
55
56 ClassDef(AliMUONDigitizerv1,1)
57};
58#endif
59