]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/FEMTOSCOPY/AliFemto/AliFemtoEventReaderKinematicsChainESD.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemto / AliFemtoEventReaderKinematicsChainESD.h
CommitLineData
d381642d 1/////////////////////////////////////////////////////////////////////////////////////
2// //
3// AliFemtoEventReaderKinematicsChainESD - the reader class for the Alice ESD and //
4// the model Kinematics information tailored for the Task framework and the //
5// Reads in AliESDfriend to create shared hit/quality information //
6// Authors: Malgorzata Janik, Warsaw University of Technology, majanik@cern.ch //
7// Lukasz Graczykowski, Warsaw University of Technology, lgraczyk@cern.ch //
8// //
9/////////////////////////////////////////////////////////////////////////////////////
10
11
12#ifndef ALIFEMTOEVENTREADERKINEMATICSCHAINESD_H
13#define ALIFEMTOEVENTREADERKINEMATICSCHAINESD_H
14
15#include "AliFemtoEventReader.h"
16#include "AliFemtoEnumeration.h"
17#include "AliFemtoV0.h"
18#include "AliESDtrackCuts.h"
19
20#include <string>
21#include <vector>
22#include <TTree.h>
23#include <AliStack.h>
24#include <AliESDEvent.h>
25#include <list>
26#include <AliGenEventHeader.h>
27
28
29
30class AliFemtoEvent;
31
32class AliFemtoEventReaderKinematicsChainESD : public AliFemtoEventReader
33{
34 public:
35 enum EventMult {kGlobalCount=0, kVZERO=1, kReferenceITSTPC=2, kCentrality=3};
36 typedef enum EventMult EstEventMult;
37
38 AliFemtoEventReaderKinematicsChainESD();
39 AliFemtoEventReaderKinematicsChainESD(const AliFemtoEventReaderKinematicsChainESD& aReader);
40 ~AliFemtoEventReaderKinematicsChainESD();
41
42 AliFemtoEventReaderKinematicsChainESD& operator=(const AliFemtoEventReaderKinematicsChainESD& aReader);
43
44 AliFemtoEvent* ReturnHbtEvent();
45 AliFemtoString Report();
34e8fe1d 46 void SetConstrained(bool constrained);
d381642d 47 bool GetConstrained() const;
48
49 //void SetESDSource(AliESDEvent *aESD);
50 void SetStackSource(AliStack *aStack);
51 void SetESDSource(AliESDEvent *aESD);
52 void SetGenEventHeader(AliGenEventHeader *aGenHeader);
53 void SetRotateToEventPlane(short dorotate);
54 void SetUseMultiplicity(EstEventMult aType);
55 void CopyAODtoFemtoV0(TParticle *tv0, AliFemtoV0 *tFemtoV0 );
56
57 protected:
58
59 private:
60 string fFileName; // name of current ESD file
61 bool fConstrained; // flag to set which momentum from ESD file will be use
62 int fNumberofEvent; // number of Events in ESD file
63 int fCurEvent; // number of current event
64 unsigned int fCurFile; // number of current file
65 AliStack *fStack; // Kinematics stack pointer
66 AliESDEvent *fEvent; // ESD event
67 AliGenEventHeader *fGenHeader; // Link to the generator event header
68 EstEventMult fEstEventMult; // Type of the event multiplicity estimator
69 short fRotateToEventPlane; // Rotate the event so that event plane is at x=0
70
71 Float_t GetSigmaToVertex(double *impact, double *covar);
72
73#ifdef __ROOT__
74 ClassDef(AliFemtoEventReaderKinematicsChainESD, 1)
75#endif
76
77 };
78
79#endif
80
81