#include "hgeouser.h" int HGeoUser::readDet(HGeoInfo & geoInfo, HGeoMedia & geoMedia) { for(int i=1;i<=numModules;i++) { changeName(detName,1,i); changeName(eleName,1,i); noOfKeepIn[i]=readModule(geoInfo,geoMedia); } if (length()>0) return HSUCCESS; else return HFAILURE; } int HGeoUser::readDet(HGeoInfo & geoInfo) { for(int i=1;i<=numModules;i++) { changeName(detName,1,i); changeName(eleName,1,i); noOfKeepIn[i]=readModule(geoInfo); geoInfo.fin.seekg(0, ios::beg); geoInfo.fin.clear(); } if (length()>0) return HSUCCESS; return HFAILURE; } int HGeoUser::createDet(HGeoInfo & geoInfo, HGeoMedia & geoMedia){ for(int i=1;i<=numModules;i++) { reset(); changeName(detName,1,i); changeName(eleName,1,i); if(noOfKeepIn[i]>0) createModule(geoInfo,geoMedia); } return HSUCCESS; } void HGeoUser::changeName(HString & name, int firstPos, int no) { int j=(int)no/10; HString s1no=j; HString s2no=no-j*10; name.replace(firstPos,s1no); name.replace(++firstPos,s2no); return; }