FLASHIda class for real time deconvolution This class contains functions to perform deconvolution (by FLASHDeconvAlgorithm) for the spectrum received from Thermo iAPI. Also precursor selection is done in this class. The functions in this class are invoked in C# Thermo iAPI side through the functions in FLASHIdaBridgeFunctions class.
More...
#include <OpenMS/ANALYSIS/TOPDOWN/FLASHIda.h>
|
| | FLASHIda (char *arg) |
| | constructor that takes string input argument More...
|
| |
| | ~FLASHIda ()=default |
| | destructor More...
|
| |
| | FLASHIda (const FLASHIda &)=default |
| | copy constructor More...
|
| |
| | FLASHIda (FLASHIda &&other)=default |
| | move constructor More...
|
| |
| FLASHIda & | operator= (const FLASHIda &fd)=default |
| | assignment operator More...
|
| |
| int | getPeakGroups (const double *mzs, const double *intensities, const int length, const double rt, const int ms_level, const char *name) |
| | get peak groups (deconvolved masses) from input spectrum, specified by mzs and intensities (due to C# interface it is necessary) More...
|
| |
| void | getIsolationWindows (double *window_start, double *window_end, double *qscores, int *charges, int *min_charges, int *max_charges, double *mono_masses, double *charge_cos, double *charge_snrs, double *iso_cos, double *snrs, double *charge_scores, double *ppm_errors, double *precursor_intensities, double *peakgroup_intensities) |
| | get isolation windows using FLASHDeconv algorithm. Many parameters are in primitive types so they can be passed to C# FLASHIda side. All parameters are for isolation windows. More...
|
| |
|
| static MSSpectrum | makeMSSpectrum_ (const double *mzs, const double *ints, const int length, const double rt, const int ms_level, const char *name) |
| | generate MSSpectrum class using mzs and intensities. mzs and intensities and other information are provided by Thermo iAPI More...
|
| |
FLASHIda class for real time deconvolution This class contains functions to perform deconvolution (by FLASHDeconvAlgorithm) for the spectrum received from Thermo iAPI. Also precursor selection is done in this class. The functions in this class are invoked in C# Thermo iAPI side through the functions in FLASHIdaBridgeFunctions class.
- See also
- FLASHIdaBridgeFunctions @reference: https://stackoverflow.com/questions/31417688/passing-a-vector-array-from-unmanaged-c-to-c-sharp
◆ LogMzPeak
◆ PrecalculatedAveragine
◆ FLASHIda() [1/3]
constructor that takes string input argument
◆ ~FLASHIda()
◆ FLASHIda() [2/3]
◆ FLASHIda() [3/3]
◆ filterPeakGroupsUsingMassExclusion_()
| void filterPeakGroupsUsingMassExclusion_ |
( |
const int |
ms_level, |
|
|
const double |
rt |
|
) |
| |
|
private |
mass value vs. retention time for all acquired precursors
discard peak groups using mass exclusion
- Parameters
-
| ms_level | MS level |
| rt | Retention time |
◆ getIsolationWindows()
| void getIsolationWindows |
( |
double * |
window_start, |
|
|
double * |
window_end, |
|
|
double * |
qscores, |
|
|
int * |
charges, |
|
|
int * |
min_charges, |
|
|
int * |
max_charges, |
|
|
double * |
mono_masses, |
|
|
double * |
charge_cos, |
|
|
double * |
charge_snrs, |
|
|
double * |
iso_cos, |
|
|
double * |
snrs, |
|
|
double * |
charge_scores, |
|
|
double * |
ppm_errors, |
|
|
double * |
precursor_intensities, |
|
|
double * |
peakgroup_intensities |
|
) |
| |
get isolation windows using FLASHDeconv algorithm. Many parameters are in primitive types so they can be passed to C# FLASHIda side. All parameters are for isolation windows.
- Parameters
-
| window_start | window start mzs |
| window_end | window end mzs |
| qscores | QScores of windows |
| charges | charges of windows |
| min_charges | minimum charges |
| max_charges | maximum charges |
| mono_masses | monoisotopic masses |
| charge_cos | charge cosine scores |
| charge_snrs | charge SNRs or precursor SNRs |
| iso_cos | mass cosine scores |
| snrs | mass SNRs |
| charge_scores | charge distribution scores |
| ppm_errors | average PPM errors |
| precursor_intensities | precursor peak intensities |
| peakgroup_intensities | precursor mass intensities |
◆ getPeakGroups()
| int getPeakGroups |
( |
const double * |
mzs, |
|
|
const double * |
intensities, |
|
|
const int |
length, |
|
|
const double |
rt, |
|
|
const int |
ms_level, |
|
|
const char * |
name |
|
) |
| |
get peak groups (deconvolved masses) from input spectrum, specified by mzs and intensities (due to C# interface it is necessary)
- Parameters
-
| mzs | mz values of the input spectrum |
| intensities | intensities of the input spectrum |
| length | length of mzs and ints |
| rt | Retention time in seconds |
| ms_level | ms level |
| name | spectrum name |
- Returns
- number of peak groups
◆ makeMSSpectrum_()
| static MSSpectrum makeMSSpectrum_ |
( |
const double * |
mzs, |
|
|
const double * |
ints, |
|
|
const int |
length, |
|
|
const double |
rt, |
|
|
const int |
ms_level, |
|
|
const char * |
name |
|
) |
| |
|
staticprivate |
generate MSSpectrum class using mzs and intensities. mzs and intensities and other information are provided by Thermo iAPI
- Parameters
-
| mzs | m/z values |
| ints | intensities |
| length | number of peaks |
| rt | Retention time |
| ms_level | MS level |
| name | spectrum name |
◆ operator=()
◆ all_mass_rt_map_
| std::unordered_map<int, double> all_mass_rt_map_ |
|
private |
integer mass value vs. retention time with tqscore exceeding total qscore threshold
◆ deconvolved_spectrum_
deconvolved spectrum that contains the peak group
◆ excluded_mass_rt_map_
| std::map<double, std::vector<double> > excluded_mass_rt_map_ |
|
private |
current target masses
maps for global exclusion targeting
◆ excluded_masses_
| std::vector<double> excluded_masses_ |
|
private |
◆ excluded_mz_rt_map_
| std::map<double, std::vector<double> > excluded_mz_rt_map_ |
|
private |
◆ fd_
◆ inclusive_mode_
| bool inclusive_mode_ = true |
|
private |
◆ mass_count_
how many masses will be selected per ms level? - determined from C# side
◆ mass_qscore_map_
| std::unordered_map<int, double> mass_qscore_map_ |
|
private |
mz value vs. retention time for all acquired precursors
◆ max_isolation_window_half_
| const double max_isolation_window_half_ = 3.0 |
|
private |
maximum isolation window width divided by two
◆ min_isolation_window_half_
| const double min_isolation_window_half_ = .6 |
|
private |
minimum isolation window width divided by two
◆ qscore_threshold_
q score threshold - determined from C# side
| struct { ... } QscoreComparator_ |
◆ rt_window_
retention time window - determined from C# side
◆ snr_threshold_
| double snr_threshold_ = 1.0 |
|
private |
current target masses
precursor SNR threshold
◆ target_mass_rt_map_
| std::map<double, std::vector<double> > target_mass_rt_map_ |
|
private |
maps for global inclusion targeting
◆ target_masses_
| std::vector<double> target_masses_ |
|
private |
◆ target_mz_rt_map_
| std::map<double, std::vector<double> > target_mz_rt_map_ |
|
private |
◆ tol_
◆ tqscore_exceeding_mass_rt_map_
| std::unordered_map<int, double> tqscore_exceeding_mass_rt_map_ |
|
private |
integer mz value vs. retention time with tqscore exceeding total qscore threshold
◆ tqscore_exceeding_mz_rt_map_
| std::unordered_map<int, double> tqscore_exceeding_mz_rt_map_ |
|
private |
Maps that are necessary for mass exclusion.
◆ tqscore_threshold
| double tqscore_threshold = .9 |
|
private |
◆ trigger_charges
| std::vector<int> trigger_charges |
|
private |
peakGroup charges to be triggered
◆ trigger_left_isolation_mzs_
| std::vector<double> trigger_left_isolation_mzs_ |
|
private |
peakGroup isolation window ranges
◆ trigger_right_isolation_mzs_
| std::vector<double> trigger_right_isolation_mzs_ |
|
private |