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
00081 ladn = 1
00082 for icol in range(0, 3):
00083 icol += 1
00084 ipmt = ipmt+1
00085 coln = (ladn - 1)*3 + icol
00086 pmtid = self.pmtid(siteid,adn,coln,iring)
00087 data = {
00088 'site':site,
00089 'siteid':siteid,
00090 'adnum':adn,
00091 'ladnum':ladn,
00092 'ringnum':iring,
00093 'columnnum':icol,
00094 'glbcoln':coln,
00095 'pmtid':pmtid
00096 }
00097
00098 de = DetElem('%(site)s-ad%(adnum)d-ring%(ringnum)d-column%(glbcoln)d'%data,
00099 self.lvname,
00100 npath="pvAdPmtArray/pvAdPmtLadder1/pvAdPmtLadderArrayRotated/pvAdPmtLadderArrayRow:%(ringnum)s/pvAdPmtInCol:%(columnnum)d/pvAdPmtUnit"%data,
00101 support="/dd/Structure/AD/%(site)s-oil%(adnum)d"%data)
00102
00103 de.refs = [UserParameter("PmtID","int",['0x%x'%pmtid],desc="Packed PMT ID")]
00104
00105 pmts.append(de)
00106 continue
00107
00108
00109 ladn = 7
00110 for icol in range(0, 3):
00111 icol += 1
00112 ipmt = ipmt+1
00113 coln = (ladn - 1)*3 + icol
00114 pmtid = self.pmtid(siteid,adn,coln,iring)
00115 data = {
00116 'site':site,
00117 'siteid':siteid,
00118 'adnum':adn,
00119 'ladnum':ladn,
00120 'ringnum':iring,
00121 'columnnum':icol,
00122 'glbcoln':coln,
00123 'pmtid':pmtid
00124 }
00125
00126 de = DetElem('%(site)s-ad%(adnum)d-ring%(ringnum)d-column%(glbcoln)d'%data,
00127 self.lvname,
00128 npath="pvAdPmtArray/pvAdPmtLadder7/pvAdPmtLadderArrayRotated/pvAdPmtLadderArrayRow:%(ringnum)s/pvAdPmtInCol:%(columnnum)d/pvAdPmtUnit"%data,
00129 support="/dd/Structure/AD/%(site)s-oil%(adnum)d"%data)
00130
00131 de.refs = [UserParameter("PmtID","int",['0x%x'%pmtid],desc="Packed PMT ID")]
00132
00133 pmts.append(de)
00134 continue
00135
00136 continue
00137
00138 iring = 0
00139 for icol in range(0,6):
00140 icol += 1
00141 ipmt = ipmt+1
00142 pmtid = self.pmtid(siteid,adn,icol,iring)
00143 data = {
00144 'site':site,
00145 'siteid':siteid,
00146 'adnum':adn,
00147 'ringnum':iring,
00148 'columnnum':icol,
00149 'pmtid':pmtid
00150 }
00151
00152 de = DetElem('%(site)s-ad%(adnum)d-ring%(ringnum)d-column%(columnnum)d'%data,
00153 self.lvname2,
00154 npath="pvAdCalibrationPmtArray/pvAd2inPmt:%(columnnum)d"%data,
00155 support="/dd/Structure/AD/%(site)s-oil%(adnum)d"%data)
00156
00157 de.refs = [UserParameter("PmtID","int",['0x%x'%pmtid],desc="Packed PMT ID")]
00158
00159 pmts.append(de)
00160 continue
00161
00162 file = XmlFile()
00163 file.objects = pmts
00164 file.write(outdir+"/%s%d.xml"%(self.site,adn))
00165 continue
00166
if '__main__' == __name__: