]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/STEERBase/AliMCEvent.h
SetFlag GetFlag lifted to interface
[u/mrichter/AliRoot.git] / STEER / STEERBase / AliMCEvent.h
index 1f28a5e674169de7f94f088994ad5354914f5a7b..6d1a0775d316133f87a09c3731da7d388dca1ac4 100644 (file)
@@ -18,7 +18,7 @@
 #include <TRefArray.h>
 #include <TClonesArray.h>
 
-#include <AliVEvent.h>
+#include "AliVEvent.h"
 #include "AliVHeader.h"
 #include "AliVParticle.h"
 #include "AliVVertex.h"
@@ -111,6 +111,7 @@ public:
     // Services
     virtual void      ConnectTreeE (TTree* tree);
     virtual void      ConnectTreeK (TTree* tree);
+    virtual void      ConnectHeaderAndStack(AliHeader* header);
     virtual void      ConnectTreeTR(TTree* tree);
     virtual void      Clean();
     virtual void      InitEvent();
@@ -128,12 +129,16 @@ public:
     virtual Int_t     BgLabelToIndex(Int_t label);
     static  Int_t     BgLabelOffset() {return fgkBgLabelOffset;}
     virtual Bool_t    IsFromBGEvent(Int_t index);
+    TList*  GetCocktailList();
+    TString  GetGenerator(Int_t index); 
+    Bool_t GetCocktailGenerator(Int_t index,TString &nameGen);
     virtual Bool_t    IsSecondaryFromWeakDecay(Int_t index);
     virtual Bool_t    IsSecondaryFromMaterial(Int_t index);
     // External particle array
-    virtual void      SetParticleArray(TClonesArray* mcParticles) 
-       {fMCParticles = mcParticles; fNparticles = fMCParticles->GetEntries(); fExternal = kTRUE;}
-    
+  virtual void      SetParticleArray(TClonesArray* mcParticles); 
+    //External Header 
+     virtual void SetExternalHeader(AliVHeader* aodmcHeader)
+       {fAODMCHeader=aodmcHeader;}  
   virtual AliGenEventHeader *FindHeader(Int_t ipart);
     //Following needed only for mixed event
   virtual Int_t        EventIndex(Int_t)       const {return 0;}
@@ -145,15 +150,14 @@ public:
 
   virtual AliVVZERO    *GetVZEROData() const {return 0;}
   virtual AliVZDC      *GetZDCData()   const {return 0;}
-    
-//   #ifdef MFT_UPGRADE
-//   virtual AliVMFT *GetMFTData() const {return 0;}
-//   #endif
-  virtual AliVMFT *GetMFTData() const {return 0;}    // AU
-       
+
+
 private:
     virtual void      ReorderAndExpandTreeTR();
     virtual Int_t     FindIndexAndEvent(Int_t oldidx, AliMCEvent*& event) const;
+    void             UpdateEventInformation();
+    virtual void      AssignGeneratorIndex();    
+    virtual void      AssignGeneratorIndex(Int_t index, Int_t dmin, Int_t dmax);    
     
 private: 
     // Stanndard implementation for ESD production
@@ -161,6 +165,7 @@ private:
     TClonesArray     *fMCParticles;      // Pointer to list of particles
     TObjArray        *fMCParticleMap;    // Map of MC Particles
     AliHeader        *fHeader;           // Current pointer to header
+    AliVHeader       *fAODMCHeader;      //Current pointer to AODMC header
     TClonesArray     *fTRBuffer;         // Track reference buffer    
     TClonesArray     *fTrackReferences;  // Array of track references
     TTree            *fTreeTR;           // Pointer to Track Reference Tree
@@ -175,7 +180,6 @@ private:
     static   Int_t        fgkBgLabelOffset;  // Standard branch name    
     mutable  AliVVertex*  fVertex;           // MC Vertex
     Int_t             fNBG;              //! Background particles in current event
-    
     ClassDef(AliMCEvent, 2)              // AliVEvent realisation for MC data
 };