#ifndef HGEOMMEDIUM_H
#define HGEOMMEDIUM_H
using namespace std;
#include "TNamed.h"
#include <fstream>
#include <iomanip>
class HGeomMedium : public TNamed {
Int_t medId;
Int_t autoflag;
Int_t nComponents;
Int_t weightFac;
Double_t* ca;
Double_t* cz;
Double_t* cw;
Double_t density;
Double_t radLen;
Int_t sensFlag;
Int_t fldFlag;
Double_t fld;
Double_t epsil;
Double_t madfld;
Double_t maxstep;
Double_t maxde;
Double_t minstep;
Int_t npckov;
Double_t* ppckov;
Double_t* absco;
Double_t* effic;
Double_t* rindex;
public:
HGeomMedium(const Char_t* name="");
~HGeomMedium();
void setMediumIndex(Int_t i) {medId=i;}
Int_t getMediumIndex() {return medId;}
void setAutoFlag(Int_t i) {autoflag=i;}
Int_t getAutoFlag() {return autoflag;}
void setNComponents(Int_t);
Int_t getNComponents() {return nComponents;}
Bool_t setComponent(Int_t,Double_t,Double_t,Double_t w=1.);
void getComponent(Int_t,Double_t*);
Int_t getWeightFac() {return weightFac;}
void setDensity(Double_t d) {density=d;}
Double_t getDensity() {return density;}
void setRadiationLength(Double_t l) {radLen=l;}
Double_t getRadiationLength() {return radLen;}
void setNpckov(Int_t);
Int_t getNpckov() {return npckov;}
Bool_t setCerenkovPar(Int_t,Double_t,Double_t,Double_t,Double_t);
void getCerenkovPar(Int_t,Double_t*);
void setMediumPar(Int_t,Int_t,Double_t,Double_t,Double_t maxDeviation=0.,
Double_t maxStep=0.,Double_t maxDE=0.,
Double_t minStepDouble_t=0.);
void getMediumPar(Double_t*);
inline Bool_t isSensitive();
Int_t getSensitivityFlag() { return sensFlag;}
Int_t getFieldFlag() {return fldFlag;}
Double_t getField() {return fld;}
Double_t getEpsil() {return epsil;}
void read(fstream&, Int_t autoflag );
void print();
void write (fstream&);
Bool_t calcRadiationLength();
private:
ClassDef(HGeomMedium,0)
};
inline Bool_t HGeomMedium::isSensitive() {
if (sensFlag) return kTRUE;
else return kFALSE;
}
#endif /* !HGEOMMEDIUM_H */
Last change: Sat May 22 12:56:25 2010
Last generated: 2010-05-22 12:56
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.