]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - ITS/AliITSMapA1.h
Moved coordinates
[u/mrichter/AliRoot.git] / ITS / AliITSMapA1.h
... / ...
CommitLineData
1#ifndef ALIITSMAPA1_H
2#define ALIITSMAPA1_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5/* $Id$ */
6////////////////////////////////////////////////////////////////////////
7// Map Class for ITS. Implementation A1. In this implementation, the //
8// 2 dimensional (iz,ix) map is filled with integers values. For each //
9// cell a corresponding TObject, a hit, can also be stored. //
10////////////////////////////////////////////////////////////////////////
11#include "AliITSMap.h"
12class AliITSsegmentation;
13class TObjArray;
14
15class AliITSMapA1 : public AliITSMap{
16
17 public:
18 AliITSMapA1(); // default creator
19 // Standard reator using only a segmentation class
20 AliITSMapA1(AliITSsegmentation *seg);
21 // Standard reator using only a segmentation class and pointer to digits
22 AliITSMapA1(AliITSsegmentation *seg, TObjArray *dig);
23 // Standard reator using only a segmentation class and pointer to digits
24 // and a threshold value
25 AliITSMapA1(AliITSsegmentation *seg, TObjArray *dig, Int_t threshold);
26 // Copy Operator
27 AliITSMapA1(const AliITSMapA1 &source);
28 // Assignment operator
29 AliITSMapA1& operator=(const AliITSMapA1 &source);
30 // Distructor
31 virtual ~AliITSMapA1();
32 // Fill hits from list of digits into hit map
33 virtual void FillMap();
34 // Clear the hit map
35 virtual void ClearMap();
36 // Set a single hit
37 virtual void SetHit(Int_t iz, Int_t ix, Int_t idigit);
38 // Set threshold for the signal
39 virtual void SetThreshold(Int_t thresh) {fMapThreshold=thresh;}
40 // Delete a single hit
41 virtual void DeleteHit(Int_t iz, Int_t ix);
42 // Get index of hit in the list of digits
43 virtual Int_t GetHitIndex(Int_t iz, Int_t ix);
44 // Get pointer to digit
45 virtual TObject* GetHit(Int_t iz, Int_t ix);
46 // Flag a hit as used
47 virtual void FlagHit(Int_t iz, Int_t ix);
48 // Test hit status
49 virtual FlagType TestHit(Int_t iz, Int_t ix);
50 // Get signal from map
51 virtual Double_t GetSignal(Int_t iz, Int_t ix);
52 // Get max index inmap
53 Int_t MaxIndex() const {return fMaxIndex;}
54 // Set the array of objects
55 void SetArray(TObjArray *obj);
56
57 protected:
58 // Check index
59 Int_t CheckedIndex(Int_t iz, Int_t ix);
60
61 // Data members
62 AliITSsegmentation *fSegmentation; // segmentation class
63 Int_t fNpx; // fNpx
64 Int_t fNpz; // fNpz
65 TObjArray *fObjects; // object
66 Int_t fNobjects; // number of objects
67 Int_t fMaxIndex; // max index in map
68
69 private:
70 Int_t *fHitMap; //! [fMaxIndex]
71 Int_t fMapThreshold; // signal threshold (ADC)
72
73 ClassDef(AliITSMapA1,1) // Implements Hit/Digit Map
74};
75
76#endif
77