// ------------------------------------------------------------------------- // class performs digitization of MCpoints stored in PndDchPoint array // and produces an array of digis PndDchDigi // ------------------------------------------------------------------------- #ifndef PNDDCHDIGIPRODUCER_H #define PNDDCHDIGIPRODUCER_H #include "CbmTask.h" #include "PndDchDigi.h" #include "TVector3.h" class TClonesArray; class TObjectArray; class PndDchPoint; class PndDchMapper; class PndDchDrifter; class PndDchDigiProducer : public CbmTask { public: PndDchDigiProducer(); ~PndDchDigiProducer(); // Virtual method Init virtual InitStatus Init(); // Virtual method Exec virtual void Exec(Option_t* opt); Int_t AddDigis(PndDchPoint* point, Int_t refIndex); private: // checks if a point should be digitized Bool_t ToBeOrNotToBe(const PndDchPoint* point) const; // Input array of PndDchPoints TClonesArray* fPointArray; // Output array of PndDchDigis TClonesArray* fDigiArray; // dch mapper PndDchMapper* fMapper; PndDchDrifter* fDrifter; ClassDef(PndDchDigiProducer,1) }; #endif