#ifndef V0CHAIN_H #define V0CHAIN_H #include #include #include #include #include #include #include #include "FopiPidHub.h" class V0Chain: public TObject { public: V0Chain(TChain* chain_, TString outFile_=""); void Init(); void Exec(); //Setters: void setTrackBranchName(TString name){trackBranchName=name;} void setMatchinTupleBranchName(TString name){matchingTupleBranchName=name;} void setTrackTupleBranchName(TString name){trackTupleBranchName=name;} void setdEdxBranchName(TString name){dEdxBranchName=name;} void setRpcBranchName(TString name){rpcBranchName=name;} void setCdcBranchName(TString name){cdcBranchName=name;} void setBarrelBranchName(TString name){barrelBranchName=name;} void setOutFileName(TString name){outFileName=name;} void setNEvents(int n){nEvents=n;} void setVanillaPID(bool opt=true){vanillaPID=opt;} void setVerbose(int verb=1){fVerbose=verb;} private: TChain* chain; int nEvents; std::vector arrays; TClonesArray* trackArray; TClonesArray* matchingTupleArray; TClonesArray* trackTupleArray; TClonesArray* dEdxArray; TClonesArray* rpcArray; TClonesArray* cdcArray; TClonesArray* barrelArray; TString trackBranchName; TString matchingTupleBranchName; TString trackTupleBranchName; TString dEdxBranchName; TString rpcBranchName; TString cdcBranchName; TString barrelBranchName; TString outFileName; TFile* outFile; TNtuple* lambdaTuple; TNtuple* k0Tuple; FopiPidHub* hub; bool vanillaPID; int fVerbose; public : ClassDef(V0Chain,0) }; #endif // V0CHAIN_H