X-Git-Url: http://git.uio.no/git/?p=u%2Fmrichter%2FAliRoot.git;a=blobdiff_plain;f=TFluka%2FTFlukaMCGeometry.h;h=5541baa4221bbf332e657fe9a2ab5b50d1e061a3;hp=9f5433eede13117081a1d29cd888f9f7f319415a;hb=d11bf3cab53c18f0ac0e7def58436ed09c22458d;hpb=8495a2084fd4c55ff7bbee645dd6fa68fded279c diff --git a/TFluka/TFlukaMCGeometry.h b/TFluka/TFlukaMCGeometry.h index 9f5433eede1..5541baa4221 100644 --- a/TFluka/TFlukaMCGeometry.h +++ b/TFluka/TFlukaMCGeometry.h @@ -26,6 +26,11 @@ class TFlukaMCGeometry : public TVirtualMCGeometry { public: + enum EFlukaLatticeTypes { + kLttcOutside = 999999999, + kLttcVirtual = 1000000000 + }; + TFlukaMCGeometry(); TFlukaMCGeometry(const char* name, const char* title); virtual ~TFlukaMCGeometry(); @@ -109,14 +114,25 @@ class TFlukaMCGeometry : public TVirtualMCGeometry { const char* CurrentVolName() const; const char* CurrentVolOffName(Int_t off) const; Int_t GetMedium() const; + Int_t *GetRegionList(Int_t imed, Int_t &nreg); + Int_t *GetMaterialList(Int_t imat, Int_t &nreg); + Int_t GetFlukaMaterial(Int_t imed) const; + Int_t GetLastMaterialIndex() const {return fLastMaterial;} virtual Int_t VolId(const Text_t* volName) const; virtual const char* VolName(Int_t id) const; virtual Int_t NofVolumes() const; virtual Int_t VolId2Mate(Int_t id) const; // FLUKA specific methods - void CreateFlukaMatFile(const char *fname=0) const; + void CreateFlukaMatFile(const char *fname=0); void PrintHeader(ofstream &out, const char *text) const; + Bool_t IsDebugging() const {return fDebug;} + void SetDebugMode(Bool_t flag=kTRUE) {fDebug = flag;} + void SetMreg(Int_t mreg); + void SetCurrentRegion(Int_t mreg, Int_t latt); + void GetCurrentRegion(Int_t &mreg, Int_t &latt) const {mreg=fCurrentRegion; latt=fCurrentLattice;} + void SetNextRegion(Int_t mreg, Int_t latt); + void GetNextRegion(Int_t &mreg, Int_t &latt) const {mreg=fNextRegion; latt=fNextLattice;} Int_t RegionId() const; void ToFlukaString(TString &str) const; @@ -128,7 +144,13 @@ class TFlukaMCGeometry : public TVirtualMCGeometry { TFlukaMCGeometry& operator=(const TFlukaMCGeometry& rhs) {return (*this);} static TFlukaMCGeometry* fgInstance; // singleton instance - + Bool_t fDebug; // debug flag + Int_t fLastMaterial; // last FLUKA material index + Int_t fCurrentRegion; // current region number + Int_t fCurrentLattice; // current lattice history + Int_t fNextRegion; // next region number + Int_t fNextLattice; // next lattice history + Int_t *fRegionList; //! region list matching a given medium number ClassDef(TFlukaMCGeometry,1) //Virtual MonteCarlo Interface };