#ifndef PAM_VMC_MAT_H #define PAM_VMC_MAT_H #include "TObject.h" struct PamVMCElem : public TObject { Int_t fz; Double_t fa, fprc; PamVMCElem():fz(0),fa(0.),fprc(0.) {}; PamVMCElem(Int_t z, Double_t a, Double_t prc): fz(z), fa(a), fprc(prc){}; }; struct PamVMCMat : public TObject { Int_t fid; Double_t fa, fz, frho; PamVMCMat():fa(0.),fz(0.),frho(0.) {}; PamVMCMat(Int_t id, Double_t a, Double_t z, Double_t rho): fid(id),fa(a),fz(z),frho(rho){}; }; struct PamVMCMix : public PamVMCMat{ Int_t fnum; //number of elements TObjArray felements; //array of of elements void AddElement(Int_t z, Double_t a, Double_t prc){ felements.Add(new PamVMCElem(z,a,prc)); } }; struct PamVMCMed : public TObject { Int_t fnumed, fimat, fisvol, fifield; Double_t ffieldm, ftmaxfd, fstemax, fdeemax, fepsil, fstmin; PamVMCMed():fnumed(0),fimat(0),fisvol(0),fifield(0),ffieldm(0.), ftmaxfd(0.),fstemax(0.),fdeemax(0.), fepsil(0.), fstmin(0.){}; PamVMCMed(Int_t numed, Int_t imat, Int_t isvol, Int_t ifield, Double_t fieldm, Double_t tmaxfd, Double_t stemax, Double_t deemax, Double_t epsil, Double_t stmin): fnumed(numed), fimat(imat), fisvol(isvol), fifield(ifield), ffieldm(fieldm), ftmaxfd(tmaxfd), fstemax(stemax), fdeemax(deemax), fepsil(epsil), fstmin(stmin){}; }; #endif //PAM_VMC_MAT