]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/FEMTOSCOPY/AliFemto/AliAnalysisTaskFemto.h
Reaction Plane analysis updates
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemto / AliAnalysisTaskFemto.h
CommitLineData
76ce4b5b 1//------------------------------------------------------
2// AliAnalysisTaskFemto - A task for the analysis framework
3// from the FEMTOSCOPY analysis of PWG2. Creates the necessary
4// connection between the ESD or AOD input and the femtoscopic
5// code.
6// Author: Adam Kisiel, OSU; Adam.Kisiel@cern.ch
7//------------------------------------------------------
8#ifndef ALIANALYSISTASKFEMTO_H
9#define ALIANALYSISTASKFEMTO_H
10
11#include "TH1.h"
5e2038a9 12#include "TString.h"
76ce4b5b 13
14#include "AliESDInputHandler.h"
15#include "AliAODHandler.h"
16#include "AliAODInputHandler.h"
17#include "AliMCEventHandler.h"
18#include "AliESDEvent.h"
19#include "AliAODEvent.h"
20#include "AliMCEvent.h"
21
973a91f8 22//#include "AliAnalysisTask.h"
23#include "AliAnalysisTaskSE.h"
76ce4b5b 24#include "AliAnalysisManager.h"
25#include "AliAnalysisDataContainer.h"
26
27#include "AliFemtoEventReaderESDChain.h"
28#include "AliFemtoEventReaderESDChainKine.h"
29#include "AliFemtoEventReaderAODChain.h"
30#include "AliFemtoEventReaderStandard.h"
31#include "AliFemtoEventReaderKinematicsChain.h"
32#include "AliFemtoManager.h"
33
34#include "AliESDpid.h"
35#include "AliAODpidUtil.h"
1777446b 36#include "AliAODHeader.h"
76ce4b5b 37
38
973a91f8 39class AliAnalysisTaskFemto : public AliAnalysisTaskSE { //AliAnalysisTask
76ce4b5b 40 public:
1777446b 41 AliAnalysisTaskFemto() : AliAnalysisTaskSE(), fESD(0), fESDpid(0), fAOD(0), fAODpidUtil(0), fAODheader(0), fStack(0), fOutputList(0), fReader(0x0), fManager(0x0), fAnalysisType(0), fConfigMacro(0), fConfigParams(0) {}
76ce4b5b 42 AliAnalysisTaskFemto(const char *name, const char *aConfigMacro, const char *aConfigParams);
43 AliAnalysisTaskFemto(const char *name, const char *aConfigMacro);
44 AliAnalysisTaskFemto(const AliAnalysisTaskFemto& aFemtoTask);
45 virtual ~AliAnalysisTaskFemto();
46
47 AliAnalysisTaskFemto& operator=(const AliAnalysisTaskFemto& aFemtoTask);
48
49 virtual void ConnectInputData(Option_t *);
50 virtual void CreateOutputObjects();
51 virtual void Exec(Option_t *option);
52 virtual void Terminate(Option_t *);
53 virtual void FinishTaskOutput();
54
55 void SetFemtoReaderESD(AliFemtoEventReaderESDChain *aReader);
56 void SetFemtoReaderESDKine(AliFemtoEventReaderESDChainKine *aReader);
57 void SetFemtoReaderAOD(AliFemtoEventReaderAODChain *aReader);
58 void SetFemtoReaderStandard(AliFemtoEventReaderStandard *aReader);
59 void SetFemtoManager(AliFemtoManager *aManager);
60 void SetFemtoReaderKinematics(AliFemtoEventReaderKinematicsChain *aReader);
61
62 private:
63 AliESDEvent *fESD; //! ESD object
64 AliESDpid *fESDpid; //! ESDpid object
65 AliAODEvent *fAOD; //! AOD object
66 AliAODpidUtil *fAODpidUtil; // AliAODpidUtil object
1777446b 67 AliAODHeader *fAODheader; //AliAODHeader object (to get reference multiplicity in pp)
76ce4b5b 68
69 AliStack *fStack; //! Stack from Kinematics
70 TList *fOutputList; // AliFemto results list
71 AliFemtoEventReader *fReader; //! Reference to the reader
72 AliFemtoManager *fManager; //! AliFemto top-level manager
73 int fAnalysisType; // Mark ESD of AOD analysis
5e2038a9 74 TString fConfigMacro; // Config macro location
75 TString fConfigParams; // Config macro parameters
76ce4b5b 76
77
78 ClassDef(AliAnalysisTaskFemto, 3); // example of analysis
79};
80
81#endif
82