//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // TPC-CDC Matching Routine // Completely rewritten Sept. 2012 // // // Environment: // Software developed for the Prototype Detector at FOPI // // Author List: // Felix Boehmer (TUM) // // //----------------------------------------------------------- #ifndef TPCCDCMATTASK_H #define TPCCDCMATTASK_H //Base class #include "FairTask.h" #include "TClonesArray.h" #include "TString.h" class TpcDigiPar; // Collaborating Class Declarations -------------------------------------- class TpcCdcMatchingTask : public FairTask { public: // Constructor ---------------------------------------------- TpcCdcMatchingTask(); //default constructor ~TpcCdcMatchingTask(); virtual InitStatus Init(); virtual void Exec(Option_t* opt); virtual void SetParContainers(); // Modifiers -------------------------------------------------- void SetPersistence(Bool_t opt=kTRUE) {fPersistence=opt;} void SetTpcTrackBranchName(const TString& tn) {fTpcTrackBranchName=tn;} void SetCdcHitBranchName(const TString& cln) {fCdcHitBranchName=cln;} void SetCdcTrackBranchName(const TString& tn) {fCdcTrackBranchName=tn;} void SetGFCdcTrackBranchName(const TString& tn) {fGFCdcTrackBranchName=tn;} void SetOutBranchName(const TString& outn) {fOutBranchName=outn;} //void SetSecondarySuppression(Bool_t opt=kTRUE) {fSecondarySupp=opt;} //void SetNumberOfTrackReps(unsigned int n) {fNumReps=n;} void SetWriteFailedMatches(Bool_t opt=kTRUE) {fWriteFailedMatches=opt;} void SetUseGFCdcTracks(Bool_t opt=kTRUE) {fUseGFCdc=opt;} void PerformTrackMerging(Bool_t opt=kTRUE) {fDoMerging=opt;} private: Bool_t fPersistence; Bool_t fWriteFailedMatches; Bool_t fDoMerging; //not just compare but actually merge tracks Bool_t fUseGFCdc; TString fGFCdcTrackBranchName; TString fTpcTrackBranchName; TString fCdcTrackBranchName; TString fCdcHitBranchName; TString fCdcEvBranchName; TString fOutBranchName; TClonesArray* fTpcTrackArray; TClonesArray* fCdcTrackArray; TClonesArray* fGFCdcTrackArray; TClonesArray* fCdcHitArray; TClonesArray* fMatchingOutArray; unsigned int fTpcId; unsigned int fMinClus; unsigned int fCdcId; TpcDigiPar* fPar; //unsigned int fNumReps; public: ClassDef(TpcCdcMatchingTask,4) }; #endif