X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ITS%2FAliITSMap.h;h=b8bf8db1d1518e895fbd0f4b017e00db294146de;hb=a1f7efecc26095192b52cec3010d562124512f7b;hp=97ddeee3d500e32380ff53426286bc1e8accbb37;hpb=b0f5e3fcf84ecedb50df35ebe629b44bafc15bc0;p=u%2Fmrichter%2FAliRoot.git diff --git a/ITS/AliITSMap.h b/ITS/AliITSMap.h index 97ddeee3d50..b8bf8db1d15 100644 --- a/ITS/AliITSMap.h +++ b/ITS/AliITSMap.h @@ -1,116 +1,48 @@ #ifndef ALIITSMAP_H #define ALIITSMAP_H +/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * + * See cxx source for full Copyright notice */ +/* $Id$ */ +//////////////////////////////////////////////// +// Map Class for ITS. // +//////////////////////////////////////////////// - -#include "AliITS.h" - -typedef enum {kEmpty, kUsed, kUnused} Flag_t; +#include +#include +typedef enum {kEmpty, kUsed, kUnused} FlagType; //___________________________________________________________________________ -class AliITSMap : - public TObject { - -public: - virtual ~AliITSMap() {} - virtual void FillMap() =0; - virtual void ClearMap() =0; - virtual void SetHit(Int_t iz, Int_t ix, Int_t idigit) =0; - virtual void DeleteHit(Int_t iz, Int_t ix) =0; - virtual void FlagHit(Int_t iz, Int_t ix) =0; - virtual Int_t GetHitIndex(Int_t iz, Int_t ix) =0; - virtual TObject * GetHit(Int_t iz, Int_t ix) =0; - virtual Flag_t TestHit(Int_t iz, Int_t ix) =0; - virtual Double_t GetSignal(Int_t iz, Int_t ix) =0; - - ClassDef(AliITSMap,1) //virtual base class for ITS Hit/Digit Map - - }; - - -class AliITSMapA1 : - public AliITSMap -{ - -public: - AliITSMapA1() { - // constructor - } - AliITSMapA1(AliITSsegmentation *seg); - AliITSMapA1(AliITSsegmentation *seg, TObjArray *dig); - AliITSMapA1(const AliITSMapA1 &source); // copy constructor - AliITSMapA1& operator=(const AliITSMapA1 &source); // assignment operator - - virtual ~AliITSMapA1(); - virtual void FillMap(); - virtual void ClearMap(); - virtual Double_t GetSignal(Int_t iz, Int_t ix) { - // get signal - return 0.; - } - virtual void SetHit(Int_t iz, Int_t ix, Int_t idigit); - virtual void DeleteHit(Int_t iz, Int_t ix); - virtual Int_t GetHitIndex(Int_t iz, Int_t ix); - virtual TObject* GetHit(Int_t iz, Int_t ix); - virtual void FlagHit(Int_t iz, Int_t ix); - virtual Flag_t TestHit(Int_t iz, Int_t ix); - Int_t CheckedIndex(Int_t iz, Int_t ix); - Int_t MaxIndex() { - // max index - return fMaxIndex; - } - void SetArray(TObjArray *obj); - -protected: - AliITSsegmentation *fSegmentation; // segmentation class - Int_t fNpx; // fNpx - Int_t fNpz; // fNpz - TObjArray *fObjects; // object - Int_t fNobjects; // nu of object - Int_t fMaxIndex; // max index - -private: - Int_t *fHitMap; // hit map - - ClassDef(AliITSMapA1,1) // Implements Hit/Digit Map for SDD - read tree - }; - - -class AliITSMapA2 : -public AliITSMapA1 -{ - -public: - AliITSMapA2(AliITSsegmentation *seg); - AliITSMapA2(AliITSsegmentation *seg, TObjArray *hist,Double_t thresh); - virtual ~AliITSMapA2(); - AliITSMapA2(const AliITSMapA2 &source); // copy constructor - AliITSMapA2& operator=(const AliITSMapA2 &source); // assignment operator - virtual void FillMap(); - virtual void ClearMap(); - virtual void SetHit(Int_t iz, Int_t ix, Int_t signal){ - // set hit - } - virtual void FlagHit(Int_t iz, Int_t ix); - virtual void DeleteHit(Int_t iz, Int_t ix); - virtual Int_t GetHitIndex(Int_t iz, Int_t ix); - virtual TObject * GetHit(Int_t iz, Int_t dummy); - virtual Flag_t TestHit(Int_t iz, Int_t ix); - virtual Double_t GetSignal(Int_t iz, Int_t ix); - void SetHit(Int_t iz, Int_t ix, Double_t signal); - Double_t GetSignal(Int_t index); - -private: - Double_t *fHitMap; // fHitMap - Double_t fMapThreshold; // fMapThreshold - - void FillMapFromHist(); - void FillHist(); - void ResetHist(); - - ClassDef(AliITSMapA2,1) // Implements Signal Map for SDD -fill or read hist - }; - +class AliITSMap : public TObject { + + public: + virtual ~AliITSMap() {} + // Fill hits from list of digits into hit map + virtual void FillMap() =0; + virtual void FillMap2() =0; + // Clear the map + virtual void ClearMap() =0; + // Set a single hit + virtual void SetHit(Int_t iz, Int_t ix, Int_t idigit) =0; + // Set threshold for the signal + virtual void SetThreshold(Int_t) =0; + virtual void SetThresholdArr(TArrayI) =0; + // Delete a single hit + virtual void DeleteHit(Int_t iz, Int_t ix) =0; + // Flag a hit as used + virtual void FlagHit(Int_t iz, Int_t ix) =0; + // Get index of hit in the list of digits + virtual Int_t GetHitIndex(Int_t iz, Int_t ix) const =0; + // Get pointer to digit + virtual TObject * GetHit(Int_t iz, Int_t ix) const =0; + // Test hit status + virtual FlagType TestHit(Int_t iz, Int_t ix) =0; + // Get signal from map + virtual Double_t GetSignal(Int_t iz, Int_t ix) const =0; + + ClassDef(AliITSMap,1) //virtual base class for ITS Hit/Digit Map + +}; #endif