]>
Commit | Line | Data |
---|---|---|
e802be3e | 1 | #ifndef ALIFMDEDEPMAP_H |
2 | #define ALIFMDEDEPMAP_H | |
3 | /* Copyright(c) 1998-2000, ALICE Experiment at CERN, All rights | |
4 | * reserved. | |
5 | * | |
6 | * See cxx source for full Copyright notice | |
7 | */ | |
8 | #ifndef ALIFMDMAP_H | |
97961cbd | 9 | # include "AliFMDMap.h" |
e802be3e | 10 | #endif |
11 | //____________________________________________________________________ | |
9f662337 | 12 | /** Cache of Energy deposited, hit information per strip. |
13 | Contains a pair of energy deposited @c fEdep and | |
14 | number of hits @c fN, @c fEdep is the summed energy deposition, | |
15 | and @c fN is the number of hits | |
16 | @ingroup FMD_sim | |
17 | */ | |
e802be3e | 18 | class AliFMDEdepHitPair |
19 | { | |
baa92757 | 20 | public: |
088f8e79 | 21 | Float_t fEdep; // summed energy deposition |
22 | UShort_t fN; // Number of hits | |
9f662337 | 23 | /** CTOR */ |
e802be3e | 24 | AliFMDEdepHitPair() : fEdep(0), fN(0) {} |
9f662337 | 25 | /** DTOR */ |
26 | virtual ~AliFMDEdepHitPair() {} | |
27 | /** Assignment operator | |
28 | @param o Object to assign from | |
29 | @return Reference to this object */ | |
088f8e79 | 30 | AliFMDEdepHitPair& operator=(const AliFMDEdepHitPair& o) |
31 | { fEdep = o.fEdep; fN = o.fN; return *this; } | |
9f662337 | 32 | /** Copy CTOR |
33 | @param o Object to copy from */ | |
088f8e79 | 34 | AliFMDEdepHitPair(const AliFMDEdepHitPair& o) : fEdep(o.fEdep), fN(o.fN) {} |
9f662337 | 35 | ClassDef(AliFMDEdepHitPair, 1) |
e802be3e | 36 | }; |
37 | ||
38 | //____________________________________________________________________ | |
9f662337 | 39 | /** Map of Energy deposited, hit information per strip. |
40 | Contains a pair of energy deposited @c fEdep and | |
41 | number of hits @c fN, @c fEdep is the summed energy deposition, | |
42 | and @c fN is the number of hits */ | |
e802be3e | 43 | class AliFMDEdepMap : public AliFMDMap |
44 | { | |
45 | public: | |
9f662337 | 46 | /** Copy constructor |
47 | @param other Object to copy from. | |
48 | @return */ | |
e802be3e | 49 | AliFMDEdepMap(const AliFMDEdepMap& other); |
9f662337 | 50 | /** Constructor |
51 | @param maxDet Number of detectors (3) | |
52 | @param maxRing Number of rings (2) | |
53 | @param maxSec Number of sectors (40) | |
54 | @param maxStr Number of strips (20) */ | |
e802be3e | 55 | AliFMDEdepMap(size_t maxDet = kMaxDetectors, |
56 | size_t maxRing= kMaxRings, | |
57 | size_t maxSec = kMaxSectors, | |
58 | size_t maxStr = kMaxStrips); | |
9f662337 | 59 | /** DTOR */ |
e802be3e | 60 | virtual ~AliFMDEdepMap() { delete [] fData; } |
61 | AliFMDEdepMap& operator=(const AliFMDEdepMap& other); | |
9f662337 | 62 | /** Reset to default */ |
088f8e79 | 63 | virtual void Reset(); |
9f662337 | 64 | /** Reset to value |
f8616692 | 65 | @param val Value to reset from */ |
088f8e79 | 66 | virtual void Reset(const AliFMDEdepHitPair& val); |
9f662337 | 67 | /** Access operator |
f8616692 | 68 | @param detector Detector |
69 | @param ring Ring | |
70 | @param sector Sector | |
71 | @param strip Strip | |
9f662337 | 72 | @return reference value stored for the strip */ |
e802be3e | 73 | virtual AliFMDEdepHitPair& operator()(UShort_t detector, |
f8616692 | 74 | Char_t ring, |
75 | UShort_t sector, | |
76 | UShort_t strip); | |
9f662337 | 77 | /** Access operator |
f8616692 | 78 | @param detector Detector |
79 | @param ring Ring | |
80 | @param sector Sector | |
81 | @param strip Strip | |
9f662337 | 82 | @return value stored for the strip */ |
e802be3e | 83 | virtual const AliFMDEdepHitPair& operator()(UShort_t detector, |
f8616692 | 84 | Char_t ring, |
85 | UShort_t sector, | |
86 | UShort_t strip) const; | |
e802be3e | 87 | protected: |
9f662337 | 88 | size_t fTotal; // Total number of entries |
bfdc7f5d | 89 | AliFMDEdepHitPair* fData; //[fTotal] The data |
90 | ClassDef(AliFMDEdepMap, 2) // Cache of edep,hit information per strip | |
e802be3e | 91 | }; |
92 | ||
93 | #endif | |
94 | //____________________________________________________________________ | |
95 | // | |
96 | // Local Variables: | |
97 | // mode: C++ | |
98 | // End: | |
99 | // | |
100 | // EOF | |
101 | // | |
102 | ||
103 |