| OpenMS 2.5.0

Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
ConsensusIDAlgorithm Class Referenceabstract
Analysis » Identification

Abstract base class for all ConsensusID algorithms (that calculate a consensus from multiple ID runs). More...

`#include <OpenMS/ANALYSIS/ID/ConsensusIDAlgorithm.h>`

Inheritance diagram for ConsensusIDAlgorithm:

## Public Member Functions

void | apply (std::vector< PeptideIdentification > &ids, Size number_of_runs=0)
| Calculates the consensus ID for a set of peptide identifications of one spectrum or (consensus) feature. More...
| ~ConsensusIDAlgorithm () override
| Virtual destructor. 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 DefaultParamHandler & | operator= (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 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...

## Protected Types

typedef std::map< AASequence, std::pair< Int, std::vector< double > > > | SequenceGrouping
| Mapping: peptide sequence -> (charge, scores) More...

## Protected Member Functions

| ConsensusIDAlgorithm ()
| Default constructor. More...
virtual void | apply_ (std::vector< PeptideIdentification > &ids, SequenceGrouping &results)=0
| Consensus computation (to be implemented by subclasses). More...
void | updateMembers_ () override
| Docu in base class. More...
void | compareChargeStates_ (Int &recorded_charge, Int new_charge, const AASequence &peptide)
| Compare (and possibly update) charge state information. More...
Protected Member Functions inherited from DefaultParamHandler
void | defaultsToParam_ ()
| Updates the parameters after the defaults have been set in the constructor. More...

## Protected Attributes

Size | considered_hits_
| Number of peptide hits considered per ID run (input parameter) More...
Size | number_of_runs_
| Number of ID runs. More...
double | min_support_
| Fraction of required support by other ID runs (input parameter) More...
bool | count_empty_
| Count empty runs in "min_support" calculation? (input parameter) 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< 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...

## Private Member Functions

| ConsensusIDAlgorithm (const ConsensusIDAlgorithm &)
| Not implemented. More...
ConsensusIDAlgorithm & | operator= (const ConsensusIDAlgorithm &)
| Not implemented. More...

## Detailed Description

Abstract base class for all ConsensusID algorithms (that calculate a consensus from multiple ID runs).

The main function is apply(), which aggregates several peptide identifications into one.

Derived classes should implement apply_(), which takes a list of peptide identifications and produces a map of peptide sequences with accompanying scores (and charge states). Currently there are two derived classes, OpenMS::ConsensusIDAlgorithmIdentity and OpenMS::ConsensusIDAlgorithmSimilarity. They serve as abstract base classes for algorithms that score only identical peptide sequences together and algorithms that take similarities between peptides into account, respectively.

See also the documentation of the TOPP tool, ConsensusID, for more information (e.g. on the `filter:` parameters).

Parameters of this class are:

Name | Type | Default | Restrictions | Description
--- | --- | --- | --- | ---
filter:considered_hits | int | 0 | min: 0 | The number of top hits in each ID run that are considered for consensus scoring ('0' for all hits).
filter:min_support | float | 0.0 | min: 0.0 max: 1.0 | For each peptide hit from an ID run, the fraction of other ID runs that must support that hit (otherwise it is removed).
filter:count_empty | string | false | true, false | Count empty ID runs (i.e. those containing no peptide hit for the current spectrum) when calculating 'min_support'?

Note:

- If a section name is documented, the documentation is displayed as tooltip.
- Advanced parameter names are italic.

## Member Typedef Documentation

## ◆ SequenceGrouping

typedef std::map<AASequence, std::pair<Int, std::vector<double> > > SequenceGrouping

protected

Mapping: peptide sequence -> (charge, scores)

## Constructor & Destructor Documentation

## ◆ ~ConsensusIDAlgorithm()

~ConsensusIDAlgorithm | ( |  | ) |

override

Virtual destructor.

## ◆ ConsensusIDAlgorithm() [1/2]

ConsensusIDAlgorithm | ( |  | ) |

protected

Default constructor.

## ◆ ConsensusIDAlgorithm() [2/2]

ConsensusIDAlgorithm | ( | const ConsensusIDAlgorithm & |  | ) |

private

Not implemented.

## Member Function Documentation

## ◆ apply()

void apply | ( | std::vector< PeptideIdentification > & | ids,
|  | Size | number_of_runs = `0`
| ) |  |

Calculates the consensus ID for a set of peptide identifications of one spectrum or (consensus) feature.

Make sure that the score type (PeptideIdentification::getScoreType()) and the score orientation (PeptideIdentification::isHigherScoreBetter()) are set properly!

Parameters

  ids | Peptide identifications (input: more than one, output: one)
  number_of_runs | Number of ID runs (default: size of "ids")

## ◆ apply_()

virtual void apply_ | ( | std::vector< PeptideIdentification > & | ids,
|  | SequenceGrouping & | results
| ) |  |

protected pure virtual

Consensus computation (to be implemented by subclasses).

Parameters

  ids | Peptide identifications (input)
  results | Algorithm results (output). For each peptide sequence, two scores are expected: the actual consensus score and the "support" value, in this order.

Implemented in ConsensusIDAlgorithmIdentity, and ConsensusIDAlgorithmSimilarity.

## ◆ compareChargeStates_()

void compareChargeStates_ | ( | Int & | recorded_charge,
|  | Int | new_charge,
|  | const AASequence & | peptide
| ) |  |

protected

Compare (and possibly update) charge state information.

## ◆ operator=()

ConsensusIDAlgorithm& operator= | ( | const ConsensusIDAlgorithm & |  | ) |

private

Not implemented.

## ◆ updateMembers_()

void updateMembers_ | ( |  | ) |

override protected virtual

Docu in base class.

Reimplemented from DefaultParamHandler.

Reimplemented in ConsensusIDAlgorithmPEPMatrix, and ConsensusIDAlgorithmPEPIons.

## Member Data Documentation

## ◆ considered_hits_

Size considered_hits_

protected

Number of peptide hits considered per ID run (input parameter)

## ◆ count_empty_

bool count_empty_

protected

Count empty runs in "min_support" calculation? (input parameter)

## ◆ min_support_

double min_support_

protected

Fraction of required support by other ID runs (input parameter)

## ◆ number_of_runs_

Size number_of_runs_

protected

Number of ID runs.