// ///////////////////////////////////////////////////////////// // // PndTpcDigiPar // // // // Container class for Digitisation parameters // // class is inherited from FairParGenericSet // // // ///////////////////////////////////////////////////////////// #include "PndTpcDigiPar.h" #include #include #include #include "TSystem.h" #include "PndTpcGas.h" #include "PndTpcGem.h" #include "PndTpcPadShapePool.h" #include "PndTpcPadPlane.h" #include "PndTpcFrontend.h" ClassImp(PndTpcDigiPar) PndTpcDigiPar::PndTpcDigiPar(const char* name,const char* title, const char* context) : FairParGenericSet(name,title,context), fgas(NULL), fgem(NULL), fpadplane(NULL), ffrontend(NULL), fpadshapepool(NULL) { clear(); } PndTpcDigiPar::~PndTpcDigiPar() { if(fgas!=NULL)delete fgas; if(fgem!=NULL)delete fgem; if(fpadplane!=NULL)delete fpadplane; if(fpadshapepool!=NULL)delete fpadshapepool; if(ffrontend!=NULL)delete ffrontend; } void PndTpcDigiPar::putParams(FairParamList* list) { if(!list) return; list->add("PndTpcGasFile",ftpcGasFile); list->add("EField",fEField); list->add("AttachFlag",fattach); list->add("LogitudinaldiffusionFlag",fdiffuseL); list->add("TransversediffusionFlag",fdiffuseT); list->add("DriftDistortionFlag",fdistort); list->add("zGem",fzGem); list->add("zMax",fzMax); list->add("Gain",fgain); list->add("Supression", fsupression); list->add("Spread",fspread); list->add("MinSignalAmp",fminSignalAmp); list->add("rMin",frmin); list->add("rMax",frmax); list->add("PadPlaneFile",fpadPlaneFile); list->add("PadShapeFile",fpadShapes); list->add("PadShapeRange",fshaperange); list->add("PadShapeStep",fshapestep); list->add("PadShapeIntStep",fintstep); list->add("ADCThreshold",fadcthres); list->add("ADCMax",fadcmax); list->add("ADCBits",fadcbits); list->add("SamplingFreq",fsamplefreq); list->add("T0_wallclock",ft0); list->add("TimeBits",ftimebits); list->add("PSAThreshold",fpsathres); list->add("Shaper_tDiff",ftdiff); list->add("Shaper_tInt",ftint); list->add("Shaper_tSig",ftsig); list->add("TOTPSA",fpsa); list->add("GAUSSIANNOISE",fgaussianNoise); list->add("GAUSSIANNOISEAMP",fgaussianNoiseAmp); list->add("Rate",frate); } Bool_t PndTpcDigiPar::getParams(FairParamList* list) { if (!list) {std::cout<<"list not found"<fill("EField",&fEField)) {std::cout<<"par: EField not found"<fill("PndTpcGasFile",&ftpcGasFile)) {std::cout<<"par: PndTpcGasFile not found"<fill("AttachFlag",&fattach)) {std::cout<<"par: AttachFlag not found"<fill("LogitudinaldiffusionFlag",&fdiffuseL)) {std::cout<<"par: LogitudinaldiffusionFlag not found"<fill("TransversediffusionFlag",&fdiffuseT)) {std::cout<<"par: TransversediffusionFlag not found"<fill("DriftDistortionFlag",&fdistort)) {std::cout<<"par: DriftDistortionFlag not found"<fill("zGem",&fzGem)) {std::cout<<"par: zGem not found"<fill("zMax",&fzMax)) {std::cout<<"par: zMax not found"<fill("Gain",&fgain)) {std::cout<<"par: Gain not found"<fill("Supression",&fsupression)) {std::cout<<"par: Supression not found"<fill("Spread",&fspread)) {std::cout<<"par: Spread not found"<fill("MinSignalAmp",&fminSignalAmp)) {std::cout<<"par: MinSignalAmp not found"<fill("rMin",&frmin)) {std::cout<<"par: rMin not found"<fill("rMax",&frmax)) {std::cout<<"par: rMax not found"<fill("PadPlaneFile",&fpadPlaneFile)) {std::cout<<"par: PadPlaneFile not found"<fill("PadShapeFile",&fpadShapes)) {std::cout<<"par: PadShapeFile not found"<fill("PadShapeRange",&fshaperange)) {std::cout<<"par: PadShapeRange not found"<fill("PadShapeStep",&fshapestep)) {std::cout<<"par: PadShapeStep not found"<fill("PadShapeIntStep",&fintstep)) {std::cout<<"par: PadShapeIntStep not found"<fill("ADCThreshold",&fadcthres)) {std::cout<<"par: ADCThreshold not found"<fill("ADCMax",&fadcmax)) {std::cout<<"par: ADCMax not found"<fill("ADCBits",&fadcbits)) {std::cout<<"par: ADCBits not found"<fill("SamplingFreq",&fsamplefreq)) {std::cout<<"par: SamplingFreq not found"<fill("T0_wallclock",&ft0)) {std::cout<<"par: T0_wallclock not found"<fill("TimeBits",&ftimebits)) {std::cout<<"par: TimeBits not found"<fill("PSAThreshold",&fpsathres)) {std::cout<<"par: PSAThreshold not found"<fill("Shaper_tDiff",&ftdiff)) {std::cout<<"par: Shaper_tDiff not found"<fill("Shaper_tInt",&ftint)) {std::cout<<"par: Shaper_tInt not found"<fill("Shaper_tSig",&ftsig)) {std::cout<<"par: Shaper_tSig not found"<fill("TOTPSA",&fpsa)) {std::cout<<"par: TOTPSA not found"<fill("GAUSSIANNOISE",&fgaussianNoise)) {std::cout<<"par: GAUSSIANNOISE not found"<fill("GAUSSIANNOISEAMP",&fgaussianNoiseAmp)) {std::cout<<"par: GAUSSIANNOISEAMP not found"<fill("Rate",&frate)) {std::cout<<"par: Rate not found"<Getenv("VMCWORKDIR"); TString parFile = sysFile+"/tpc/tpc.files.par"; infile.open(parFile.Data()); // infile.open("tpc/tpc.files.par"); if(!infile){ std::cout<<"File " << parFile.Data() << " not found!"<