00066 :
00067
00068 from XmlDetDescGen.util import XmlFile, Comment
00069 from XmlDetDescGen.structure import DetElem,UserParameter
00070
00071 for adn in range(0,self.adcount):
00072 adn += 1
00073
00074 pmts = []
00075
00076 ipmt = 0
00077 for iring in range(0,8):
00078 iring += 1
00079
00080 for icol in range(0,24):
00081 icol += 1
00082 ipmt = ipmt+1
00083 pmtid = self.pmtid(siteid,adn,icol,iring)
00084 data = {
00085 'site':site,
00086 'siteid':siteid,
00087 'adnum':adn,
00088 'ringnum':iring,
00089 'columnnum':icol,
00090 'pmtid':pmtid
00091 }
00092
00093 de = DetElem('%(site)s-ad%(adnum)d-ring%(ringnum)d-column%(columnnum)d'%data,
00094 self.lvname,
00095 npath="pvAdPmtArray/pvAdPmtArrayRotated/pvAdPmtRingInCyl:%(ringnum)s/pvAdPmtInRing:%(columnnum)d/pvAdPmtUnit"%data,
00096 support="/dd/Structure/AD/%(site)s-oil%(adnum)d"%data)
00097
00098 de.refs = [UserParameter("PmtID","int",['0x%x'%pmtid],desc="Packed PMT ID")]
00099
00100 pmts.append(de)
00101 continue
00102 continue
00103
00104 iring = 0
00105 for icol in range(0,6):
00106 icol += 1
00107 ipmt = ipmt+1
00108 pmtid = self.pmtid(siteid,adn,icol,iring)
00109 data = {
00110 'site':site,
00111 'siteid':siteid,
00112 'adnum':adn,
00113 'ringnum':iring,
00114 'columnnum':icol,
00115 'pmtid':pmtid
00116 }
00117
00118 de = DetElem('%(site)s-ad%(adnum)d-ring%(ringnum)d-column%(columnnum)d'%data,
00119 self.lvname2,
00120 npath="pvAdPmtArray/pvAd2inPmt:%(columnnum)d"%data,
00121 support="/dd/Structure/AD/%(site)s-oil%(adnum)d"%data)
00122
00123 de.refs = [UserParameter("PmtID","int",['0x%x'%pmtid],desc="Packed PMT ID")]
00124
00125 pmts.append(de)
00126 continue
00127
00128 file = XmlFile()
00129 file.objects = pmts
00130 file.write(outdir+"/%s%d.xml"%(self.site,adn))
00131 continue
00132
if '__main__' == __name__: