]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/STEERBase/AliVVevent.h
54038a4f680d08822fd132d877d1cf70307b8235
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliVVevent.h
1 #ifndef ALIVVEVENT_H
2 #define ALIVVEVENT_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               *
6  * Primary Authors : Sergey Gorbunov, Jochen Thaeder, Chiara Zampolli     */
7
8 /*
9  * See implementation file for documentation
10  */
11 #include "Rtypes.h"
12 #include "TString.h"
13 #include "AliVVMisc.h"
14
15 class TList;
16 //class AliVVvertex;
17 class AliVVtrack;
18 class AliMultiplicity;
19 class AliVVfriendEvent;
20 class AliESDkink;
21 class TTree;
22
23 class AliVVevent{
24  public:  
25   // --------------------------------------------------------------------------------
26   // -- Constructor / Destructor
27   // --------------------------------------------------------------------------------
28
29   AliVVevent() {}
30
31   // constructor and method for reinitialisation of virtual table
32   AliVVevent( AliVVConstructorReinitialisationFlag ){}  
33
34  protected:
35
36   virtual ~AliVVevent() {}
37
38  public:
39   // --------------------------------------------------------------------------------
40   // -- Methods, common for AliVEvent and AliVVevent interface
41   // --------------------------------------------------------------------------------
42
43   // Access methods
44   
45   virtual Double_t  GetMagneticField() const = 0;  
46   virtual UInt_t    GetPeriodNumber()  const = 0;
47   virtual Int_t     GetRunNumber()     const = 0;
48   virtual UInt_t    GetOrbitNumber()   const = 0;
49   virtual UShort_t  GetBunchCrossNumber() const = 0;
50   virtual ULong64_t GetTriggerMask()   const = 0;
51   virtual TString   GetFiredTriggerClasses() const = 0;
52   
53   virtual Int_t GetNumberOfTracks() const = 0;
54   virtual Int_t GetNumberOfV0s() const = 0;
55  
56   // Other methods
57
58   virtual void Reset() = 0;
59   virtual void ConnectTracks() = 0;
60   
61   // --------------------------------------------------------------------------------
62   // -- Methods, specific for AliVVevent (are disabled in AliVEvent interface)
63   // --------------------------------------------------------------------------------
64   
65   virtual UInt_t    GetTimeStamp()   const = 0;
66   virtual UInt_t    GetEventSpecie() const = 0;  
67   virtual ULong64_t GetTriggerMaskNext50()   const = 0;
68
69   virtual Int_t GetNumberOfKinks() const = 0;
70   
71   /* 
72   virtual const AliVVvertex* GetPrimaryVertex() const {return NULL;}
73   virtual const AliVVvertex* GetPrimaryVertexSPD() const {return NULL;}
74   virtual const AliVVvertex* GetPrimaryVertexTracks() const {return NULL;}
75   virtual const AliVVvertex* GetPrimaryVertexTPC() const {return NULL;}  
76   */
77   
78   virtual const AliVVtrack* GetVVTrack(Int_t /*i*/) const = 0;
79   virtual AliESDkink* GetKink(Int_t /*i*/) const = 0;
80   //virtual AliVVtrack* GetV0(Int_t /*i*/) const = 0;
81
82   virtual AliVVfriendEvent* FindFriend() const = 0;
83
84  
85   // some ESD interfaces, not yet implemented in flat esd (may be not needed, may be need some changes)
86
87   //virtual Int_t GetEventNumberInFile() const = 0;
88   //virtual const AliMultiplicity* GetMultiplicity() const = 0; //by default SPDmult  
89  
90   //ClassDef(AliVVevent, 1)
91
92 };
93 #endif