OpenMS
Loading...
Searching...
No Matches
NuXLFragmentIonGenerator.h
Go to the documentation of this file.
1// Copyright (c) 2002-present, The OpenMS Team -- EKU Tuebingen, ETH Zurich, and FU Berlin
2// SPDX-License-Identifier: BSD-3-Clause
3//
4// --------------------------------------------------------------------------
5// $Maintainer: Timo Sachsenberg $
6// $Authors: Timo Sachsenberg $
7// --------------------------------------------------------------------------
8
9#pragma once
10
18#include <vector>
19#include <map>
20#include <set>
21#include <iostream>
22
23namespace OpenMS
24{
25
26// helper class that adds special ions not covered by TheoreticalSpectrumGenerator
27class OPENMS_DLLAPI NuXLFragmentIonGenerator
28{
29 public:
30 // prefix used to denote marker ions in fragment annotations
31 static constexpr const char* ANNOTATIONS_MARKER_ION_PREFIX = "MI:";
32
33 // add RNA-marker ions of charge 1
34 // this includes the protonated nitrogenous base and all shifts (e.g., U-H2O, U'-H20, ...)
35 static void addMS2MarkerIons(
36 const std::vector<NuXLFragmentAdductDefinition>& marker_ions,
37 PeakSpectrum& spectrum,
38 PeakSpectrum::IntegerDataArray& spectrum_charge,
39 PeakSpectrum::StringDataArray& spectrum_annotation);
40
42 const String & unmodified_sequence,
43 const String & fragment_shift_name,
44 const double fragment_shift_mass,
45 PeakSpectrum & partial_loss_spectrum,
46 PeakSpectrum::IntegerDataArray& partial_loss_spectrum_charge,
47 PeakSpectrum::StringDataArray& partial_loss_spectrum_annotation);
48
49 static void generatePartialLossSpectrum(const String& unmodified_sequence,
50 const double& fixed_and_variable_modified_peptide_weight,
51 const String& precursor_rna_adduct,
52 const double& precursor_rna_mass,
53 const int& precursor_charge,
54 const std::vector<NuXLFragmentAdductDefinition>& partial_loss_modification,
55 const PeakSpectrum& patial_loss_template_z1,
56 const PeakSpectrum& patial_loss_template_z2,
57 const PeakSpectrum& patial_loss_template_z3,
58 PeakSpectrum& partial_loss_spectrum);
59 static void addPrecursorWithCompleteRNA_(const double fixed_and_variable_modified_peptide_weight,
60 const String & precursor_rna_adduct,
61 const double precursor_rna_mass,
62 const int charge,
63 PeakSpectrum & partial_loss_spectrum,
64 MSSpectrum::IntegerDataArray & partial_loss_spectrum_charge,
65 MSSpectrum::StringDataArray & partial_loss_spectrum_annotation);
66
67 static void addSpecialLysImmonumIons(const String& unmodified_sequence,
68 PeakSpectrum &spectrum,
69 PeakSpectrum::IntegerDataArray &spectrum_charge,
70 PeakSpectrum::StringDataArray &spectrum_annotation);
71 };
72}
Integer data array class.
Definition DataArrays.h:75
String data array class.
Definition DataArrays.h:125
The representation of a 1D spectrum.
Definition MSSpectrum.h:44
Definition NuXLFragmentIonGenerator.h:28
static void addPrecursorWithCompleteRNA_(const double fixed_and_variable_modified_peptide_weight, const String &precursor_rna_adduct, const double precursor_rna_mass, const int charge, PeakSpectrum &partial_loss_spectrum, MSSpectrum::IntegerDataArray &partial_loss_spectrum_charge, MSSpectrum::StringDataArray &partial_loss_spectrum_annotation)
static void addShiftedImmoniumIons(const String &unmodified_sequence, const String &fragment_shift_name, const double fragment_shift_mass, PeakSpectrum &partial_loss_spectrum, PeakSpectrum::IntegerDataArray &partial_loss_spectrum_charge, PeakSpectrum::StringDataArray &partial_loss_spectrum_annotation)
static void addMS2MarkerIons(const std::vector< NuXLFragmentAdductDefinition > &marker_ions, PeakSpectrum &spectrum, PeakSpectrum::IntegerDataArray &spectrum_charge, PeakSpectrum::StringDataArray &spectrum_annotation)
static void generatePartialLossSpectrum(const String &unmodified_sequence, const double &fixed_and_variable_modified_peptide_weight, const String &precursor_rna_adduct, const double &precursor_rna_mass, const int &precursor_charge, const std::vector< NuXLFragmentAdductDefinition > &partial_loss_modification, const PeakSpectrum &patial_loss_template_z1, const PeakSpectrum &patial_loss_template_z2, const PeakSpectrum &patial_loss_template_z3, PeakSpectrum &partial_loss_spectrum)
static void addSpecialLysImmonumIons(const String &unmodified_sequence, PeakSpectrum &spectrum, PeakSpectrum::IntegerDataArray &spectrum_charge, PeakSpectrum::StringDataArray &spectrum_annotation)
A more convenient string class.
Definition String.h:34
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19