#ifndef __CINT__
#include <PWG2/RESONANCES/AliRsnCutPID.h>
#include <PWG2/RESONANCES/AliRsnInputHandler.h>
#include <PWG2/RESONANCES/AliRsnCutSet.h>
#endif
Int_t AddRsnDaughterCutsBPID(AliPID::EParticleType type1,AliPID::EParticleType type2,TString opt,Bool_t isRsnMini=kFALSE,AliRsnInputHandler *rsnIH=0,AliAnalysisTaskSE *task=0)
{
if (!rsnIH) return 0;
// === USER HAS TO SET CORRECT NUMBER OF CUTS SETS =====
Int_t numberOfCuts = 1;
// gets selector
AliRsnDaughterSelector *sel = rsnIH->GetSelector();
//---------------------------------------------
// Define single cuts
//---------------------------------------------
AliRsnCutPID *cut1 = new AliRsnCutPID(Form("cut%sBPID%s",AliPID::ParticleName(type1),opt.Data()),type1,0.0,kFALSE);
AliRsnCutSet *cuts1 = new AliRsnCutSet(Form("%sBPID%s",AliPID::ParticleName(type1),opt.Data()), AliRsnTarget::kDaughter);
cuts1->AddCut(cut1);
cuts1->SetCutScheme(cut1->GetName());
sel->Add(cuts1, kTRUE);
AliRsnCutSet *cuts2 = 0;
if (type1 != type2) {
AliRsnCutPID *cut2 = new AliRsnCutPID(Form("cut%sBPID%s",AliPID::ParticleName(type2),opt.Data()),type2,0.0,kFALSE);
cuts2 = new AliRsnCutSet(Form("%sBPID%s",AliPID::ParticleName(type2),opt.Data()), AliRsnTarget::kDaughter);
cuts2->AddCut(cut2);
cuts2->SetCutScheme(cut2->GetName());
sel->Add(cuts2, kTRUE);
numberOfCuts++;
}
if (opt.Contains("mon")) {
AddMonitorOutput(cuts1->GetMonitorOutput(),opt);
if (type1 != type2) {
AddMonitorOutput(cuts2->GetMonitorOutput(),opt);
}
}
if (isRsnMini) {
AliRsnMiniAnalysisTask *taskRsnMini = dynamic_cast<AliRsnMiniAnalysisTask *>(task);
if (taskRsnMini) {
taskRsnMini->AddTrackCuts(cuts1);
if (type1 != type2) taskRsnMini->AddTrackCuts(cuts2);
}
} else {
AliRsnDaughterSelector *sel = rsnIH->GetSelector();
sel->Add(cuts1, kTRUE);
if (type1 != type2) sel->Add(cuts2, kTRUE);
}
return numberOfCuts;
}
AddRsnDaughterCutsBPID.C:1 AddRsnDaughterCutsBPID.C:2 AddRsnDaughterCutsBPID.C:3 AddRsnDaughterCutsBPID.C:4 AddRsnDaughterCutsBPID.C:5 AddRsnDaughterCutsBPID.C:6 AddRsnDaughterCutsBPID.C:7 AddRsnDaughterCutsBPID.C:8 AddRsnDaughterCutsBPID.C:9 AddRsnDaughterCutsBPID.C:10 AddRsnDaughterCutsBPID.C:11 AddRsnDaughterCutsBPID.C:12 AddRsnDaughterCutsBPID.C:13 AddRsnDaughterCutsBPID.C:14 AddRsnDaughterCutsBPID.C:15 AddRsnDaughterCutsBPID.C:16 AddRsnDaughterCutsBPID.C:17 AddRsnDaughterCutsBPID.C:18 AddRsnDaughterCutsBPID.C:19 AddRsnDaughterCutsBPID.C:20 AddRsnDaughterCutsBPID.C:21 AddRsnDaughterCutsBPID.C:22 AddRsnDaughterCutsBPID.C:23 AddRsnDaughterCutsBPID.C:24 AddRsnDaughterCutsBPID.C:25 AddRsnDaughterCutsBPID.C:26 AddRsnDaughterCutsBPID.C:27 AddRsnDaughterCutsBPID.C:28 AddRsnDaughterCutsBPID.C:29 AddRsnDaughterCutsBPID.C:30 AddRsnDaughterCutsBPID.C:31 AddRsnDaughterCutsBPID.C:32 AddRsnDaughterCutsBPID.C:33 AddRsnDaughterCutsBPID.C:34 AddRsnDaughterCutsBPID.C:35 AddRsnDaughterCutsBPID.C:36 AddRsnDaughterCutsBPID.C:37 AddRsnDaughterCutsBPID.C:38 AddRsnDaughterCutsBPID.C:39 AddRsnDaughterCutsBPID.C:40 AddRsnDaughterCutsBPID.C:41 AddRsnDaughterCutsBPID.C:42 AddRsnDaughterCutsBPID.C:43 AddRsnDaughterCutsBPID.C:44 AddRsnDaughterCutsBPID.C:45 AddRsnDaughterCutsBPID.C:46 AddRsnDaughterCutsBPID.C:47 AddRsnDaughterCutsBPID.C:48 AddRsnDaughterCutsBPID.C:49 AddRsnDaughterCutsBPID.C:50 AddRsnDaughterCutsBPID.C:51 AddRsnDaughterCutsBPID.C:52 AddRsnDaughterCutsBPID.C:53 AddRsnDaughterCutsBPID.C:54 AddRsnDaughterCutsBPID.C:55 AddRsnDaughterCutsBPID.C:56 AddRsnDaughterCutsBPID.C:57 AddRsnDaughterCutsBPID.C:58 AddRsnDaughterCutsBPID.C:59