ROOT logo
#ifndef ALIANALYSISTASKTRIGGEREDBF_CXX
#define ALIANALYSISTASKTRIGGEREDBF_CXX

// Analysis task for the TriggeredBF code
// Authors: Panos Cristakoglou@cern.ch, m.weber@cern.ch

#include "AliLog.h"
#include "AliAnalysisTaskSE.h"
#include "AliBalanceTriggered.h"
#include "AliPIDResponse.h"
#include "AliPIDCombined.h"

class TList;
class TH1F;
class TH2F;

class AliBalanceTriggered;
class AliEventPoolManager;


class AliAnalysisTaskTriggeredBF : public AliAnalysisTaskSE {
 public:
  AliAnalysisTaskTriggeredBF(const char *name = "AliAnalysisTaskTriggeredBF");
  virtual ~AliAnalysisTaskTriggeredBF(); 
  
  
  virtual void   UserCreateOutputObjects();
  virtual void   UserExec(Option_t *option);
  virtual void   UserExecMix(Option_t*);
  virtual void   FinishTaskOutput();
  virtual void   Terminate(Option_t *);

  void SetAnalysisObject(AliBalanceTriggered *const analysis) {
    fBalance         = analysis;
    }
  void SetShufflingObject(AliBalanceTriggered *const analysisShuffled) {
    fRunShuffling = kTRUE;
    fShuffledBalance = analysisShuffled;
  }
  void SetMixingObject(AliBalanceTriggered *const analysisMixed) {
    fRunMixing = kTRUE;
    fMixedBalance = analysisMixed;
  }
  void SetMixingTracks(Int_t tracks) { fMixingTracks = tracks; }

  void SetRunV0(Bool_t runV0 = kTRUE) { fRunV0 = runV0; }
 
  void SetVertexDiamond(Double_t vx, Double_t vy, Double_t vz) {
    fVxMax = vx;
    fVyMax = vy;
    fVzMax = vz;
  }

  //==============AOD analysis==============//
  void SetAODtrackCutBit(Int_t bit){
    nAODtrackCutBit = bit;
  }

  void SetKinematicsCutsAOD(Double_t ptmin, Double_t ptmax, Double_t etamin, Double_t etamax){
    fPtMin  = ptmin;  fPtMax  = ptmax;
    fEtaMin = etamin; fEtaMax = etamax;

  }

  void SetExtraDCACutsAOD(Double_t DCAxy, Double_t DCAz){
    fDCAxyCut  = DCAxy;
    fDCAzCut = DCAz;
  }

   void SetExtraTPCCutsAOD(Double_t maxTPCchi2, Int_t minNClustersTPC){
    fTPCchi2Cut      = maxTPCchi2;
    fNClustersTPCCut = minNClustersTPC;
  }

  //Centrality
  void SetCentralityEstimator(const char* centralityEstimator) {fCentralityEstimator = centralityEstimator;}
  const char* GetCentralityEstimator(void)  const              {return fCentralityEstimator;}
  void SetCentralityPercentileRange(Double_t min, Double_t max) { 
    fUseCentrality = kTRUE;
    fCentralityPercentileMin=min;
    fCentralityPercentileMax=max;
  }
  void SetImpactParameterRange(Double_t min, Double_t max) { 
    fUseCentrality = kTRUE;
    fImpactParameterMin=min;
    fImpactParameterMax=max;
  }

  //multiplicity
  void SetMultiplicityRange(Int_t min, Int_t max) {
    fUseMultiplicity = kTRUE;
    fNumberOfAcceptedTracksMin = min;
    fNumberOfAcceptedTracksMax = max;}
  
  void UseOfflineTrigger() {fUseOfflineTrigger = kTRUE;}
  

 private:
  Float_t    IsEventAccepted(AliVEvent* event);
  TObjArray* GetAcceptedTracks(AliVEvent* event);
  TObjArray* GetAcceptedV0s(AliVEvent* event);
  TObjArray* GetShuffledTracks(TObjArray* tracks);

  AliBalanceTriggered *fBalance; //TriggeredBF object
  Bool_t fRunShuffling;//run shuffling or not
  AliBalanceTriggered *fShuffledBalance; //TriggeredBF object (shuffled)
  Bool_t fRunMixing;//run mixing or not
  Int_t  fMixingTracks;//number of tracks to mix
  AliBalanceTriggered *fMixedBalance; //TriggeredBF object (mixed)
  AliEventPoolManager*     fPoolMgr;         //! event pool manager
  Bool_t fRunV0;

  AliPIDResponse       *fPIDResponse;     //! PID response object
  AliPIDCombined       *fPIDCombined;     //! combined PID object

  TList *fList; //fList object
  TList *fListTriggeredBF; //fList object
  TList *fListTriggeredBFS; //fList object (shuffling)
  TList *fListTriggeredBFM; //fList object (mixing)
  TList *fHistListPIDQA;  //! list of histograms
  TList *fHistListV0; // list of V0 histograms

  TH1F *fHistEventStats; //event stats
  TH2F *fHistCentStats; //centrality stats
  TH1F *fHistTriggerStats; //trigger stats
  TH1F *fHistTrackStats; //Track filter bit stats
  TH1F *fHistVx; //x coordinate of the primary vertex
  TH1F *fHistVy; //y coordinate of the primary vertex
  TH1F *fHistVz; //z coordinate of the primary vertex

  TH2F *fHistClus;//number of clusters (QA histogram)
  TH2F *fHistDCA;//DCA  (QA histogram)
  TH1F *fHistChi2;//track chi2 (QA histogram)
  TH1F *fHistPt;//transverse momentum (QA histogram)
  TH1F *fHistEta;//pseudorapidity (QA histogram)
  TH1F *fHistPhi;//phi (QA histogram)
  TH1F *fHistPhiBefore;//phi before v2 afterburner (QA histogram)
  TH1F *fHistPhiAfter;//phi after v2 afterburner (QA histogram)
  TH2F *fHistV0M;//V0 multiplicities (QA histogram)
  TH2F *fHistRefTracks;//reference track multiplicities (QA histogram)

  // V0 histograms
  TH1F    *fHistV0MultiplicityBeforeTrigSel;             //! V0 multiplicity distribution
  TH1F    *fHistV0MultiplicityForTrigEvt;                //! V0 multiplicity distribution
  TH1F    *fHistV0MultiplicityForSelEvt;                 //! V0 multiplicity distribution
  TH1F    *fHistV0MultiplicityForSelEvtNoTPCOnly;        //! V0 multiplicity distribution
  TH1F    *fHistV0MultiplicityForSelEvtNoTPCOnlyNoPileup;//! V0 multiplicity distribution
  
  TH1F    *fHistMultiplicityBeforeTrigSel; 	        //! multiplicity distribution    
  TH1F    *fHistMultiplicityForTrigEvt;  		//! multiplicity distribution
  TH1F    *fHistMultiplicity;     			//! multiplicity distribution
  TH1F    *fHistMultiplicityNoTPCOnly;			//! multiplicity distribution
  TH1F    *fHistMultiplicityNoTPCOnlyNoPileup;		//! multiplicity distribution

  //before selection
  TH1F* fHistV0InvMassK0;                           // Invariant mass K0
  TH1F* fHistV0InvMassLambda;                       // Invariant mass Lambda
  TH1F* fHistV0InvMassAntiLambda;                   // Invariant mass AntiLambda
  TH2F* fHistV0Armenteros;                          // Armenteros plot

  //after selection
  TH1F* fHistV0SelInvMassK0;                           // Invariant mass K0
  TH1F* fHistV0SelInvMassLambda;                       // Invariant mass Lambda
  TH1F* fHistV0SelInvMassAntiLambda;                   // Invariant mass AntiLambda
  TH2F* fHistV0SelArmenteros;                          // Armenteros plot
 
  TString fCentralityEstimator;      //"V0M","TRK","TKL","ZDC","FMD"
  Bool_t fUseCentrality;//use the centrality (PbPb) or not (pp)
  Double_t fCentralityPercentileMin;//centrality percentile min
  Double_t fCentralityPercentileMax;//centrality percentile max
  Double_t fImpactParameterMin;//impact parameter min (used for MC)
  Double_t fImpactParameterMax;//impact parameter max (used for MC)

  Bool_t fUseMultiplicity;//use the multiplicity cuts
  Int_t fNumberOfAcceptedTracksMin;//min. number of number of accepted tracks (used for the multiplicity dependence study - pp)
  Int_t fNumberOfAcceptedTracksMax;//max. number of number of accepted tracks (used for the multiplicity dependence study - pp)
  TH1F *fHistNumberOfAcceptedTracks;//hisot to store the number of accepted tracks

  Bool_t fUseOfflineTrigger;//Usage of the offline trigger selection

  Double_t fVxMax;//vxmax
  Double_t fVyMax;//vymax
  Double_t fVzMax;//vzmax

  Int_t nAODtrackCutBit;//track cut bit from track selection (only used for AODs)

  Double_t fPtMin;//only used for AODs
  Double_t fPtMax;//only used for AODs
  Double_t fEtaMin;//only used for AODs
  Double_t fEtaMax;//only used for AODs

  Double_t fDCAxyCut;//only used for AODs
  Double_t fDCAzCut;//only used for AODs

  Double_t fTPCchi2Cut;//only used for AODs
  Int_t fNClustersTPCCut;//only used for AODs

 
  AliAnalysisTaskTriggeredBF(const AliAnalysisTaskTriggeredBF&); // not implemented
  AliAnalysisTaskTriggeredBF& operator=(const AliAnalysisTaskTriggeredBF&); // not implemented
  
  ClassDef(AliAnalysisTaskTriggeredBF, 1); // example of analysis
};

// class used for io with AliBalance (taken from AliAnalysisTaskPhiCorrelations)
class AliBFBasicParticle : public AliVParticle
{ 
  public:
  AliBFBasicParticle(Float_t eta, Float_t phi, Float_t pt, Short_t charge, Double_t correction)
    : fEta(eta), fPhi(phi), fpT(pt), fCharge(charge), fCorrection(correction)
    {
    }
    ~AliBFBasicParticle() {}
    
    // kinematics
    virtual Double_t Px() const { AliFatal("Not implemented"); return 0; }
    virtual Double_t Py() const { AliFatal("Not implemented"); return 0; }
    virtual Double_t Pz() const { AliFatal("Not implemented"); return 0; }
    virtual Double_t Pt() const { return fpT; }
    virtual Double_t P() const { AliFatal("Not implemented"); return 0; }
    virtual Bool_t   PxPyPz(Double_t[3]) const { AliFatal("Not implemented"); return 0; }

    virtual Double_t Xv() const { AliFatal("Not implemented"); return 0; }
    virtual Double_t Yv() const { AliFatal("Not implemented"); return 0; }
    virtual Double_t Zv() const { AliFatal("Not implemented"); return 0; }
    virtual Bool_t   XvYvZv(Double_t[3]) const { AliFatal("Not implemented"); return 0; }

    virtual Double_t OneOverPt()  const { AliFatal("Not implemented"); return 0; }
    virtual Double_t Phi()        const { return fPhi; }
    virtual Double_t Theta()      const { AliFatal("Not implemented"); return 0; }


    virtual Double_t E()          const { AliFatal("Not implemented"); return 0; }
    virtual Double_t M()          const { AliFatal("Not implemented"); return 0; }
    
    virtual Double_t Eta()        const { return fEta; }
    virtual Double_t Y()          const { AliFatal("Not implemented"); return 0; }
    
    virtual Short_t Charge()      const { return fCharge; }
    virtual Int_t   GetLabel()    const { AliFatal("Not implemented"); return 0; }

    virtual Double_t Correction()        const { return fCorrection; } //=============================correction
    
    // PID
    virtual Int_t   PdgCode()     const { AliFatal("Not implemented"); return 0; }      
    virtual const Double_t *PID() const { AliFatal("Not implemented"); return 0; }
    
  private:
    Float_t fEta;      // eta
    Float_t fPhi;      // phi
    Float_t fpT;       // pT
    Short_t fCharge;   // charge
    Double_t fCorrection; //============================correction

    ClassDef( AliBFBasicParticle, 1); // class which contains only quantities requires for this analysis to reduce memory consumption for event mixing
};

#endif
 AliAnalysisTaskTriggeredBF.h:1
 AliAnalysisTaskTriggeredBF.h:2
 AliAnalysisTaskTriggeredBF.h:3
 AliAnalysisTaskTriggeredBF.h:4
 AliAnalysisTaskTriggeredBF.h:5
 AliAnalysisTaskTriggeredBF.h:6
 AliAnalysisTaskTriggeredBF.h:7
 AliAnalysisTaskTriggeredBF.h:8
 AliAnalysisTaskTriggeredBF.h:9
 AliAnalysisTaskTriggeredBF.h:10
 AliAnalysisTaskTriggeredBF.h:11
 AliAnalysisTaskTriggeredBF.h:12
 AliAnalysisTaskTriggeredBF.h:13
 AliAnalysisTaskTriggeredBF.h:14
 AliAnalysisTaskTriggeredBF.h:15
 AliAnalysisTaskTriggeredBF.h:16
 AliAnalysisTaskTriggeredBF.h:17
 AliAnalysisTaskTriggeredBF.h:18
 AliAnalysisTaskTriggeredBF.h:19
 AliAnalysisTaskTriggeredBF.h:20
 AliAnalysisTaskTriggeredBF.h:21
 AliAnalysisTaskTriggeredBF.h:22
 AliAnalysisTaskTriggeredBF.h:23
 AliAnalysisTaskTriggeredBF.h:24
 AliAnalysisTaskTriggeredBF.h:25
 AliAnalysisTaskTriggeredBF.h:26
 AliAnalysisTaskTriggeredBF.h:27
 AliAnalysisTaskTriggeredBF.h:28
 AliAnalysisTaskTriggeredBF.h:29
 AliAnalysisTaskTriggeredBF.h:30
 AliAnalysisTaskTriggeredBF.h:31
 AliAnalysisTaskTriggeredBF.h:32
 AliAnalysisTaskTriggeredBF.h:33
 AliAnalysisTaskTriggeredBF.h:34
 AliAnalysisTaskTriggeredBF.h:35
 AliAnalysisTaskTriggeredBF.h:36
 AliAnalysisTaskTriggeredBF.h:37
 AliAnalysisTaskTriggeredBF.h:38
 AliAnalysisTaskTriggeredBF.h:39
 AliAnalysisTaskTriggeredBF.h:40
 AliAnalysisTaskTriggeredBF.h:41
 AliAnalysisTaskTriggeredBF.h:42
 AliAnalysisTaskTriggeredBF.h:43
 AliAnalysisTaskTriggeredBF.h:44
 AliAnalysisTaskTriggeredBF.h:45
 AliAnalysisTaskTriggeredBF.h:46
 AliAnalysisTaskTriggeredBF.h:47
 AliAnalysisTaskTriggeredBF.h:48
 AliAnalysisTaskTriggeredBF.h:49
 AliAnalysisTaskTriggeredBF.h:50
 AliAnalysisTaskTriggeredBF.h:51
 AliAnalysisTaskTriggeredBF.h:52
 AliAnalysisTaskTriggeredBF.h:53
 AliAnalysisTaskTriggeredBF.h:54
 AliAnalysisTaskTriggeredBF.h:55
 AliAnalysisTaskTriggeredBF.h:56
 AliAnalysisTaskTriggeredBF.h:57
 AliAnalysisTaskTriggeredBF.h:58
 AliAnalysisTaskTriggeredBF.h:59
 AliAnalysisTaskTriggeredBF.h:60
 AliAnalysisTaskTriggeredBF.h:61
 AliAnalysisTaskTriggeredBF.h:62
 AliAnalysisTaskTriggeredBF.h:63
 AliAnalysisTaskTriggeredBF.h:64
 AliAnalysisTaskTriggeredBF.h:65
 AliAnalysisTaskTriggeredBF.h:66
 AliAnalysisTaskTriggeredBF.h:67
 AliAnalysisTaskTriggeredBF.h:68
 AliAnalysisTaskTriggeredBF.h:69
 AliAnalysisTaskTriggeredBF.h:70
 AliAnalysisTaskTriggeredBF.h:71
 AliAnalysisTaskTriggeredBF.h:72
 AliAnalysisTaskTriggeredBF.h:73
 AliAnalysisTaskTriggeredBF.h:74
 AliAnalysisTaskTriggeredBF.h:75
 AliAnalysisTaskTriggeredBF.h:76
 AliAnalysisTaskTriggeredBF.h:77
 AliAnalysisTaskTriggeredBF.h:78
 AliAnalysisTaskTriggeredBF.h:79
 AliAnalysisTaskTriggeredBF.h:80
 AliAnalysisTaskTriggeredBF.h:81
 AliAnalysisTaskTriggeredBF.h:82
 AliAnalysisTaskTriggeredBF.h:83
 AliAnalysisTaskTriggeredBF.h:84
 AliAnalysisTaskTriggeredBF.h:85
 AliAnalysisTaskTriggeredBF.h:86
 AliAnalysisTaskTriggeredBF.h:87
 AliAnalysisTaskTriggeredBF.h:88
 AliAnalysisTaskTriggeredBF.h:89
 AliAnalysisTaskTriggeredBF.h:90
 AliAnalysisTaskTriggeredBF.h:91
 AliAnalysisTaskTriggeredBF.h:92
 AliAnalysisTaskTriggeredBF.h:93
 AliAnalysisTaskTriggeredBF.h:94
 AliAnalysisTaskTriggeredBF.h:95
 AliAnalysisTaskTriggeredBF.h:96
 AliAnalysisTaskTriggeredBF.h:97
 AliAnalysisTaskTriggeredBF.h:98
 AliAnalysisTaskTriggeredBF.h:99
 AliAnalysisTaskTriggeredBF.h:100
 AliAnalysisTaskTriggeredBF.h:101
 AliAnalysisTaskTriggeredBF.h:102
 AliAnalysisTaskTriggeredBF.h:103
 AliAnalysisTaskTriggeredBF.h:104
 AliAnalysisTaskTriggeredBF.h:105
 AliAnalysisTaskTriggeredBF.h:106
 AliAnalysisTaskTriggeredBF.h:107
 AliAnalysisTaskTriggeredBF.h:108
 AliAnalysisTaskTriggeredBF.h:109
 AliAnalysisTaskTriggeredBF.h:110
 AliAnalysisTaskTriggeredBF.h:111
 AliAnalysisTaskTriggeredBF.h:112
 AliAnalysisTaskTriggeredBF.h:113
 AliAnalysisTaskTriggeredBF.h:114
 AliAnalysisTaskTriggeredBF.h:115
 AliAnalysisTaskTriggeredBF.h:116
 AliAnalysisTaskTriggeredBF.h:117
 AliAnalysisTaskTriggeredBF.h:118
 AliAnalysisTaskTriggeredBF.h:119
 AliAnalysisTaskTriggeredBF.h:120
 AliAnalysisTaskTriggeredBF.h:121
 AliAnalysisTaskTriggeredBF.h:122
 AliAnalysisTaskTriggeredBF.h:123
 AliAnalysisTaskTriggeredBF.h:124
 AliAnalysisTaskTriggeredBF.h:125
 AliAnalysisTaskTriggeredBF.h:126
 AliAnalysisTaskTriggeredBF.h:127
 AliAnalysisTaskTriggeredBF.h:128
 AliAnalysisTaskTriggeredBF.h:129
 AliAnalysisTaskTriggeredBF.h:130
 AliAnalysisTaskTriggeredBF.h:131
 AliAnalysisTaskTriggeredBF.h:132
 AliAnalysisTaskTriggeredBF.h:133
 AliAnalysisTaskTriggeredBF.h:134
 AliAnalysisTaskTriggeredBF.h:135
 AliAnalysisTaskTriggeredBF.h:136
 AliAnalysisTaskTriggeredBF.h:137
 AliAnalysisTaskTriggeredBF.h:138
 AliAnalysisTaskTriggeredBF.h:139
 AliAnalysisTaskTriggeredBF.h:140
 AliAnalysisTaskTriggeredBF.h:141
 AliAnalysisTaskTriggeredBF.h:142
 AliAnalysisTaskTriggeredBF.h:143
 AliAnalysisTaskTriggeredBF.h:144
 AliAnalysisTaskTriggeredBF.h:145
 AliAnalysisTaskTriggeredBF.h:146
 AliAnalysisTaskTriggeredBF.h:147
 AliAnalysisTaskTriggeredBF.h:148
 AliAnalysisTaskTriggeredBF.h:149
 AliAnalysisTaskTriggeredBF.h:150
 AliAnalysisTaskTriggeredBF.h:151
 AliAnalysisTaskTriggeredBF.h:152
 AliAnalysisTaskTriggeredBF.h:153
 AliAnalysisTaskTriggeredBF.h:154
 AliAnalysisTaskTriggeredBF.h:155
 AliAnalysisTaskTriggeredBF.h:156
 AliAnalysisTaskTriggeredBF.h:157
 AliAnalysisTaskTriggeredBF.h:158
 AliAnalysisTaskTriggeredBF.h:159
 AliAnalysisTaskTriggeredBF.h:160
 AliAnalysisTaskTriggeredBF.h:161
 AliAnalysisTaskTriggeredBF.h:162
 AliAnalysisTaskTriggeredBF.h:163
 AliAnalysisTaskTriggeredBF.h:164
 AliAnalysisTaskTriggeredBF.h:165
 AliAnalysisTaskTriggeredBF.h:166
 AliAnalysisTaskTriggeredBF.h:167
 AliAnalysisTaskTriggeredBF.h:168
 AliAnalysisTaskTriggeredBF.h:169
 AliAnalysisTaskTriggeredBF.h:170
 AliAnalysisTaskTriggeredBF.h:171
 AliAnalysisTaskTriggeredBF.h:172
 AliAnalysisTaskTriggeredBF.h:173
 AliAnalysisTaskTriggeredBF.h:174
 AliAnalysisTaskTriggeredBF.h:175
 AliAnalysisTaskTriggeredBF.h:176
 AliAnalysisTaskTriggeredBF.h:177
 AliAnalysisTaskTriggeredBF.h:178
 AliAnalysisTaskTriggeredBF.h:179
 AliAnalysisTaskTriggeredBF.h:180
 AliAnalysisTaskTriggeredBF.h:181
 AliAnalysisTaskTriggeredBF.h:182
 AliAnalysisTaskTriggeredBF.h:183
 AliAnalysisTaskTriggeredBF.h:184
 AliAnalysisTaskTriggeredBF.h:185
 AliAnalysisTaskTriggeredBF.h:186
 AliAnalysisTaskTriggeredBF.h:187
 AliAnalysisTaskTriggeredBF.h:188
 AliAnalysisTaskTriggeredBF.h:189
 AliAnalysisTaskTriggeredBF.h:190
 AliAnalysisTaskTriggeredBF.h:191
 AliAnalysisTaskTriggeredBF.h:192
 AliAnalysisTaskTriggeredBF.h:193
 AliAnalysisTaskTriggeredBF.h:194
 AliAnalysisTaskTriggeredBF.h:195
 AliAnalysisTaskTriggeredBF.h:196
 AliAnalysisTaskTriggeredBF.h:197
 AliAnalysisTaskTriggeredBF.h:198
 AliAnalysisTaskTriggeredBF.h:199
 AliAnalysisTaskTriggeredBF.h:200
 AliAnalysisTaskTriggeredBF.h:201
 AliAnalysisTaskTriggeredBF.h:202
 AliAnalysisTaskTriggeredBF.h:203
 AliAnalysisTaskTriggeredBF.h:204
 AliAnalysisTaskTriggeredBF.h:205
 AliAnalysisTaskTriggeredBF.h:206
 AliAnalysisTaskTriggeredBF.h:207
 AliAnalysisTaskTriggeredBF.h:208
 AliAnalysisTaskTriggeredBF.h:209
 AliAnalysisTaskTriggeredBF.h:210
 AliAnalysisTaskTriggeredBF.h:211
 AliAnalysisTaskTriggeredBF.h:212
 AliAnalysisTaskTriggeredBF.h:213
 AliAnalysisTaskTriggeredBF.h:214
 AliAnalysisTaskTriggeredBF.h:215
 AliAnalysisTaskTriggeredBF.h:216
 AliAnalysisTaskTriggeredBF.h:217
 AliAnalysisTaskTriggeredBF.h:218
 AliAnalysisTaskTriggeredBF.h:219
 AliAnalysisTaskTriggeredBF.h:220
 AliAnalysisTaskTriggeredBF.h:221
 AliAnalysisTaskTriggeredBF.h:222
 AliAnalysisTaskTriggeredBF.h:223
 AliAnalysisTaskTriggeredBF.h:224
 AliAnalysisTaskTriggeredBF.h:225
 AliAnalysisTaskTriggeredBF.h:226
 AliAnalysisTaskTriggeredBF.h:227
 AliAnalysisTaskTriggeredBF.h:228
 AliAnalysisTaskTriggeredBF.h:229
 AliAnalysisTaskTriggeredBF.h:230
 AliAnalysisTaskTriggeredBF.h:231
 AliAnalysisTaskTriggeredBF.h:232
 AliAnalysisTaskTriggeredBF.h:233
 AliAnalysisTaskTriggeredBF.h:234
 AliAnalysisTaskTriggeredBF.h:235
 AliAnalysisTaskTriggeredBF.h:236
 AliAnalysisTaskTriggeredBF.h:237
 AliAnalysisTaskTriggeredBF.h:238
 AliAnalysisTaskTriggeredBF.h:239
 AliAnalysisTaskTriggeredBF.h:240
 AliAnalysisTaskTriggeredBF.h:241
 AliAnalysisTaskTriggeredBF.h:242
 AliAnalysisTaskTriggeredBF.h:243
 AliAnalysisTaskTriggeredBF.h:244
 AliAnalysisTaskTriggeredBF.h:245
 AliAnalysisTaskTriggeredBF.h:246
 AliAnalysisTaskTriggeredBF.h:247
 AliAnalysisTaskTriggeredBF.h:248
 AliAnalysisTaskTriggeredBF.h:249
 AliAnalysisTaskTriggeredBF.h:250
 AliAnalysisTaskTriggeredBF.h:251
 AliAnalysisTaskTriggeredBF.h:252
 AliAnalysisTaskTriggeredBF.h:253
 AliAnalysisTaskTriggeredBF.h:254
 AliAnalysisTaskTriggeredBF.h:255
 AliAnalysisTaskTriggeredBF.h:256
 AliAnalysisTaskTriggeredBF.h:257
 AliAnalysisTaskTriggeredBF.h:258