00001 #ifndef ALIFMDEDEPMAP_H
00002 #define ALIFMDEDEPMAP_H
00003
00004
00005
00006
00007
00008 #ifndef ALIFMDMAP_H
00009 # include "AliFMDMap.h"
00010 #endif
00011
00018 class AliFMDEdepHitPair
00019 {
00020 public:
00021 Float_t fEdep;
00022 UShort_t fN;
00024 AliFMDEdepHitPair() : fEdep(0), fN(0) {}
00026 virtual ~AliFMDEdepHitPair() {}
00030 AliFMDEdepHitPair& operator=(const AliFMDEdepHitPair& o)
00031 { fEdep = o.fEdep; fN = o.fN; return *this; }
00034 AliFMDEdepHitPair(const AliFMDEdepHitPair& o) : fEdep(o.fEdep), fN(o.fN) {}
00035 ClassDef(AliFMDEdepHitPair, 1)
00036 };
00037
00038
00043 class AliFMDEdepMap : public AliFMDMap
00044 {
00045 public:
00049 AliFMDEdepMap(const AliFMDEdepMap& other);
00055 AliFMDEdepMap(size_t maxDet = kMaxDetectors,
00056 size_t maxRing= kMaxRings,
00057 size_t maxSec = kMaxSectors,
00058 size_t maxStr = kMaxStrips);
00060 virtual ~AliFMDEdepMap() { delete [] fData; }
00061 AliFMDEdepMap& operator=(const AliFMDEdepMap& other);
00063 virtual void Reset();
00066 virtual void Reset(const AliFMDEdepHitPair& val);
00073 virtual AliFMDEdepHitPair& operator()(UShort_t detector,
00074 Char_t ring,
00075 UShort_t sector,
00076 UShort_t strip);
00083 virtual const AliFMDEdepHitPair& operator()(UShort_t detector,
00084 Char_t ring,
00085 UShort_t sector,
00086 UShort_t strip) const;
00087 protected:
00088 size_t fTotal;
00089 AliFMDEdepHitPair* fData;
00090 ClassDef(AliFMDEdepMap, 2)
00091 };
00092
00093 #endif
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103