AliPhysics  de71be2 (de71be2)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
AliEmcalTriggerMakerTask Class Reference

EMCAL trigger maker taskThe EMCAL trigger maker task steers the process building trigger patches, performed via the trigger maker kernel, and provides the interface to the user. As this, it forwards necessary data like FASTor amplitudes and time sums as well as cell data to the trigger maker kernel and reads out the patches. The patches as type of raw patches are converted into full patches (AliEMCALTriggerPatchInfo) and stored in a TClonesArray which is added to the input event. On user request it can also fill QA histograms which are added to the common root file. More...

#include <AliEmcalTriggerMakerTask.h>

Inheritance diagram for AliEmcalTriggerMakerTask:

Public Types

enum  TriggerMakerBitConfig_t { kOldConfig = 0, kNewConfig = 1 }
 
- Public Types inherited from AliAnalysisTaskEmcal
enum  BeamType { kNA = -1, kpp = 0, kAA = 1, kpA = 2 }
 
enum  TriggerType {
  kND = -1, kJ1 = 0, kJ2 = 1, kG1 = 2,
  kG2 = 3, kL0 = 4
}
 
enum  TriggerCategory {
  kTriggerLevel0 = 0, kTriggerLevel1Jet = 1, kTriggerLevel1Gamma = 2, kTriggerRecalcJet = 3,
  kTriggerRecalcGamma = 4
}
 
enum  EMCalTriggerMode_t { kNoSpecialTreatment, kOverlapWithLowThreshold }
 

Public Member Functions

 AliEmcalTriggerMakerTask ()
 
 AliEmcalTriggerMakerTask (const char *name, Bool_t doQA=kFALSE)
 
virtual ~AliEmcalTriggerMakerTask ()
 
virtual void UserCreateOutputObjects ()
 
virtual void ExecOnce ()
 
virtual Bool_t Run ()
 
void SetRunQA (Bool_t doQA=kTRUE)
 
void SetCaloTriggersOutName (const char *name)
 
void SetV0InName (const char *name)
 
void SetUseTriggerBitConfig (TriggerMakerBitConfig_t bitConfig)
 
void SetTriggerThresholdJetLow (Int_t a, Int_t b, Int_t c)
 
void SetTriggerThresholdJetHigh (Int_t a, Int_t b, Int_t c)
 
void SetTriggerThresholdGammaLow (Int_t a, Int_t b, Int_t c)
 
void SetTriggerThresholdGammaHigh (Int_t a, Int_t b, Int_t c)
 
void SetJetPatchsize (Int_t jetpatchsize)
 
void SetUseL0Amplitudes (Bool_t b)
 
- Public Member Functions inherited from AliAnalysisTaskEmcal
 AliAnalysisTaskEmcal ()
 
 AliAnalysisTaskEmcal (const char *name, Bool_t histo=kFALSE)
 
virtual ~AliAnalysisTaskEmcal ()
 
AliParticleContainerAddParticleContainer (const char *n)
 
AliTrackContainerAddTrackContainer (const char *n)
 
AliMCParticleContainerAddMCParticleContainer (const char *n)
 
AliClusterContainerAddClusterContainer (const char *n)
 
void AdoptParticleContainer (AliParticleContainer *cont)
 
void AdoptClusterContainer (AliClusterContainer *cont)
 
AliParticleContainerGetParticleContainer (Int_t i=0) const
 
AliParticleContainerGetParticleContainer (const char *name) const
 
AliClusterContainerGetClusterContainer (Int_t i=0) const
 
AliClusterContainerGetClusterContainer (const char *name) const
 
AliMCParticleContainerGetMCParticleContainer (Int_t i=0) const
 
AliMCParticleContainerGetMCParticleContainer (const char *name) const
 
AliTrackContainerGetTrackContainer (Int_t i=0) const
 
AliTrackContainerGetTrackContainer (const char *name) const
 
void RemoveParticleContainer (Int_t i=0)
 
void RemoveClusterContainer (Int_t i=0)
 
void SetCaloCellsName (const char *n)
 
void SetCaloTriggerPatchInfoName (const char *n)
 
void SetCaloTriggersName (const char *n)
 
void SetCentRange (Double_t min, Double_t max)
 
void SetCentralityEstimator (const char *c)
 
void SetClusName (const char *n)
 
void SetClusPtCut (Double_t cut, Int_t c=0)
 
void SetClusTimeCut (Double_t min, Double_t max, Int_t c=0)
 
void SetEventPlaneVsEmcal (Double_t ep)
 
void SetForceBeamType (BeamType f)
 
void SetHistoBins (Int_t nbins, Double_t min, Double_t max)
 
void SetIsEmbedded (Bool_t i)
 
void SetIsPythia (Bool_t i)
 
void SetMakeGeneralHistograms (Bool_t g)
 
void SetMCLabelShift (Int_t s)
 
void SetMinMCLabel (Int_t s)
 
void SetMinNTrack (Int_t min)
 
void SetMinPtTrackInEmcal (Double_t min)
 
virtual void SetNCentBins (Int_t n)
 
void SetNeedEmcalGeom (Bool_t n)
 
void SetOffTrigger (UInt_t t)
 
void SetTrackEtaLimits (Double_t min, Double_t max, Int_t c=0)
 
void SetTrackPhiLimits (Double_t min, Double_t max, Int_t c=0)
 
void SetTrackPtCut (Double_t cut, Int_t c=0)
 
void SetTracksName (const char *n)
 
void SetTrigClass (const char *n)
 
void SetTriggerTypeSel (TriggerType t)
 
void SetUseAliAnaUtils (Bool_t b, Bool_t bRejPilup=kTRUE)
 
void SetVzRange (Double_t min, Double_t max)
 
void SetUseSPDTrackletVsClusterBG (Bool_t b)
 
void SetEMCalTriggerMode (EMCalTriggerMode_t m)
 
void SetUseNewCentralityEstimation (Bool_t b)
 
void SetGeneratePythiaInfoObject (Bool_t b)
 
void SetPythiaInfoName (const char *n)
 
const TString & GetPythiaInfoName () const
 
const AliEmcalPythiaInfoGetPythiaInfo () const
 

Protected Member Functions

void FillQAHistos (const TString &patchtype, const AliEMCALTriggerPatchInfo &recpatch)
 
- Protected Member Functions inherited from AliAnalysisTaskEmcal
void LoadPythiaInfo (AliVEvent *event)
 
void SetRejectionReasonLabels (TAxis *axis)
 
Bool_t AcceptCluster (AliVCluster *clus, Int_t c=0) const
 
Bool_t AcceptTrack (AliVParticle *track, Int_t c=0) const
 
void AddObjectToEvent (TObject *obj, Bool_t attempt=kFALSE)
 
AliVParticle * GetAcceptParticleFromArray (Int_t p, Int_t c=0) const
 
AliVCluster * GetAcceptClusterFromArray (Int_t cl, Int_t c=0) const
 
TClonesArray * GetArrayFromEvent (const char *name, const char *clname=0)
 
BeamType GetBeamType ()
 
TClonesArray * GetParticleArray (Int_t i=0) const
 
TClonesArray * GetClusterArray (Int_t i=0) const
 
Int_t GetNParticles (Int_t i=0) const
 
Int_t GetNClusters (Int_t i=0) const
 
AliEMCALTriggerPatchInfo * GetMainTriggerPatch (TriggerCategory triggersel=kTriggerLevel1Jet, Bool_t doOfflinSimple=kFALSE)
 
Bool_t HasTriggerType (TriggerType triggersel)
 
ULong_t GetTriggerList ()
 
Bool_t PythiaInfoFromFile (const char *currFile, Float_t &fXsec, Float_t &fTrials, Int_t &pthard)
 
Bool_t IsTrackInEmcalAcceptance (AliVParticle *part, Double_t edges=0.9) const
 
void GeneratePythiaInfoObject (AliMCEvent *mcEvent)
 
void UserCreateOutputObjects ()
 
void UserExec (Option_t *option)
 
Bool_t UserNotify ()
 
virtual Bool_t FillGeneralHistograms ()
 
virtual Bool_t IsEventSelected ()
 
virtual Bool_t RetrieveEventObjects ()
 
virtual Bool_t FillHistograms ()
 

Protected Attributes

AliEmcalTriggerMakerKernelfTriggerMaker
 The actual trigger maker kernel. More...
 
AliVVZERO * fV0
 ! VZERO data More...
 
TString fCaloTriggersOutName
 name of output track array More...
 
TString fV0InName
 name of output track array More...
 
TriggerMakerBitConfig_t fUseTriggerBitConfig
 type of trigger config More...
 
Int_t fJetPatchsize
 Size of a jet patch. More...
 
Bool_t fUseL0Amplitudes
 Use L0 amplitudes instead of L1 time sum (useful for runs where STU was not read) More...
 
TClonesArray * fCaloTriggersOut
 ! trigger array out More...
 
Bool_t fDoQA
 Fill QA histograms. More...
 
THistManager * fQAHistos
 ! Histograms for QA More...
 
- Protected Attributes inherited from AliAnalysisTaskEmcal
TString fPythiaInfoName
 
BeamType fForceBeamType
 
Bool_t fGeneralHistograms
 
Bool_t fInitialized
 
Bool_t fCreateHisto
 
TString fCaloCellsName
 
TString fCaloTriggersName
 
TString fCaloTriggerPatchInfoName
 
Double_t fMinCent
 
Double_t fMaxCent
 
Double_t fMinVz
 
Double_t fMaxVz
 
Double_t fTrackPtCut
 
Int_t fMinNTrack
 
Bool_t fUseAliAnaUtils
 
Bool_t fRejectPileup
 
Bool_t fTklVsClusSPDCut
 
UInt_t fOffTrigger
 
TString fTrigClass
 
TriggerType fTriggerTypeSel
 
Int_t fNbins
 
Double_t fMinBinPt
 
Double_t fMaxBinPt
 
Double_t fMinPtTrackInEmcal
 
Double_t fEventPlaneVsEmcal
 
Double_t fMinEventPlane
 
Double_t fMaxEventPlane
 
TString fCentEst
 
Bool_t fIsEmbedded
 
Bool_t fIsPythia
 
Int_t fSelectPtHardBin
 
Int_t fMinMCLabel
 
Int_t fMCLabelShift
 
Int_t fNcentBins
 
Bool_t fNeedEmcalGeom
 
TObjArray fParticleCollArray
 
TObjArray fClusterCollArray
 
ULong_t fTriggers
 
EMCalTriggerMode_t fEMCalTriggerMode
 
Bool_t fUseNewCentralityEstimation
 
Bool_t fGeneratePythiaInfoObject
 
AliAnalysisUtils * fAliAnalysisUtils
 
Bool_t fIsEsd
 vertex selection (optional) More...
 
AliEMCALGeometry * fGeom
 whether it's an ESD analysis More...
 
TClonesArray * fTracks
 emcal geometry More...
 
TClonesArray * fCaloClusters
 tracks More...
 
AliVCaloCells * fCaloCells
 clusters More...
 
AliVCaloTrigger * fCaloTriggers
 cells More...
 
TClonesArray * fTriggerPatchInfo
 calo triggers More...
 
Double_t fCent
 trigger patch info array More...
 
Int_t fCentBin
 event centrality More...
 
Double_t fEPV0
 event centrality bin More...
 
Double_t fEPV0A
 event plane V0 More...
 
Double_t fEPV0C
 event plane V0A More...
 
Double_t fVertex [3]
 event plane V0C More...
 
Int_t fNVertCont
 event vertex More...
 
BeamType fBeamType
 event vertex number of contributors More...
 
AliGenPythiaEventHeader * fPythiaHeader
 event beam type More...
 
Double_t fPtHard
 event Pythia header More...
 
Int_t fPtHardBin
 event pt hard More...
 
Int_t fNTrials
 event pt hard bin More...
 
Float_t fXsection
 event trials More...
 
AliEmcalPythiaInfofPythiaInfo
 x-section from pythia header More...
 
TList * fOutput
 event parton info More...
 
TH1 * fHistEventCount
 output list More...
 
TH1 * fHistTrialsAfterSel
 incoming and selected events More...
 
TH1 * fHistEventsAfterSel
 total number of trials per pt hard bin after selection More...
 
TProfile * fHistXsectionAfterSel
 total number of events per pt hard bin after selection More...
 
TH1 * fHistTrials
 x section from pythia header More...
 
TH1 * fHistEvents
 trials from pyxsec.root More...
 
TProfile * fHistXsection
 total number of events per pt hard bin More...
 
TH1 * fHistPtHard
 x section from pyxsec.root More...
 
TH1 * fHistCentrality
 pt hard distribution More...
 
TH1 * fHistZVertex
 event centrality distribution More...
 
TH1 * fHistEventPlane
 z vertex position More...
 
TH1 * fHistEventRejection
 event plane distribution More...
 
TH1 * fHistTriggerClasses
 book keep reasons for rejecting event More...
 

Private Member Functions

 AliEmcalTriggerMakerTask (const AliEmcalTriggerMakerTask &)
 
AliEmcalTriggerMakerTaskoperator= (const AliEmcalTriggerMakerTask &)
 

Additional Inherited Members

- Static Protected Member Functions inherited from AliAnalysisTaskEmcal
static void GetEtaPhiDiff (const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff)
 
static Byte_t GetTrackType (const AliVTrack *t)
 
static Byte_t GetTrackType (const AliAODTrack *aodTrack, UInt_t filterBit1, UInt_t filterBit2)
 
static Double_t DeltaPhi (Double_t phia, Double_t phib, Double_t rMin=-TMath::Pi()/2, Double_t rMax=3 *TMath::Pi()/2)
 
static Double_t * GenerateFixedBinArray (Int_t n, Double_t min, Double_t max)
 
static void GenerateFixedBinArray (Int_t n, Double_t min, Double_t max, Double_t *array)
 
static Double_t GetParallelFraction (AliVParticle *part1, AliVParticle *part2)
 
static Double_t GetParallelFraction (const TVector3 &vect1, AliVParticle *part2)
 
- Static Protected Attributes inherited from AliAnalysisTaskEmcal
static Double_t fgkEMCalDCalPhiDivide = 4.
 

Detailed Description

EMCAL trigger maker task

The EMCAL trigger maker task steers the process building trigger patches, performed via the trigger maker kernel, and provides the interface to the user. As this, it forwards necessary data like FASTor amplitudes and time sums as well as cell data to the trigger maker kernel and reads out the patches. The patches as type of raw patches are converted into full patches (AliEMCALTriggerPatchInfo) and stored in a TClonesArray which is added to the input event. On user request it can also fill QA histograms which are added to the common root file.

Definition at line 31 of file AliEmcalTriggerMakerTask.h.

Member Enumeration Documentation

Enumerator
kOldConfig 

Old configuration, no distinction between high and low threshold.

kNewConfig 

New configuration, distiction between high and low threshold.

Definition at line 41 of file AliEmcalTriggerMakerTask.h.

Constructor & Destructor Documentation

AliEmcalTriggerMakerTask::AliEmcalTriggerMakerTask ( )

Dummy constructor

Definition at line 34 of file AliEmcalTriggerMakerTask.cxx.

AliEmcalTriggerMakerTask::AliEmcalTriggerMakerTask ( const char *  name,
Bool_t  doQA = kFALSE 
)

Main constructor, initializing also AliAnalysisTaskEmcal and Create the Kernel.

Parameters
nameName of the task
doQAIf true we switch on QA

Definition at line 50 of file AliEmcalTriggerMakerTask.cxx.

AliEmcalTriggerMakerTask::~AliEmcalTriggerMakerTask ( )
virtual

Destructor

Definition at line 66 of file AliEmcalTriggerMakerTask.cxx.

AliEmcalTriggerMakerTask::AliEmcalTriggerMakerTask ( const AliEmcalTriggerMakerTask )
private

Member Function Documentation

void AliEmcalTriggerMakerTask::ExecOnce ( )
virtual

Initialize the trigger maker kernel. This function is called for the first event in order to obtain the run number from it. Also initialises AliAnalysisTaskEmcal.

Initializes the trigger maker kernel

Reimplemented from AliAnalysisTaskEmcal.

Definition at line 115 of file AliEmcalTriggerMakerTask.cxx.

void AliEmcalTriggerMakerTask::FillQAHistos ( const TString &  patchtype,
const AliEMCALTriggerPatchInfo &  recpatch 
)
protected

Definition at line 204 of file AliEmcalTriggerMakerTask.cxx.

Referenced by Run().

AliEmcalTriggerMakerTask& AliEmcalTriggerMakerTask::operator= ( const AliEmcalTriggerMakerTask )
private
Bool_t AliEmcalTriggerMakerTask::Run ( )
virtual

Run trigger patch finding.

As the patch finding is implemented in the class AliEmcalTriggerMakerKernel, the analysis task only takes care about propagating necessary information to the kernel (ADCs, cell energy, V0 amplitudes), steering the patch finder, and appending the output to the ESD event.

Returns
Always true.

Run the trigger maker Move patches found by the trigger maker to the output clones array Fill QA histograms if requested

Returns
True

Reimplemented from AliAnalysisTaskEmcal.

Definition at line 163 of file AliEmcalTriggerMakerTask.cxx.

void AliEmcalTriggerMakerTask::SetCaloTriggersOutName ( const char *  name)
inline

Set the name of the output container

Parameters
nameName of the output container

Definition at line 100 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::SetJetPatchsize ( Int_t  jetpatchsize)
inline

Definition at line 127 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::SetRunQA ( Bool_t  doQA = kTRUE)
inline

Switch on basic QA of the trigger maker

Parameters
doQAIf true QA is switched on.

Definition at line 94 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::SetTriggerThresholdGammaHigh ( Int_t  a,
Int_t  b,
Int_t  c 
)
inline

Definition at line 123 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::SetTriggerThresholdGammaLow ( Int_t  a,
Int_t  b,
Int_t  c 
)
inline

Definition at line 120 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::SetTriggerThresholdJetHigh ( Int_t  a,
Int_t  b,
Int_t  c 
)
inline

Definition at line 117 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::SetTriggerThresholdJetLow ( Int_t  a,
Int_t  b,
Int_t  c 
)
inline

Definition at line 114 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::SetUseL0Amplitudes ( Bool_t  b)
inline

Definition at line 128 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::SetUseTriggerBitConfig ( TriggerMakerBitConfig_t  bitConfig)
inline

Trigger bit configuration to be used in the trigger patch maker.

Parameters
bitConfigType of the trigger bit config (old - 3 bit, new - 5 bit)

Definition at line 112 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::SetV0InName ( const char *  name)
inline

Set the name of the V0 input object

Parameters
nameName of the V0 input object

Definition at line 106 of file AliEmcalTriggerMakerTask.h.

void AliEmcalTriggerMakerTask::UserCreateOutputObjects ( )
virtual

Initializing output objects. Kernel is initialized in ExecOnce as geometry - which depends on the run number - is needed for this.

Initialize output objets

Definition at line 73 of file AliEmcalTriggerMakerTask.cxx.

Member Data Documentation

TClonesArray* AliEmcalTriggerMakerTask::fCaloTriggersOut
protected

! trigger array out

Definition at line 142 of file AliEmcalTriggerMakerTask.h.

Referenced by ExecOnce(), and Run().

TString AliEmcalTriggerMakerTask::fCaloTriggersOutName
protected

name of output track array

Definition at line 137 of file AliEmcalTriggerMakerTask.h.

Referenced by ExecOnce(), and SetCaloTriggersOutName().

Bool_t AliEmcalTriggerMakerTask::fDoQA
protected

Fill QA histograms.

Definition at line 144 of file AliEmcalTriggerMakerTask.h.

Referenced by Run(), SetRunQA(), and UserCreateOutputObjects().

Int_t AliEmcalTriggerMakerTask::fJetPatchsize
protected

Size of a jet patch.

Definition at line 140 of file AliEmcalTriggerMakerTask.h.

Referenced by ExecOnce(), and SetJetPatchsize().

THistManager* AliEmcalTriggerMakerTask::fQAHistos
protected

! Histograms for QA

Definition at line 145 of file AliEmcalTriggerMakerTask.h.

Referenced by FillQAHistos(), Run(), and UserCreateOutputObjects().

Bool_t AliEmcalTriggerMakerTask::fUseL0Amplitudes
protected

Use L0 amplitudes instead of L1 time sum (useful for runs where STU was not read)

Definition at line 141 of file AliEmcalTriggerMakerTask.h.

Referenced by Run(), and SetUseL0Amplitudes().

TriggerMakerBitConfig_t AliEmcalTriggerMakerTask::fUseTriggerBitConfig
protected

type of trigger config

Definition at line 139 of file AliEmcalTriggerMakerTask.h.

Referenced by ExecOnce(), and SetUseTriggerBitConfig().

AliVVZERO* AliEmcalTriggerMakerTask::fV0
protected

! VZERO data

Definition at line 135 of file AliEmcalTriggerMakerTask.h.

Referenced by ExecOnce(), and Run().

TString AliEmcalTriggerMakerTask::fV0InName
protected

name of output track array

Definition at line 138 of file AliEmcalTriggerMakerTask.h.

Referenced by ExecOnce(), and SetV0InName().


The documentation for this class was generated from the following files: