134 #ifndef ROOT_TGenerator 
  135 #define ROOT_TGenerator 
  144 class TGenerator : 
public TNamed {
 
  148    Bool_t        fShowNeutrons; 
 
  149    TObjArray    *fParticles;    
 
  151    TGenerator(
const TGenerator& tg) :
 
  152    TNamed(tg), fPtCut(tg.fPtCut), fShowNeutrons(tg.fShowNeutrons),fParticles(tg.fParticles) { }
 
  153    TGenerator& operator=(
const TGenerator& tg) {
 
  155          TNamed::operator=(tg); fPtCut=tg.fPtCut; fShowNeutrons=tg.fShowNeutrons;
 
  156          fParticles=tg.fParticles;
 
  163    TGenerator(): fPtCut(0), fShowNeutrons(kTRUE), fParticles(0) { } 
 
  164    TGenerator(
const char *name, 
const char *title=
"Generator class");
 
  165    virtual ~TGenerator();
 
  166    virtual void            Browse(TBrowser *b);
 
  167    virtual Int_t           DistancetoPrimitive(Int_t px, Int_t py);
 
  168    virtual void            Draw(Option_t *option=
"");
 
  169    virtual void            ExecuteEvent(Int_t event, Int_t px, Int_t py);
 
  170    virtual void            GenerateEvent();
 
  171    virtual Double_t        GetParameter(
const char* )
 const { 
return 0.; }
 
  172    virtual Int_t           ImportParticles(TClonesArray *particles, Option_t *option=
"");
 
  173    virtual TObjArray      *ImportParticles(Option_t *option=
"");
 
  174    virtual TParticle      *GetParticle(Int_t i) 
const;
 
  175    Int_t                   GetNumberOfParticles() 
const;
 
  176    virtual TObjArray      *GetListOfParticles()
 const {
return fParticles;}
 
  177    virtual TObjArray      *GetPrimaries(Option_t *option=
"") {
return ImportParticles(option);}
 
  178    Float_t                 GetPtCut()
 const {
return fPtCut;}
 
  179    virtual void            Paint(Option_t *option=
"");
 
  180    virtual void            SetParameter(
const char* ,Double_t ){}
 
  181    virtual void            SetPtCut(Float_t ptcut=0); 
 
  182    virtual void            SetViewRadius(Float_t rbox = 1000); 
 
  183    virtual void            SetViewRange(Float_t xmin=-10000,Float_t ymin=-10000,Float_t zmin=-10000
 
  184                                        ,Float_t xmax=10000,Float_t ymax=10000,Float_t zmax=10000);  
 
  185    virtual void            ShowNeutrons(Bool_t show=1); 
 
  187    ClassDef(TGenerator,1)