openmassspec-core 3.0.0

Shared types, traits, and mzML writer for open Rust mass-spec parsers.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
// @generated by scripts/gen-cv.py from scripts/cv-terms.txt. Do not edit by hand.
// Source: https://raw.githubusercontent.com/HUPO-PSI/psi-ms-CV/v4.2.4/psi-ms.obo
// data-version: 4.2.4
// sha256: 3b1c728220a5a68593c53621eb3bf1e2a571648c0ca89f62252b869f65807f6e

use super::Term;

/// `data-version` of the psi-ms.obo these terms were generated from.
pub const PSI_MS_VERSION: &str = "4.2.4";

/// URL of the psi-ms.obo these terms were generated from.
pub const PSI_MS_SOURCE_URL: &str =
    "https://raw.githubusercontent.com/HUPO-PSI/psi-ms-CV/v4.2.4/psi-ms.obo";

/// `MS:1000579` MS1 spectrum.
pub const MS1_SPECTRUM: Term = Term {
    accession: "MS:1000579",
    name: "MS1 spectrum",
};

/// `MS:1000580` MSn spectrum.
pub const MSN_SPECTRUM: Term = Term {
    accession: "MS:1000580",
    name: "MSn spectrum",
};

/// `MS:1000511` ms level.
pub const MS_LEVEL: Term = Term {
    accession: "MS:1000511",
    name: "ms level",
};

/// `MS:1000127` centroid spectrum.
pub const CENTROID_SPECTRUM: Term = Term {
    accession: "MS:1000127",
    name: "centroid spectrum",
};

/// `MS:1000128` profile spectrum.
pub const PROFILE_SPECTRUM: Term = Term {
    accession: "MS:1000128",
    name: "profile spectrum",
};

/// `MS:1000130` positive scan.
pub const POSITIVE_SCAN: Term = Term {
    accession: "MS:1000130",
    name: "positive scan",
};

/// `MS:1000129` negative scan.
pub const NEGATIVE_SCAN: Term = Term {
    accession: "MS:1000129",
    name: "negative scan",
};

/// `MS:1000285` total ion current.
pub const TOTAL_ION_CURRENT: Term = Term {
    accession: "MS:1000285",
    name: "total ion current",
};

/// `MS:1000504` base peak m/z.
pub const BASE_PEAK_MZ: Term = Term {
    accession: "MS:1000504",
    name: "base peak m/z",
};

/// `MS:1000505` base peak intensity.
pub const BASE_PEAK_INTENSITY: Term = Term {
    accession: "MS:1000505",
    name: "base peak intensity",
};

/// `MS:1000528` lowest observed m/z.
pub const LOWEST_OBSERVED_MZ: Term = Term {
    accession: "MS:1000528",
    name: "lowest observed m/z",
};

/// `MS:1000527` highest observed m/z.
pub const HIGHEST_OBSERVED_MZ: Term = Term {
    accession: "MS:1000527",
    name: "highest observed m/z",
};

/// `MS:1000799` custom unreleased software tool.
pub const CUSTOM_UNRELEASED_SOFTWARE_TOOL: Term = Term {
    accession: "MS:1000799",
    name: "custom unreleased software tool",
};

/// `MS:1000529` instrument serial number.
pub const INSTRUMENT_SERIAL_NUMBER: Term = Term {
    accession: "MS:1000529",
    name: "instrument serial number",
};

/// `MS:1000544` Conversion to mzML.
pub const CONVERSION_TO_MZML: Term = Term {
    accession: "MS:1000544",
    name: "Conversion to mzML",
};

/// `MS:1000035` peak picking.
pub const PEAK_PICKING: Term = Term {
    accession: "MS:1000035",
    name: "peak picking",
};

/// `MS:1000264` ion trap.
pub const ION_TRAP: Term = Term {
    accession: "MS:1000264",
    name: "ion trap",
};

/// `MS:1000081` quadrupole.
pub const QUADRUPOLE: Term = Term {
    accession: "MS:1000081",
    name: "quadrupole",
};

/// `MS:1000084` time-of-flight.
pub const TIME_OF_FLIGHT: Term = Term {
    accession: "MS:1000084",
    name: "time-of-flight",
};

/// `MS:1000484` orbitrap.
pub const ORBITRAP: Term = Term {
    accession: "MS:1000484",
    name: "orbitrap",
};

/// `MS:1000080` magnetic sector.
pub const MAGNETIC_SECTOR: Term = Term {
    accession: "MS:1000080",
    name: "magnetic sector",
};

/// `MS:1000795` no combination.
pub const NO_COMBINATION: Term = Term {
    accession: "MS:1000795",
    name: "no combination",
};

/// `MS:1000512` filter string.
pub const FILTER_STRING: Term = Term {
    accession: "MS:1000512",
    name: "filter string",
};

/// `MS:1000016` scan start time.
pub const SCAN_START_TIME: Term = Term {
    accession: "MS:1000016",
    name: "scan start time",
};

/// `MS:1000927` ion injection time.
pub const ION_INJECTION_TIME: Term = Term {
    accession: "MS:1000927",
    name: "ion injection time",
};

/// `MS:1002815` inverse reduced ion mobility.
pub const INVERSE_REDUCED_ION_MOBILITY: Term = Term {
    accession: "MS:1002815",
    name: "inverse reduced ion mobility",
};

/// `MS:1001581` FAIMS compensation voltage.
pub const FAIMS_COMPENSATION_VOLTAGE: Term = Term {
    accession: "MS:1001581",
    name: "FAIMS compensation voltage",
};

/// `MS:1000501` scan window lower limit.
pub const SCAN_WINDOW_LOWER_LIMIT: Term = Term {
    accession: "MS:1000501",
    name: "scan window lower limit",
};

/// `MS:1000500` scan window upper limit.
pub const SCAN_WINDOW_UPPER_LIMIT: Term = Term {
    accession: "MS:1000500",
    name: "scan window upper limit",
};

/// `MS:1000827` isolation window target m/z.
pub const ISOLATION_WINDOW_TARGET_MZ: Term = Term {
    accession: "MS:1000827",
    name: "isolation window target m/z",
};

/// `MS:1000828` isolation window lower offset.
pub const ISOLATION_WINDOW_LOWER_OFFSET: Term = Term {
    accession: "MS:1000828",
    name: "isolation window lower offset",
};

/// `MS:1000829` isolation window upper offset.
pub const ISOLATION_WINDOW_UPPER_OFFSET: Term = Term {
    accession: "MS:1000829",
    name: "isolation window upper offset",
};

/// `MS:1000744` selected ion m/z.
pub const SELECTED_ION_MZ: Term = Term {
    accession: "MS:1000744",
    name: "selected ion m/z",
};

/// `MS:1000041` charge state.
pub const CHARGE_STATE: Term = Term {
    accession: "MS:1000041",
    name: "charge state",
};

/// `MS:1000042` peak intensity.
pub const PEAK_INTENSITY: Term = Term {
    accession: "MS:1000042",
    name: "peak intensity",
};

/// `MS:1002954` collisional cross sectional area.
pub const COLLISIONAL_CROSS_SECTIONAL_AREA: Term = Term {
    accession: "MS:1002954",
    name: "collisional cross sectional area",
};

/// `MS:1000138` normalized collision energy.
pub const NORMALIZED_COLLISION_ENERGY: Term = Term {
    accession: "MS:1000138",
    name: "normalized collision energy",
};

/// `MS:1000045` collision energy.
pub const COLLISION_ENERGY: Term = Term {
    accession: "MS:1000045",
    name: "collision energy",
};

/// `MS:1000422` beam-type collision-induced dissociation.
pub const BEAM_TYPE_COLLISION_INDUCED_DISSOCIATION: Term = Term {
    accession: "MS:1000422",
    name: "beam-type collision-induced dissociation",
};

/// `MS:1000133` collision-induced dissociation.
pub const COLLISION_INDUCED_DISSOCIATION: Term = Term {
    accession: "MS:1000133",
    name: "collision-induced dissociation",
};

/// `MS:1000598` electron transfer dissociation.
pub const ELECTRON_TRANSFER_DISSOCIATION: Term = Term {
    accession: "MS:1000598",
    name: "electron transfer dissociation",
};

/// `MS:1002631` electron-transfer/higher-energy collision dissociation.
pub const ELECTRON_TRANSFER_HIGHER_ENERGY_COLLISION_DISSOCIATION: Term = Term {
    accession: "MS:1002631",
    name: "electron-transfer/higher-energy collision dissociation",
};

/// `MS:1000435` photodissociation.
pub const PHOTODISSOCIATION: Term = Term {
    accession: "MS:1000435",
    name: "photodissociation",
};

/// `MS:1000250` electron capture dissociation.
pub const ELECTRON_CAPTURE_DISSOCIATION: Term = Term {
    accession: "MS:1000250",
    name: "electron capture dissociation",
};

/// `MS:1000262` infrared multiphoton dissociation.
pub const INFRARED_MULTIPHOTON_DISSOCIATION: Term = Term {
    accession: "MS:1000262",
    name: "infrared multiphoton dissociation",
};

/// `MS:1000599` pulsed q dissociation.
pub const PULSED_Q_DISSOCIATION: Term = Term {
    accession: "MS:1000599",
    name: "pulsed q dissociation",
};

/// `MS:1003246` ultraviolet photodissociation.
pub const ULTRAVIOLET_PHOTODISSOCIATION: Term = Term {
    accession: "MS:1003246",
    name: "ultraviolet photodissociation",
};

/// `MS:1000136` surface-induced dissociation.
pub const SURFACE_INDUCED_DISSOCIATION: Term = Term {
    accession: "MS:1000136",
    name: "surface-induced dissociation",
};

/// `MS:1000514` m/z array.
pub const MZ_ARRAY: Term = Term {
    accession: "MS:1000514",
    name: "m/z array",
};

/// `MS:1000515` intensity array.
pub const INTENSITY_ARRAY: Term = Term {
    accession: "MS:1000515",
    name: "intensity array",
};

/// `MS:1000595` time array.
pub const TIME_ARRAY: Term = Term {
    accession: "MS:1000595",
    name: "time array",
};

/// `MS:1003007` raw ion mobility array.
pub const RAW_ION_MOBILITY_ARRAY: Term = Term {
    accession: "MS:1003007",
    name: "raw ion mobility array",
};

/// `MS:1003008` raw inverse reduced ion mobility array.
pub const RAW_INVERSE_REDUCED_ION_MOBILITY_ARRAY: Term = Term {
    accession: "MS:1003008",
    name: "raw inverse reduced ion mobility array",
};

/// `MS:1000523` 64-bit float.
pub const FLOAT_64_BIT: Term = Term {
    accession: "MS:1000523",
    name: "64-bit float",
};

/// `MS:1000521` 32-bit float.
pub const FLOAT_32_BIT: Term = Term {
    accession: "MS:1000521",
    name: "32-bit float",
};

/// `MS:1000574` zlib compression.
pub const ZLIB_COMPRESSION: Term = Term {
    accession: "MS:1000574",
    name: "zlib compression",
};

/// `MS:1000576` no compression.
pub const NO_COMPRESSION: Term = Term {
    accession: "MS:1000576",
    name: "no compression",
};

/// `MS:1000235` total ion current chromatogram.
pub const TOTAL_ION_CURRENT_CHROMATOGRAM: Term = Term {
    accession: "MS:1000235",
    name: "total ion current chromatogram",
};

/// `MS:1000040` m/z.
pub const MZ: Term = Term {
    accession: "MS:1000040",
    name: "m/z",
};

/// `MS:1002814` volt-second per square centimeter.
pub const VOLT_SECOND_PER_SQUARE_CENTIMETER: Term = Term {
    accession: "MS:1002814",
    name: "volt-second per square centimeter",
};

/// `UO:0000031` minute.
pub const MINUTE: Term = Term {
    accession: "UO:0000031",
    name: "minute",
};

/// `UO:0000028` millisecond.
pub const MILLISECOND: Term = Term {
    accession: "UO:0000028",
    name: "millisecond",
};

/// `UO:0000218` volt.
pub const VOLT: Term = Term {
    accession: "UO:0000218",
    name: "volt",
};

/// `UO:0000187` percent.
pub const PERCENT: Term = Term {
    accession: "UO:0000187",
    name: "percent",
};

/// `UO:0000266` electronvolt.
pub const ELECTRONVOLT: Term = Term {
    accession: "UO:0000266",
    name: "electronvolt",
};

/// `UO:0000324` square angstrom.
pub const SQUARE_ANGSTROM: Term = Term {
    accession: "UO:0000324",
    name: "square angstrom",
};

/// Every generated term, in `scripts/cv-terms.txt` order.
pub const ALL: &[Term] = &[
    MS1_SPECTRUM,
    MSN_SPECTRUM,
    MS_LEVEL,
    CENTROID_SPECTRUM,
    PROFILE_SPECTRUM,
    POSITIVE_SCAN,
    NEGATIVE_SCAN,
    TOTAL_ION_CURRENT,
    BASE_PEAK_MZ,
    BASE_PEAK_INTENSITY,
    LOWEST_OBSERVED_MZ,
    HIGHEST_OBSERVED_MZ,
    CUSTOM_UNRELEASED_SOFTWARE_TOOL,
    INSTRUMENT_SERIAL_NUMBER,
    CONVERSION_TO_MZML,
    PEAK_PICKING,
    ION_TRAP,
    QUADRUPOLE,
    TIME_OF_FLIGHT,
    ORBITRAP,
    MAGNETIC_SECTOR,
    NO_COMBINATION,
    FILTER_STRING,
    SCAN_START_TIME,
    ION_INJECTION_TIME,
    INVERSE_REDUCED_ION_MOBILITY,
    FAIMS_COMPENSATION_VOLTAGE,
    SCAN_WINDOW_LOWER_LIMIT,
    SCAN_WINDOW_UPPER_LIMIT,
    ISOLATION_WINDOW_TARGET_MZ,
    ISOLATION_WINDOW_LOWER_OFFSET,
    ISOLATION_WINDOW_UPPER_OFFSET,
    SELECTED_ION_MZ,
    CHARGE_STATE,
    PEAK_INTENSITY,
    COLLISIONAL_CROSS_SECTIONAL_AREA,
    NORMALIZED_COLLISION_ENERGY,
    COLLISION_ENERGY,
    BEAM_TYPE_COLLISION_INDUCED_DISSOCIATION,
    COLLISION_INDUCED_DISSOCIATION,
    ELECTRON_TRANSFER_DISSOCIATION,
    ELECTRON_TRANSFER_HIGHER_ENERGY_COLLISION_DISSOCIATION,
    PHOTODISSOCIATION,
    ELECTRON_CAPTURE_DISSOCIATION,
    INFRARED_MULTIPHOTON_DISSOCIATION,
    PULSED_Q_DISSOCIATION,
    ULTRAVIOLET_PHOTODISSOCIATION,
    SURFACE_INDUCED_DISSOCIATION,
    MZ_ARRAY,
    INTENSITY_ARRAY,
    TIME_ARRAY,
    RAW_ION_MOBILITY_ARRAY,
    RAW_INVERSE_REDUCED_ION_MOBILITY_ARRAY,
    FLOAT_64_BIT,
    FLOAT_32_BIT,
    ZLIB_COMPRESSION,
    NO_COMPRESSION,
    TOTAL_ION_CURRENT_CHROMATOGRAM,
    MZ,
    VOLT_SECOND_PER_SQUARE_CENTIMETER,
    MINUTE,
    MILLISECOND,
    VOLT,
    PERCENT,
    ELECTRONVOLT,
    SQUARE_ANGSTROM,
];