@param other Object to copy from.
@return */
AliFMDEdepMap(const AliFMDEdepMap& other);
+ /** Constructor */
+ AliFMDEdepMap();
/** Constructor
@param maxDet Number of detectors (3)
@param maxRing Number of rings (2)
@param maxSec Number of sectors (40)
@param maxStr Number of strips (20) */
- AliFMDEdepMap(size_t maxDet = kMaxDetectors,
- size_t maxRing= kMaxRings,
- size_t maxSec = kMaxSectors,
- size_t maxStr = kMaxStrips);
+ AliFMDEdepMap(UShort_t maxDet,
+ UShort_t maxRing= 0,
+ UShort_t maxSec = 0,
+ UShort_t maxStr = 0);
/** DTOR */
virtual ~AliFMDEdepMap() { delete [] fData; }
AliFMDEdepMap& operator=(const AliFMDEdepMap& other);
Char_t ring,
UShort_t sector,
UShort_t strip) const;
+ void* Ptr() const { return reinterpret_cast<void*>(fData); }
protected:
- size_t fTotal; // Total number of entries
+ Int_t MaxIndex() const { return fTotal; }
+ Int_t AtAsInt(Int_t idx) const { return fData[idx].fN; }
+ Int_t& AtAsInt(Int_t idx) { return AliFMDMap::AtAsInt(idx); }
+ Bool_t AtAsBool(Int_t idx) const { return fData[idx].fEdep > 0; }
+ Bool_t& AtAsBool(Int_t idx) { return AliFMDMap::AtAsBool(idx); }
+ Float_t AtAsFloat(Int_t idx) const { return fData[idx].fEdep; }
+ Float_t& AtAsFloat(Int_t idx) { return fData[idx].fEdep; }
+ UShort_t AtAsUShort(Int_t idx) const { return fData[idx].fN; }
+ UShort_t& AtAsUShort(Int_t idx) { return fData[idx].fN; }
+ Bool_t IsUShort() const { return kTRUE; }
+ Bool_t IsFloat() const { return kTRUE; }
+ Int_t fTotal; // Total number of entries
AliFMDEdepHitPair* fData; //[fTotal] The data
- ClassDef(AliFMDEdepMap, 2) // Cache of edep,hit information per strip
+ ClassDef(AliFMDEdepMap, 3) // Cache of edep,hit information per strip
};
#endif