Skip to content

Commit c4b5018

Browse files
committed
No MS data for MGF and Parquet
1 parent f95e92c commit c4b5018

File tree

2 files changed

+19
-5
lines changed

2 files changed

+19
-5
lines changed

Writer/MgfSpectrumWriter.cs

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,17 +38,23 @@ public MgfSpectrumWriter(ParseInput parseInput) : base(parseInput)
3838
/// <inheritdoc />
3939
public override void Write(IRawDataPlus rawFile, int firstScanNumber, int lastScanNumber)
4040
{
41+
if (!rawFile.HasMsData)
42+
{
43+
throw new RawFileParserException("No MS data in RAW file, no output will be produced");
44+
}
45+
4146
ConfigureWriter(".mgf");
4247
using (Writer)
4348
{
49+
4450
Log.Info("Processing " + (lastScanNumber - firstScanNumber + 1) + " scans");
4551

4652
var lastScanProgress = 0;
4753
for (var scanNumber = firstScanNumber; scanNumber <= lastScanNumber; scanNumber++)
4854
{
4955
if (ParseInput.LogFormat == LogFormat.DEFAULT)
5056
{
51-
var scanProgress = (int) ((double) scanNumber / (lastScanNumber - firstScanNumber + 1) * 100);
57+
var scanProgress = (int)((double)scanNumber / (lastScanNumber - firstScanNumber + 1) * 100);
5258
if (scanProgress % ProgressPercentageStep == 0)
5359
{
5460
if (scanProgress != lastScanProgress)
@@ -160,12 +166,12 @@ public override void Write(IRawDataPlus rawFile, int firstScanNumber, int lastSc
160166
Writer.WriteLine("BEGIN IONS");
161167
if (!ParseInput.MgfPrecursor)
162168
{
163-
Writer.WriteLine($"TITLE={ConstructSpectrumTitle((int) Device.MS, 1, scanNumber)}");
169+
Writer.WriteLine($"TITLE={ConstructSpectrumTitle((int)Device.MS, 1, scanNumber)}");
164170
}
165171
else
166172
{
167173
Writer.WriteLine(
168-
$"TITLE={ConstructSpectrumTitle((int) Device.MS, 1, scanNumber)} [PRECURSOR={precursorReference}]");
174+
$"TITLE={ConstructSpectrumTitle((int)Device.MS, 1, scanNumber)} [PRECURSOR={precursorReference}]");
169175
}
170176

171177
Writer.WriteLine($"SCANS={scanNumber}");
@@ -250,6 +256,7 @@ public override void Write(IRawDataPlus rawFile, int firstScanNumber, int lastSc
250256
{
251257
Console.WriteLine();
252258
}
259+
253260
}
254261
}
255262
}

Writer/ParquetSpectrumWriter.cs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,15 @@ public ParquetSpectrumWriter(ParseInput parseInput) : base(parseInput)
3535
public override void Write(IRawDataPlus rawFile, int firstScanNumber, int lastScanNumber)
3636
{
3737
_rawFile = rawFile;
38-
List<PScan> pScans = new List<PScan>();
39-
WritePScans(ParseInput.OutputDirectory, rawFile.FileName, rawFile, pScans);
38+
if (rawFile.HasMsData)
39+
{
40+
List<PScan> pScans = new List<PScan>();
41+
WritePScans(ParseInput.OutputDirectory, rawFile.FileName, rawFile, pScans);
42+
}
43+
else
44+
{
45+
throw new RawFileParserException("No MS data in RAW file, no output will be produced");
46+
}
4047
}
4148

4249
private static void WritePScans(string outputDirectory, string fileName,

0 commit comments

Comments
 (0)