X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=ITS%2FAliITSdigit.h;h=3045d5522bf59bf3a271a0c15ea3df66536fdb12;hb=7bc07e21757acbf678ac5854c7a96ad6976cd66e;hp=02d3884e5cef5f2bd48e01420aea2eaa296c0a9f;hpb=3bd79107e15b5ec1800d2907936bc2220ad71c6d;p=u%2Fmrichter%2FAliRoot.git diff --git a/ITS/AliITSdigit.h b/ITS/AliITSdigit.h index 02d3884e5ce..3045d5522bf 100644 --- a/ITS/AliITSdigit.h +++ b/ITS/AliITSdigit.h @@ -1,165 +1,74 @@ #ifndef ALIITSDIGIT_H #define ALIITSDIGIT_H +/* Copyright(c) 2004-2006, ALICE Experiment at CERN, All rights reserved. * + * See cxx source for full Copyright notice */ + +/* $Id$ */ //////////////////////////////////////////////// -// Digits classes for set:ITS // +// Digits classes for all ITS detectors // //////////////////////////////////////////////// - +#include +#include #include -#include -//___________________________________________ -class AliITSdigit: public TObject { - -public: - - Int_t fCoord1; // Cell number on Z axis (SPD+SDD) , flag for side type (SSD) - Int_t fCoord2 ; // Cell number on X axis (SPD+SDD) , strip number (SSD) - Int_t fSignal; // Signal - -public: - AliITSdigit() { - // constructor - fSignal=fCoord1=fCoord2=0; - } - AliITSdigit(Int_t *digits); - virtual ~AliITSdigit() { - // destructor - } - - ClassDef(AliITSdigit,1) // Real data digit object for set:ITS - }; +class TObjArray; +class TArrayI; +class TArrayF; -//___________________________________________ -class AliITSdigitSPD: public AliITSdigit { - -public: - - // debugging -- goes to the dictionary - Int_t fTracks[3]; // tracks making this digit - -public: - AliITSdigitSPD() { - // constructor - fSignal=fCoord1=fCoord2=0; - fTracks[0]=fTracks[1]=fTracks[2]=0; - } - - AliITSdigitSPD(Int_t *digits); - AliITSdigitSPD(Int_t *digits, Int_t *tracks); - - virtual ~AliITSdigitSPD(){ - // destructor - } - virtual int *GetTracks() { - // returns pointer to the array of tracks which make this digit - return &fTracks[0]; - } - - ClassDef(AliITSdigitSPD,1) // Simulated digit object for SPD - }; -//___________________________________________ -class AliITSdigitSDD: public AliITSdigit { - -public: - - // debugging -- goes to the dictionary - Int_t fTracks[3]; // tracks making this digit - Float_t fTcharges[3]; // charge per track making this digit - Float_t fPhysics; // signal particles contribution to signal - -public: - AliITSdigitSDD() { - // constructor - fSignal=fCoord1=fCoord2=0; - fTracks[0]=fTracks[1]=fTracks[2]=0; - fPhysics=0; fTcharges[0]=fTcharges[1]=fTcharges[2]=0; - } - - AliITSdigitSDD(Float_t phys,Int_t *digits); - AliITSdigitSDD( Float_t phys, Int_t *digits, Int_t *tracks, Float_t *charges); - - virtual ~AliITSdigitSDD(){ - // destructor - } - virtual int *GetTracks() { - // returns pointer to the array of tracks which make this digit - return &fTracks[0]; - } - - ClassDef(AliITSdigitSDD,1) // Simulated digit object for SDD - }; +//______________________________________________________________________ +class AliITSdigit: public TObject { -//_____________________________________________________________________________ + public: + AliITSdigit(); + //Standard Constructor. Fills class from array digits + AliITSdigit(const Int_t *digits); + //Destructor + virtual ~AliITSdigit() { } + // returns the array size used to store Tracks and Hits + static Int_t GetNTracks() {return fgkSize;} + //returns pointer to array of tracks numbers + virtual Int_t *GetTracks() {return &fTracks[0];} + // returns pointer to array of hits numbers for this module (as given by + // AliITSmodule). + virtual Int_t *GetHits() {return &fHits[0];} + // returns track number kept in the array element i of fTracks + virtual Int_t GetTrack(Int_t i) const {return fTracks[i];} + // returns hit number kept in the array element i of fHits + virtual Int_t GetHit(Int_t i) const {return fHits[i];} + virtual Int_t GetCoord1() const {return fCoord1;} // returns fCoord1 + virtual Int_t GetCoord2() const {return fCoord2;} // returns fCoord2 + virtual Int_t GetSignal() const {return fSignal;} // returns fSignal + virtual Int_t GetCompressedSignal() const {return GetSignal();} // overloaded in AliITSdigitSDD + virtual void SetCoord1(Int_t i){fCoord1 = i;} // Sets fCoord1 value + virtual void SetCoord2(Int_t i){fCoord2 = i;} // Sets fCoord12value + virtual void SetSignal(Int_t i){fSignal = i;} // Sets fSignal value + virtual void SetTrack(Int_t i,Int_t trk){fTracks[i]=trk;} + virtual void SetTracks(const Int_t *trks){ + for(Int_t i=0;i>(istream &os,AliITSdigit &source); #endif