Search for peptide pairs linked with a labeled cross-linker. More...
#include <OpenMS/ANALYSIS/XLMS/OpenPepXLAlgorithm.h>
Public Types | |
enum | ExitCodes { EXECUTION_OK , ILLEGAL_PARAMETERS , UNEXPECTED_RESULT , INCOMPATIBLE_INPUT_DATA } |
Exit codes. More... | |
![]() | |
enum | LogType { CMD , GUI , NONE } |
Possible log types. More... | |
Public Member Functions | |
OpenPepXLAlgorithm () | |
Default constructor. More... | |
~OpenPepXLAlgorithm () override | |
Default destructor. More... | |
ExitCodes | run (PeakMap &unprocessed_spectra, ConsensusMap &cfeatures, std::vector< FASTAFile::FASTAEntry > &fasta_db, std::vector< ProteinIdentification > &protein_ids, std::vector< PeptideIdentification > &peptide_ids, OPXLDataStructs::PreprocessedPairSpectra &preprocessed_pair_spectra, std::vector< std::pair< Size, Size > > &spectrum_pairs, std::vector< std::vector< OPXLDataStructs::CrossLinkSpectrumMatch > > &all_top_csms, PeakMap &spectra) |
Performs the main function of this class, the search for cross-linked peptides. More... | |
![]() | |
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... | |
DefaultParamHandler & | operator= (const DefaultParamHandler &rhs) |
Assignment operator. More... | |
virtual bool | operator== (const DefaultParamHandler &rhs) const |
Equality operator. More... | |
void | setParameters (const Param ¶m) |
Sets the parameters. More... | |
const Param & | getParameters () const |
Non-mutable access to the parameters. More... | |
const Param & | getDefaults () const |
Non-mutable access to the default parameters. More... | |
const String & | getName () 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... | |
![]() | |
ProgressLogger () | |
Constructor. More... | |
virtual | ~ProgressLogger () |
Destructor. More... | |
ProgressLogger (const ProgressLogger &other) | |
Copy constructor. More... | |
ProgressLogger & | operator= (const ProgressLogger &other) |
Assignment Operator. More... | |
void | setLogType (LogType type) const |
Sets the progress log that should be used. The default type is NONE! More... | |
LogType | getLogType () const |
Returns the type of progress log being used. More... | |
void | setLogger (ProgressLoggerImpl *logger) |
Sets the logger to be used for progress logging. More... | |
void | startProgress (SignedSize begin, SignedSize end, const String &label) const |
Initializes the progress display. More... | |
void | setProgress (SignedSize value) const |
Sets the current progress. More... | |
void | endProgress (UInt64 bytes_processed=0) const |
void | nextProgress () const |
increment progress by 1 (according to range begin-end) More... | |
Private Member Functions | |
void | updateMembers_ () override |
This method is used to update extra member variables at the end of the setParameters() method. More... | |
Static Private Member Functions | |
static OPXLDataStructs::PreprocessedPairSpectra | preprocessPairs_ (const PeakMap &spectra, const std::vector< std::pair< Size, Size > > &spectrum_pairs, const double cross_link_mass_iso_shift, double fragment_mass_tolerance, double fragment_mass_tolerance_xlinks, bool fragment_mass_tolerance_unit_ppm, bool deisotope) |
Additional Inherited Members | |
![]() | |
static void | writeParametersToMetaValues (const Param &write_this, MetaInfoInterface &write_here, const String &key_prefix="") |
Writes all parameters to meta values. More... | |
![]() | |
void | defaultsToParam_ () |
Updates the parameters after the defaults have been set in the constructor. More... | |
![]() | |
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< String > | subsections_ |
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... | |
![]() | |
LogType | type_ |
time_t | last_invoke_ |
ProgressLoggerImpl * | current_logger_ |
![]() | |
static int | recursion_depth_ |
Search for peptide pairs linked with a labeled cross-linker.
This tool performs a search for cross-links in the given mass spectra. It uses linked MS1 features to pair up MS2 spectra and uses these pairs to find the fragment peaks that contain the linker and those that do not.
It executes the following steps in order:
See below for available parameters and more functionality.
The spectra should be provided as one PeakMap. If you have multiple files, e.g. for multiple fractions, you should run this tool on each file separately. The database should be provided as a vector of FASTAEntries containing the target and decoy proteins. A ConsensusMap, that links the MS1 feature pairs from heavy and light cross-linkers is also required. This can be generated by the tool FeatureFinderMultiplex. Setting up FeatureFinderMultiplex: In the FeatureFinderMultiplex parameters you have to change the mass of one of the labels to the difference between the light and heavy (e.g. change the mass of Arg6 to 12.075321 for labeled DSS) in the advanced options. The parameter -labels should have one empty label ( [] ) and the label you adapted (e.g. [][Arg6]). For the other settings refer to the documentation of FeatureFinderMultiplex.
The parameters for fixed and variable modifications refer to additional modifications beside the cross-linker. The linker used in the experiment has to be described using the cross-linker specific parameters. Only one mass is allowed for a cross-linker, that links two peptides (cross_linker:mass_light), while multiple masses are possible for mono-links of the same cross-linking reagent. Mono-links are cross-linkers, that are linked to one peptide by one of their two reactive groups. The masses refer to the light version of the linker. The parameter cross_linker:mass_iso_shift defines the difference between the light and heavy versions of the cross-linker and the mono-links. The parameters cross_linker:residue1 and cross_linker:residue2 are used to enumerate the amino acids, that each end of the linker can react with. This way any heterobifunctional cross-linker can be defined. To define a homobifunctional cross-linker, these two parameters should have the same value. The parameter cross_linker:name is used to solve ambiguities arising from different cross-linkers having the same mass after the linking reaction (see section on output for clarification).
The input parameters protein_ids and peptide_ids are filled with XL-MS search parameters and IDs
pot. predecessor tools | → OpenPepXL → | pot. successor tools |
---|---|---|
- | - |
enum ExitCodes |
Default constructor.
|
override |
Default destructor.
|
staticprivate |
ExitCodes run | ( | PeakMap & | unprocessed_spectra, |
ConsensusMap & | cfeatures, | ||
std::vector< FASTAFile::FASTAEntry > & | fasta_db, | ||
std::vector< ProteinIdentification > & | protein_ids, | ||
std::vector< PeptideIdentification > & | peptide_ids, | ||
OPXLDataStructs::PreprocessedPairSpectra & | preprocessed_pair_spectra, | ||
std::vector< std::pair< Size, Size > > & | spectrum_pairs, | ||
std::vector< std::vector< OPXLDataStructs::CrossLinkSpectrumMatch > > & | all_top_csms, | ||
PeakMap & | spectra | ||
) |
Performs the main function of this class, the search for cross-linked peptides.
unprocessed_spectra | The input PeakMap of experimental spectra |
cfeatures | Consensus features linking light and heavy mass pairs; e.g. created by FeatureFinderMultiplex |
fasta_db | The protein database containing targets and decoys |
protein_ids | A result vector containing search settings. Should contain one PeptideIdentification. |
peptide_ids | A result vector containing cross-link spectrum matches as PeptideIdentifications and PeptideHits. Should be empty. |
preprocessed_pair_spectra | A result structure containing linear and cross-linked ion spectra. Will be overwritten. This is only necessary for writing out xQuest type spectrum files. |
spectrum_pairs | A result vector containing paired spectra indices. Should be empty. This is only necessary for writing out xQuest type spectrum files. |
all_top_csms | A result vector containing cross-link spectrum matches as CrossLinkSpectrumMatches. Should be empty. This is only necessary for writing out xQuest type spectrum files. |
spectra | A result vector containing the input spectra after preprocessing and filtering. Should be empty. This is only necessary for writing out xQuest type spectrum files. |
|
overrideprivatevirtual |
This method is used to update extra member variables at the end of the setParameters() method.
Also call it at the end of the derived classes' copy constructor and assignment operator.
The default implementation is empty.
Reimplemented from DefaultParamHandler.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |