//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // Tpc PSA: Pulse shape analysis // // // Environment: // Software developed for the PANDA Detector at FAIR. // // Author List: // Sebastian Neubert TUM (original author) // // //----------------------------------------------------------- #ifndef TPCPSATASK_HH #define TPCPSATASK_HH // Base Class Headers ---------------- #include "FairTask.h" #include "TpcDigiPar.h" #include // Collaborating Class Headers ------- // Collaborating Class Declarations -- class TClonesArray; class TpcFrontend; class TpcAbsPSAStrategy; class TpcDigiPar; class TpcAbsPulseshape; class TpcSample; class TpcPadPlane; class TpcPSATask : public FairTask { public: // Constructors/Destructors --------- TpcPSATask(); ~TpcPSATask(); // Operators // Accessors ----------------------- // Modifiers ----------------------- void SetSampleBranchName(const TString& name) {fsampleBranchName=name;} void SetDigiBranchName(const TString& name) {fDigiOutName=name;} void SetPersistence(Bool_t opt=kTRUE) {fpersistence=opt;} void SetSamplePersistence(Bool_t opt=kTRUE){fSamplePersistence = opt;} void SetPeakingtime(int pik) {fpeak=pik;} void SetTail(bool b){fTail=b;} void SetOpt(unsigned int b){fopt=b;} void SetVerbose(Bool_t opt){fVerbose=opt;} // Operations ---------------------- virtual InitStatus Init(); virtual void Exec(Option_t* opt); virtual void SetParContainers(); void PresetNullSample(std::vector *samplelist); private: // Private Data Members ------------ TString fsampleBranchName; TString fDigiOutName; TClonesArray* fsampleArray; TClonesArray* fdigiArray; Bool_t fpersistence; Bool_t fSamplePersistence; Bool_t fVerbose; bool fTail; TpcFrontend* ffrontend; TpcAbsPSAStrategy* fpsa; TpcAbsPulseshape* fpulseshape; TpcDigiPar* fpar; TpcPadPlane* fPadPlane; std::vector nullSamples; // needed to correctly delete Samples created by PresetNullSample std::map* > fSampleMap; unsigned int fPads; int fpeak; unsigned int fopt; // Private Methods ----------------- void clearSampleMap(); public: ClassDef(TpcPSATask,1) }; #endif //-------------------------------------------------------------- // $Log$ //--------------------------------------------------------------