Skip to content

Commit a29ac4c

Browse files
ZSPACE-12467 Solve code review issues.
1 parent cfa25a2 commit a29ac4c

File tree

1 file changed

+66
-22
lines changed

1 file changed

+66
-22
lines changed

Writer/MzMlSpectrumWriter.cs

Lines changed: 66 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -141,29 +141,32 @@ public override void Write(IRawDataPlus rawFile, int firstScanNumber, int lastSc
141141
// fileContent
142142
_writer.WriteStartElement("fileContent");
143143
// MS1
144-
SerializeCvParam(new CVParamType
144+
if (rawFile.SelectMsData())
145145
{
146-
accession = "MS:1000579",
147-
name = "MS1 spectrum",
148-
cvRef = "MS",
149-
value = ""
150-
});
151-
// MSn
152-
SerializeCvParam(new CVParamType
153-
{
154-
accession = "MS:1000580",
155-
name = "MSn spectrum",
156-
cvRef = "MS",
157-
value = ""
158-
});
159-
// Ion current chromatogram
160-
SerializeCvParam(new CVParamType
161-
{
162-
accession = "MS:1000810",
163-
name = "ion current chromatogram",
164-
cvRef = "MS",
165-
value = ""
166-
});
146+
SerializeCvParam(new CVParamType
147+
{
148+
accession = "MS:1000579",
149+
name = "MS1 spectrum",
150+
cvRef = "MS",
151+
value = ""
152+
});
153+
// MSn
154+
SerializeCvParam(new CVParamType
155+
{
156+
accession = "MS:1000580",
157+
name = "MSn spectrum",
158+
cvRef = "MS",
159+
value = ""
160+
});
161+
// Ion current chromatogram
162+
SerializeCvParam(new CVParamType
163+
{
164+
accession = "MS:1000810",
165+
name = "ion current chromatogram",
166+
cvRef = "MS",
167+
value = ""
168+
});
169+
}
167170

168171
// Other detector data
169172
if (ParseInput.AllDetectors)
@@ -1032,6 +1035,47 @@ private List<ChromatogramType> ConstructChromatograms()
10321035
}
10331036
}
10341037
}
1038+
1039+
for (int nrI = 1; nrI < _rawFile.GetInstrumentCountOfType(Device.MSAnalog) + 1; nrI++)
1040+
{
1041+
_rawFile.SelectInstrument(Device.MSAnalog, nrI);
1042+
1043+
var instData = _rawFile.GetInstrumentData();
1044+
1045+
for (int channel = 0; channel < instData.ChannelLabels.Length; channel++)
1046+
{
1047+
var channelName = instData.ChannelLabels[channel];
1048+
1049+
var settings = new ChromatogramTraceSettings(TraceType.StartAnalogChromatogramTraces + channel +
1050+
1);
1051+
1052+
var data = _rawFile.GetChromatogramData(new IChromatogramSettings[] { settings }, -1, -1);
1053+
1054+
var trace = ChromatogramSignal.FromChromatogramData(data);
1055+
1056+
for (var i = 0; i < trace.Length; i++)
1057+
{
1058+
// CV Data for Chromatogram
1059+
var chroType = new CVParamType
1060+
{
1061+
name = channelName + " chromatogram",
1062+
value = ""
1063+
};
1064+
1065+
var intensType = new CVParamType
1066+
{
1067+
name = channelName + " array",
1068+
value = instData.Units.ToString(),
1069+
};
1070+
1071+
var chromatogram = TraceToChromatogram(trace[i],
1072+
String.Format("AD#{0}_{1}_{2}", nrI, channelName, i),
1073+
chroType, intensType);
1074+
1075+
chromatograms.Add(chromatogram);
1076+
}
1077+
}
1078+
}
10351079
}
10361080

10371081
return chromatograms;

0 commit comments

Comments
 (0)