]>
Commit | Line | Data |
---|---|---|
778636d4 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
4 | /* $Id$ */ | |
5 | /* AliAnalysisTaskNanoAODFilter.h | |
6 | * | |
7 | * Template task producing a P_t spectrum and pseudorapidity distribution. | |
8 | * Includes explanations of physics and primary track selections | |
9 | * | |
10 | * Based on tutorial example from offline pages | |
11 | * Edited by Arvinder Palaha | |
12 | */ | |
13 | #ifndef ALIANALYSISTASKNANOAODESEFILTER_H | |
14 | #define ALIANALYSISTASKNANOAODESEFILTER_H | |
15 | ||
16 | class TH1F; | |
17 | class TList; | |
18 | class AliESDtrackCuts; | |
19 | class AliAnalysisCuts; | |
20 | class AliNanoAODReplicator; | |
21 | class AliNanoAODCustomSetter; | |
22 | ||
23 | #ifndef ALIANALYSISTASKSE_H | |
24 | #include "AliAnalysisTaskSE.h" | |
25 | #endif | |
26 | ||
27 | class AliAnalysisTaskNanoAODFilter : public AliAnalysisTaskSE { | |
28 | public: | |
29 | AliAnalysisTaskNanoAODFilter(); | |
30 | AliAnalysisTaskNanoAODFilter(const char *name, Bool_t saveCutsFlag); | |
31 | virtual ~AliAnalysisTaskNanoAODFilter(); | |
32 | ||
33 | virtual void UserCreateOutputObjects(); | |
34 | virtual void UserExec(Option_t *option); | |
35 | virtual void Init(); | |
36 | virtual void LocalInit() {Init();} | |
37 | virtual void Terminate(Option_t *); | |
38 | virtual void FinishTaskOutput() ; | |
39 | ||
40 | Int_t GetMCMode() { return fMCMode; } | |
41 | void SetMCMode (Int_t var) { fMCMode = var;} | |
42 | void AddFilteredAOD(const char* aodfilename, const char* title); | |
43 | ||
44 | AliAnalysisCuts * GetEvtCuts() { return fEvtCuts; } | |
45 | AliAnalysisCuts * GetTrkCuts() { return fTrkCuts; } | |
46 | AliNanoAODCustomSetter * GetSetter() { return fSetter; } | |
47 | TString GetVarList() { return fVarList; } | |
48 | TString GetVarListHead() { return fVarListHead; } | |
49 | Bool_t GetSaveCutsFlag() { return fSaveCutsFlag; } | |
50 | ||
51 | void SetEvtCuts (AliAnalysisCuts * var ) { fEvtCuts = var;} | |
52 | void SetTrkCuts (AliAnalysisCuts * var ) { fTrkCuts = var;} | |
53 | void SetSetter (AliNanoAODCustomSetter * var ) { fSetter = var;} | |
54 | void SetVarList (TString var ) { fVarList = var;} | |
55 | void SetVarListHead (TString var ) { fVarListHead = var;} | |
56 | ||
57 | private: | |
58 | Int_t fMCMode; // true if processing monte carlo. if > 1 not all MC particles are filtered | |
59 | AliNanoAODReplicator* fTrkrep ; // ! replicator | |
60 | TString fVarList ; // List of variables to be added to the special track | |
61 | TString fVarListHead; // List of variables to be added to the special header | |
62 | AliAnalysisCuts * fEvtCuts; // Event cuts | |
63 | AliAnalysisCuts * fTrkCuts; // Track cuts | |
64 | ||
65 | AliNanoAODCustomSetter * fSetter; // setter for custom variables | |
66 | ||
67 | Bool_t fSaveCutsFlag; // If true, the event and track cuts are saved to disk. Can only be set in the constructor. | |
68 | ||
69 | ||
70 | AliAnalysisTaskNanoAODFilter(const AliAnalysisTaskNanoAODFilter&); // not implemented | |
71 | AliAnalysisTaskNanoAODFilter& operator=(const AliAnalysisTaskNanoAODFilter&); // not implemented | |
72 | ||
73 | ClassDef(AliAnalysisTaskNanoAODFilter, 1); // example of analysis | |
74 | }; | |
75 | ||
76 | #endif | |
77 |