11 const char *ntracks =
"usedefault",
12 const char *nclusters =
"usedefault",
13 const char* ncells =
"usedefault",
15 Int_t TriggerMode = 0,
16 const char *sRunPeriod =
"lhc16k" 28 switch (TriggerMode) {
30 Selection = AliVEvent::kINT7;
33 Selection = AliVEvent::kEMCEGA;
36 Selection = AliVEvent::kEMCEJE;
39 Selection = AliVEvent::kINT7 | AliVEvent::kEMCEJE | AliVEvent::kEMCEGA;
51 ::Error(
"AddTaskEmcalAlig",
"No analysis manager to connect to.");
57 AliVEventHandler* handler = mgr->GetInputEventHandler();
60 ::Error(
"AddTaskEmcalAlig",
"This task requires an input event handler");
70 EDataType_t dataType = kUnknown;
73 if (handler->InheritsFrom(
"AliESDInputHandler")) {
76 else if (handler->InheritsFrom(
"AliAODInputHandler")) {
88 if (trackName ==
"usedefault") {
89 if (dataType == kESD) {
92 else if (dataType == kAOD) {
100 if (clusName ==
"usedefault") {
101 if (dataType == kESD) {
102 clusName =
"CaloClusters";
104 else if (dataType == kAOD) {
105 clusName =
"caloClusters";
112 if (cellName ==
"usedefault") {
113 if (dataType == kESD) {
114 cellName =
"EMCALCells";
116 else if (dataType == kAOD) {
117 cellName =
"emcalCells";
124 TString name(
"AliAnalysisTaskEMCALAlig");
125 if (!trackName.IsNull()) {
129 if (!clusName.IsNull()) {
133 if (!cellName.IsNull()) {
137 if (strcmp(
suffix,
"") != 0) {
146 if (trackName ==
"mcparticles") {
149 else if (trackName ==
"tracks" || trackName ==
"Tracks") {
152 else if (!trackName.IsNull()) {
170 sampleTask->SelectCollisionCandidates(Selection);
181 mgr->AddTask(sampleTask);
184 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer() ;
186 contname +=
"_histos";
188 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(contname.Data(),TList::Class(),AliAnalysisManager::kOutputContainer,AliAnalysisManager::GetCommonFileName());
190 contnameTree +=
"_tree";
192 AliAnalysisDataContainer *coutput2 = mgr->CreateContainer(contnameTree.Data(),TTree::Class(),AliAnalysisManager::kOutputContainer,AliAnalysisManager::GetCommonFileName());
194 mgr->ConnectInput (sampleTask, 0, cinput1 );
195 mgr->ConnectOutput (sampleTask, 1, coutput1 );
196 mgr->ConnectOutput (sampleTask, 2, coutput2 );
void SetParticlePtCut(Double_t cut)
void SetSuffix(TString suff)
Container with name, TClonesArray and cuts for particles.
void SetVzRange(Double_t min, Double_t max)
AliClusterContainer * AddClusterContainer(const char *n)
Create new cluster container and attach it to the task.
AliParticleContainer * GetParticleContainer(Int_t i=0) const
Get particle container attached to this task.
void SetAODFilterBits(UInt_t bits)
void SetClusNonLinCorrEnergyCut(Double_t cut)
AliParticleContainer * AddParticleContainer(const char *n)
Create new particle container and attach it to the task.
AliClusterContainer * GetClusterContainer(Int_t i=0) const
Get cluster container attached to this task.
AliAnalysisTaskEMCALAlig * AddTaskEMCALAlig(const char *ntracks="usedefault", const char *nclusters="usedefault", const char *ncells="usedefault", const char *suffix="", Int_t TriggerMode=0, const char *sRunPeriod="lhc16k")
AliMCParticleContainer * AddMCParticleContainer(const char *n)
Create new container for MC particles and attach it to the task.
Custom (user-defined) tracks.
void SetHistoBins(Int_t nbins, Double_t min, Double_t max)
AliTrackContainer * AddTrackContainer(const char *n)
Create new track container and attach it to the task.
AliTrackContainer * GetTrackContainer(Int_t i=0) const
void SetTrackFilterType(ETrackFilterType_t f)
void SetClusPtCut(Double_t cut)
void SetCaloCellsName(const char *n)
void SetClusECut(Double_t cut)
void SetDefaultClusterEnergy(Int_t d)
Container for MC-true particles within the EMCAL framework.