12#include "AnalysisManager.h"
16#include "TrackOnlyPrimariesCut.h"
17#include "TrackPdgCut.h"
23 case ePidCut::kPionPlus: {
24 pid = Const::PionPlusPID();
26 case ePidCut::kPionMinus: {
27 pid = -Const::PionPlusPID();
29 case ePidCut::kKaonPlus: {
30 pid = Const::KaonPlusPID();
32 case ePidCut::kKaonMinus: {
33 pid = -Const::KaonPlusPID();
35 case ePidCut::kProton: {
36 pid = Const::ProtonPID();
38 case ePidCut::kAntiProton: {
39 pid = -Const::ProtonPID();
41 case ePidCut::kUnkown: {
49 case eParticleType::kPrimaryOnly: {
53 case eParticleType::kSecondaryOnly: {
55 prim.AcceptOnlyNonPrimaries();
61 Event* QAManager::GetFormat(eFormatType , eAnaType ) {
return nullptr; }
65 void QAManager::SetEventCut(
TrackAna* , Int_t , TString ) {}
67 AnalysisManager* QAManager::GetAna(TString outFile, TString simFile, TString recoFile) {
68 AnalysisManager* run =
new AnalysisManager();
69 run->SetOutput(outFile);
70 RootSource* source =
new RootSource(simFile);
71 run->SetSource(source);
72 if (!recoFile.EqualTo(simFile)) { source->AddFriend(simFile, 0); }
76 void QAManager::SetPairCut(TwoTrackAna* , ePidCut , ePidCut ) {}
78 QAManager::ePidCut QAManager::ToPid(Int_t i) {
80 case 0:
return QAManager::ePidCut::kPionPlus;
break;
81 case 1:
return QAManager::ePidCut::kPionMinus;
break;
82 case 2:
return QAManager::ePidCut::kKaonPlus;
break;
83 case 3:
return QAManager::ePidCut::kKaonMinus;
break;
84 case 4:
return QAManager::ePidCut::kProton;
break;
85 case 5:
return QAManager::ePidCut::kAntiProton;
break;
86 default:
return QAManager::ePidCut::kUnkown;
void SetMinAndMax(Double_t val, Int_t i=0)
virtual void AddCut(const Cut &cut, Option_t *opt="")
virtual void SetRecoTrackCut(TrackAna *ana, ePidCut cut, eParticleType primary, TString flag="")
virtual void SetMcTrackCut(TrackAna *ana, ePidCut cut, eParticleType primary, TString flag="")