KaliVeda  1.12/06
Heavy-Ion Analysis Toolkit
KVRangeYanez.h
Go to the documentation of this file.
1 
4 #ifndef __KVRANGEYANEZ_H
5 #define __KVRANGEYANEZ_H
6 
7 #include "KVIonRangeTable.h"
8 #include "KVHashList.h"
9 
11 
25 class KVRangeYanez : public KVIonRangeTable {
27  void CheckMaterialsList() const;
31  void SaveMaterial(KVIonRangeTableMaterial* mat) const;
32 
33 public:
34 
35  KVRangeYanez();
36  KVRangeYanez(const KVRangeYanez&) ;
37  ROOT_COPY_ASSIGN_OP(KVRangeYanez)
38  virtual ~KVRangeYanez() {}
39  void Copy(TObject&) const;
40 
43  const Char_t* name, const Char_t* symbol,
44  Int_t nelem, Int_t* z, Int_t* a, Int_t* natoms, Double_t density = -1.0) const;
46  const Char_t* name, const Char_t* symbol,
47  Int_t nelem, Int_t* z, Int_t* a, Int_t* natoms, Double_t* weight, Double_t density = -1.0) const;
49  void Print(Option_t* = "") const;
52  {
53  return kTRUE;
54  }
55  Bool_t ReadMaterials(const Char_t* filename) const;
56 
57  ClassDef(KVRangeYanez, 1) //Interface to Range dE/dx and range library (Ricardo Yanez)
58 };
59 
60 #endif
int Int_t
char Char_t
bool Bool_t
double Double_t
const Bool_t kTRUE
const char Option_t
#define ClassDef(name, id)
Extended version of ROOT THashList.
Definition: KVHashList.h:28
Material for use in energy loss & range calculations.
Abstract base class for calculation of range & energy loss of charged particles in matter.
Description of absorber for the Range dE/dx and range library.
Interface to Range dE/dx and range library.
Definition: KVRangeYanez.h:25
virtual KVIonRangeTableMaterial * AddMixedMaterial(const Char_t *name, const Char_t *symbol, Int_t nelem, Int_t *z, Int_t *a, Int_t *natoms, Double_t *weight, Double_t density=-1.0) const
Bool_t fDoNotSaveMaterials
Definition: KVRangeYanez.h:30
TString fLocalMaterialsDirectory
Definition: KVRangeYanez.h:29
static KVHashList * fMaterials
static list of all currently defined materials
Definition: KVRangeYanez.h:26
void SaveMaterial(KVIonRangeTableMaterial *mat) const
TObjArray * GetListOfMaterials()
KVIonRangeTableMaterial * GetMaterialWithNameOrType(const Char_t *material) const
void Print(Option_t *="") const
void Copy(TObject &) const
Make a copy of this object.
Bool_t ReadMaterials(const Char_t *filename) const
Read materials from file whose name is given.
virtual KVIonRangeTableMaterial * AddCompoundMaterial(const Char_t *name, const Char_t *symbol, Int_t nelem, Int_t *z, Int_t *a, Int_t *natoms, Double_t density=-1.0) const
KVIonRangeTableMaterial * MakeNaturallyOccuringElementMixture(Int_t z, Int_t &a) const
virtual KVIonRangeTableMaterial * AddElementalMaterial(Int_t z, Int_t a=0) const
void CheckMaterialsList() const
Bool_t CheckIon(Int_t, Int_t) const
Definition: KVRangeYanez.h:51