|
From: <en...@us...> - 2025-12-08 19:41:25
|
Revision: 9470
http://sourceforge.net/p/sashimi/code/9470
Author: eng_jk
Date: 2025-12-08 19:41:23 +0000 (Mon, 08 Dec 2025)
Log Message:
-----------
Correct parsing of MS1 peaks for mzML files with ion mobility dimension.
Modified Paths:
--------------
trunk/trans_proteomic_pipeline/src/Visualization/Comet/plot-msms/plot-msms-js.cpp
Modified: trunk/trans_proteomic_pipeline/src/Visualization/Comet/plot-msms/plot-msms-js.cpp
===================================================================
--- trunk/trans_proteomic_pipeline/src/Visualization/Comet/plot-msms/plot-msms-js.cpp 2025-04-30 00:57:04 UTC (rev 9469)
+++ trunk/trans_proteomic_pipeline/src/Visualization/Comet/plot-msms/plot-msms-js.cpp 2025-12-08 19:41:23 UTC (rev 9470)
@@ -1556,7 +1556,7 @@
}
if (scanHeaderMS.msLevel == (scanHeader.msLevel - 1))
- {
+ {
RAMPREAL *pPeaks;
int n = 0;
int bFirstDataPoint=1;
@@ -1565,19 +1565,23 @@
double dLowMass = scanHeader.precursorMZ - 0.25;
double dHighMass = scanHeader.precursorMZ + 0.25;
+ RAMPREAL fMass;
+ RAMPREAL fInten;
+ RAMPREAL fIonMob;
+
// Open a scan
pPeaks = readPeaks(fp_, index_[iScanNum]);
printf("\nms1peaks = [");
while (pPeaks != NULL && pPeaks[n] != -1)
- {
- RAMPREAL fMass;
- RAMPREAL fInten;
-
- fMass = pPeaks[n];
+ {
+ fMass = pPeaks[n];
n++;
fInten = pPeaks[n];
n++;
+ if ((fp_->fileType == 3 || fp_->fileType == 1) && fp_->mzML->getIonMobility())
+ fIonMob=pPeaks[n++];
+
if (fInten > 0.0)
{
if (dLowMass<fMass && fMass<dHighMass)
@@ -1602,10 +1606,10 @@
printf("\nms1scanLabel = \"%d, RT %0.2f\";\n", iScanNum, scanHeaderMS.retentionTime);
pEnvironment.iMS1Scan = iScanNum;
- }
+ }
else
{
- printf("\nms1scanLabel = \" %d is not a valid precursor scan!\";\n",iScanNum);
+ printf("\nms1scanLabel = \" %d is not a valid precursor scan!\";\n",iScanNum);
printf("ms1peaks= [[0.0,0.0]];\n");
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|