OpenMS
InclusionExclusionList Class Reference

Provides functionality for writing inclusion or exclusion lists. More...

#include <OpenMS/ANALYSIS/TARGETED/InclusionExclusionList.h>

Inheritance diagram for InclusionExclusionList:
[legend]
Collaboration diagram for InclusionExclusionList:
[legend]

Classes

struct  IEWindow
 
class  WindowDistance_
 Determine distance between two spectra. More...
 

Public Member Functions

Constructors and destructors
 InclusionExclusionList ()
 default constructor More...
 
void writeTargets (const std::vector< FASTAFile::FASTAEntry > &fasta_entries, const String &out_path, const IntList &charges, const String &rt_model_path)
 Writes inclusion or exclusion list of tryptic peptides of the given proteins (tab-delimited). More...
 
void writeTargets (const FeatureMap &map, const String &out_path)
 Writes inclusion or exclusion list of given feature map. More...
 
void writeTargets (const std::vector< PeptideIdentification > &pep_ids, const String &out_path, const IntList &charges)
 Writes inclusion or exclusion list of given peptide ids (tab-delimited). 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...
 
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...
 

Protected Types

typedef std::vector< IEWindowWindowList
 

Protected Member Functions

void mergeOverlappingWindows_ (WindowList &list) const
 Merges overlapping windows using m/z tolerance. More...
 
void writeToFile_ (const String &out_path, const WindowList &windows) const
 Writes the windows to the given file. More...
 
- 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...
 

Additional Inherited Members

- Static Public Member Functions inherited from DefaultParamHandler
static void writeParametersToMetaValues (const Param &write_this, MetaInfoInterface &write_here, const String &key_prefix="")
 Writes all parameters to meta values. 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

Provides functionality for writing inclusion or exclusion lists.

Parameters of this class are:

NameTypeDefaultRestrictionsDescription
missed_cleavages int0  Number of missed cleavages used for protein digestion.
RT:unit stringminutes minutes, secondsCreate lists with units as seconds instead of minutes
RT:use_relative stringtrue true, falseUse relative RT window, which depends on RT of precursor.
RT:window_relative float0.05 min: 0.0 max: 10.0[for RT:use_relative == true] The relative factor X for the RT exclusion window, e.g. the window is calculated as [rt - rt*X, rt + rt*X].
RT:window_absolute float90.0 min: 0.0[for RT:use_relative == false] The absolute value X for the RT exclusion window in [sec], e.g. the window is calculated as [rt - X, rt + X].
merge:mz_tol float10.0 min: 0.0Two inclusion/exclusion windows are merged when they (almost) overlap in RT (see 'rt_tol') and are close in m/z by this tolerance. Unit of this is defined in 'mz_tol_unit'.
merge:mz_tol_unit stringppm ppm, DaUnit of 'mz_tol'
merge:rt_tol float1.1 min: 0.0Maximal RT delta (in seconds) which would allow two windows in RT to overlap (which causes merging the windows). Two inclusion/exclusion windows are merged when they (almost) overlap in RT and are close in m/z by this tolerance (see 'mz_tol'). Unit of this param is [seconds].

Note:
  • If a section name is documented, the documentation is displayed as tooltip.
  • Advanced parameter names are italic.
Todo:
allow modifications (fixed?)

Member Typedef Documentation

◆ WindowList

typedef std::vector<IEWindow> WindowList
protected

Constructor & Destructor Documentation

◆ InclusionExclusionList()

default constructor

Member Function Documentation

◆ mergeOverlappingWindows_()

void mergeOverlappingWindows_ ( WindowList list) const
protected

Merges overlapping windows using m/z tolerance.

We employ single linkage clustering to merge windows that:

  • are close in m/z
  • overlap in RT All clusters found by this are merged such that:
  • RT windows are extended
  • m/z value is averaged over all windows

◆ writeTargets() [1/3]

void writeTargets ( const FeatureMap map,
const String out_path 
)

Writes inclusion or exclusion list of given feature map.

Exceptions
Exception::UnableToCreateFileis thrown if the output file cannot be created

◆ writeTargets() [2/3]

void writeTargets ( const std::vector< FASTAFile::FASTAEntry > &  fasta_entries,
const String out_path,
const IntList charges,
const String rt_model_path 
)

Writes inclusion or exclusion list of tryptic peptides of the given proteins (tab-delimited).

Exceptions
Exception::UnableToCreateFileis thrown if the output file cannot be created

◆ writeTargets() [3/3]

void writeTargets ( const std::vector< PeptideIdentification > &  pep_ids,
const String out_path,
const IntList charges 
)

Writes inclusion or exclusion list of given peptide ids (tab-delimited).

Exceptions
Exception::UnableToCreateFileis thrown if the output file cannot be created
Exception::InvalidSizeis thrown if a peptide id contains more than one hit
Exception::MissingInformationis thrown if a peptide id contains no RT information

◆ writeToFile_()

void writeToFile_ ( const String out_path,
const WindowList windows 
) const
protected

Writes the windows to the given file.

Format for each window is: <mz>\t<rt_start>\t<rt_stop>\n

Exceptions
Exception::UnableToCreateFilewhen file cannot be created