FLASHIda class for real time deconvolution This class contains functions to perform deconvolution (by SpectralDeconvolution) 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, int length, double rt, 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...
|
| |
| void | getAllMonoisotopicMasses (double *masses, int length) |
| |
| int | GetAllPeakGroupSize () |
| |
|
| static MSSpectrum | makeMSSpectrum_ (const double *mzs, const double *ints, int length, double rt, 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 SpectralDeconvolution) 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_ |
( |
int |
ms_level, |
|
|
double |
rt |
|
) |
| |
|
private |
mass value vs. total qscore for all acquired precursors
discard peak groups using mass exclusion
- Parameters
-
| ms_level | MS level |
| rt | Retention time |
◆ getAllMonoisotopicMasses()
| void getAllMonoisotopicMasses |
( |
double * |
masses, |
|
|
int |
length |
|
) |
| |
◆ GetAllPeakGroupSize()
| int GetAllPeakGroupSize |
( |
| ) |
|
◆ 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, |
|
|
int |
length, |
|
|
double |
rt, |
|
|
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 acquired peak groups
◆ makeMSSpectrum_()
| static MSSpectrum makeMSSpectrum_ |
( |
const double * |
mzs, |
|
|
const double * |
ints, |
|
|
int |
length, |
|
|
double |
rt, |
|
|
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=()
◆ parseFLASHIdaLog()
| static std::map<int, std::vector<std::vector<float> > > parseFLASHIdaLog |
( |
const String & |
in_log_file | ) |
|
|
static |
parse FLASHIda log file
- Parameters
-
| in_log_file | input log file |
- Returns
- parsed information : scan number - percursor information
◆ 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_masses_
| std::vector<double> excluded_masses_ |
|
private |
if rt == 0, its mapped masses are always excluded.
◆ exclusion_rt_masses_map_
| std::map<double, std::vector<double> > exclusion_rt_masses_map_ |
|
private |
current target masses. updated per spectrum
maps for global exclusion
◆ fd_
◆ 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
◆ qscore_threshold_
q score threshold - determined from C# side
◆ rt_window_
retention time window - determined from C# side
◆ selected_peak_groups_
selected peak groups out of deconvolved_spectrum_
◆ snr_threshold_
| double snr_threshold_ = 1 |
|
private |
current target masses. updated per spectrum
precursor SNR threshold
◆ target_mass_qscore_map_
| std::map<double, std::vector<double> > target_mass_qscore_map_ |
|
private |
◆ target_mass_rt_map_
| std::map<double, std::vector<double> > target_mass_rt_map_ |
|
private |
0 no targeting 1 inclusive 2 exclusive
maps for global inclusion targeting
◆ target_masses_
| std::vector<double> target_masses_ |
|
private |
◆ targeting_mode_
◆ 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 |
PeakGroup comparator for soring by QScore.
Maps that are necessary for mass exclusion
◆ tqscore_threshold
| double tqscore_threshold = .8 |
|
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 |