18 |
|
self.name_ = "PyMsXML" |
19 |
|
self.majorVer = 0 |
20 |
|
self.minorVer = 5 |
21 |
< |
self.revVer = 0 |
21 |
> |
self.revVer = 1 |
22 |
|
def version(self): |
23 |
|
return "%d.%d.%d"%(self.majorVer,self.minorVer,self.revVer) |
24 |
|
def name(self): |
518 |
|
prevSpec = s |
519 |
|
|
520 |
|
outStr = "" |
521 |
< |
for m in xrange(0,msLevel): |
521 |
> |
for m in xrange(0,len(ancestors)+1): |
522 |
|
outStr += "</scan>\n" |
523 |
|
|
524 |
|
self.writeString(xmlFile,outStr) |
1083 |
|
# print >>sys.stderr, ">>",self.context |
1084 |
|
# sys.stderr.flush() |
1085 |
|
if self.context.endswith(':msRun'): |
1086 |
< |
self.md['startTime'] = float(attrs['startTime'][2:-1]) |
1087 |
< |
self.md['endTime'] = float(attrs['endTime'][2:-1]) |
1086 |
> |
if attrs.has_key('startTime'): |
1087 |
> |
self.md['startTime'] = float(attrs['startTime'][2:-1]) |
1088 |
> |
if attrs.has_key('endTime'): |
1089 |
> |
self.md['endTime'] = float(attrs['endTime'][2:-1]) |
1090 |
|
elif self.context.endswith(':parentFile'): |
1091 |
< |
self.md['fileName'] = unquote(attrs['fileName']) |
1092 |
< |
self.md['fileType'] = attrs['fileType'] |
1093 |
< |
self.md['fileSha1'] = attrs['fileSha1'] |
1091 |
> |
if not self.md.has_key('parentFile'): |
1092 |
> |
self.md['parentFile'] = [] |
1093 |
> |
self.md['parentFile'].append((unquote(attrs['fileName']),attrs['fileType'],attrs['fileSha1'])) |
1094 |
|
elif self.context.endswith(':instrument'): |
1095 |
|
self.md['msManufacturer'] = attrs['manufacturer'] |
1096 |
|
self.md['msModel'] = attrs['model'] |
1145 |
|
self.scannum = int(attrs['num']) |
1146 |
|
if attrs.has_key('retentionTime'): |
1147 |
|
self.rt = float(attrs['retentionTime'][2:-1]) |
1148 |
< |
self.endMz = float(attrs['endMz']) |
1149 |
< |
self.startMz = float(attrs['startMz']) |
1148 |
> |
if attrs.has_key('endMz'): |
1149 |
> |
self.endMz = float(attrs['endMz']) |
1150 |
> |
if attrs.has_key('startMz'): |
1151 |
> |
self.startMz = float(attrs['startMz']) |
1152 |
|
self.polarity = attrs.get('polarity',None) |
1153 |
|
for (k,v) in attrs.items(): |
1154 |
|
self.scanmd[k] = v |
1178 |
|
spec.byteswap() |
1179 |
|
d = {'msLevel':self.scanlevel} |
1180 |
|
# Optional ('scan.' and prefixformat spec. needed) |
1181 |
< |
d.update({ |
1182 |
< |
'scan.retentionTime:PT%fS':self.rt, |
1183 |
< |
'scan.startMz:%f':self.startMz, |
1184 |
< |
'scan.endMz:%f':self.endMz |
1185 |
< |
}) |
1181 |
> |
if hasattr(self,'rt'): |
1182 |
> |
d.update({'scan.retentionTime:PT%fS':self.rt}) |
1183 |
> |
if hasattr(self,'startMz'): |
1184 |
> |
d.update({'scan.startMz:%f':self.startMz}) |
1185 |
> |
if hasattr(self,'endMz'): |
1186 |
> |
d.update({'scan.endMz:%f':self.endMz}) |
1187 |
|
if self.polarity != None: |
1188 |
|
d.update({'scan.polarity:%s':self.polarity}) |
1189 |
|
if self.scanlevel == 2: |
1279 |
|
|
1280 |
|
def getMsRunMetaData(self): |
1281 |
|
self.open() |
1282 |
< |
d = {'startTime:PT%fS':self.md['startTime'], |
1283 |
< |
'endTime:PT%fS':self.md['endTime'] |
1284 |
< |
} |
1282 |
> |
d = {} |
1283 |
> |
if self.md.has_key('startTime'): |
1284 |
> |
d.update({'startTime:PT%fS':self.md['startTime']}) |
1285 |
> |
if self.md.has_key('endTime'): |
1286 |
> |
d.update({'endTime:PT%fS':self.md['endTime']}) |
1287 |
|
return d |
1288 |
|
|
1289 |
|
def getFilenames(self): |
1290 |
< |
return [ (self.md['fileName'],self.md['fileType'],self.md['fileSha1']) ] |
1290 |
> |
return self.md['parentFile'] |
1291 |
> |
|
1292 |
> |
def msInstrumentID(self): |
1293 |
> |
return "1" |
1294 |
> |
|
1295 |
> |
def peakDetect(self,level): |
1296 |
> |
return False |
1297 |
|
|
1298 |
|
def msManufacturer(self): |
1299 |
|
return self.md.get('msManufacturer','') |