]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - THerwig/AliGenHerwig.h
Flushing the buffer for debug purposes (R. Preghenella)
[u/mrichter/AliRoot.git] / THerwig / AliGenHerwig.h
index d3a706ee1947492546b7cae334724c7bb46bdbbe..d1a9d19dbb1ae08243baa9aa26a04dc1663b90ad 100644 (file)
@@ -17,6 +17,7 @@
 #include <AliStructFuncType.h>
 
 class THerwig6;
+class AliGenHerwigEventHeader;
 class TArrayI;
 class TParticle;
 class TClonesArray;
@@ -50,14 +51,13 @@ class AliGenHerwig : public AliGenMC
     virtual void    SetPtRMS(Double_t pt) {fPtRMS=pt;}
     virtual void    SetMaxPr(Int_t i) {fMaxPr=i;}
     virtual void    SetMaxErrors(Int_t i) {fMaxErrors=i;}
+    virtual void    SetSeed(UInt_t seed) {GetRandom()->SetSeed(seed);}
     virtual void    FinishRun();
     virtual void    FinishRunJimmy();
     virtual void    SetEnSoft(Double_t e) {fEnSoft=e;}
 
     virtual void    SetHardProcessFile(TString filename) {fFileName=TString(filename);};
-    virtual void    SetEventListRange(Int_t eventFirst=-1, Int_t eventLast=-1);
-
-    virtual Bool_t CheckParton(TParticle* parton1, TParticle* parton2);
+    virtual Bool_t CheckParton(const TParticle* parton1, const TParticle* parton2);
 
     virtual void         GetPartonEtaRange(Float_t& etamin, Float_t& etamax) const
        {etamin = fEtaMinParton; etamax = fEtaMaxParton;}
@@ -81,12 +81,12 @@ class AliGenHerwig : public AliGenMC
        {fPhiMinGamma = TMath::Pi()*phimin/180.; fPhiMaxGamma = TMath::Pi()*phimax/180.;}
 
  protected:
-    Bool_t SelectFlavor(Int_t pid);
-
+    Bool_t SelectFlavor(Int_t pid) const;
+    void   MakeHeader();    
  protected:
     TString     fAutPDF;         // PDF group
     Int_t       fModPDF;         // PDF set
-    StrucFunc_t fStrucFunc;      //Structure Function
+    StrucFunc_t fStrucFunc;      // Structure Function
     Int_t       fKeep;           // Flag to keep full event information
     Int_t       fDecaysOff;      // Flag to turn off decays of pi0, K_s, D, Lambda, sigma
     Int_t       fTrigger;        // Trigger type
@@ -105,8 +105,6 @@ class AliGenHerwig : public AliGenMC
     Int_t       fMaxPr;          // maximum number of events to print out
     Int_t       fMaxErrors;      // maximum number of errors allowed
     Double_t    fEnSoft;          // change on soft energy distribution
-    Int_t       fEv1Pr;          // first event to be printed
-    Int_t       fEv2Pr;          // last event to be printed
     TString     fFileName;       //!Name of file to read from hard scattering
     Float_t     fEtaMinParton;         //Minimum eta of parton shower
     Float_t     fEtaMaxParton;         //Maximum eta of parton shower
@@ -116,7 +114,7 @@ class AliGenHerwig : public AliGenMC
     Float_t     fEtaMaxGamma;       // Maximum eta of triggered gamma
     Float_t     fPhiMinGamma;       // Minimum phi of triggered gamma
     Float_t     fPhiMaxGamma;       // Maximum phi of triggered gamma
-
+    AliGenHerwigEventHeader* fHeader;  //! Event header
  private:
     AliGenHerwig(const AliGenHerwig &Herwig);
     AliGenHerwig &  operator=(const AliGenHerwig & rhs);
@@ -128,9 +126,9 @@ class AliGenHerwig : public AliGenMC
     // adjust the weight from kinematic cuts
     void   AdjustWeights();
     // check seleted daughters
-    Bool_t DaughtersSelection(TParticle* iparticle, TClonesArray* particles);
+    Bool_t DaughtersSelection(const TParticle* iparticle, const TClonesArray* particles);
     // check if stable
-    Bool_t Stable(TParticle*  particle);
+    Bool_t Stable(const TParticle*  particle) const;
 
     void InitPDF();