Matrix Science Mascot Parser toolkit
 
Loading...
Searching...
No Matches
resfile_input.cpp

Example program for retrieving input spectrum data.

/*
##############################################################################
# file: resfile_input.cpp #
# 'msparser' toolkit example code #
##############################################################################
# COPYRIGHT NOTICE #
# Copyright 1998-2005 Matrix Science Limited All Rights Reserved. #
# #
##############################################################################
# $Source: parser/examples/test_cxx/resfile_input.cpp $ #
# $Author: robertog@matrixscience.com $ #
# $Date: 2024-09-04 10:23:46 +0100 $ #
# $Revision: 526921a73137894bb1eae0b0fc8ccb4bb52ea662 | MSPARSER_REL_3_0_0-2024-09-24-0-g93ebaeb4f4 $ #
# $NoKeywords:: $ #
##############################################################################
*/
#include "msparser.hpp"
#include <iostream>
#include <vector>
// All the classes are part of the matrix_science namespace
using namespace matrix_science;
/*****************************************************************************/
/* Local functions */
/* (This test harness is 'C' and not C++) */
/*****************************************************************************/
static void inputData(ms_mascotresfilebase & file);
/*****************************************************************************/
/* main */
/* Call this program with a single argument - the name of the .dat file */
/*****************************************************************************/
int main(int argc, char * argv[])
{
if (argc == 2)
{
ms_mascotresfilebase file = ms_mascotresfilebase::createResfileBase(argv[1]);
if (file.isValid())
{
inputData(file);
}
else
std::cout << "Error: " << file.getLastErrorString() << std::endl;
}
else
std::cout << "Must supply the name of a .dat file as a command line argument" << std::endl;
return 0;
}
/*****************************************************************************/
/* inputData */
/* Display input data */
/*****************************************************************************/
static void inputData(ms_mascotresfilebase & file)
{
//display input data via inputquery get functions
for (int i = 1; i <= 1 /* file.getNumQueries()*/; i++)
{
std::cout << "Input data for query number " << i << std::endl;
std::cout << "=========================================" << std::endl;
ms_inputquery q(file, i);
std::cout << " title : " << q.getStringTitle(1).c_str()<< std::endl;
std::cout << " mass_min : " << q.getMassMin() << std::endl;
std::cout << " mass_max : " << q.getMassMax() << std::endl;
std::cout << " int_min : " << q.getIntMin() << std::endl;
std::cout << " int_max : " << q.getIntMax() << std::endl;
std::cout << " num_vals : " << q.getNumVals() << std::endl;
std::cout << " num_used1 : " << q.getNumUsed() << std::endl;
std::cout << " ions1 : " << q.getStringIons1().c_str() << std::endl;
std::cout << " ions2 : " << q.getStringIons2().c_str() << std::endl;
std::cout << " ions3 : " << q.getStringIons3().c_str() << std::endl;
std::cout << " peptol : " << q.getPepTol() << std::endl;
std::cout << " peptol units: " << q.getPepTolUnits().c_str() << std::endl;
std::cout << " peptol str : " << q.getPepTolString().c_str()<< std::endl;
std::cout << " INSTRUMENT : " << q.getINSTRUMENT().c_str() << std::endl;
std::cout << " RULES : " << q.getRULES().c_str() << std::endl;
std::cout << " IT_MODS : " << q.getIT_MODS().c_str() << std::endl;
std::cout << " repeat srch : " << file.getRepeatSearchString(i).c_str() << std::endl;
std::vector< std::pair< double, double > > tmp = q.getPeakList(1);
for (unsigned int j=0; j < tmp.size(); j++)
{
std::cout << tmp[j].first << ", " << tmp[j].second << std::endl;
}
}
std::cout << std::endl;
}
/*
will give the output:
Input data for query number 1
=========================================
title : dp210198c 21 Jan 98 DERIVED SPECTRUM P9
mass_min : 214.8
mass_max : 1228.7
int_min : 7
int_max : 114465
num_vals : 443
num_used1 : 0
ions1 : 288.200000:2137,371.127841:1663,472.096295:2.939e+04,567.000000:5.469e+04,663.100000:1.145e+05,758
.200000:7.356e+04,871.200000:2.539e+04,956.100000:2241,1055.000000:1.227e+04,1167.994665:1.725e+04,1215.400000:257,314.2
00000:1308,377.992647:1088,501.400000:1.043e+04,584.997427:3.906e+04,654.180103:3.006e+04,759.300000:1.557e+04,841.90000
0:1.917e+04,972.292156:1874,1056.300000:3799,1169.100000:1.123e+04,1225.200000:58,242.800000:417,377.000000:828,454.1000
00:5162,586.200000:5258,662.700000:1.83e+04,728.800000:1397,842.900000:4893,956.800000:443,1029.300000:1846,1170.200000:
1280,1216.200000:51,313.900000:187,387.200000:656,473.200000:1342,568.100000:5122,663.600000:9782,729.200000:626,872.300
000:4300,973.515686:255,1100.300000:1290,1198.200000:117,1217.500000:45,243.200000:159,379.100000:231,502.400000:556,599
.100000:1504,655.000000:1672,814.100000:277,841.200000:215,958.138974:195,1056.000000:492,1196.900000:96,1226.400000:38,
286.100000:83,408.200000:187,428.200000:283,614.400000:1403,710.900000:1144,730.000000:214,843.600000:194,1011.400000:78
,1057.200000:416,1198.900000:80,1227.000000:20,289.000000:60,353.300000:136,500.700000:143,551.300000:800,665.994513:565
,757.300000:182,873.300000:166,955.000000:51,1101.262914:302,1197.600000:53,1228.700000:19,253.900000:44,394.000000:115,
426.400000:75,566.263208:424,665.300000:563,801.800000:171,827.400000:165,1002.100000:46,1030.500000:193,1168.500000:42,
290.200000:25,388.100000:63,444.100000:75,542.000000:399,664.600000:388,760.000000:160,825.200000:76,937.900000:38,1082.
400000:126,1170.500000:40,287.100000:23,342.800000:48,454.900000:64,614.100000:373,644.000000:290,769.300000:111,902.100
000:67,917.300000:37,1029.800000:125,1149.800000:38,214.800000:18,242.100000:19,252.100000:20,315.200000:44,325.800000:1
7,333.100000:21,347.500000:19,348.700000:13,349.500000:23,352.600000:47,359.100000:28,366.000000:36,367.900000:7,376.100
000:14,380.100000:46,407.300000:11,410.900000:22,412.400000:31,418.000000:17,429.900000:57,431.000000:15,436.400000:11,4
44.900000:27,447.200000:18,453.200000:11,455.500000:33,456.100000:14,459.900000:15,461.600000:19,463.300000:7,465.600000
:22,470.400000:12,470.900000:51,474.200000:44,477.100000:15,477.900000:32,483.900000:37,486.200000:20,496.900000:11,497.
600000:14,499.100000:41,503.800000:24,505.400000:22,508.300000:12,508.900000:17,511.800000:19,513.000000:20,515.000000:1
8,517.000000:16,522.100000:58,523.900000:15,524.600000:78,525.300000:19,525.900000:370,526.700000:36,532.900000:11,533.5
00000:14,536.900000:19,538.200000:44,539.261607:224,540.200000:39,541.100000:133,543.043902:41,545.100000:9,545.600000:3
0,547.300000:23,547.900000:13,548.700000:340,549.600000:81,550.200000:41,551.700000:16,552.300000:69,555.500000:29,557.0
68975:361,558.300000:54,560.100000:7,561.100000:24,563.400000:39,564.100000:101,567.600000:35,568.900000:37,569.500000:1
4,570.000000:49,571.100000:45,572.300000:76,574.000000:99,574.600000:22,576.300000:18,580.800000:34,582.300000:41,587.10
0000:131,587.900000:53,590.300000:12,591.800000:17,592.500000:18,594.800000:9,595.300000:56,596.100000:97,596.600000:62,
597.100000:27,597.700000:63,600.000000:57,602.100000:28,603.900000:16,605.200000:69,606.800000:24,607.500000:13,608.5000
00:57,608.800000:12,610.200000:50,610.500000:12,611.200000:96,612.200000:24,613.200000:13,615.000000:194,615.600000:19,6
16.200000:23,618.400000:15,619.100000:31,621.100000:120,621.700000:36,622.600000:11,623.200000:43,624.100000:147,624.800
000:32,626.000000:22,627.000000:53,627.900000:21,628.900000:16,629.500000:29,630.500000:14,631.400000:45,633.200000:61,6
35.000000:58,635.736413:184,636.600000:29,637.500000:78,638.600000:14,639.800000:72,640.500000:51,641.100000:33,641.7000
00:40,642.400000:121,642.800000:170,643.300000:57,644.600000:48,645.700000:36,646.500000:39,647.400000:28,648.500000:30,
649.500000:108,650.000000:13,650.600000:43,651.800000:107,652.300000:33,652.900000:33,656.300000:178,657.100000:78,658.2
00000:19,658.800000:76,660.590741:108,661.900000:216,667.000000:193,677.300000:8,680.500000:13,683.500000:38,684.500000:
28,685.500000:24,686.200000:13,687.275862:87,688.200000:28,688.900000:28,689.400000:50,691.500000:28,692.700000:25,693.2
00000:15,694.000000:31,697.100000:8,698.300000:42,700.300000:17,700.900000:21,703.500000:39,704.200000:20,704.900000:14,
708.300000:15,709.000000:42,711.500000:90,711.800000:119,713.100000:35,715.200000:29,718.500000:57,719.900000:52,721.500
000:78,722.400000:29,725.400000:30,731.100000:13,731.800000:13,734.500000:36,735.300000:46,735.700000:28,738.600000:23,7
39.900000:20,740.500000:81,741.800000:64,744.700000:23,745.500000:18,747.400000:23,751.100000:21,751.900000:34,755.20000
0:13,756.200000:28,760.900000:21,762.800000:19,764.100000:19,767.600000:41,768.200000:75,771.200000:9,771.800000:10,773.
800000:10,776.100000:21,777.500000:39,783.400000:39,785.100000:26,786.800000:15,788.200000:23,789.300000:14,791.700000:2
1,792.600000:29,795.700000:53,796.200000:25,798.900000:13,799.400000:14,800.200000:12,800.700000:32,802.300000:25,802.80
0000:103,804.000000:26,805.200000:83,807.900000:15,808.700000:25,809.800000:36,810.900000:50,811.500000:85,812.100000:36
,813.400000:22,814.600000:78,815.100000:52,815.900000:25,817.300000:21,821.300000:30,822.000000:9,827.800000:33,828.9000
00:20,832.100000:13,834.800000:18,835.700000:25,836.600000:20,846.700000:8,851.100000:25,852.054545:66,853.200000:20,854
.400000:28,857.000000:21,857.800000:21,859.500000:14,861.100000:17,864.500000:20,867.800000:49,868.800000:47,869.100000:
19,869.700000:22,872.900000:22,877.100000:16,880.800000:20,885.000000:21,885.800000:12,886.300000:16,888.800000:11,890.5
00000:10,899.339024:41,907.800000:39,909.400000:8,911.200000:27,911.900000:9,925.900000:10,928.800000:30,930.700000:26,9
33.700000:9,935.700000:13,945.100000:20,948.900000:10,953.600000:14,960.500000:14,974.100000:36,994.000000:37,1003.30000
0:18,1010.200000:18,1010.800000:27,1012.100000:21,1014.000000:14,1020.100000:20,1021.000000:31,1028.900000:118,1031.0000
00:18,1031.600000:40,1033.100000:14,1037.900000:55,1041.100000:17,1045.300000:13,1054.000000:92,1057.700000:19,1061.9000
00:20,1069.100000:16,1083.600000:41,1093.400000:49,1098.500000:32,1099.800000:46,1102.500000:52,1103.200000:18,1104.5000
00:9,1125.400000:16,1131.800000:24,1132.400000:21,1139.800000:12,1150.800000:22,1152.900000:15,1157.600000:8,1165.300000
:14,1166.700000:11,1178.700000:25,1179.500000:23,1180.400000:25,1185.800000:12,1192.800000:18,1194.800000:12,1214.700000
:35
ions2 :
ions3 :
ions2 :
ions3 :
peptol : 0
peptol units:
peptol str :
repeat srch : 1341.784350 from(671.900000,2+) title(dp210198c%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20
%20%20%20%2021%2dJan%2d98%20DERIVED%20SPECTRUM%20%20%20%20%239) query(1)
371.128, 1663
472.096, 29390
567, 54690
663.1, 114500
758.2, 73560
871.2, 25390
956.1, 2241
1055, 12270
1167.99, 17250
1215.4, 257
314.2, 1308
377.993, 1088
501.4, 10430
584.997, 39060
654.18, 30060
759.3, 15570
841.9, 19170
972.292, 1874
1056.3, 3799
1169.1, 11230
1225.2, 58
242.8, 417
377, 828
454.1, 5162
586.2, 5258
662.7, 18300
728.8, 1397
842.9, 4893
956.8, 443
1029.3, 1846
1170.2, 1280
1216.2, 51
313.9, 187
387.2, 656
473.2, 1342
568.1, 5122
663.6, 9782
729.2, 626
872.3, 4300
973.516, 255
1100.3, 1290
1198.2, 117
1217.5, 45
243.2, 159
379.1, 231
502.4, 556
599.1, 1504
655, 1672
814.1, 277
841.2, 215
958.139, 195
1056, 492
1196.9, 96
1226.4, 38
286.1, 83
408.2, 187
428.2, 283
614.4, 1403
710.9, 1144
730, 214
843.6, 194
1011.4, 78
1057.2, 416
1198.9, 80
1227, 20
289, 60
353.3, 136
500.7, 143
551.3, 800
665.995, 565
757.3, 182
873.3, 166
955, 51
1101.26, 302
1197.6, 53
1228.7, 19
253.9, 44
394, 115
426.4, 75
566.263, 424
665.3, 563
801.8, 171
827.4, 165
1002.1, 46
1030.5, 193
1168.5, 42
290.2, 25
388.1, 63
444.1, 75
542, 399
664.6, 388
760, 160
825.2, 76
937.9, 38
1082.4, 126
1170.5, 40
287.1, 23
342.8, 48
454.9, 64
614.1, 373
644, 290
769.3, 111
902.1, 67
917.3, 37
1029.8, 125
1149.8, 38
214.8, 18
242.1, 19
252.1, 20
315.2, 44
325.8, 17
333.1, 21
347.5, 19
348.7, 13
349.5, 23
352.6, 47
359.1, 28
366, 36
367.9, 7
376.1, 14
380.1, 46
407.3, 11
410.9, 22
412.4, 31
418, 17
429.9, 57
431, 15
436.4, 11
444.9, 27
447.2, 18
453.2, 11
455.5, 33
456.1, 14
459.9, 15
461.6, 19
463.3, 7
465.6, 22
470.4, 12
470.9, 51
474.2, 44
477.1, 15
477.9, 32
483.9, 37
486.2, 20
496.9, 11
497.6, 14
499.1, 41
503.8, 24
505.4, 22
508.3, 12
508.9, 17
511.8, 19
513, 20
515, 18
517, 16
522.1, 58
523.9, 15
524.6, 78
525.3, 19
525.9, 370
526.7, 36
532.9, 11
533.5, 14
536.9, 19
538.2, 44
539.262, 224
540.2, 39
541.1, 133
543.044, 41
545.1, 9
545.6, 30
547.3, 23
547.9, 13
548.7, 340
549.6, 81
550.2, 41
551.7, 16
552.3, 69
555.5, 29
557.069, 361
558.3, 54
560.1, 7
561.1, 24
563.4, 39
564.1, 101
567.6, 35
568.9, 37
569.5, 14
570, 49
571.1, 45
572.3, 76
574, 99
574.6, 22
576.3, 18
580.8, 34
582.3, 41
587.1, 131
587.9, 53
590.3, 12
591.8, 17
592.5, 18
594.8, 9
595.3, 56
596.1, 97
596.6, 62
597.1, 27
597.7, 63
600, 57
602.1, 28
603.9, 16
605.2, 69
606.8, 24
607.5, 13
608.5, 57
608.8, 12
610.2, 50
610.5, 12
611.2, 96
612.2, 24
613.2, 13
615, 194
615.6, 19
616.2, 23
618.4, 15
619.1, 31
621.1, 120
621.7, 36
622.6, 11
623.2, 43
624.1, 147
624.8, 32
626, 22
627, 53
627.9, 21
628.9, 16
629.5, 29
630.5, 14
631.4, 45
633.2, 61
635, 58
635.736, 184
636.6, 29
637.5, 78
638.6, 14
639.8, 72
640.5, 51
641.1, 33
641.7, 40
642.4, 121
642.8, 170
643.3, 57
644.6, 48
645.7, 36
646.5, 39
647.4, 28
648.5, 30
649.5, 108
650, 13
650.6, 43
651.8, 107
652.3, 33
652.9, 33
656.3, 178
657.1, 78
658.2, 19
658.8, 76
660.591, 108
661.9, 216
667, 193
677.3, 8
680.5, 13
683.5, 38
684.5, 28
685.5, 24
686.2, 13
687.276, 87
688.2, 28
688.9, 28
689.4, 50
691.5, 28
692.7, 25
693.2, 15
694, 31
697.1, 8
698.3, 42
700.3, 17
700.9, 21
703.5, 39
704.2, 20
704.9, 14
708.3, 15
709, 42
711.5, 90
711.8, 119
713.1, 35
715.2, 29
718.5, 57
719.9, 52
721.5, 78
722.4, 29
725.4, 30
731.1, 13
731.8, 13
734.5, 36
735.3, 46
735.7, 28
738.6, 23
739.9, 20
740.5, 81
741.8, 64
744.7, 23
745.5, 18
747.4, 23
751.1, 21
751.9, 34
755.2, 13
756.2, 28
760.9, 21
762.8, 19
764.1, 19
767.6, 41
768.2, 75
771.2, 9
771.8, 10
773.8, 10
776.1, 21
777.5, 39
783.4, 39
785.1, 26
786.8, 15
788.2, 23
789.3, 14
791.7, 21
792.6, 29
795.7, 53
796.2, 25
798.9, 13
799.4, 14
800.2, 12
800.7, 32
802.3, 25
802.8, 103
804, 26
805.2, 83
807.9, 15
808.7, 25
809.8, 36
810.9, 50
811.5, 85
812.1, 36
813.4, 22
814.6, 78
815.1, 52
815.9, 25
817.3, 21
821.3, 30
822, 9
827.8, 33
828.9, 20
832.1, 13
834.8, 18
835.7, 25
836.6, 20
846.7, 8
851.1, 25
852.055, 66
853.2, 20
854.4, 28
857, 21
857.8, 21
859.5, 14
861.1, 17
864.5, 20
867.8, 49
868.8, 47
869.1, 19
869.7, 22
872.9, 22
877.1, 16
880.8, 20
885, 21
885.8, 12
886.3, 16
888.8, 11
890.5, 10
899.339, 41
907.8, 39
909.4, 8
911.2, 27
911.9, 9
925.9, 10
928.8, 30
930.7, 26
933.7, 9
935.7, 13
945.1, 20
948.9, 10
953.6, 14
960.5, 14
974.1, 36
994, 37
1003.3, 18
1010.2, 18
1010.8, 27
1012.1, 21
1014, 14
1020.1, 20
1021, 31
1028.9, 118
1031, 18
1031.6, 40
v1033.1, 14
1037.9, 55
1041.1, 17
1045.3, 13
1054, 92
1057.7, 19
1061.9, 20
1069.1, 16
1083.6, 41
1093.4, 49
1098.5, 32
1099.8, 46
1102.5, 52
1103.2, 18
1104.5, 9
1125.4, 16
1131.8, 24
1132.4, 21
1139.8, 12
1150.8, 22
1152.9, 15
1157.6, 8
1165.3, 14
1166.7, 11
1178.7, 25
1179.5, 23
1180.4, 25
1185.8, 12
1192.8, 18
1194.8, 12
1214.7, 35
*/
bool isValid() const
Call this function to determine if there have been any errors.
Definition: ms_errors.cpp:1472
This class encapsulates the input queries (peak lists) in the Mascot results file.
Definition: ms_inputquery.hpp:43
Abstract base class of ms_mascotresfile_dat and ms_mascotresfile_msr.
Definition: ms_mascotresfilebase.hpp:72
std::string getLastErrorString() const
Return the last error number - or an empty string.
Definition: ms_mascotresfilebase.cpp:824
virtual std::string getRepeatSearchString(const int query, const bool fullQuery=false) const =0
To perform a repeat search need to build up appropriate string.