]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/FLOW/AliFlowTasks/AliFlowEvent.h
hooks for PMD flow analysis
[u/mrichter/AliRoot.git] / PWG2 / FLOW / AliFlowTasks / AliFlowEvent.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3 /* $Id$ */
4
5 /*****************************************************************
6   AliFlowEvent: Event container for flow analysis                  
7                                      
8   origin:   Mikolaj Krzewicki  (mikolaj.krzewicki@cern.ch)
9 *****************************************************************/
10
11 #ifndef ALIFLOWEVENT_H
12 #define ALIFLOWEVENT_H
13
14 class AliFlowTrackCuts;
15 class AliFlowTrack;
16 class AliCFManager;
17 class AliVEvent;
18 class AliMCEvent;
19 class AliESDEvent;
20 class AliAODEvent;
21 class AliMultiplicity;
22 class AliESDPmdTrack;
23 class TH2F;
24
25 #include "AliFlowEventSimple.h"
26
27 class AliFlowEvent: public AliFlowEventSimple {
28 public:
29
30   enum KineSource { kNoKine, kESDkine, kMCkine };
31
32   AliFlowEvent();
33   AliFlowEvent(const AliFlowEvent& event);
34   AliFlowEvent& operator=(const AliFlowEvent& event);
35   virtual  ~AliFlowEvent() {}
36
37   AliFlowEvent( const AliMCEvent* anInput,
38                 const AliCFManager* rpCFManager=NULL,
39                 const AliCFManager* poiCFManager=NULL ); //use CF(2x)
40   AliFlowEvent( const AliESDEvent* anInput,  
41                 const AliCFManager* rpCFManager=NULL, 
42                 const AliCFManager* poiCFManager=NULL ); //use CF(2x)
43   AliFlowEvent( const AliAODEvent* anInput, 
44                 const AliCFManager* rpCFManager=NULL, 
45                 const AliCFManager* poiCFManager=NULL );  //use CF(2x)
46   AliFlowEvent( const AliESDEvent* anInput,
47                 const AliCFManager* poiCFManager,
48                 Bool_t hybrid);
49   AliFlowEvent( const AliESDEvent* anInput, 
50                 const AliMCEvent* anInputMc, 
51                 KineSource anOption=kNoKine,
52                 const AliCFManager* rpCFManager=NULL, 
53                 const AliCFManager* poiCFManager=NULL );  //use CF(2x)
54   AliFlowEvent( const AliESDEvent* anInput,
55                 const AliMultiplicity* anInputTracklets,
56                 const AliCFManager* poiCFManager );
57   AliFlowEvent( const AliESDEvent* anInput,
58                 const TH2F* anInputFMDhist,
59                 const AliCFManager* poiCFManager );
60   AliFlowEvent( AliFlowTrackCuts* rpCuts,
61                 AliFlowTrackCuts* poiCuts );
62   //pmd
63   AliFlowEvent( const AliESDEvent* anInput,
64                 const AliESDPmdTrack *pmdtracks,
65                 const AliCFManager* poiCFManager );
66   //pmd
67
68   void SetMCReactionPlaneAngle(const AliMCEvent* mcEvent);
69   using AliFlowEventSimple::SetMCReactionPlaneAngle;
70
71   AliFlowTrack* GetTrack( Int_t i );
72
73   ClassDef(AliFlowEvent,1)
74 };
75
76 #endif
77
78