1 #ifndef ALIEMCALMCTRACKSELECTOR_H
2 #define ALIEMCALMCTRACKSELECTOR_H
11 #include "AliAnalysisTaskSE.h"
13 class AliEmcalMCTrackSelector : public AliAnalysisTaskSE {
15 AliEmcalMCTrackSelector();
16 AliEmcalMCTrackSelector(const char *name);
17 virtual ~AliEmcalMCTrackSelector();
19 void UserCreateOutputObjects();
20 void UserExec(Option_t *option);
22 void SetChargedMC(Bool_t c = kTRUE) { fChargedMC = c ; }
23 void SetEtaMax(Double_t e) { fEtaMax = e ; }
24 void SetRejectNK(Bool_t r = kTRUE) { fRejectNK = r ; }
25 void SetTracksOutName(const char *name) { fTracksOutName = name ; }
28 Int_t GetNumberOfTracks() const;
29 AliVParticle *GetTrack(Int_t i);
30 void AddTrack(AliVParticle *track, Int_t nacc);
32 TString fTracksOutName; // name of output track array
33 Bool_t fRejectNK; // true = reject k0l and neutrons
34 Bool_t fChargedMC; // true = only charged particles
35 TString fTracksMapName; // name of the track map
36 Double_t fEtaMax; // maximum eta to accept tracks
37 Bool_t fInit; //!true = task initialized
38 Bool_t fEsdMode; //!switch for ESD/AOD mode
39 TClonesArray *fTracksIn; //!track array in (AOD only)
40 TClonesArray *fTracksOut; //!track array out
41 AliNamedArrayI *fTracksMap; //!track mapping
44 AliEmcalMCTrackSelector(const AliEmcalMCTrackSelector&); // not implemented
45 AliEmcalMCTrackSelector &operator=(const AliEmcalMCTrackSelector&); // not implemented
47 ClassDef(AliEmcalMCTrackSelector, 2); // Task to select tracks in MC events