]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliMC.h
Introduce TLorentzVector in AliMC::GetSecondary. Thanks to I.Hrivnacova
[u/mrichter/AliRoot.git] / STEER / AliMC.h
index 3ce2a44b4be76cbb0f0122516689bcdf7ee5668b..42e6251784c18f8f848661fe3a7b27404fbf6891 100644 (file)
@@ -1,5 +1,10 @@
 #ifndef ALIMC_H
 #define ALIMC_H
+/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice                               */
+
+/* $Id$ */
+
 ///////////////////////////////////////////////////////////////////////////////
 //                                                                           //
 //                                                                           //
@@ -9,6 +14,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 
 #include <TNamed.h>
+#include <TLorentzVector.h>
 
 class AliMC : public TNamed 
 {
@@ -24,29 +30,34 @@ public:
   static inline AliMC* GetMC() {return fgMC;}
   //
   virtual Int_t   CurrentMaterial(Float_t &a, Float_t &z, Float_t &dens, Float_t &radl, Float_t &absl) const =0;
-  virtual Int_t   CurrentVol(Text_t*, Int_t&) const =0;
-  virtual Int_t   CurrentVolOff(Int_t, Text_t*, Int_t& ) const =0;
+  virtual Int_t   CurrentVolID(Int_t&) const =0;
+  virtual Int_t   CurrentVolOffID(Int_t, Int_t& ) const =0;
+  virtual const char* CurrentVolName() const =0;
+  virtual const char* CurrentVolOffName(Int_t) const =0;
   virtual Int_t   NofVolumes() const =0;
   virtual Int_t   VolId(Text_t*) const =0;
-  virtual void    TrackPosition(Float_t*) const =0;
-  virtual void    TrackMomentum(Float_t*) const =0;
+  virtual Int_t   IdFromPDG(Int_t) const =0;
+  virtual Int_t   PDGFromId(Int_t) const =0;
+  virtual void    DefineParticles() = 0;
+  virtual void    TrackPosition(TLorentzVector&) const =0;
+  virtual void    TrackMomentum(TLorentzVector&) const =0;
   virtual Float_t TrackCharge() const =0;
   virtual Float_t TrackMass() const =0;
   virtual Float_t TrackStep() const =0;
   virtual Int_t   TrackPid() const =0;
-  virtual Bool_t  TrackInside() const =0;
-  virtual Bool_t  TrackEntering() const =0;
-  virtual Bool_t  TrackExiting() const =0;
-  virtual Bool_t  TrackOut() const =0;
-  virtual Bool_t  TrackDisappear() const =0;
-  virtual Bool_t  TrackStop() const =0;
+  virtual Bool_t  IsTrackInside() const =0;
+  virtual Bool_t  IsTrackEntering() const =0;
+  virtual Bool_t  IsTrackExiting() const =0;
+  virtual Bool_t  IsTrackOut() const =0;
+  virtual Bool_t  IsTrackDisappeared() const =0;
+  virtual Bool_t  IsTrackStop() const =0;
   virtual Float_t TrackLength() const =0;
   virtual Float_t TrackTime() const =0;
-  virtual Bool_t  TrackAlive() const=0;
+  virtual Bool_t  IsTrackAlive() const=0;
   virtual Int_t   NSecondaries() const=0;
   virtual Int_t   CurrentEvent() const=0;
   virtual void    ProdProcess(char*) const=0;
-  virtual void    GetSecondary(Int_t, Int_t&, Float_t*, Float_t*)=0;
+  virtual void    GetSecondary(Int_t, Int_t&, TLorentzVector&, TLorentzVector&)=0;
   virtual void    StopTrack() =0;
   virtual void    StopEvent() =0;
   virtual Float_t MaxStep() const =0;
@@ -54,12 +65,12 @@ public:
   virtual void    SetMaxNStep(Int_t) =0;
   virtual Int_t   GetMaxNStep() const =0;
   virtual void    SetUserDecay(Int_t) =0;
-  virtual void    GetParticle(const Int_t, char*, Float_t&) const =0;
   virtual Int_t   GetMedium() const =0;
   virtual void    DrawOneSpec(const char*)=0;
   virtual Float_t Edep() const =0;
   virtual Float_t Etot() const =0;
   virtual const char*   VolName(Int_t) const=0;
+  virtual Float_t Xsec(char*, Float_t, Int_t, Int_t)=0;
   virtual void    Gstpar(Int_t, const char *, Float_t)=0;
   virtual Int_t   Gsvolu(const char*, const char*, Int_t, Float_t*, Int_t)=0;
   virtual void    Gsdvn(const char*, const char*, Int_t, Int_t)=0;
@@ -102,12 +113,12 @@ public:
   virtual  void  Gdhead(Int_t, const char*, Float_t=0)=0;   
   virtual  void  Gdman(Float_t, Float_t, const char*)=0;
   virtual  void  Gsord(const char *name, Int_t iax)=0;
-  virtual  void  Gpart()=0;
   virtual  void  Ggclos()=0;
   virtual  void  SetColors()=0;
   virtual  void  Gphysi()=0;
   virtual  void  Gtrigi()=0;
   virtual  void  Gtreve()=0;
+  virtual  void  Gtreve_root()=0;
   virtual  void  Gtrigc()=0;
   virtual  void  Gtrig()=0;
   virtual  void  Gckmat(Int_t, char*)=0;