libpappsomspp
Library for mass spectrometry
pappso::XtandemSpectrumProcess Class Reference

#include <xtandemspectrumprocess.h>

Public Member Functions

 XtandemSpectrumProcess ()
 
 XtandemSpectrumProcess (const XtandemSpectrumProcess &copy)
 
 ~XtandemSpectrumProcess ()
 
MassSpectrum process (const MassSpectrum &spectrum, pappso_double parent_ion_mass, unsigned int parent_charge) const
 process raw spectrum to prepare hyperscore computation More...
 
void setMinimumMz (pappso_double minimum_mz)
 
void setNmostIntense (unsigned int nmost_intense)
 
void setDynamicRange (pappso::pappso_double dynamic_range)
 
void setRemoveIsotope (bool remove_isotope)
 
void setExcludeParent (bool exclude_parent)
 
void setExcludeParentNeutralLoss (bool neutral_loss)
 
void setNeutralLossMass (pappso::pappso_double neutral_loss_mass)
 
void setNeutralLossWindowDalton (pappso::pappso_double neutral_loss_precision)
 
void setRefineSpectrumModel (bool refine)
 
void setIonScore (PeptideIon ion_type, bool compute_score)
 
pappso_double getMinimumMz () const
 
unsigned int getNmostIntense () const
 
pappso::pappso_double getDynamicRange () const
 
bool getRemoveIsotope () const
 
bool getExcludeParent () const
 
bool getExcludeParentNeutralLoss () const
 
pappso::pappso_double getNeutralLossMass () const
 
pappso::pappso_double getNeutralLossWindowDalton () const
 
bool getRefineSpectrumModel () const
 
bool getIonScore (PeptideIon ion_type) const
 

Private Attributes

FilterResampleKeepGreater m_filter_keep_greater
 
FilterGreatestY m_n_most_intense
 
FilterRescaleY m_filter_rescale
 
FilterTandemDeisotope m_filter_remove_c13 = FilterTandemDeisotope(1.5, 200)
 
FilterFloorY m_filter_floor
 
FilterHighPass m_filter_highpass
 
bool m_isRemoveIsotope = true
 
bool m_isExcludeParent = false
 
pappso::pappso_double m_isExcludeParent_lower_dalton = 2
 
pappso::pappso_double m_isExcludeParent_upper_dalton = 2
 
bool m_isExcludeParent_neutral_loss = false
 
pappso::pappso_double m_neutralLossMass = MASSH2O
 
pappso::pappso_double m_neutralLossWindowDalton = 0.5
 
bool m_isRefineSpectrumModel = true
 
bool _y_ions = true
 
bool _ystar_ions = false
 
bool _b_ions = true
 
bool _bstar_ions = false
 
bool _c_ions = false
 
bool _z_ions = false
 
bool _a_ions = false
 
bool _x_ions = false
 
bool _astar_ions = false
 
bool _ao_ions = false
 
bool _bo_ions = false
 
bool _yo_ions = false
 

Detailed Description

Definition at line 62 of file xtandemspectrumprocess.h.

Constructor & Destructor Documentation

◆ XtandemSpectrumProcess() [1/2]

pappso::XtandemSpectrumProcess::XtandemSpectrumProcess ( )

Definition at line 58 of file xtandemspectrumprocess.cpp.

◆ XtandemSpectrumProcess() [2/2]

pappso::XtandemSpectrumProcess::XtandemSpectrumProcess ( const XtandemSpectrumProcess copy)

Definition at line 66 of file xtandemspectrumprocess.cpp.

76 {
77 }
78 
79 void
81 {
82  m_filter_keep_greater = FilterResampleKeepGreater(minimum_mz);
83 }
84 void
85 XtandemSpectrumProcess::setNmostIntense(unsigned int nmost_intense)
86 {
87  m_n_most_intense = FilterGreatestY(nmost_intense);
88 }
89 void
91 {
92  m_filter_rescale = FilterRescaleY(dynamic_range);
93 }
94 
95 void

◆ ~XtandemSpectrumProcess()

pappso::XtandemSpectrumProcess::~XtandemSpectrumProcess ( )

Definition at line 96 of file xtandemspectrumprocess.cpp.

97 {
98  m_isRemoveIsotope = remove_isotope;

References m_isRemoveIsotope.

Member Function Documentation

◆ getDynamicRange()

pappso::pappso_double pappso::XtandemSpectrumProcess::getDynamicRange ( ) const

Definition at line 220 of file xtandemspectrumprocess.cpp.

220 {
221  return m_neutralLossMass;
222 }

References m_neutralLossMass.

◆ getExcludeParent()

bool pappso::XtandemSpectrumProcess::getExcludeParent ( ) const

Definition at line 230 of file xtandemspectrumprocess.cpp.

231 {
233 }

References m_isRefineSpectrumModel.

◆ getExcludeParentNeutralLoss()

bool pappso::XtandemSpectrumProcess::getExcludeParentNeutralLoss ( ) const

Definition at line 235 of file xtandemspectrumprocess.cpp.

238 {

◆ getIonScore()

bool pappso::XtandemSpectrumProcess::getIonScore ( PeptideIon  ion_type) const

Definition at line 258 of file xtandemspectrumprocess.cpp.

259  :
260  return _z_ions;
261 
262  case PeptideIon::a:
263  return _a_ions;
264 
265  case PeptideIon::astar:
266  return _astar_ions;
267  case PeptideIon::ao:
268  return _ao_ions;
269 
270  case PeptideIon::c:
271  return _c_ions;
272  case PeptideIon::x:
273  return _x_ions;
274  default:
275  break;
276  }
277  return false;
278 }
279 
280 MassSpectrum
281 XtandemSpectrumProcess::process(const MassSpectrum &spectrum,
282  pappso_double parent_ion_mz,
283  unsigned int parent_charge) const
284 {
285  qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__
286  << " parent_charge==" << parent_charge;
287 
288  // 1) clean isotopes
289  MassSpectrum spectrum_process(spectrum);
291  {
292  spectrum_process.massSpectrumFilter(FilterTandemDeisotope());
293  }
294  qDebug() << __FILE__ << "@" << __LINE__ << __FUNCTION__ << "()";
295  // 2) remove parent ion mass
297  {
298  spectrum_process.massSpectrumFilter(
299  MassSpectrumFilterResampleRemoveMzRange(

◆ getMinimumMz()

pappso_double pappso::XtandemSpectrumProcess::getMinimumMz ( ) const

Definition at line 210 of file xtandemspectrumprocess.cpp.

210 {
211  return m_isExcludeParent;
212 }
213 bool

References m_isExcludeParent.

◆ getNeutralLossMass()

pappso::pappso_double pappso::XtandemSpectrumProcess::getNeutralLossMass ( ) const

Definition at line 240 of file xtandemspectrumprocess.cpp.

240  {
241  case PeptideIon::y:
242  return _y_ions;
243 

References _y_ions, pappso::b, and pappso::y.

◆ getNeutralLossWindowDalton()

pappso_double pappso::XtandemSpectrumProcess::getNeutralLossWindowDalton ( ) const

Definition at line 245 of file xtandemspectrumprocess.cpp.

247  :
248  return _ystar_ions;

◆ getNmostIntense()

unsigned int pappso::XtandemSpectrumProcess::getNmostIntense ( ) const

Definition at line 215 of file xtandemspectrumprocess.cpp.

215 {
217 }

References m_isExcludeParent_neutral_loss.

◆ getRefineSpectrumModel()

bool pappso::XtandemSpectrumProcess::getRefineSpectrumModel ( ) const

Definition at line 251 of file xtandemspectrumprocess.cpp.

253  :
254  return _yo_ions;

◆ getRemoveIsotope()

bool pappso::XtandemSpectrumProcess::getRemoveIsotope ( ) const

Definition at line 225 of file xtandemspectrumprocess.cpp.

225 {
227 }
228 

References m_neutralLossWindowDalton.

◆ process()

MassSpectrum pappso::XtandemSpectrumProcess::process ( const MassSpectrum spectrum,
pappso_double  parent_ion_mass,
unsigned int  parent_charge 
) const

process raw spectrum to prepare hyperscore computation

Definition at line 302 of file xtandemspectrumprocess.cpp.

319  {
320  pappso_double parent_ion_mhplus =
321  ((parent_ion_mz - (MHPLUS * parent_charge)) * parent_charge) + MHPLUS;
322 
323  MassSpectrumFilterResampleRemoveMzRange filter_parent(MzRange(
324  parent_ion_mhplus - m_neutralLossMass,
326 
327  filter_parent.filter(spectrum_process);
328  }
329  // 6) clean isotopes
330  // 7) keep n most intense peaks
331  qDebug() << __FILE__ << " " << __FUNCTION__ << " " << __LINE__
332  << " parent_charge==" << parent_charge;
333  // return spectrum_process.massSpectrumFilter(m_filter_remove_c13)
334  // .filter(m_nMostIntense);
335 
336  m_filter_remove_c13.filter(spectrum_process);
337  m_n_most_intense.filter(spectrum_process);
338  qDebug() << __FILE__ << "@" << __LINE__ << __FUNCTION__ << "() "
339  << spectrum_process.size();
340  return spectrum_process;
341 }
342 
343 
344 } // namespace pappso

◆ setDynamicRange()

void pappso::XtandemSpectrumProcess::setDynamicRange ( pappso::pappso_double  dynamic_range)

Definition at line 111 of file xtandemspectrumprocess.cpp.

114 {

References m_neutralLossMass.

◆ setExcludeParent()

void pappso::XtandemSpectrumProcess::setExcludeParent ( bool  exclude_parent)

Definition at line 123 of file xtandemspectrumprocess.cpp.

127 {

◆ setExcludeParentNeutralLoss()

void pappso::XtandemSpectrumProcess::setExcludeParentNeutralLoss ( bool  neutral_loss)

Definition at line 128 of file xtandemspectrumprocess.cpp.

◆ setIonScore()

void pappso::XtandemSpectrumProcess::setIonScore ( PeptideIon  ion_type,
bool  compute_score 
)

Definition at line 154 of file xtandemspectrumprocess.cpp.

157  :
158  _bo_ions = compute_score;
159  break;
160 
161  case PeptideIon::z:
162  _z_ions = compute_score;
163  break;
164 
165  case PeptideIon::a:
166  _a_ions = compute_score;
167  break;
168 
169  case PeptideIon::astar:
170  _astar_ions = compute_score;
171  break;
172  case PeptideIon::ao:
173  _ao_ions = compute_score;
174  break;
175  case PeptideIon::c:
176  _c_ions = compute_score;
177  break;
178  case PeptideIon::x:
179  _x_ions = compute_score;
180  break;
181 
182  case PeptideIon::bp:
183  case PeptideIon::yp:
184  break;
185  }
186 }
187 
190 {
192 }
193 unsigned int
195 {
197 }
200 {
202 }
203 bool
205 {
206  return m_isRemoveIsotope;
207 }

◆ setMinimumMz()

void pappso::XtandemSpectrumProcess::setMinimumMz ( pappso_double  minimum_mz)

Definition at line 101 of file xtandemspectrumprocess.cpp.

103 {
104  m_isExcludeParent = exclude_parent;

References m_isExcludeParent.

◆ setNeutralLossMass()

void pappso::XtandemSpectrumProcess::setNeutralLossMass ( pappso::pappso_double  neutral_loss_mass)

Definition at line 133 of file xtandemspectrumprocess.cpp.

134 {
135  switch(ion_type)
136  {
137  case PeptideIon::y:

References _y_ions, and pappso::y.

◆ setNeutralLossWindowDalton()

void pappso::XtandemSpectrumProcess::setNeutralLossWindowDalton ( pappso::pappso_double  neutral_loss_precision)

Definition at line 139 of file xtandemspectrumprocess.cpp.

141  :
142  _b_ions = compute_score;
143  break;

◆ setNmostIntense()

void pappso::XtandemSpectrumProcess::setNmostIntense ( unsigned int  nmost_intense)

Definition at line 106 of file xtandemspectrumprocess.cpp.

108 {
109  m_isExcludeParent_neutral_loss = neutral_loss;

References m_isExcludeParent_neutral_loss.

◆ setRefineSpectrumModel()

void pappso::XtandemSpectrumProcess::setRefineSpectrumModel ( bool  refine)

Definition at line 147 of file xtandemspectrumprocess.cpp.

149  :
150  _bstar_ions = compute_score;

◆ setRemoveIsotope()

void pappso::XtandemSpectrumProcess::setRemoveIsotope ( bool  remove_isotope)

Definition at line 117 of file xtandemspectrumprocess.cpp.

120 {

References m_neutralLossWindowDalton.

Member Data Documentation

◆ _a_ions

bool pappso::XtandemSpectrumProcess::_a_ions = false
private

Definition at line 142 of file xtandemspectrumprocess.h.

◆ _ao_ions

bool pappso::XtandemSpectrumProcess::_ao_ions = false
private

Definition at line 145 of file xtandemspectrumprocess.h.

◆ _astar_ions

bool pappso::XtandemSpectrumProcess::_astar_ions = false
private

Definition at line 144 of file xtandemspectrumprocess.h.

◆ _b_ions

bool pappso::XtandemSpectrumProcess::_b_ions = true
private

Definition at line 138 of file xtandemspectrumprocess.h.

◆ _bo_ions

bool pappso::XtandemSpectrumProcess::_bo_ions = false
private

Definition at line 146 of file xtandemspectrumprocess.h.

◆ _bstar_ions

bool pappso::XtandemSpectrumProcess::_bstar_ions = false
private

Definition at line 139 of file xtandemspectrumprocess.h.

◆ _c_ions

bool pappso::XtandemSpectrumProcess::_c_ions = false
private

Definition at line 140 of file xtandemspectrumprocess.h.

◆ _x_ions

bool pappso::XtandemSpectrumProcess::_x_ions = false
private

Definition at line 143 of file xtandemspectrumprocess.h.

◆ _y_ions

bool pappso::XtandemSpectrumProcess::_y_ions = true
private

Definition at line 136 of file xtandemspectrumprocess.h.

Referenced by getNeutralLossMass(), and setNeutralLossMass().

◆ _yo_ions

bool pappso::XtandemSpectrumProcess::_yo_ions = false
private

Definition at line 147 of file xtandemspectrumprocess.h.

◆ _ystar_ions

bool pappso::XtandemSpectrumProcess::_ystar_ions = false
private

Definition at line 137 of file xtandemspectrumprocess.h.

◆ _z_ions

bool pappso::XtandemSpectrumProcess::_z_ions = false
private

Definition at line 141 of file xtandemspectrumprocess.h.

◆ m_filter_floor

FilterFloorY pappso::XtandemSpectrumProcess::m_filter_floor
private

Definition at line 126 of file xtandemspectrumprocess.h.

◆ m_filter_highpass

FilterHighPass pappso::XtandemSpectrumProcess::m_filter_highpass
private

Definition at line 127 of file xtandemspectrumprocess.h.

◆ m_filter_keep_greater

FilterResampleKeepGreater pappso::XtandemSpectrumProcess::m_filter_keep_greater
private

Definition at line 122 of file xtandemspectrumprocess.h.

◆ m_filter_remove_c13

FilterTandemDeisotope pappso::XtandemSpectrumProcess::m_filter_remove_c13 = FilterTandemDeisotope(1.5, 200)
private

Definition at line 125 of file xtandemspectrumprocess.h.

◆ m_filter_rescale

FilterRescaleY pappso::XtandemSpectrumProcess::m_filter_rescale
private

Definition at line 124 of file xtandemspectrumprocess.h.

◆ m_isExcludeParent

bool pappso::XtandemSpectrumProcess::m_isExcludeParent = false
private

Definition at line 129 of file xtandemspectrumprocess.h.

Referenced by getMinimumMz(), and setMinimumMz().

◆ m_isExcludeParent_lower_dalton

pappso::pappso_double pappso::XtandemSpectrumProcess::m_isExcludeParent_lower_dalton = 2
private

Definition at line 130 of file xtandemspectrumprocess.h.

◆ m_isExcludeParent_neutral_loss

bool pappso::XtandemSpectrumProcess::m_isExcludeParent_neutral_loss = false
private

Definition at line 132 of file xtandemspectrumprocess.h.

Referenced by getNmostIntense(), and setNmostIntense().

◆ m_isExcludeParent_upper_dalton

pappso::pappso_double pappso::XtandemSpectrumProcess::m_isExcludeParent_upper_dalton = 2
private

Definition at line 131 of file xtandemspectrumprocess.h.

◆ m_isRefineSpectrumModel

bool pappso::XtandemSpectrumProcess::m_isRefineSpectrumModel = true
private

Definition at line 135 of file xtandemspectrumprocess.h.

Referenced by getExcludeParent().

◆ m_isRemoveIsotope

bool pappso::XtandemSpectrumProcess::m_isRemoveIsotope = true
private

Definition at line 128 of file xtandemspectrumprocess.h.

Referenced by ~XtandemSpectrumProcess().

◆ m_n_most_intense

FilterGreatestY pappso::XtandemSpectrumProcess::m_n_most_intense
private

Definition at line 123 of file xtandemspectrumprocess.h.

◆ m_neutralLossMass

pappso::pappso_double pappso::XtandemSpectrumProcess::m_neutralLossMass = MASSH2O
private

Definition at line 133 of file xtandemspectrumprocess.h.

Referenced by getDynamicRange(), and setDynamicRange().

◆ m_neutralLossWindowDalton

pappso::pappso_double pappso::XtandemSpectrumProcess::m_neutralLossWindowDalton = 0.5
private

Definition at line 134 of file xtandemspectrumprocess.h.

Referenced by getRemoveIsotope(), and setRemoveIsotope().


The documentation for this class was generated from the following files:
pappso::PeptideIon::a
@ a
Nter aldimine ions.
pappso::XtandemSpectrumProcess::_ystar_ions
bool _ystar_ions
Definition: xtandemspectrumprocess.h:137
pappso::pappso_double
double pappso_double
A type definition for doubles.
Definition: types.h:69
pappso::XtandemSpectrumProcess::setMinimumMz
void setMinimumMz(pappso_double minimum_mz)
Definition: xtandemspectrumprocess.cpp:101
pappso::MHPLUS
const pappso_double MHPLUS(1.007276466879)
pappso::XtandemSpectrumProcess::_bo_ions
bool _bo_ions
Definition: xtandemspectrumprocess.h:146
pappso::FilterResampleKeepGreater::getThresholdX
double getThresholdX() const
Definition: filterresample.cpp:68
pappso::PeptideIon::astar
@ astar
Nter aldimine ions + NH3 loss.
pappso::XtandemSpectrumProcess::getMinimumMz
pappso_double getMinimumMz() const
Definition: xtandemspectrumprocess.cpp:210
pappso::XtandemSpectrumProcess::_ao_ions
bool _ao_ions
Definition: xtandemspectrumprocess.h:145
pappso::XtandemSpectrumProcess::_b_ions
bool _b_ions
Definition: xtandemspectrumprocess.h:138
pappso::XtandemSpectrumProcess::_y_ions
bool _y_ions
Definition: xtandemspectrumprocess.h:136
pappso::XtandemSpectrumProcess::_z_ions
bool _z_ions
Definition: xtandemspectrumprocess.h:141
pappso::PeptideIon::x
@ x
Cter acylium ions.
pappso::XtandemSpectrumProcess::m_isExcludeParent
bool m_isExcludeParent
Definition: xtandemspectrumprocess.h:129
pappso::FilterGreatestY::getNumberOfPoints
std::size_t getNumberOfPoints() const
Definition: filterpass.cpp:189
pappso::XtandemSpectrumProcess::m_isRemoveIsotope
bool m_isRemoveIsotope
Definition: xtandemspectrumprocess.h:128
pappso::FilterGreatestY::filter
Trace & filter(Trace &data_points) const override
Definition: filterpass.cpp:164
pappso::XtandemSpectrumProcess::process
MassSpectrum process(const MassSpectrum &spectrum, pappso_double parent_ion_mass, unsigned int parent_charge) const
process raw spectrum to prepare hyperscore computation
Definition: xtandemspectrumprocess.cpp:302
pappso::XtandemSpectrumProcess::setNmostIntense
void setNmostIntense(unsigned int nmost_intense)
Definition: xtandemspectrumprocess.cpp:106
pappso::PrecisionFactory::getDaltonInstance
static PrecisionPtr getDaltonInstance(pappso_double value)
Definition: precision.cpp:150
pappso::XtandemSpectrumProcess::_yo_ions
bool _yo_ions
Definition: xtandemspectrumprocess.h:147
pappso::XtandemSpectrumProcess::getDynamicRange
pappso::pappso_double getDynamicRange() const
Definition: xtandemspectrumprocess.cpp:220
pappso::XtandemSpectrumProcess::_astar_ions
bool _astar_ions
Definition: xtandemspectrumprocess.h:144
pappso::PeptideIon::bp
@ bp
pappso::XtandemSpectrumProcess::m_neutralLossMass
pappso::pappso_double m_neutralLossMass
Definition: xtandemspectrumprocess.h:133
pappso::FilterTandemDeisotope::filter
MassSpectrum & filter(MassSpectrum &data_points) const override
Definition: filtertandemremovec13.cpp:51
pappso::PeptideIon::z
@ z
Cter carbocations.
pappso::XtandemSpectrumProcess::_bstar_ions
bool _bstar_ions
Definition: xtandemspectrumprocess.h:139
pappso::PeptideIon::ao
@ ao
Nter aldimine ions + H2O loss.
pappso::XtandemSpectrumProcess::getNmostIntense
unsigned int getNmostIntense() const
Definition: xtandemspectrumprocess.cpp:215
pappso::XtandemSpectrumProcess::_x_ions
bool _x_ions
Definition: xtandemspectrumprocess.h:143
pappso::XtandemSpectrumProcess::_c_ions
bool _c_ions
Definition: xtandemspectrumprocess.h:140
pappso::PeptideIon::c
@ c
Nter amino ions.
pappso::XtandemSpectrumProcess::getRemoveIsotope
bool getRemoveIsotope() const
Definition: xtandemspectrumprocess.cpp:225
pappso::XtandemSpectrumProcess::m_filter_rescale
FilterRescaleY m_filter_rescale
Definition: xtandemspectrumprocess.h:124
pappso::PeptideIon::yp
@ yp
pappso::XtandemSpectrumProcess::m_filter_remove_c13
FilterTandemDeisotope m_filter_remove_c13
Definition: xtandemspectrumprocess.h:125
pappso::XtandemSpectrumProcess::m_neutralLossWindowDalton
pappso::pappso_double m_neutralLossWindowDalton
Definition: xtandemspectrumprocess.h:134
pappso::XtandemSpectrumProcess::m_isExcludeParent_neutral_loss
bool m_isExcludeParent_neutral_loss
Definition: xtandemspectrumprocess.h:132
pappso::PeptideIon::y
@ y
Cter amino ions.
pappso::XtandemSpectrumProcess::m_filter_keep_greater
FilterResampleKeepGreater m_filter_keep_greater
Definition: xtandemspectrumprocess.h:122
pappso::XtandemSpectrumProcess::m_isRefineSpectrumModel
bool m_isRefineSpectrumModel
Definition: xtandemspectrumprocess.h:135
pappso::FilterRescaleY::getDynamicRange
double getDynamicRange() const
Definition: filterpass.cpp:277
pappso::XtandemSpectrumProcess::m_n_most_intense
FilterGreatestY m_n_most_intense
Definition: xtandemspectrumprocess.h:123
pappso::XtandemSpectrumProcess::_a_ions
bool _a_ions
Definition: xtandemspectrumprocess.h:142
pappso::XtandemSpectrumProcess::setDynamicRange
void setDynamicRange(pappso::pappso_double dynamic_range)
Definition: xtandemspectrumprocess.cpp:111