X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=FMD%2FAliFMDBaseDigitizer.h;h=0c9e85da50ea6097e8cefc97fe8d76997112e79a;hb=a9d940490b1d829cf52aadadd108e00b76713c8c;hp=636038f4effe9e7e031da2f583eaf4f12e9fc52f;hpb=83ad576afc080f2194558539b48bb4ccb56790fc;p=u%2Fmrichter%2FAliRoot.git diff --git a/FMD/AliFMDBaseDigitizer.h b/FMD/AliFMDBaseDigitizer.h index 636038f4eff..0c9e85da50e 100644 --- a/FMD/AliFMDBaseDigitizer.h +++ b/FMD/AliFMDBaseDigitizer.h @@ -32,7 +32,7 @@ # include #endif #ifndef ALIRUNDIGITIZER_H -# include +# include #endif #ifndef ALIFMDEdepMAP_H # include "AliFMDEdepMap.h" @@ -160,7 +160,7 @@ public: AliFMDBaseDigitizer(); /** Normal CTOR @param manager Manager of digitization */ - AliFMDBaseDigitizer(AliRunDigitizer * manager); + AliFMDBaseDigitizer(AliDigitizationInput * digInp); /** Normal ctor @param name Name @param title Title */ @@ -184,6 +184,10 @@ public: void SetShapingTime(Float_t B=10) { fShapingTime = B; } /** @return Get the shaping time */ Float_t GetShapingTime() const { return fShapingTime; } + + void SetStoreTrackRefs(Bool_t store=kTRUE) { fStoreTrackRefs = store; } + Bool_t IsStoreTrackRefs() const { return fStoreTrackRefs; } + protected: /** For the stored energy contributions in the cache, convert the energy signal to ADC counts, and store the created digit in @@ -225,31 +229,36 @@ protected: UShort_t sector, UShort_t strip, Float_t edep, - Bool_t isPrimary); + Bool_t isPrimary, + Int_t nTrackno, + Int_t* tracknos); /** Add a digit to output */ - virtual void AddDigit(UShort_t detector, - Char_t ring, - UShort_t sector, - UShort_t strip, - Float_t edep, - UShort_t count1, - Short_t count2, - Short_t count3, - Short_t count4, - UShort_t ntot, - UShort_t nprim) const; + virtual void AddDigit(UShort_t detector, + Char_t ring, + UShort_t sector, + UShort_t strip, + Float_t edep, + UShort_t count1, + Short_t count2, + Short_t count3, + Short_t count4, + UShort_t ntot, + UShort_t nprim, + const TArrayI& refs) const; /** Make the output tree using the passed loader @param loader @return The generated tree. */ virtual TTree* MakeOutputTree(AliLoader* loader); /** Store the data using the loader @param loader The loader */ - virtual void StoreDigits(AliLoader* loader); + virtual void StoreDigits(const AliLoader* loader); - AliFMD* fFMD; - AliRunLoader* fRunLoader; //! Run loader - AliFMDEdepMap fEdep; // Cache of Energy from hits - Float_t fShapingTime; // Shaping profile parameter + AliFMD* fFMD; // Detector object + AliRunLoader* fRunLoader; //! Run loader + AliFMDEdepMap fEdep; // Cache of Energy from hits + Float_t fShapingTime; // Shaping profile parameter + Bool_t fStoreTrackRefs; // Wether to store track references + mutable Int_t fIgnoredLabels; //! Number of labels not assigned /** Copy CTOR @param o object to copy from */ @@ -258,19 +267,18 @@ protected: fFMD(o.fFMD), fRunLoader(0), fEdep(o.fEdep), - fShapingTime(o.fShapingTime) + fShapingTime(o.fShapingTime), + fStoreTrackRefs(o.fStoreTrackRefs), + fIgnoredLabels(o.fIgnoredLabels) {} - /** Assignment operator - @return Reference to this object */ - AliFMDBaseDigitizer& operator=(const AliFMDBaseDigitizer& o) - { - AliDigitizer::operator=(o); - fRunLoader = o.fRunLoader; - fEdep = o.fEdep; - fShapingTime = o.fShapingTime; - return *this; - } - ClassDef(AliFMDBaseDigitizer,2) // Base class for FMD digitizers + /** + * Assignment operator + * + * @return Reference to this object + */ + AliFMDBaseDigitizer& operator=(const AliFMDBaseDigitizer& o); + + ClassDef(AliFMDBaseDigitizer,5) // Base class for FMD digitizers };