]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONHitMap.h
Adding Ishunt funcionality to AliPHOSv0hits class
[u/mrichter/AliRoot.git] / MUON / AliMUONHitMap.h
CommitLineData
a897a37a 1#ifndef AliMUONHitMap_H
2#define AliMUONHitMap_H
3da30618 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
a897a37a 7
8#include "AliMUON.h"
9#include "TArrayI.h"
10typedef enum {empty, used, unused} Flag_t;
11const Int_t kMaxNpadx=1200, kMaxNpady=1200;
12
13class AliMUONHitMap :
14public TObject {
15 public:
16 virtual void FillHits() =0;
e3a4d40e 17 virtual void ClearMap() =0;
a897a37a 18 virtual void SetHit(Int_t ix, Int_t iy, Int_t idigit) =0;
19 virtual void DeleteHit(Int_t ix, Int_t iy) =0;
20 virtual Int_t GetHitIndex(Int_t ix, Int_t iy) =0;
21 virtual TObject * GetHit(Int_t ix, Int_t iy) =0;
22 virtual void FlagHit(Int_t ix, Int_t iy) =0;
23 virtual Flag_t TestHit(Int_t ix, Int_t iy) =0;
24
25 ClassDef(AliMUONHitMap,1) //virtual base class for muon HitMap
26};
27
28class AliMUONHitMapA1 :
29public AliMUONHitMap
30{
31 private:
32 AliMUONsegmentation *fSegmentation;
33 Int_t fNpx;
34 Int_t fNpy;
35 TObjArray *fDigits;
36 Int_t fNdigits;
37 Int_t *fHitMap;
38 Int_t fMaxIndex;
39
40 public:
41 AliMUONHitMapA1(AliMUONsegmentation *seg, TObjArray *dig);
42 virtual ~AliMUONHitMapA1();
43 virtual void FillHits();
e3a4d40e 44 virtual void ClearMap();
a897a37a 45 virtual void SetHit(Int_t ix, Int_t iy, Int_t idigit);
46 virtual void DeleteHit(Int_t ix, Int_t iy);
47 virtual Int_t GetHitIndex(Int_t ix, Int_t iy);
48 virtual TObject* GetHit(Int_t ix, Int_t);
49 virtual void FlagHit(Int_t ix, Int_t iy);
50 virtual Flag_t TestHit(Int_t ix, Int_t iy);
51 private:
52 Int_t CheckedIndex(Int_t ix, Int_t iy);
53 ClassDef(AliMUONHitMapA1,1) // Implements HitMap as a 2-dim array
54};
55#endif
56
57