//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // Conversion of HeliTracks into GFtrack objects // plus initialization // // Environment: // Software developed for the GEM-TPC in FOPI // // Author List: // Francesco Cusanno TUM (original author) // Felix Boehmer, E18 TUM (Overhaul) // Paul Buehler, SMI (adapted for Helitron tracks) // //----------------------------------------------------------- #ifndef HELIPLAWATRACKINITTASK_HH #define HELIPLAWATRACKINITTASK_HH #include "FairTask.h" #include "TVector3.h" class TClonesArray; class HeliPlawaTrackInitTask : public FairTask { public: // Constructors/Destructors --------- HeliPlawaTrackInitTask(); virtual ~HeliPlawaTrackInitTask(); // Modifiers ----------------------- void SetHeliHitBranchName(const TString& name) {fHeliHitBranchName=name;} void SetPlawaHitBranchName(const TString& name) {fPlawaHitBranchName=name;} void SetHeliTrackBranchName(const TString& helitrk){fHeliTrackBranchName=helitrk;} void SetTrackOutBranchName(const TString& t) {fTrackOutBranchName=t;} void SetPersistence(Bool_t opt=kTRUE) {fPersistence=opt;} void SetVerbose(Bool_t v=true) {fVerbose=v;} void setWithPlawaHit(Bool_t wph) {fWithPlawaHit = wph;} void SetPosErr(Double_t xerr,Double_t yerr,Double_t zerr) { fPosErr = TVector3(xerr,yerr,zerr);} void SetMomErr(Double_t xerr,Double_t yerr,Double_t zerr) { fMomErr = TVector3(xerr,yerr,zerr);} void SetHHitRes(Double_t resx, Double_t resy, Double_t resz) { fHRes = TVector3(resx,resy,resz); } void SetPHitRes(Double_t resx, Double_t resy, Double_t resz) { fPRes = TVector3(resx,resy,resz); } void SetResScale(Double_t scalefac, Bool_t wivscale=kTRUE) { fResScaleFac = scalefac;; fwivScale = wivscale; } void SetdrMax(Double_t drmax) {fdrMax = drmax;} void SetminHPmatch(Double_t minHPmatch) {fminHPmatch = minHPmatch;} void SetWithMainVertex(Bool_t wmv) {fwithMainVertex=wmv;} // Operations ---------------------- virtual InitStatus Init(); virtual void Exec(Option_t* opt); private: // Private Data Members ------------ TString fFopiEventName; TString fHeliHitBranchName; TString fPlawaHitBranchName; TString fHeliTrackBranchName; // Helitron Track input TString fTrackOutBranchName; // GFTrack output TClonesArray* fFopiEventArray; TClonesArray* fHeliHitArray; TClonesArray* fPlawaHitArray; TClonesArray* fHeliTrackArray; TClonesArray* fTrackOutArray; Bool_t fPersistence; Bool_t fVerbose; Bool_t fwivScale; Bool_t fWithPlawaHit; Bool_t fwithMainVertex; Double_t fRad; Double_t fResScaleFac; Double_t fdrMax; Double_t fminHPmatch; TVector3 fPosErr; TVector3 fMomErr; TVector3 fHRes; TVector3 fPRes; public: ClassDef(HeliPlawaTrackInitTask,1) }; #endif //-------------------------------------------------------------- // $Log$ //--------------------------------------------------------------