New MUON data container AliMUONData implementation
[u/mrichter/AliRoot.git] / MUON / AliMUONDigitizer.h
CommitLineData
28752ff4 1#ifndef ALIMUONDIGITIZER_H
2#define ALIMUONDIGITIZER_H
3/* Copyright(c) 1998-2001, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
b8278504 7#include "AliDigitizer.h"
28752ff4 8
9class AliRunDigitizer;
10class AliMUONPadHit;
8f36c696 11class AliMUONHitMapA1;
28752ff4 12
13class AliMUONDigitizer : public AliDigitizer {
14 public:
15
16 AliMUONDigitizer();
17 AliMUONDigitizer(AliRunDigitizer * manager);
18 virtual ~AliMUONDigitizer();
19
20 // Compare pad hits
c7955c78 21 virtual Bool_t Exists(const AliMUONPadHit * sdigit) const;
28752ff4 22 // Update a pad hit
23 virtual void Update(AliMUONPadHit *sdigit);
24 // Create a new hit
25 virtual void CreateNew(AliMUONPadHit *sdigit);
26
27 // Initialize merging and digitization
28 virtual Bool_t Init();
29
30 // Do the main work
b8278504 31 virtual void Exec(Option_t* option=0);
28752ff4 32
c7955c78 33 Int_t GetDebug() const {return fDebug;} // get debug level
b8278504 34 void SetDebug(Int_t level){fDebug = level;} // set debug level
28752ff4 35 enum {kBgTag = -1};
36
37 private:
38 void SortTracks(Int_t *tracks,Int_t *charges,Int_t ntr);
39
40 private:
ce3f5e87 41 TClonesArray* fHits;
42 TClonesArray* fPadHits;
8f36c696 43 AliMUONHitMapA1 **fHitMap; //! pointer to array of pointers to hitmaps
b8278504 44 Int_t fNch; //! chamber nr (loop variable)
45 Int_t fTrack; //! track nr (loop variable)
46 TObjArray *fTDList; //! list of AliMUONTransientDigits
b8278504 47 Int_t fCounter; //! nr. of AliMUONTransientDigit
8f36c696 48 Bool_t fSignal; //! kTRUE if signal file is processed
49 Int_t fMask; //! mask dependent on input file
b8278504 50 Int_t fDigits[6]; //! array with digits
51 Int_t fDebug; //! debug level
8f36c696 52
53 ClassDef(AliMUONDigitizer,1) // MUON merging/digitization
28752ff4 54};
55#endif
56