AliPhysics  c7b8e89 (c7b8e89)
AliAnalysisTaskEmcal.h
Go to the documentation of this file.
1 #ifndef ALIANALYSISTASKEMCAL_H
2 #define ALIANALYSISTASKEMCAL_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 class TClonesArray;
6 class TString;
7 class AliMCParticle;
8 class AliVCluster;
9 class AliVTrack;
10 class AliVParticle;
11 class AliVCaloCells;
12 class TH1;
13 class TProfile;
14 class AliEMCALGeometry;
15 class AliGenPythiaEventHeader;
16 class AliGenHerwigEventHeader;
17 class AliVCaloTrigger;
18 class AliAnalysisUtils;
19 class AliEventCuts;
20 class AliEMCALTriggerPatchInfo;
21 class AliAODTrack;
22 class AliEmcalPythiaInfo;
23 class AliAODInputHandler;
24 class AliESDInputHandler;
25 
26 #include "Rtypes.h"
27 #include "TArrayI.h"
28 
29 #include "AliParticleContainer.h"
30 #include "AliMCParticleContainer.h"
31 #include "AliTrackContainer.h"
32 #include "AliClusterContainer.h"
33 #include "AliEmcalList.h"
34 
35 #include "AliAnalysisTaskSE.h"
70  public:
71 
76  enum EDataType_t {
80  };
81 
86  enum BeamType {
87  kNA = -1,
88  kpp = 0,
89  kAA = 1,
90  kpA = 2
91  };
92 
97  enum TriggerType {
98  kND = -1,
99  kJ1 = 0,
100  kJ2 = 1,
101  kG1 = 2,
102  kG2 = 3,
103  kL0 = 4
104  };
105 
116  };
117 
125  };
126 
131 
142  AliAnalysisTaskEmcal(const char *name, Bool_t histo=kFALSE);
143 
147  virtual ~AliAnalysisTaskEmcal();
148 
158 
167  AliTrackContainer *AddTrackContainer(const char *n);
168 
178 
188 
193 
200 
206  AliParticleContainer *GetParticleContainer(const char* name) const;
207 
214 
220  AliClusterContainer *GetClusterContainer(const char* name) const;
222  AliMCParticleContainer *GetMCParticleContainer(const char* name) const { return dynamic_cast<AliMCParticleContainer*>(GetParticleContainer(name)); }
224  AliTrackContainer *GetTrackContainer(const char* name) const { return dynamic_cast<AliTrackContainer*>(GetParticleContainer(name)) ; }
225  void RemoveParticleContainer(Int_t i=0) { fParticleCollArray.RemoveAt(i) ; }
226  void RemoveClusterContainer(Int_t i=0) { fClusterCollArray.RemoveAt(i) ; }
227  void SetCaloCellsName(const char *n) { fCaloCellsName = n ; }
229  void SetCaloTriggersName(const char *n) { fCaloTriggersName = n ; }
230  void SetCentRange(Double_t min, Double_t max) { fMinCent = min ; fMaxCent = max ; }
231  void SetCentralityEstimator(const char *c) { fCentEst = c ; }
232 
239  void SetClusPtCut(Double_t cut, Int_t c=0);
240 
248  void SetClusTimeCut(Double_t min, Double_t max, Int_t c=0);
249 
252  void SetHistoBins(Int_t nbins, Double_t min, Double_t max) { fNbins = nbins; fMinBinPt = min; fMaxBinPt = max ; }
254  void SetIsEmbedded(Bool_t i) { fIsEmbedded = i ; }
255  void SetIsPythia(Bool_t i) { fIsPythia = i ; }
256  void SetIsHerwig(Bool_t i) { fIsHerwig = i ; }
258 
269 
275 
285  void SetUserPtHardBinning(const TArrayI &binning) { fPtHardBinning = binning; }
286 
288  void SetMinMCLabel(Int_t s) { fMinMCLabel = s ; }
289  void SetMinNTrack(Int_t min) { fMinNTrack = min ; }
292  virtual void SetNCentBins(Int_t n) { fNcentBins = n ; }
295  void SetOffTrigger(UInt_t t) { fOffTrigger = t ; }
296 
304  void SetTrackEtaLimits(Double_t min, Double_t max, Int_t c=0);
305 
313  void SetTrackPhiLimits(Double_t min, Double_t max, Int_t c=0);
314 
321  void SetTrackPtCut(Double_t cut, Int_t c=0);
322 
323  void SetTrigClass(const char *n) { fTrigClass = n ; }
324  void SetMinBiasTriggerClassName(const char *n) { fMinBiasRefTrigger = n ; }
326  void SetUseAliAnaUtils(Bool_t b, Bool_t bRejPilup = kTRUE) { fUseAliAnaUtils = b ; fRejectPileup = bRejPilup ; }
328  void SetVzRange(Double_t min, Double_t max) { fMinVz = min ; fMaxVz = max ; }
334  void SetPythiaInfoName(const char *n) { fPythiaInfoName = n ; }
335  const TString& GetPythiaInfoName() const { return fPythiaInfoName ; }
336  const AliEmcalPythiaInfo *GetPythiaInfo() const { return fPythiaInfo ; }
338  void SetMCFilter() { fMCRejectFilter = kTRUE ; }
339  void ResetMCFilter() { fMCRejectFilter = kFALSE ; }
346 
347  // Static Utilities
352  static AliAODInputHandler* AddAODHandler();
353 
358  static AliESDInputHandler* AddESDHandler();
359 
360  protected:
365  void LoadPythiaInfo(AliVEvent *event);
366 
367  void SetRejectionReasonLabels(TAxis* axis);
368 
380  Bool_t AcceptCluster(AliVCluster *clus, Int_t c = 0) const;
381 
391  Bool_t AcceptTrack(AliVParticle *track, Int_t c = 0) const;
392 
398  void AddObjectToEvent(TObject *obj, Bool_t attempt = kFALSE);
399 
407  AliVParticle *GetAcceptParticleFromArray(Int_t p, Int_t c=0) const;
408 
416  AliVCluster *GetAcceptClusterFromArray(Int_t cl, Int_t c=0) const;
417 
418 
428  TClonesArray *GetArrayFromEvent(const char *name, const char *clname=0);
429 
437  BeamType GetBeamType() const;
438 
444  TClonesArray *GetParticleArray(Int_t i=0) const;
445 
451  TClonesArray *GetClusterArray(Int_t i=0) const;
452 
458  Int_t GetNParticles(Int_t i=0) const;
459 
466  Int_t GetNClusters(Int_t i=0) const;
467 
479  AliEMCALTriggerPatchInfo *GetMainTriggerPatch(TriggerCategory triggersel = kTriggerLevel1Jet, Bool_t doSimpleOffline = kFALSE);
480 
489  Bool_t HasTriggerType(TriggerType triggersel);
490 
499 
513  Bool_t PythiaInfoFromFile(const char* currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard);
523  Bool_t IsTrackInEmcalAcceptance(AliVParticle* part, Double_t edges=0.9) const;
524 
529  void GeneratePythiaInfoObject(AliMCEvent* mcEvent);
530 
538 
579 
607  void UserExec(Option_t *option);
608 
619  Bool_t UserNotify();
620 
641 
653  virtual void ExecOnce();
654 
669  virtual Bool_t FillGeneralHistograms();
670 
686  virtual Bool_t IsEventSelected();
687 
699  virtual Bool_t IsTriggerSelected();
700 
724  virtual Bool_t RetrieveEventObjects();
725 
733  virtual void RunChanged(Int_t /*newrun*/) {}
734 
742  virtual void UserExecOnce() {}
743 
749  virtual void UserFileChanged() {}
750 
758  virtual Bool_t FillHistograms() { return kTRUE ; }
759 
767  virtual Bool_t Run() { return kTRUE ; }
768 
769  // Static utilities
779  static void GetEtaPhiDiff(const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff);
780 
786  static Byte_t GetTrackType(const AliVTrack *t);
787 
799  static Byte_t GetTrackType(const AliAODTrack *aodTrack, UInt_t filterBit1, UInt_t filterBit2);
800 
801  static Double_t DeltaPhi(Double_t phia, Double_t phib, Double_t rMin = -TMath::Pi()/2, Double_t rMax = 3*TMath::Pi()/2);
803  static void GenerateFixedBinArray(Int_t n, Double_t min, Double_t max, Double_t* array);
804 
829 
836  static Double_t GetParallelFraction(AliVParticle* part1, AliVParticle* part2);
837 
844  static Double_t GetParallelFraction(const TVector3& vect1, AliVParticle* part2);
845 
847 
848  // Task configuration
905 
906  // Service fields
908  AliEventCuts *fAliEventCuts;
909  AliAnalysisUtils *fAliAnalysisUtils;
911  AliEMCALGeometry *fGeom;
912  TClonesArray *fTracks;
913  TClonesArray *fCaloClusters;
914  AliVCaloCells *fCaloCells;
915  AliVCaloTrigger *fCaloTriggers;
916  TClonesArray *fTriggerPatchInfo;
927  AliGenPythiaEventHeader *fPythiaHeader;
928  AliGenHerwigEventHeader *fHerwigHeader;
938 
939  // Output
947  TProfile *fHistXsection;
958 
959  private:
960  AliAnalysisTaskEmcal(const AliAnalysisTaskEmcal&); // not implemented
961  AliAnalysisTaskEmcal &operator=(const AliAnalysisTaskEmcal&); // not implemented
962 
964  ClassDef(AliAnalysisTaskEmcal, 18) // EMCAL base analysis task
966 };
967 
977 {
978  Double_t dphi = -999;
979  const Double_t tpi = TMath::TwoPi();
980 
981  if (phia < 0) phia += tpi;
982  else if (phia > tpi) phia -= tpi;
983  if (phib < 0) phib += tpi;
984  else if (phib > tpi) phib -= tpi;
985  dphi = phib - phia;
986  if (dphi < rangeMin) dphi += tpi;
987  else if (dphi > rangeMax) dphi -= tpi;
988 
989  return dphi;
990 }
991 
1002 {
1003  Double_t binWidth = (max-min)/n;
1004  array[0] = min;
1005  for (Int_t i = 1; i <= n; i++) {
1006  array[i] = array[i-1]+binWidth;
1007  }
1008 }
1009 
1020 {
1021  Double_t *array = new Double_t[n+1];
1022  GenerateFixedBinArray(n, min, max, array);
1023  return array;
1024 }
1025 
1026 #endif
void SetJetPtFactor(Float_t f)
void SetCentRange(Double_t min, Double_t max)
void SetRecycleUnusedEmbeddedEventsMode(Bool_t b)
virtual Bool_t Run()
Run function. This is the core function of the analysis and contains the user code. Therefore users have to implement this function.
void SetPythiaInfoName(const char *n)
void SetTrackPtFactor(Float_t f)
Bool_t fGeneratePythiaInfoObject
Generate Pythia info object.
TObjArray fClusterCollArray
cluster collection array
Int_t fNVertSPDCont
!event SPD vertex number of contributors
AliMCParticleContainer * GetMCParticleContainer(const char *name) const
Bool_t fIsPythia
trigger, if it is a PYTHIA production
double Double_t
Definition: External.C:58
void SetUseInternalEventSelection(Bool_t doUse)
TH2 * fHistPtHardBinCorr
!Correlation between global and local (per-event) -hard bin
TH1 * fHistTrials
!trials from pyxsec.root
Bool_t fPtHardInitialized
!flag whether the -hard bin was initialized, purely for internal processing
static Double_t DeltaPhi(Double_t phia, Double_t phib, Double_t rMin=-TMath::Pi()/2, Double_t rMax=3 *TMath::Pi()/2)
EMCAL Level1 gamma trigger, low threshold.
AliEmcalPythiaInfo * fPythiaInfo
!event parton info
Bool_t AcceptTrack(AliVParticle *track, Int_t c=0) const
ULong_t GetTriggerList()
Get list of selected triggers of the given event.
Int_t fPtHardBinGlobal
!event -hard bin, detected from filename
EMCAL Level1 jet trigger, low threshold.
Bool_t HasTriggerType(TriggerType triggersel)
Check if event has a given trigger type.
void SetUserPtHardBinning(const TArrayI &binning)
Set a non-standard -hard binning.
Int_t fNTrials
!event trials
void SetMinNTrack(Int_t min)
UInt_t fOffTrigger
offline trigger for event selection
void AdoptParticleContainer(AliParticleContainer *cont)
Double_t fVertexSPD[3]
!event Svertex
Double_t fMinCent
min centrality for event selection
Double_t fTrackPtCut
cut on track pt in event selection
virtual void UserFileChanged()
Virtual method for user code to be executed when a file changed.
Bool_t fRecycleUnusedEmbeddedEventsMode
Allows the recycling of embedded events which fail internal event selection. See the embedding helper...
No special treatment for EMCal triggers.
Recalculated jet trigger patch; does not need to be above trigger threshold.
Base task in the EMCAL framework.
void SetMinVertexContrib(Int_t min)
Bool_t fLocalInitialized
whether or not the task has been already initialized
Bool_t fUsePtHardBinScaling
Use -hard bin scaling in merging.
TH2 * fHistPtHardCorrGlobal
!Correlation between -hard value and global bin
Container with name, TClonesArray and cuts for particles.
void SetUseAliAnaUtils(Bool_t b, Bool_t bRejPilup=kTRUE)
Bool_t fUseXsecFromHeader
! Use cross section from header instead of pyxsec.root (purely transient)
void SetUseSPDTrackletVsClusterBG(Bool_t b)
void SetTrackPtCut(Double_t cut, Int_t c=0)
Apply cut on the transverse momentum of all tracks in the track container with index c...
static void GetEtaPhiDiff(const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff)
Calculate and difference between a track (t) and a cluster (c).
Double_t fMinBinPt
min pt in histograms
Double_t fEPV0
!event plane V0
void SetUseNewCentralityEstimation(Bool_t b)
void SetCountDownscaleCorrectedEvents(Bool_t d)
Int_t fNPtHardBins
Number of -hard bins in the dataset.
Bool_t fGeneralHistograms
whether or not it should fill some general histograms
Bool_t AcceptCluster(AliVCluster *clus, Int_t c=0) const
Cluster selection.
TCanvas * c
Definition: TestFitELoss.C:172
AliAnalysisTaskEmcal & operator=(const AliAnalysisTaskEmcal &)
virtual void UserExecOnce()
Task initializations handled in user tasks.
void SetGetPtHardBinFromPath(Bool_t docheck)
Switch on/off getting bin from the file path.
Int_t fCentBin
!event centrality bin
virtual Bool_t IsTriggerSelected()
Selection of a hardware trigger.
TH1 * fHistEventsAfterSel
!total number of events per pt hard bin after selection
Int_t fMinVertexContrib
Min. number of vertex contributors.
void SetTriggerTypeSel(TriggerType t)
Float_t fPtHardAndClusterPtFactor
Factor between ptHard and cluster pT to reject/accept event.
Double_t fMinPtTrackInEmcal
min pt track in emcal
void SetVzRange(Double_t min, Double_t max)
TH1 * fHistEventPlane
!event plane distribution
AliTrackContainer * GetTrackContainer(const char *name) const
TH1 * fHistEvents
!total number of events per pt hard bin
void SetClusPtCut(Double_t cut, Int_t c=0)
Apply cut on for all clusters in container with index c.
AliClusterContainer * AddClusterContainer(const char *n)
Create new cluster container and attach it to the task.
Double_t fEPV0C
!event plane V0C
TH1 * fHistCentrality
!event centrality distribution
void SetCaloTriggerPatchInfoName(const char *n)
Container for particles within the EMCAL framework.
Bool_t fIsEmbedded
trigger, embedded signal
void AdoptClusterContainer(AliClusterContainer *cont)
TObjArray fParticleCollArray
particle/track collection array
BeamType
Switch for the beam type.
void SetTrackEtaLimits(Double_t min, Double_t max, Int_t c=0)
Apply cut on the pseudorapidity of the all tracks in the track container with index c...
AliParticleContainer * GetParticleContainer(Int_t i=0) const
Get particle container attached to this task.
void SetEMCalTriggerMode(EMCalTriggerMode_t m)
TProfile * fHistXsectionAfterSel
!x section from pythia header
TriggerType
Switch for EMCAL trigger types.
Bool_t CheckMCOutliers()
Filter the mc tails in pt-hard distributions.
EMCalTriggerMode_t fEMCalTriggerMode
EMCal trigger selection mode.
virtual Bool_t FillHistograms()
Function filling histograms.
void SetForceBeamType(BeamType f)
Int_t GetNParticles(Int_t i=0) const
Get number of particles in container attached to this task with index i.
TClonesArray * fCaloClusters
!clusters
Bool_t fUseNewCentralityEstimation
Use new centrality estimation (for 2015 data)
Bool_t IsTrackInEmcalAcceptance(AliVParticle *part, Double_t edges=0.9) const
Determines if a track is inside the EMCal acceptance.
int Int_t
Definition: External.C:63
TH1 * fHistTriggerClasses
!number of events in each trigger class
Bool_t fCountDownscaleCorrectedEvents
Count event number corrected for downscaling.
unsigned int UInt_t
Definition: External.C:33
float Float_t
Definition: External.C:68
Double_t fMaxVz
max vertex for event selection
void GeneratePythiaInfoObject(AliMCEvent *mcEvent)
Copy some information about the Pythia event in a PythaInfo object.
AliEMCALGeometry * fGeom
!emcal geometry
The overlap between low and high threshold trigger is assigned to the lower threshold only...
kRecalculated gamma trigger patch; does not need to be above trigger threshold
TString fCaloTriggerPatchInfoName
trigger patch info array name
TString fCaloTriggersName
name of calo triggers collection
TH1 * fHistTriggerClassesCorr
!corrected number of events in each trigger class
Bool_t fIsHerwig
trigger, if it is a HERWIG production
AliGenPythiaEventHeader * fPythiaHeader
!event Pythia header
void SetTrackPhiLimits(Double_t min, Double_t max, Int_t c=0)
Apply cut on azimuthal angle of the all tracks in the track container with index c...
AliParticleContainer * AddParticleContainer(const char *n)
Create new particle container and attach it to the task.
AliAnalysisUtils * fAliAnalysisUtils
!vertex selection (optional)
BeamType fForceBeamType
forced beam type
Int_t fNcentBins
how many centrality bins
AliClusterContainer * GetClusterContainer(Int_t i=0) const
Get cluster container attached to this task.
TriggerType fTriggerTypeSel
trigger type to select based on trigger patches
virtual Bool_t FillGeneralHistograms()
Filling general histograms.
TString fTrigClass
trigger class name for event selection
Float_t fPtHardAndJetPtFactor
Factor between ptHard and jet pT to reject/accept event.
TClonesArray * GetParticleArray(Int_t i=0) const
Get TClonesArray with particles.
BeamType GetBeamType() const
Get beam type.
void SetUsePtHardBinScaling(Bool_t b)
Double_t fMinVz
min vertex for event selection
BeamType fBeamType
!event beam type
Float_t fPtHardAndTrackPtFactor
Factor between ptHard and track pT to reject/accept event.
Double_t fCent
!event centrality
Double_t fMinEventPlane
minimum event plane value
TString fCaloCellsName
name of calo cell collection
Int_t fMCLabelShift
if MC label > fMCLabelShift, MC label -= fMCLabelShift
Int_t GetNClusters(Int_t i=0) const
Get number of clusters in the cluster container attached to this task with index i.
Int_t fNVertCont
!event vertex number of contributors
Bool_t fMCRejectFilter
enable the filtering of events by tail rejection
Bool_t fGetPtHardBinFromName
Obtain pt-hard bin from file path.
unsigned long ULong_t
Definition: External.C:38
void RemoveClusterContainer(Int_t i=0)
Double_t fZvertexDiff
upper limit for distance between primary and SPD vertex
AliEMCALTriggerPatchInfo * GetMainTriggerPatch(TriggerCategory triggersel=kTriggerLevel1Jet, Bool_t doSimpleOffline=kFALSE)
Get main trigger match.
EMCAL Level0 trigger.
EMCAL Level1 jet trigger, high threshold.
void AdoptMCParticleContainer(AliMCParticleContainer *cont)
Int_t fSelectPtHardBin
select one pt hard bin for analysis
AliMCParticleContainer * AddMCParticleContainer(const char *n)
Create new container for MC particles and attach it to the task.
static Double_t GetParallelFraction(AliVParticle *part1, AliVParticle *part2)
Calculates the fraction of momentum z of part 1 w.r.t. part 2 in the direction of part 2...
virtual Bool_t RetrieveEventObjects()
Retrieve common objects from event.
Bool_t fRejectPileup
Reject pilup using function AliAnalysisUtils::IsPileUpEvent()
Bool_t fUseInternalEventSelection
Use builtin event selection of the AliAnalysisTaskEmcal instead of AliEventCuts.
void RemoveParticleContainer(Int_t i=0)
TProfile * fHistXsection
!x section from pyxsec.root
Bool_t PythiaInfoFromFile(const char *currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard)
Loading PYTHIA information from external cross section file into the task.
void UserExec(Option_t *option)
Event loop, called for each event.
Int_t fMinMCLabel
minimum MC label value for the tracks/clusters being considered MC particles
virtual void SetNCentBins(Int_t n)
AliVCaloCells * fCaloCells
!cells
void SetTrigClass(const char *n)
TClonesArray * GetArrayFromEvent(const char *name, const char *clname=0)
Read a TClonesArray from event.
Enhanced TList-derived class that implements correct merging for pt_hard binned production.
Definition: AliEmcalList.h:25
Double_t fEventPlaneVsEmcal
select events which have a certain event plane wrt the emcal
Bool_t IsEventSelectedInternal()
Perform event selection (old method)
virtual Bool_t IsEventSelected()
Performing event selection.
Float_t fPtHard
!event -hard
TH1 * fHistPtHard
! -hard distribution
static Double_t * GenerateFixedBinArray(Int_t n, Double_t min, Double_t max)
AliEmcalList * fOutput
!output list
void SetZvertexDiffValue(Double_t cut)
Double_t fMaxBinPt
max pt in histograms
Int_t fPtHardBin
!event -hard bin
void SetHistoBins(Int_t nbins, Double_t min, Double_t max)
AliMCParticleContainer * GetMCParticleContainer(Int_t i=0) const
virtual void RunChanged(Int_t)
Process tasks relevant when a file with a different run number is processed.
TClonesArray * fTracks
!tracks
TH1 * fHistTrialsAfterSel
!total number of trials per pt hard bin after selection
AliGenHerwigEventHeader * fHerwigHeader
!event Herwig header
Definition: External.C:220
void LoadPythiaInfo(AliVEvent *event)
Load parton info.
Bool_t fIsEsd
!whether it&#39;s an ESD analysis
static AliAODInputHandler * AddAODHandler()
Add an AOD handler to the analysis manager.
Double_t fVertex[3]
!event vertex
AliTrackContainer * AddTrackContainer(const char *n)
Create new track container and attach it to the task.
AliTrackContainer * GetTrackContainer(Int_t i=0) const
void SetMinBiasTriggerClassName(const char *n)
EMCalTriggerMode_t
Handling of the EMCAL trigger thresholds.
Bool_t fCreateHisto
whether or not create histograms
void SetNumberOfPtHardBins(Int_t nbins)
Set the number of -hard bins.
Bool_t UserNotify()
Notifying the user that the input data file has changed and performing steps needed to be done...
Store some informaion about a Pythia eventThis class is used to store some information about a Pythia...
TH1 * fHistEventRejection
!book keep reasons for rejecting event
void SetMakeGeneralHistograms(Bool_t g)
TClonesArray * fTriggerPatchInfo
!trigger patch info array
TClonesArray * GetClusterArray(Int_t i=0) const
Get TClonesArray with EMCAL clusters.
void SetNeedEmcalGeom(Bool_t n)
Bool_t FileChanged()
Steps to be executed when a few file is loaded into the input handler.
Double_t fEPV0A
!event plane V0A
void SetEventPlaneVsEmcal(Double_t ep)
void SetCaloTriggersName(const char *n)
const AliEmcalPythiaInfo * GetPythiaInfo() const
AliEventCuts * fAliEventCuts
!Event cuts (run2 defaults)
virtual void ExecOnce()
Perform steps needed to initialize the analysis.
TString fCentEst
name of V0 centrality estimator
TString fPythiaInfoName
name of pythia info object
const char Option_t
Definition: External.C:48
Int_t fRunNumber
!run number (triggering RunChanged())
EMCAL Level1 gamma trigger, high threshold.
void AddObjectToEvent(TObject *obj, Bool_t attempt=kFALSE)
Add object to event.
AliVCaloTrigger * fCaloTriggers
!calo triggers
void SetRejectionReasonLabels(TAxis *axis)
void UserCreateOutputObjects()
Main initialization function on the worker.
Bool_t fFileChanged
! Signal triggered when the file has changed
TH1 * fHistZVertex
!z vertex position
Int_t fMinNTrack
minimum nr of tracks in event with pT>fTrackPtCut
static Byte_t GetTrackType(const AliVTrack *t)
Get track type encoded from bits 20 and 21.
void SetGeneratePythiaInfoObject(Bool_t b)
const Int_t nbins
Bool_t fUseAliAnaUtils
used for LHC13* data: z-vtx, Ncontributors, z-vtx resolution cuts
void SetClusTimeCut(Double_t min, Double_t max, Int_t c=0)
Apply cut on cluster time for clusters in container with index c.
bool Bool_t
Definition: External.C:53
ULong_t fTriggers
list of fired triggers
static AliESDInputHandler * AddESDHandler()
Add a ESD handler to the analysis manager.
Double_t fMaxEventPlane
maximum event plane value
Float_t fXsection
!x-section from pythia header
EDataType_t
Switch for the data type.
void SetCaloCellsName(const char *n)
void SetCentralityEstimator(const char *c)
TH1 * fHistEventCount
!incoming and selected events
Double_t fMaxCent
max centrality for event selection
void SetMinPtTrackInEmcal(Double_t min)
TriggerCategory
Online trigger categories.
AliVParticle * GetAcceptParticleFromArray(Int_t p, Int_t c=0) const
Get particle p if accepted from container with index c If particle not accepted return 0...
Container structure for EMCAL clusters.
TString fMinBiasRefTrigger
Name of the minmum bias reference trigger, used in the calculation of downscale-corrected event numbe...
Container for MC-true particles within the EMCAL framework.
Bool_t fNeedEmcalGeom
whether or not the task needs the emcal geometry
AliVCluster * GetAcceptClusterFromArray(Int_t cl, Int_t c=0) const
Get cluster cl if accepted from container c If particle not accepted return 0.
void SetClusterPtFactor(Float_t f)
const TString & GetPythiaInfoName() const
void AdoptTrackContainer(AliTrackContainer *cont)
Definition: External.C:196
Int_t fNbins
no. of pt bins
Bool_t fTklVsClusSPDCut
Apply tracklet-vs-cluster SPD cut to reject background events in pp.
AliAnalysisTaskEmcal()
Default constructor.
TH2 * fHistPtHardCorr
!Correlation between -hard value and bin
TArrayI fPtHardBinning
-hard binning
virtual ~AliAnalysisTaskEmcal()
Destructor.
static Double_t fgkEMCalDCalPhiDivide
phi value used to distinguish between DCal and EMCal