//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // QA plots for the FOPI GEM-TPC reco // // Environment: // Software developed for FOPI GEM-TPC // // Author List: // Felix Boehmer TUM (original author) // // //----------------------------------------------------------- #ifndef QATASK_HH #define QATASK_HH // Base Class Headers ---------------- #include "FairTask.h" // Collaborating Class Headers ------- #include #include "TString.h" // Collaborating Class Declarations -- class TClonesArray; class TH1; class TpcDigiPar; class TpcQATask : public FairTask { public: // Constructors/Destructors --------- TpcQATask(); ~TpcQATask(); // Operators // Accessors ----------------------- // Modifiers ----------------------- void SetTpcTrackBranchName(const TString& name) {fTpcTrackBranchName=name;} void SetTpcCdcTrackBranchName(const TString& name) {fTpcCdcTrackBranchName=name;} void SetTpcCdcMatchingBranchName(const TString& name) {fTpcCdcMatchingBranchName=name;} void SetTpcDigiBranchName(const TString& diginame) {fTpcDigiBranchName=diginame;} void SetTpcClusterBranchName(const TString& clname) {fTpcClusterBranchName=clname;} void SetTpcSPHitBranchName(const TString& name) {fTpcSPHitBranchName=name;} void SetTpcdEdxBranchName(const TString& name) {fTpcdEdxBranchName=name;} void SetCdcTrackBranchName(const TString& name) {fCdcTrackBranchName=name;} void SetCdcGFTrackBranchName(const TString& name) {fCdcGFTrackBranchName=name;} void SetCdcHitBranchName(const TString& name) {fCdcHitBranchName=name;} void SetFopiTupleBranchName(const TString& name) {fFopiTupleBranchName=name;} void SetRpcTrackBranchName(const TString& name) {fRpcTrackBranchName=name;} //set decoded file for noise plot extraction bool SetTpcDecodedFile(const TString& dec) {fTpcDec=dec;} // Operations ---------------------- virtual InitStatus Init(); virtual void SetParContainers(); virtual void Exec(Option_t* opt); virtual void FinishTask(); //called at the end of the run //void WriteHistograms(const TString& filename); private: // Private Data Members ------------ TClonesArray* fTpcTrackArray; TClonesArray* fTpcCdcTrackArray; TClonesArray* fTpcCdcMatchingArray; TClonesArray* fTpcSampleArray; TClonesArray* fTpcDigiArray; TClonesArray* fTpcClusterArray; TClonesArray* fTpcSPHitArray; TClonesArray* fTpcdEdxArray; TClonesArray* fFopiTupleArray; TClonesArray* fCdcTrackArray; TClonesArray* fCdcGFTrackArray; TClonesArray* fCdcHitArray; TClonesArray* fRpcTrackArray; TString fTpcTrackBranchName; TString fTpcCdcTrackBranchName; TString fTpcCdcMatchingBranchName; TString fTpcSampleBranchName; TString fTpcDigiBranchName; TString fTpcClusterBranchName; TString fTpcSPHitBranchName; TString fTpcdEdxBranchName; TString fFopiTupleBranchName; TString fCdcTrackBranchName; TString fCdcGFTrackBranchName; TString fCdcHitBranchName; TString fRpcTrackBranchName; TString fTpcDec; //TPC decoded file TString fTpcDecNoiseName; //name of histogram to get from decoded file TpcDigiPar* fPar; std::vector fHistos; //HISTOGRAMS TH1* TpcTotAmpsPerPadHist; TH1* TpcNSamplesPerDigiHist; TH1* TpcSampleSigPerPadHist; TH1* TpcSampleAmpHist; TH1* TpcClusterSize2DHist; TH1* TpcClusterSize3DHist; TH1* TpcClusterMultHist; TH1* TpcXYSPHitHist; TH1* TpcZSPHitHist; TH1* TpcLastSPHitHist; TH1* TpcCdcPhaseSpace; TH1* TpcTrackMultHist; TH1* TpcHitMultHist; TH1* TpcdEdxVsMomHist; TH1* CdcdEdxVsMomHist; TH1* TpcStatusFlag; TH1* TpcCdcStatusFlag; TH1* TpcCdcMatchingEff; TH1* CdcStatusFlag; TH1* CdcMomDiffVsTheta; TH1* TpcCdcDeltaZVsZ; TH1* TpcCdcDeltaThetaVsZ; TH1* TpcCdcDeltaPhiVsZ; TH1* TpcCdcDeltaPhiVsPhi; TH1* TpcCdcDeltaPhiPosVsPhiPos; TH1* TpcPhiPosHist; TH1* CdcPhiPosHist; TH1* TpcThetaHist; TH1* TpcChi2NDF; TH1* CdcChi2NDF; TH1* TpcCdcChi2NDF; TH1* TpcPval; TH1* CdcPval; TH1* TpcCdcPval; TH1* CdcTrackMultHist; TH1* CdcHitMultHist; TH1* CdcMassHist; //TH1* CdcRadiusHist; TH1* CdcThetaHist; TH1* CdcHitMap; TH1* RpcMomVsVelHist; TH1* BarMomVsVelHist; //containers to hold generic MatchingPair data and plotting info std::map > fMatchVals; //container for matching criterion values (TPC-CDC) std::map > fMatchValsM; //container for matching criterion values - matched tracks std::map fMatchBins; std::map > fMatchRange; std::map > fMatchCuts; //for plotting public: ClassDef(TpcQATask,3) }; #endif //-------------------------------------------------------------- // $Log$ //--------------------------------------------------------------