2 #include "AliAnalysisManager.h"
3 #include "AliInputEventHandler.h"
4 #include "AliPhysicsSelection.h"
5 #include "AliAnalysisUtils.h"
6 #include "AliESDVertex.h"
7 #include "AliESDEvent.h"
14 AliInputEventHandler* GetInputHandler()
18 Warning(
"GetPhysicsSelection",
"No analysis manager");
23 AliInputEventHandler* ih =
24 dynamic_cast<AliInputEventHandler*
>(am->GetInputEventHandler());
26 Warning(
"GetPhysicsSelection",
"No input handler");
31 AliPhysicsSelection* GetPhysicsSelection()
33 AliInputEventHandler* ih = GetInputHandler();
37 AliPhysicsSelection* ps =
38 dynamic_cast<AliPhysicsSelection*
>(ih->GetEventSelection());
40 Warning(
"GetPhysicsSelection",
"No physics selection");
61 DefineOutput(1, TList::Class());
72 mgr->ConnectInput(
this, 0, mgr->GetCommonInputContainer());
75 AliAnalysisDataContainer* sumCon =
76 mgr->CreateContainer(
"ad", TList::Class(),
77 AliAnalysisManager::kOutputContainer,
78 AliAnalysisManager::GetCommonFileName());
79 mgr->ConnectOutput(
this, 1, sumCon);
86 fList->SetName(GetName());
92 fIPz0 =
new TH2D(
"ipZ0",
"AD vs SPD IP_{#it{z}} (>0)",
93 100, -50, 50, nSatIPz, -maxSatIPz, +maxSatIPz);
94 fIPz0->SetDirectory(0);
95 fIPz0->SetXTitle(
"SPD IP_{#it{z}} [cm]");
96 fIPz0->SetYTitle(
"AD IP_{#it{z}} [cm]");
97 fIPz0->SetZTitle(
"Events");
98 fIPz0->SetDirectory(0);
101 fIPz1->SetTitle(
"AD vs SPD IP_{#it{z}} (>1)");
102 fIPz1->SetDirectory(0);
105 fIPz2->SetTitle(
"AD vs SPD IP_{#it{z}} (>2)");
106 fIPz2->SetDirectory(0);
108 fIPzSat0 =
new TH1D(
"ipZSat0",
"Satellite IP_{#it{z}} (SPD>0 veto)",
109 nSatIPz, -maxSatIPz, +maxSatIPz);
110 fIPzSat0->SetXTitle(
"AD IP_{#it{z}} [cm]");
118 fIPzSat1->SetTitle(
"Satellite IP_{#it{z}} (SPD>1 veto)");
124 fIPzSat2->SetTitle(
"Satellite IP_{#it{z}} (SPD>2 veto)");
131 fIPzSatP->SetTitle(
"Satellite IP_{#it{z}} (SPD pile-up veto)");
152 AliWarning(
"No ESD event found for input event");
157 UInt_t trg = (GetPhysicsSelection() ?
158 GetInputHandler()->IsEventSelected() :
175 const AliESDVertex* ip = esd->GetPrimaryVertexSPD();
176 if (ip && ip->GetZRes() <= 0.2) {
177 if (ip->GetNContributors() >= 1) spdZ0 = ip->GetZ();
178 if (ip->GetNContributors() >= 2) spdZ1 = ip->GetZ();
179 if (ip->GetNContributors() >= 3) spdZ2 = ip->GetZ();
190 Bool_t pileup = esd->IsPileupFromSPDInMultBins();
AliDisplacedVertexSelectionAD fAD
Bool_t IsSatellite() const
void UserCreateOutputObjects()
void SetupForData(TList *l, const char *name=0, Bool_t mc=false)
Bool_t Process(const AliESDEvent *esd)
void UserExec(Option_t *option)