OpenMS  2.5.0
Classes | Public Member Functions | Private Member Functions | Private Attributes | List of all members
MultiplexDeltaMassesGenerator Class Reference

generates complete list of all possible mass shifts due to isotopic labelling More...

#include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/MultiplexDeltaMassesGenerator.h>

Inheritance diagram for MultiplexDeltaMassesGenerator:
DefaultParamHandler

Classes

struct  Label
 complete label information More...
 

Public Member Functions

 MultiplexDeltaMassesGenerator ()
 constructor More...
 
 MultiplexDeltaMassesGenerator (String labels, int missed_cleavages, std::map< String, double > label_mass_shift)
 constructor More...
 
void generateKnockoutDeltaMasses ()
 generate all mass shifts that can occur due to the absence of one or multiple peptides (e.g. for a triplet experiment generate the doublets and singlets that might be present) More...
 
void printSamplesLabelsList (std::ostream &stream) const
 write the list of labels for each of the sample More...
 
void printDeltaMassesList (std::ostream &stream) const
 write the list of all mass patterns More...
 
std::vector< MultiplexDeltaMassesgetDeltaMassesList ()
 returns the list of mass shift patterns More...
 
const std::vector< MultiplexDeltaMasses > & getDeltaMassesList () const
 returns the list of mass shift patterns More...
 
std::vector< std::vector< String > > getSamplesLabelsList ()
 returns the list of samples with their corresponding labels More...
 
const std::vector< std::vector< String > > & getSamplesLabelsList () const
 returns the list of samples with their corresponding labels More...
 
String getLabelShort (String label)
 returns the short label string More...
 
String getLabelLong (String label)
 returns the long label string More...
 
MultiplexDeltaMasses::LabelSet extractLabelSet (AASequence sequence)
 extract the label set from the sequence More...
 
- Public Member Functions inherited from DefaultParamHandler
 DefaultParamHandler (const String &name)
 Constructor with name that is displayed in error messages. More...
 
 DefaultParamHandler (const DefaultParamHandler &rhs)
 Copy constructor. More...
 
virtual ~DefaultParamHandler ()
 Destructor. More...
 
virtual DefaultParamHandleroperator= (const DefaultParamHandler &rhs)
 Assignment operator. More...
 
virtual bool operator== (const DefaultParamHandler &rhs) const
 Equality operator. More...
 
void setParameters (const Param &param)
 Sets the parameters. More...
 
const ParamgetParameters () const
 Non-mutable access to the parameters. More...
 
const ParamgetDefaults () const
 Non-mutable access to the default parameters. More...
 
const StringgetName () const
 Non-mutable access to the name. More...
 
void setName (const String &name)
 Mutable access to the name. More...
 
const std::vector< String > & getSubsections () const
 Non-mutable access to the registered subsections. More...
 

Private Member Functions

void fillLabelMasterList_ ()
 fill label master list More...
 

Private Attributes

String labels_
 isotopic labels More...
 
std::vector< Stringlabels_list_
 flat list of all occurring isotopic labels More...
 
std::vector< std::vector< String > > samples_labels_
 list of samples with their corresponding labels More...
 
int missed_cleavages_
 maximum number of missed cleavages More...
 
std::vector< MultiplexDeltaMassesdelta_masses_list_
 list of all possible mass shift patterns More...
 
std::vector< Labellabel_master_list_
 master list of all labels More...
 
std::map< String, doublelabel_delta_mass_
 mapping from single label to delta mass e.g. "Arg10" -> 10.0082686 More...
 
std::map< String, Stringlabel_short_long_
 mapping from a short label (as in the user params) to a long label (as in PSI-MS name) e.g. "Arg10" -> "Label:13C(6)15N(4)" More...
 
std::map< String, Stringlabel_long_short_
 mapping from a long label (as in PSI-MS name) to a short label (as in the user params) e.g. "Label:13C(6)15N(4)" -> "Arg10" More...
 

Additional Inherited Members

- Protected Member Functions inherited from DefaultParamHandler
virtual void updateMembers_ ()
 This method is used to update extra member variables at the end of the setParameters() method. More...
 
void defaultsToParam_ ()
 Updates the parameters after the defaults have been set in the constructor. More...
 
- Protected Attributes inherited from DefaultParamHandler
Param param_
 Container for current parameters. More...
 
Param defaults_
 Container for default parameters. This member should be filled in the constructor of derived classes! More...
 
std::vector< Stringsubsections_
 Container for registered subsections. This member should be filled in the constructor of derived classes! More...
 
String error_name_
 Name that is displayed in error messages during the parameter checking. More...
 
bool check_defaults_
 If this member is set to false no checking if parameters in done;. More...
 
bool warn_empty_defaults_
 If this member is set to false no warning is emitted when defaults are empty;. More...
 

Detailed Description

generates complete list of all possible mass shifts due to isotopic labelling

Isotopic labelling results in the shift of peptide masses.

For example in a Lys8/Arg10 SILAC labelled sample, some peptides (the ones with one Arg in their sequence) will show a relative mass shift between light and heavy partners of 10 Da. This class constructs the complete list of all possible mass shifts that arise from isotopic labelling.

Constructor & Destructor Documentation

◆ MultiplexDeltaMassesGenerator() [1/2]

constructor

◆ MultiplexDeltaMassesGenerator() [2/2]

MultiplexDeltaMassesGenerator ( String  labels,
int  missed_cleavages,
std::map< String, double label_mass_shift 
)

constructor

Parameters
labelsstring describing the labels used in each sample. [...] specifies the labels for a single sample. For example For example, [][Lys8,Arg10] describes a standard SILAC experiment. In the "light" sample, none of the amino acids are labelled []. In the "heavy" sample, lysines and arginines are isotopically labelled [Lys8,Arg10].
missed_cleavagesmaximum number of missed cleavages due to incomplete digestion
label_mass_shiftname of labels (e.g. Lys8) and their corresponding mass shifts (e.g. 8.0141988132)

Member Function Documentation

◆ extractLabelSet()

MultiplexDeltaMasses::LabelSet extractLabelSet ( AASequence  sequence)

extract the label set from the sequence

Parameters
sequenceamino acid sequence

For example, the sequence VLSEEEIDDNFK(Label:13C(6)15N(2))AQR(Label:13C(6)15N(4)) contains a set of two labels, Lys8 and Arg10.

◆ fillLabelMasterList_()

void fillLabelMasterList_ ( )
private

fill label master list

◆ generateKnockoutDeltaMasses()

void generateKnockoutDeltaMasses ( )

generate all mass shifts that can occur due to the absence of one or multiple peptides (e.g. for a triplet experiment generate the doublets and singlets that might be present)

◆ getDeltaMassesList() [1/2]

std::vector<MultiplexDeltaMasses> getDeltaMassesList ( )

returns the list of mass shift patterns

Parameters
streamoutput stream

◆ getDeltaMassesList() [2/2]

const std::vector<MultiplexDeltaMasses>& getDeltaMassesList ( ) const

returns the list of mass shift patterns

◆ getLabelLong()

String getLabelLong ( String  label)

returns the long label string

Parameters
labelshort label, as it appears in the "labels" parameter, e.g. "Arg10"

◆ getLabelShort()

String getLabelShort ( String  label)

returns the short label string

Parameters
labellong label, UniMod name as it appears in peptide sequences, e.g. "Label:13C(6)15N(4)"

◆ getSamplesLabelsList() [1/2]

std::vector<std::vector<String> > getSamplesLabelsList ( )

returns the list of samples with their corresponding labels

For example in a standard SILAC experiment: sample 1: no_label sample 2: Lys8 Arg10

◆ getSamplesLabelsList() [2/2]

const std::vector<std::vector<String> >& getSamplesLabelsList ( ) const

returns the list of samples with their corresponding labels

For example in a standard SILAC experiment: sample 1: no_label sample 2: Lys8 Arg10

◆ printDeltaMassesList()

void printDeltaMassesList ( std::ostream &  stream) const

write the list of all mass patterns

For example in a standard SILAC experiment allowing for one missed cleavage, five mass shift patterns are possible. mass shift 1: 0 (no_label) 8.0142 (Lys8) mass shift 2: 0 (no_label) 10.0083 (Arg10) mass shift 3: 0 (no_label) 16.0284 (Lys8,Lys8) mass shift 4: 0 (no_label) 18.0225 (Arg10,Lys8) mass shift 5: 0 (no_label) 20.0165 (Arg10,Arg10)

Parameters
streamoutput stream

◆ printSamplesLabelsList()

void printSamplesLabelsList ( std::ostream &  stream) const

write the list of labels for each of the sample

For example in a standard SILAC experiment, sample 1 (light) is unlabelled and sample 2 (heavy) contains Lys8 and Arg 10 labels. sample 1: no_label sample 2: Lys8 Arg10

Member Data Documentation

◆ delta_masses_list_

std::vector<MultiplexDeltaMasses> delta_masses_list_
private

list of all possible mass shift patterns

◆ label_delta_mass_

std::map<String, double> label_delta_mass_
private

mapping from single label to delta mass e.g. "Arg10" -> 10.0082686

◆ label_long_short_

std::map<String, String> label_long_short_
private

mapping from a long label (as in PSI-MS name) to a short label (as in the user params) e.g. "Label:13C(6)15N(4)" -> "Arg10"

◆ label_master_list_

std::vector<Label> label_master_list_
private

master list of all labels

◆ label_short_long_

std::map<String, String> label_short_long_
private

mapping from a short label (as in the user params) to a long label (as in PSI-MS name) e.g. "Arg10" -> "Label:13C(6)15N(4)"

◆ labels_

String labels_
private

isotopic labels

◆ labels_list_

std::vector<String> labels_list_
private

flat list of all occurring isotopic labels

◆ missed_cleavages_

int missed_cleavages_
private

maximum number of missed cleavages

◆ samples_labels_

std::vector<std::vector<String> > samples_labels_
private

list of samples with their corresponding labels