28 #include <TClonesArray.h>
32 #include <THnSparse.h>
34 #include <TLorentzVector.h>
35 #include <TParameter.h>
36 #include <TParticle.h>
39 #include <TObjArray.h>
41 #include "AliAODEvent.h"
42 #include "AliESDEvent.h"
43 #include "AliAnalysisManager.h"
44 #include "AliAnalysisTask.h"
45 #include "AliCentrality.h"
47 #include "AliAODJet.h"
48 #include "AliVCluster.h"
49 #include "AliVTrack.h"
50 #include <AliVEvent.h>
51 #include <AliVParticle.h>
58 #include "AliESDCaloCluster.h"
59 #include <AliESDtrackCuts.h>
61 #include "AliTPCdEdxInfo.h"
62 #include "AliEMCALTriggerPatchInfo.h"
63 #include "AliVVZERO.h"
65 #include <AliInputEventHandler.h>
66 #include <AliVEventHandler.h>
68 #include "AliAODHandler.h"
69 #include "AliESDInputHandler.h"
71 #include "AliEventPoolManager.h"
72 #include "AliAODTrack.h"
73 #include "AliESDtrack.h"
75 #include "AliPIDResponse.h"
76 #include "AliTPCPIDResponse.h"
77 #include "AliESDpid.h"
79 #include "TGeoGlobalMagField.h"
92 fEventTrigEMCALL1Gamma1(0),
93 fEventTrigEMCALL1Gamma2(0),
98 fPhimin(-10), fPhimax(10),
99 fEtamin(-0.9), fEtamax(0.9),
108 fPIDResponse(0x0), fTPCResponse(),
109 fEsdtrackCutsITSTPC(),
112 fJetsCont(0), fTracksCont(0), fCaloClustersCont(0), fTracksJetCont(0), fCaloClustersJetCont(0),
116 fMainPatchType(kManual),
118 fMainTrigCat(kTriggerLevel0),
122 fMainTrigSimple(kTRUE),
123 fHistTriggerBitInfo(0),
124 fHistMaxTriggerBitInfo(0),
125 fHistEventSelection(0),
126 fHistRecalcGASize(0),
127 fHistRecalcGAEnergy(0),
128 fHistCorrJetEvsPatchE(0),
129 fHistClusEvPatchE(0),
130 fHistdEtaPatchvdPhiPatch(0),
131 fHistRawJetEvPatchE(0),
132 fHistMatchedClusJet(0),
133 fhnTrackClusterQA(0x0), fhnPIDHFTtoC(0x0), fhnJetTrigger(0x0)
135 SetMakeGeneralHistograms(kTRUE);
143 fEventTrigEMCALL1Gamma1(0),
144 fEventTrigEMCALL1Gamma2(0),
149 fPhimin(-10), fPhimax(10),
150 fEtamin(-0.9), fEtamax(0.9),
159 fPIDResponse(0x0), fTPCResponse(),
160 fEsdtrackCutsITSTPC(),
163 fJetsCont(0), fTracksCont(0), fCaloClustersCont(0), fTracksJetCont(0), fCaloClustersJetCont(0),
167 fMainPatchType(kManual),
169 fMainTrigCat(kTriggerLevel0),
173 fMainTrigSimple(kTRUE),
174 fHistTriggerBitInfo(0),
175 fHistMaxTriggerBitInfo(0),
176 fHistEventSelection(0),
177 fHistRecalcGASize(0),
178 fHistRecalcGAEnergy(0),
179 fHistCorrJetEvsPatchE(0),
180 fHistClusEvPatchE(0),
181 fHistdEtaPatchvdPhiPatch(0),
182 fHistRawJetEvPatchE(0),
183 fHistMatchedClusJet(0),
184 fhnTrackClusterQA(0x0), fhnPIDHFTtoC(0x0), fhnJetTrigger(0x0)
187 DefineInput(0,TChain::Class());
188 DefineOutput(1, TList::Class());
221 fHistCorrJetEvsPatchE =
new TH2F(
"Corr Jet E vs Trigger Patch E",
"CorrJetEvTriggerE; Corrected Jet Energy (GeV); Patch Energy (GeV)",100,0,100,100,0,100);
222 fHistClusEvPatchE =
new TH2F(
"ClusterEvPatchE",
"Cluster Energy v Patch E; Cluster Energy (GeV); Patch Energy (GeV)",100,0,100,100,0,100);
223 fHistdEtaPatchvdPhiPatch =
new TH2F(
"dEtaPatchdPhiPatch; #eta; #phi",
"dEtaPatchdPhiPatch; #Delta#eta; #Delta#phi ",100,-0.1,0.1,100,-0.1,0.1);
224 fHistRawJetEvPatchE =
new TH2F(
"RaeJetEvTriggerE",
"RawJetEvTriggerE; Jet Energy (GeV); Patch Energy (GeV)",100,0,100,100,0,100);
228 fHistRecalcGASize =
new TH2F(
"RecalcGAPatchSize",
"Patch_Size; #eta(Towers); #phi(Towers)",40,0,40,40,0,40);
229 fHistRecalcGAEnergy =
new TH1F(
"ReclacGAEnergy",
"RecalcGAEnergy; Energy(GeV); Counts",150,0,150);
278 const Int_t fgkNCentBins = 21;
279 Float_t kMinCent = 0.;
280 Float_t kMaxCent = 105.;
281 const Int_t fgkNVZEROBins = 100;
282 Float_t kMinVZERO = 0.;
283 Float_t kMaxVZERO = 25000;
284 const Int_t fgkNEPatch = 100;
285 Float_t kMinEPatch = 0.;
286 Float_t kMaxEPatch = 200.;
287 const Int_t fgkNADC = 100;
288 Float_t kMinADC = 0.;
289 Float_t kMaxADC = 1500.;
290 const Int_t fgkNEta = 10;
291 const Int_t fgkNPhi = 10;
292 const Int_t nDim = 8;
293 const Int_t nBins[nDim] = {fgkNCentBins,fgkNVZEROBins,fgkNEta,fgkNPhi,fgkNEPatch,fgkNADC,fgkNEta,fgkNPhi};
294 const Double_t xmin0[nDim] = {kMinCent,kMinVZERO,-0.7,1.4,kMinEPatch,kMinADC,-0.7,1.4};
295 const Double_t xmax0[nDim] = {kMaxCent,kMaxVZERO,0.7,3.14,kMaxEPatch,kMaxADC, 0.7,3.14};
297 fhnTriggerInfo =
new THnSparseF(
"fhnTriggerInfo",
"hnTriggerInfo;cent;V0mult;EtaPatchCM;PhiPatchCM;Epatch;ADCpatch;EtaPatchGeo;PhiPatchGEo",nDim,nBins,xmin0,xmax0);
315 AliAnalysisManager *man=AliAnalysisManager::GetAnalysisManager();
316 AliInputEventHandler* inputHandler = (AliInputEventHandler*) (man->GetInputEventHandler());
318 AliFatal(
"Input handler needed");
327 AliError(
"PIDResponse object was not created");
331 UInt_t bitcoded3 = 0;
332 bitcoded3 = 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 | 1<<8 | 1<<9 | 1<<10 | 1<<15 | 1<<16 | 1<<17;
335 UInt_t bitcoded7 = 0;
336 bitcoded7 = 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 | 1<<6 | 1<<7 | 1<<8 | 1<<9 | 1<<10 | 1<<11 | 1<<12 | 1<<13| 1<<14 | 1<<15 | 1<<16 | 1<<17;
339 UInt_t bitcoded8 = 0;
340 bitcoded8 = 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 | 1<<6 | 1<<7 | 1<<8 | 1<<9 | 1<<10 | 1<<11 | 1<<12 | 1<<13 | 1<<14 | 1<<15 | 1<<16 | 1<<17;
366 if (!
fJets)
return kTRUE;
368 UInt_t trig = ((AliInputEventHandler*)(AliAnalysisManager::GetAnalysisManager()->GetInputEventHandler()))->IsEventSelected();
388 if (dynamic_cast<AliAODEvent*>(InputEvent())) useAOD = kTRUE;
389 else useAOD = kFALSE;
396 fESD =
dynamic_cast<AliESDEvent*
>(InputEvent());
398 AliError(Form(
"ERROR: fESD not available\n"));
405 fAOD =
dynamic_cast<AliAODEvent*
>(InputEvent());
407 AliError(Form(
"ERROR: fAOD not available\n"));
417 MagF =
fESD->GetMagneticField();
419 if(MagF<0)MagSign = -1.0;
421 if (!TGeoGlobalMagField::Instance()->GetField()) {
422 AliMagF* field =
new AliMagF(
"Maps",
"Maps", MagSign, MagSign, AliMagF::k5kG);
423 TGeoGlobalMagField::Instance()->SetField(field);
429 MagF =
fAOD->GetMagneticField();
431 if(MagF<0)MagSign = -1.0;
433 if (!TGeoGlobalMagField::Instance()->GetField()) {
434 AliMagF* field =
new AliMagF(
"Maps",
"Maps", MagSign, MagSign, AliMagF::k5kG);
435 TGeoGlobalMagField::Instance()->SetField(field);
442 if (centbin == -1) centbin = 0;
445 Double_t fvertex[3]={0,0,0};
446 InputEvent()->GetPrimaryVertex()->GetXYZ(fvertex);
450 TList *
list = InputEvent()->GetList();
452 AliError(Form(
"ERROR: list not attached\n"));
460 TClonesArray *jets = 0;
466 jets =
dynamic_cast<TClonesArray*
>(list->FindObject(
fJets));
468 AliError(Form(
"Pointer to jets %s == 0",
fJets->GetName()));
473 const Int_t Njets = jets->GetEntries();
474 if(Njets<1)
return kTRUE;
488 TLorentzVector nPart;
489 cluster->GetMomentum(nPart,
fVertex);
495 Double_t GAeta = 0.0;
496 Double_t GAphi = 0.0;
497 Double_t PatchEE = 0.0;
498 Double_t VZEROAmp = (Double_t)(InputEvent()->GetVZEROData()->GetTriggerChargeA() + InputEvent()->GetVZEROData()->GetTriggerChargeC());
499 Double_t PatchEtaMax, PatchEtaMin, PatchPhiMax, PatchPhiMin, PatchAreaE, PatchAreaP;
512 PatchAreaE = PatchEtaMax - PatchEtaMin;
513 PatchAreaP = PatchPhiMax - PatchPhiMin;
541 for (Int_t iJets = 0; iJets < Njets; ++iJets) {
546 Double_t jetphi = jet->
Phi();
551 Int_t JetTracks = jet -> GetNumberOfTracks();
554 Double_t jetptraw = jet->
Pt();
555 Double_t jetPt = -500;
556 Double_t jetarea = -500;
557 jetarea = jet->
Area();
564 Double_t DCAxy = -999;
565 Double_t DCAz = -999;
566 Double_t jeteta = -999.;
571 Int_t NumbTrackContainer = -999;
573 for(
int iTracks = 0; iTracks <= NumbTrackContainer; iTracks++){
576 AliError(Form(
"Couldn't get AliVTrack Container %d\n", iTracks));
582 emc1 = AcceptedTrack->GetEMCALcluster();
583 if(emc1 < 0)
continue;
584 Int_t TPCNclus = -999, ITSNclus = -999;
585 Double_t acceptTrackP = AcceptedTrack->P();
586 Double_t acceptTrackPt = AcceptedTrack->Pt();
587 Double_t acceptTrackEta = AcceptedTrack->Eta();
588 Double_t acceptTrackPhi = AcceptedTrack->Phi();
589 Double_t nSigmaElectron_TPC_at =
fPIDResponse->NumberOfSigmasTPC(AcceptedTrack,AliPID::kElectron);
590 Double_t nSigmaElectron_TOF_at =
fPIDResponse->NumberOfSigmasTOF(AcceptedTrack,AliPID::kElectron);
591 Double_t dEdxat = AcceptedTrack->GetTPCsignal();
594 AliESDtrack *ESDacceptedTrack =
static_cast<AliESDtrack*
>(AcceptedTrack);
595 if(!ESDacceptedTrack){
596 AliError(Form(
"Couldn't get AliESDTrack %d\n", iTracks));
600 TPCNclus = ESDacceptedTrack->GetTPCNcls();
601 ITSNclus = ESDacceptedTrack->GetITSNcls();
604 AliAODTrack *AODacceptedTrack =
static_cast<AliAODTrack*
>(AcceptedTrack);
605 if(!AODacceptedTrack)
continue;
607 TPCNclus = AODacceptedTrack->GetTPCNcls();
608 ITSNclus = AODacceptedTrack->GetITSNcls();
614 AliError(Form(
"Couldn't get matched AliVCluster %d\n", emc1));
617 Double_t m02 = -999.;
618 m02 = clusMatch->GetM02();
619 if(TPCNclus < 80)
continue;
620 if(ITSNclus < 3)
continue;
621 if(m02 <= fM02max && m02 >=
fM02min)
continue;
622 Double_t mClusterE = clusMatch->E();
624 clusMatch->GetPosition(pos_mc);
625 TVector3 mcp(pos_mc);
626 Double_t EovP_mc = -999;
627 EovP_mc = mClusterE/acceptTrackP;
629 Double_t HF_tracks2[18] = {
fCent, acceptTrackPt, acceptTrackP ,acceptTrackEta, acceptTrackPhi, EovP_mc, 0, 0, dEdxat,nSigmaElectron_TPC_at, nSigmaElectron_TOF_at,0 , jetPt, jet->
Phi(), jet->
Eta(),mClusterE,mcp.PseudoRapidity(),mcp.Phi()};
633 Double_t maxMatchedPatchEta = (7.0 * 0.014);
635 Double_t maxMatchedPatchPhi = (7.0 * 0.014);
636 Double_t mtchPosition = maxMatchedPatchPhi * maxMatchedPatchPhi + maxMatchedPatchEta * maxMatchedPatchEta;
637 Double_t rGApatch = TMath::Sqrt(mtchPosition);
638 Double_t rJetCluster = -999.;
639 Double_t PatchClusterdiff = (mcp.Phi() -
fMaxPatch->GetPhiGeo())*(mcp.Phi() -
fMaxPatch->GetPhiGeo()) + (mcp.PseudoRapidity() -
fMaxPatch->GetEtaGeo())*(mcp.PseudoRapidity() -
fMaxPatch->GetEtaGeo());
640 rJetCluster = TMath::Sqrt(PatchClusterdiff);
643 if ( rJetCluster <= rGApatch ){
645 Double_t dEtaPatch = 0.0;
646 Double_t dPhiPatch = 0.0;
647 dEtaPatch =
fMaxPatch->GetEtaGeo() - mcp.PseudoRapidity();
648 dPhiPatch =
fMaxPatch->GetPhiGeo() - mcp.Phi();
649 Double_t EovPJetGA = mClusterE / acceptTrackP;
650 Double_t nSigmaElectron_TPC_GA =
fPIDResponse->NumberOfSigmasTPC(AcceptedTrack,AliPID::kElectron);
658 Double_t JetTrig[18] = {jetptraw, jetPt, jeteta, jetphi, jet->
E(),
fMaxPatch->GetPatchE(),
fMaxPatch->GetEtaGeo(),
fMaxPatch->GetPhiGeo(), (Double_t)
fMaxPatch->GetADCAmp(), mClusterE, mcp.PseudoRapidity(), mcp.Phi(),acceptTrackP, acceptTrackPt, acceptTrackEta, acceptTrackPhi, EovPJetGA, nSigmaElectron_TPC_GA};
679 cout<<
"#######################"<<endl;
680 cout<<
"#### Task Finished ####"<<endl;
681 cout<<
"#######################"<<endl;
691 for (Int_t iPatch = 0; iPatch < nPatch; iPatch++) {
692 AliEMCALTriggerPatchInfo *patch = (AliEMCALTriggerPatchInfo*)
fTriggerPatchInfo->At( iPatch );
693 if (!patch)
continue;
709 if (patch->IsRecalcGamma() == 1 ){
710 if(patch->GetPatchE()>emax) {
712 emax = patch->GetPatchE();
722 if (dynamic_cast<AliAODEvent*>(InputEvent())) useAOD = 1;
727 fESD =
dynamic_cast<AliESDEvent*
>(InputEvent());
729 AliError(Form(
"ERROR: fESD not available\n"));
734 fAOD =
dynamic_cast<AliAODEvent*
>(InputEvent());
736 AliError(Form(
"ERROR: fAOD not available\n"));
739 Double_t pQA1 = -999.;
740 Double_t nSigmaElectron_TPC_QA1 = -999.;
741 Double_t nSigmaElectron_TOF_QA1 = -999.;
742 Double_t dEdxQA1 = -999.;
751 AliESDtrack *ESDtrackQA1 =
static_cast<AliESDtrack*
>(track);
752 if(!ESDtrackQA1)
continue;
755 nSigmaElectron_TPC_QA1 =
fPIDResponse->NumberOfSigmasTPC(ESDtrackQA1,AliPID::kElectron);
756 nSigmaElectron_TOF_QA1 =
fPIDResponse->NumberOfSigmasTOF(ESDtrackQA1,AliPID::kElectron);
757 dEdxQA1 = ESDtrackQA1->GetTPCsignal();
760 AliAODTrack *AODtrackQA1 =
static_cast<AliAODTrack*
>(track);
761 if(!AODtrackQA1)
continue;
764 nSigmaElectron_TPC_QA1 =
fPIDResponse->NumberOfSigmasTPC(AODtrackQA1,AliPID::kElectron);
765 nSigmaElectron_TOF_QA1 =
fPIDResponse->NumberOfSigmasTOF(AODtrackQA1,AliPID::kElectron);
766 dEdxQA1 = AODtrackQA1->GetTPCsignal();
769 Int_t emc1 = track->GetEMCALcluster();
772 if(!clusMatch)
continue;
774 Double_t ClusterE_QA1 = clusMatch->E();
775 Double_t EovPQA1 = ClusterE_QA1/pQA1;
777 clusMatch->GetPosition(pos_mc1);
778 TVector3 mc1(pos_mc1);
779 Double_t HF_tracks3[11] = {track->Pt(), track->P() , track->Eta(), track->Phi(), EovPQA1, dEdxQA1 ,nSigmaElectron_TPC_QA1, nSigmaElectron_TOF_QA1, clusMatch->E(), mc1.PseudoRapidity(),mc1.Phi()};
793 if (jet->
Area()==0)
return 0;
803 if (AcceptedTrack->Pt() < 5)
return 0;
804 EovP_tag = clusMatch->E() / AcceptedTrack->P();
805 if(EovP_tag < 0.8)
return 0;
806 if(EovP_tag > 1.2)
return 0;
815 if (cent>=0 && cent<10)
817 else if (cent>=10 && cent<20)
819 else if (cent>=20 && cent<30)
821 else if (cent>=30 && cent<40)
823 else if (cent>=40 && cent<50)
825 else if (cent>=50 && cent<90)
834 UInt_t tmp = entries;
839 TString hnTitle(name);
840 const Int_t dim = count;
846 while(c<dim && i<32){
850 hnTitle += Form(
";%s",label.Data());
856 return new THnSparseD(name, hnTitle.Data(), dim,
nbins, xmin, xmax);
862 UInt_t tmp = entries;
868 TString hnTitle(name);
869 const Int_t dim = count;
875 while(c<dim && i<32){
879 hnTitle += Form(
";%s",label.Data());
885 return new THnSparseD(name, hnTitle.Data(), dim,
nbins, xmin, xmax);
891 const Double_t
pi = TMath::Pi();
895 label =
"V0 centrality (%)";
902 label =
"Track p_{T}";
930 label =
"E/p of track";
951 label =
"dEdX of track - TPC";
958 label =
"nSigma electron TPC";
965 label =
"nSigma electron TOF";
972 label =
"nSigma electron Emcal";
1000 label =
"Cluster Energy";
1007 label =
"Cluster Eta";
1014 label =
"Cluster Phi";
1026 const Double_t
pi = TMath::Pi();
1037 label =
"Jet Corr Pt";
1065 label =
"Trigger E";
1072 label =
"Trigger Eta";
1079 label =
"Trigger Phi";
1086 label =
"Trigger ADC";
1093 label =
"Cluster E";
1100 label =
"Cluster Eta";
1107 label =
"Cluster Phi";
1135 label =
"Track Phi";
1142 label =
"EovP_Trigger";
1149 label =
"nSigma electron TPC";
AliEMCALTriggerPatchInfo * fMaxPatch
AOD Object.
virtual ~AliAnalysisTaskEmcalJetHF()
void AddFlavourTag(Int_t tag)
virtual AliVParticle * GetNextAcceptParticle()
virtual Int_t AcceptMyJet(AliEmcalJet *jet)
Output message at end of analysis.
virtual void GetDimParamsJetTrigger(Int_t iEntry, TString &label, Int_t &nbins, Double_t &xmin, Double_t &xmax)
virtual Int_t AcceptJetforTag(AliVCluster *clusMatch, AliVTrack *AcceptedTrack)
applies basic jet tests/cuts before accepting
virtual THnSparse * NewTHnSparseDJetTrigger(const char *name, UInt_t entries)
Bool_t fJetPID
Switch to Fill General Histograms.
AliAODEvent * fAOD
ESD object.
Int_t GetNParticles() const
THnSparse * fhnJetTrigger
Jet PID using track to Cluster matching.
Double_t fJetHIpt
area cut on jet
Bool_t fEventTrigEMCALL1Gamma1
THnSparse * fhnTrackClusterQA
correlation between jets, patch energy and event observables
TH1F * fHistMatchedClusJet
use offline trigger instead of online from AliAnalysisTaskEmcal::GetMainTriggerPatch ...
Bool_t fFillHists
Switch for all HF Electron Candidates (Non-Jet)
virtual THnSparse * NewTHnSparseDHF(const char *name, UInt_t entries)
Bool_t fGlobalQA
ESD track cuts!!
TList * fOutput
!output list
THnSparse * fhnTriggerInfo
AliPIDResponse * fPIDResponse
event number (processed)
MainPatchType fMainPatchType
main patch
Double_t fM02min
Cut on max EMCal Shower shape size for Electron ID.
AliParticleContainer * fTracksCont
Jets.
Bool_t IsJetTrack(AliEmcalJet *jet, Int_t itrack, Bool_t sorted=kFALSE) const
AliParticleContainer * GetParticleContainer(Int_t i=0) const
AliAnalysisTaskEmcalJetHF()
UShort_t GetNumberOfClusters() const
Bool_t fEventTrigEMCALL1Gamma2
Event is L1-Gamma, threshold 1 on its name, it should correspond kEMCEGA.
TH2F * fHistdEtaPatchvdPhiPatch
Matched Cluster E vs Patch E.
AliRhoParameter * fRho
!event rho
virtual AliVParticle * GetParticle(Int_t i=-1) const
TH2F * fHistCorrJetEvsPatchE
Highest Patch Energy per event.
AliClusterContainer * GetClusterContainer(Int_t i=0) const
Double_t MaxTrackPt() const
Double_t fCent
!event centrality
TClonesArray * GetArray() const
TH1F * fHistRecalcGAEnergy
Highest Energy GA Patch size per event (tower)
AliVCluster * GetCluster(Int_t i) const
void SetClassName(const char *clname)
TH1F * fHistEventSelection
TClonesArray * fJets
jet collection array
Manager for constants used in the trigger maker.
virtual void Terminate(Option_t *)
TH2F * fHistClusEvPatchE
Corrected Jet E v Trigger Patch E.
THnSparse * fhnPIDHFTtoC
track QA sparse
TClonesArray * fTracks
!tracks
Double_t fVertex[3]
!event vertex
virtual void UserCreateOutputObjects()
Bool_t fCreateHisto
whether or not create histograms
virtual Int_t GetCentBin(Double_t cent) const
Accept Jet as HFE Jet to pass along to other tasks.
void SetMakeGeneralHistograms(Bool_t g)
TClonesArray * fTriggerPatchInfo
!trigger patch info array
AliJetContainer * fJetsCont
esd track cuts for ITS stand alone tracks
AliESDEvent * fESD
JetClusters.
void UserCreateOutputObjects()
TH1F * fHistTriggerBitInfo
Double_t fRhoVal
!event rho value, same for local rho
AliVCluster * GetNextAcceptCluster()
void CheckClusTrackMatchingQA()
void ResetCurrentID(Int_t i=-1)
AliClusterContainer * fCaloClustersCont
Tracks.
TH2F * fHistRawJetEvPatchE
void ExecOnce()
Get Centrality bin.
virtual void GetDimParamsHF(Int_t iEntry, TString &label, Int_t &nbins, Double_t &xmin, Double_t &xmax)
TriggerCategory fMainTrigCat
method to select main patch
TH1F * fHistMaxTriggerBitInfo
Bool_t fMainTrigSimple
trigger category for main trigger from AliAnalysisTaskEmcal::GetMainTriggerPatch
Double_t fPhimin
keeper of basic cut
AliEMCALTriggerPatchInfo * GetMainTriggerPatch(TriggerCategory triggersel=kTriggerLevel1Jet, Bool_t doOfflinSimple=kFALSE)
ClassImp(AliAnalysisTaskEmcalJetHF) AliAnalysisTaskEmcalJetHF