]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/STEERBase/AliVVevent.h
added pointer to flat esd friend to flat event
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliVVevent.h
index dcf42ead28f2489ab48bfa1ddef23ba09a90b8e2..54038a4f680d08822fd132d877d1cf70307b8235 100644 (file)
  */
 #include "Rtypes.h"
 #include "TString.h"
-class AliVVevent;
-class AliVVvertex;
+#include "AliVVMisc.h"
+
+class TList;
+//class AliVVvertex;
 class AliVVtrack;
 class AliMultiplicity;
-class AliVVkink;
-class AliVVeventFriend;
+class AliVVfriendEvent;
+class AliESDkink;
+class TTree;
 
-class AliVVevent {
- public:
+class AliVVevent{
+ public:  
+  // --------------------------------------------------------------------------------
+  // -- Constructor / Destructor
   // --------------------------------------------------------------------------------
-  // -- Constructor / Destructors
+
   AliVVevent() {}
-  virtual ~AliVVevent() {} 
 
-  // --------------------------------------------------------------------------------
-  virtual void Reset() = 0;
+  // constructor and method for reinitialisation of virtual table
+  AliVVevent( AliVVConstructorReinitialisationFlag ){}  
+
+ protected:
 
+  virtual ~AliVVevent() {}
+
+ public:
   // --------------------------------------------------------------------------------
+  // -- Methods, common for AliVEvent and AliVVevent interface
+  // --------------------------------------------------------------------------------
+
   // Access methods
+  
+  virtual Double_t  GetMagneticField() const = 0;  
+  virtual UInt_t    GetPeriodNumber()  const = 0;
+  virtual Int_t     GetRunNumber()     const = 0;
+  virtual UInt_t    GetOrbitNumber()   const = 0;
+  virtual UShort_t  GetBunchCrossNumber() const = 0;
+  virtual ULong64_t GetTriggerMask()   const = 0;
+  virtual TString   GetFiredTriggerClasses() const = 0;
+  
+  virtual Int_t GetNumberOfTracks() const = 0;
+  virtual Int_t GetNumberOfV0s() const = 0;
+  // Other methods
 
+  virtual void Reset() = 0;
+  virtual void ConnectTracks() = 0;
+  
+  // --------------------------------------------------------------------------------
+  // -- Methods, specific for AliVVevent (are disabled in AliVEvent interface)
+  // --------------------------------------------------------------------------------
+  
+  virtual UInt_t    GetTimeStamp()   const = 0;
+  virtual UInt_t    GetEventSpecie() const = 0;  
+  virtual ULong64_t GetTriggerMaskNext50()   const = 0;
+
+  virtual Int_t GetNumberOfKinks() const = 0;
+  
+  /* 
   virtual const AliVVvertex* GetPrimaryVertex() const {return NULL;}
   virtual const AliVVvertex* GetPrimaryVertexSPD() const {return NULL;}
   virtual const AliVVvertex* GetPrimaryVertexTracks() const {return NULL;}
-  virtual const AliVVvertex* GetPrimaryVertexTPC() const {return NULL;}
-  virtual AliVVtrack* GetTrack(Int_t /*i*/) const {return NULL;}
-  virtual AliVVkink* GetKink(Int_t /*i*/) const {return NULL;}
-  virtual AliVVtrack* GetV0(Int_t /*i*/) const {return 0;}
-  virtual Int_t GetNumberOfTracks() const {return 0;}
-  virtual Int_t GetNumberOfV0s() const {return 0;}
-  virtual Int_t GetNumberOfKinks() const {return 0;}
-  virtual Int_t GetEventNumberInFile() const {return -1;}
-  virtual const AliMultiplicity* GetMultiplicity() const {return NULL;} //by default SPDmult
-  virtual Int_t GetRunNumber() const {return -1;}
-  virtual TString GetFiredTriggerClasses() const {TString string; return string;}
-  virtual TObject* FindListObject(const char* /*name*/) const {return NULL;}
-  virtual ULong64_t GetTriggerMask() const {return 0;}
-  virtual Double_t GetMagneticField() const {return 0;}
-  virtual UInt_t GetTimeStamp() const { return 0;}
-  virtual UInt_t GetEventSpecie() const { return 0;}
-  virtual ULong64_t GetSize() {return 0;};
-  //virtual AliVVeventFriend* FindFriend() const { return NULL; }
-
-  ClassDef(AliVVevent,1)  // base class for event data
+  virtual const AliVVvertex* GetPrimaryVertexTPC() const {return NULL;}  
+  */
+  
+  virtual const AliVVtrack* GetVVTrack(Int_t /*i*/) const = 0;
+  virtual AliESDkink* GetKink(Int_t /*i*/) const = 0;
+  //virtual AliVVtrack* GetV0(Int_t /*i*/) const = 0;
+
+  virtual AliVVfriendEvent* FindFriend() const = 0;
+
+  // some ESD interfaces, not yet implemented in flat esd (may be not needed, may be need some changes)
+
+  //virtual Int_t GetEventNumberInFile() const = 0;
+  //virtual const AliMultiplicity* GetMultiplicity() const = 0; //by default SPDmult  
+  //ClassDef(AliVVevent, 1)
 
 };
 #endif