ROOT logo
#ifndef ALIEMCALPICOTRACKMAKER_H
#define ALIEMCALPICOTRACKMAKER_H

class TClonesArray;
class AliVParticle;
class AliNamedArrayI;

#include "AliAnalysisTaskSE.h"

class AliEmcalPicoTrackMaker : public AliAnalysisTaskSE {
 public:
  AliEmcalPicoTrackMaker();
  AliEmcalPicoTrackMaker(const char *name);
  virtual ~AliEmcalPicoTrackMaker();

  void               SetTrackEfficiency(Double_t eff = 0.95)           { fTrackEfficiency   = eff ; }
  void               SetTrackEtaLimits(Double_t min, Double_t max)     { fMaxTrackEta       = max ; fMinTrackEta      = min ; }
  void               SetTrackPhiLimits(Double_t min, Double_t max)     { fMaxTrackPhi       = max ; fMinTrackPhi      = min ; }
  void               SetTrackPtLimits(Double_t min, Double_t max)      { fMaxTrackPt        = max ; fMinTrackPt       = min ; }
  void               SetTracksInName(const char *name)                 { fTracksInName      = name; }
  void               SetTracksOutName(const char *name)                { fTracksOutName     = name; }
  void               SetMCParticlesName(const char *name)              { fMCParticlesName   = name; }
  void               SetCopyMCFlag(Bool_t c, const char* name)         { fCopyMCFlag        = c   ; fMCParticlesName  = name; }
  

 protected:
  void               UserCreateOutputObjects();
  void               UserExec(Option_t *option);

  AliVParticle*      GetMCParticle(Int_t label);

  Int_t              fAODfilterBits[2];     // AOD track filter bit map
  TString            fTracksOutName;        // name of output track array
  TString            fTracksInName;         // name of input track array
  TString            fMCParticlesName;      // name of MC particle array, used by IsHIJINGParticle
  Double_t           fMinTrackPt;           // mix pt of tracks
  Double_t           fMaxTrackPt;           // max pt of tracks
  Double_t           fMinTrackEta;          // cut on track eta
  Double_t           fMaxTrackEta;          // cut on track eta
  Double_t           fMinTrackPhi;          // cut on track phi
  Double_t           fMaxTrackPhi;          // cut on track phi
  Double_t           fTrackEfficiency;      // track efficiency
  Bool_t             fCopyMCFlag;           // copy MC flag
  TClonesArray      *fTracksIn;             //!track array in
  TClonesArray      *fTracksOut;            //!track array out
  TClonesArray      *fMCParticles;          //!MC particle array
  AliNamedArrayI    *fMCParticlesMap;       //!MC particle map
  Bool_t             fInit;                 //!true = task initialized

 private:
  AliEmcalPicoTrackMaker(const AliEmcalPicoTrackMaker&);            // not implemented
  AliEmcalPicoTrackMaker &operator=(const AliEmcalPicoTrackMaker&); // not implemented

  ClassDef(AliEmcalPicoTrackMaker, 8); // Task to make PicoTracks in AOD/ESD events
};
#endif
 AliEmcalPicoTrackMaker.h:1
 AliEmcalPicoTrackMaker.h:2
 AliEmcalPicoTrackMaker.h:3
 AliEmcalPicoTrackMaker.h:4
 AliEmcalPicoTrackMaker.h:5
 AliEmcalPicoTrackMaker.h:6
 AliEmcalPicoTrackMaker.h:7
 AliEmcalPicoTrackMaker.h:8
 AliEmcalPicoTrackMaker.h:9
 AliEmcalPicoTrackMaker.h:10
 AliEmcalPicoTrackMaker.h:11
 AliEmcalPicoTrackMaker.h:12
 AliEmcalPicoTrackMaker.h:13
 AliEmcalPicoTrackMaker.h:14
 AliEmcalPicoTrackMaker.h:15
 AliEmcalPicoTrackMaker.h:16
 AliEmcalPicoTrackMaker.h:17
 AliEmcalPicoTrackMaker.h:18
 AliEmcalPicoTrackMaker.h:19
 AliEmcalPicoTrackMaker.h:20
 AliEmcalPicoTrackMaker.h:21
 AliEmcalPicoTrackMaker.h:22
 AliEmcalPicoTrackMaker.h:23
 AliEmcalPicoTrackMaker.h:24
 AliEmcalPicoTrackMaker.h:25
 AliEmcalPicoTrackMaker.h:26
 AliEmcalPicoTrackMaker.h:27
 AliEmcalPicoTrackMaker.h:28
 AliEmcalPicoTrackMaker.h:29
 AliEmcalPicoTrackMaker.h:30
 AliEmcalPicoTrackMaker.h:31
 AliEmcalPicoTrackMaker.h:32
 AliEmcalPicoTrackMaker.h:33
 AliEmcalPicoTrackMaker.h:34
 AliEmcalPicoTrackMaker.h:35
 AliEmcalPicoTrackMaker.h:36
 AliEmcalPicoTrackMaker.h:37
 AliEmcalPicoTrackMaker.h:38
 AliEmcalPicoTrackMaker.h:39
 AliEmcalPicoTrackMaker.h:40
 AliEmcalPicoTrackMaker.h:41
 AliEmcalPicoTrackMaker.h:42
 AliEmcalPicoTrackMaker.h:43
 AliEmcalPicoTrackMaker.h:44
 AliEmcalPicoTrackMaker.h:45
 AliEmcalPicoTrackMaker.h:46
 AliEmcalPicoTrackMaker.h:47
 AliEmcalPicoTrackMaker.h:48
 AliEmcalPicoTrackMaker.h:49
 AliEmcalPicoTrackMaker.h:50
 AliEmcalPicoTrackMaker.h:51
 AliEmcalPicoTrackMaker.h:52
 AliEmcalPicoTrackMaker.h:53
 AliEmcalPicoTrackMaker.h:54
 AliEmcalPicoTrackMaker.h:55
 AliEmcalPicoTrackMaker.h:56