OpenMS
PeptideIdentification Class Reference

Represents the peptide hits for a spectrum. More...

#include <OpenMS/METADATA/PeptideIdentification.h>

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

Public Types

typedef PeptideHit HitType
 Hit type definition. More...
 

Constructors, destructor, operators

String id_
 Identifier by which ProteinIdentification and PeptideIdentification are matched. More...
 
std::vector< PeptideHithits_
 A list containing the peptide hits. More...
 
double significance_threshold_
 the peptide significance threshold More...
 
String score_type_
 The score type (Mascot, Sequest, e-value, p-value) More...
 
bool higher_score_better_
 The score orientation. More...
 
String base_name_
 
double mz_
 
double rt_
 
 PeptideIdentification ()
 default constructor More...
 
virtual ~PeptideIdentification () noexcept
 destructor More...
 
 PeptideIdentification (const PeptideIdentification &)=default
 copy constructor More...
 
 PeptideIdentification (PeptideIdentification &&) noexcept=default
 Move constructor. More...
 
PeptideIdentificationoperator= (const PeptideIdentification &)=default
 Assignment operator. More...
 
PeptideIdentificationoperator= (PeptideIdentification &&)=default
 Move assignment operator. More...
 
bool operator== (const PeptideIdentification &rhs) const
 Equality operator. More...
 
bool operator!= (const PeptideIdentification &rhs) const
 Inequality operator. More...
 
double getRT () const
 returns the RT of the MS2 spectrum where the identification occurred More...
 
void setRT (double rt)
 sets the RT of the MS2 spectrum where the identification occurred More...
 
bool hasRT () const
 shortcut for isnan(getRT()) More...
 
double getMZ () const
 returns the MZ of the MS2 spectrum More...
 
void setMZ (double mz)
 sets the MZ of the MS2 spectrum More...
 
bool hasMZ () const
 shortcut for isnan(getRT()) More...
 
const std::vector< PeptideHit > & getHits () const
 returns the peptide hits as const More...
 
std::vector< PeptideHit > & getHits ()
 returns the peptide hits More...
 
void insertHit (const PeptideHit &hit)
 Appends a peptide hit. More...
 
void insertHit (PeptideHit &&hit)
 Appends a peptide hit. More...
 
void setHits (const std::vector< PeptideHit > &hits)
 Sets the peptide hits. More...
 
void setHits (std::vector< PeptideHit > &&hits)
 
double getSignificanceThreshold () const
 returns the peptide significance threshold value More...
 
void setSignificanceThreshold (double value)
 setting of the peptide significance threshold value More...
 
const StringgetScoreType () const
 returns the peptide score type More...
 
void setScoreType (const String &type)
 sets the peptide score type More...
 
bool isHigherScoreBetter () const
 returns the peptide score orientation More...
 
void setHigherScoreBetter (bool value)
 sets the peptide score orientation More...
 
const StringgetIdentifier () const
 Returns the identifier which links this PI to its corresponding ProteinIdentification. More...
 
void setIdentifier (const String &id)
 sets the identifier which links this PI to its corresponding ProteinIdentification More...
 
const StringgetBaseName () const
 returns the base name which links to underlying peak map More...
 
void setBaseName (const String &base_name)
 sets the base name which links to underlying peak map More...
 
const String getExperimentLabel () const
 returns the experiment label for this identification More...
 
void setExperimentLabel (const String &type)
 sets the experiment label for this identification More...
 
String getSpectrumReference () const
 
void setSpectrumReference (const String &ref)
 
void assignRanks ()
 Sorts the hits by score and assigns ranks according to the scores. More...
 
void sort ()
 Sorts the hits by score. More...
 
void sortByRank ()
 Sorts the hits by rank. More...
 
bool empty () const
 Returns if this PeptideIdentification result is empty. More...
 
static std::vector< PeptideHitgetReferencingHits (const std::vector< PeptideHit > &, const std::set< String > &accession)
 returns all peptide hits which reference to a given protein accession (i.e. filter by protein accession) More...
 
static std::multimap< String, std::pair< Size, Size > > buildUIDsFromAllPepIDs (const ConsensusMap &cmap)
 Builds MultiMap over all PI's via their UID (as obtained from buildUIDFromPepID()), which is mapped to a index of PI therein, i.e. cm[p.first].getPeptideIdentifications()[p.second];. More...
 
static String buildUIDFromPepID (const PeptideIdentification &pep_id, const std::map< String, StringList > &fidentifier_to_msrunpath)
 Builds UID from PeptideIdentification The UID can be formed in two ways. Either it is composed of the map_index and the spectrum-reference or of the ms_run_path and the spectrum_references, if the path is unique. The parts of the UID are separated by '|'. More...
 

Additional Inherited Members

- Public Member Functions inherited from MetaInfoInterface
 MetaInfoInterface ()
 Constructor. More...
 
 MetaInfoInterface (const MetaInfoInterface &rhs)
 Copy constructor. More...
 
 MetaInfoInterface (MetaInfoInterface &&) noexcept
 Move constructor. More...
 
 ~MetaInfoInterface ()
 Destructor. More...
 
MetaInfoInterfaceoperator= (const MetaInfoInterface &rhs)
 Assignment operator. More...
 
MetaInfoInterfaceoperator= (MetaInfoInterface &&) noexcept
 Move assignment operator. More...
 
void swap (MetaInfoInterface &rhs)
 Swap contents. More...
 
bool operator== (const MetaInfoInterface &rhs) const
 Equality operator. More...
 
bool operator!= (const MetaInfoInterface &rhs) const
 Equality operator. More...
 
const DataValuegetMetaValue (const String &name) const
 Returns the value corresponding to a string, or DataValue::EMPTY if not found. More...
 
DataValue getMetaValue (const String &name, const DataValue &default_value) const
 Returns the value corresponding to a string, or a default value (e.g.: DataValue::EMPTY) if not found. More...
 
const DataValuegetMetaValue (UInt index) const
 Returns the value corresponding to the index, or DataValue::EMPTY if not found. More...
 
DataValue getMetaValue (UInt index, const DataValue &default_value) const
 Returns the value corresponding to the index, or a default value (e.g.: DataValue::EMPTY) if not found. More...
 
bool metaValueExists (const String &name) const
 Returns whether an entry with the given name exists. More...
 
bool metaValueExists (UInt index) const
 Returns whether an entry with the given index exists. More...
 
void setMetaValue (const String &name, const DataValue &value)
 Sets the DataValue corresponding to a name. More...
 
void setMetaValue (UInt index, const DataValue &value)
 Sets the DataValue corresponding to an index. More...
 
void removeMetaValue (const String &name)
 Removes the DataValue corresponding to name if it exists. More...
 
void removeMetaValue (UInt index)
 Removes the DataValue corresponding to index if it exists. More...
 
void addMetaValues (const MetaInfoInterface &from)
 function to copy all meta values from one object to this one More...
 
void getKeys (std::vector< String > &keys) const
 Fills the given vector with a list of all keys for which a value is set. More...
 
void getKeys (std::vector< UInt > &keys) const
 Fills the given vector with a list of all keys for which a value is set. More...
 
bool isMetaEmpty () const
 Returns if the MetaInfo is empty. More...
 
void clearMetaInfo ()
 Removes all meta values. More...
 
- Static Public Member Functions inherited from MetaInfoInterface
static MetaInfoRegistrymetaRegistry ()
 Returns a reference to the MetaInfoRegistry. More...
 
- Protected Member Functions inherited from MetaInfoInterface
void createIfNotExists_ ()
 Creates the MetaInfo object if it does not exist. More...
 
- Protected Attributes inherited from MetaInfoInterface
MetaInfometa_
 Pointer to the MetaInfo object (0 by default) More...
 

Detailed Description

Represents the peptide hits for a spectrum.

This class is closely related to ProteinIdentification, which stores the protein hits and the general information about the identification run. More than one PeptideIdentification can belong to one ProteinIdentification. The general information about a PeptideIdentification has to be looked up in the corresponding ProteinIdentification, using the unique identifier that links the two. When loading PeptideHit instances from a File, the retention time and mass-to-charge ratio of the precursor spectrum can be accessed using getRT() and getMZ(). This information can be used to map the peptide hits to an MSExperiment, a FeatureMap or a ConsensusMap using the IDMapper class.

Member Typedef Documentation

◆ HitType

Hit type definition.

Constructor & Destructor Documentation

◆ PeptideIdentification() [1/3]

default constructor

◆ ~PeptideIdentification()

virtual ~PeptideIdentification ( )
virtualnoexcept

destructor

◆ PeptideIdentification() [2/3]

copy constructor

◆ PeptideIdentification() [3/3]

PeptideIdentification ( PeptideIdentification &&  )
defaultnoexcept

Move constructor.

Member Function Documentation

◆ assignRanks()

void assignRanks ( )

Sorts the hits by score and assigns ranks according to the scores.

◆ buildUIDFromPepID()

static String buildUIDFromPepID ( const PeptideIdentification pep_id,
const std::map< String, StringList > &  fidentifier_to_msrunpath 
)
static

Builds UID from PeptideIdentification The UID can be formed in two ways. Either it is composed of the map_index and the spectrum-reference or of the ms_run_path and the spectrum_references, if the path is unique. The parts of the UID are separated by '|'.

Exceptions
Exception::MissingInformationif Spectrum reference missing at PeptideIdentification
Exception::MissingInformationif Multiple files in a run, but no map_index in PeptideIdentification found
Parameters
pep_idPeptideIdentification for which the UID is computed
identifier_to_msrunpathMapping required to build UID. Can be obtained from ProteinIdentification::Mapping::identifier_to_msrunpath which can be created from the corresponding ProtID's
Returns
Returns the UID for PeptideIdentification

◆ buildUIDsFromAllPepIDs()

static std::multimap<String, std::pair<Size, Size> > buildUIDsFromAllPepIDs ( const ConsensusMap cmap)
static

Builds MultiMap over all PI's via their UID (as obtained from buildUIDFromPepID()), which is mapped to a index of PI therein, i.e. cm[p.first].getPeptideIdentifications()[p.second];.

Parameters
cmapAll PI's of the CMap are enumerated and their UID -> pair mapping is computed
Returns
Returns the MultiMap

◆ empty()

bool empty ( ) const

Returns if this PeptideIdentification result is empty.

◆ getBaseName()

const String& getBaseName ( ) const

returns the base name which links to underlying peak map

◆ getExperimentLabel()

const String getExperimentLabel ( ) const

returns the experiment label for this identification

◆ getHits() [1/2]

std::vector<PeptideHit>& getHits ( )

returns the peptide hits

◆ getHits() [2/2]

◆ getIdentifier()

const String& getIdentifier ( ) const

Returns the identifier which links this PI to its corresponding ProteinIdentification.

Referenced by ProteinIdentification::Mapping::getPrimaryMSRunPath().

◆ getMZ()

double getMZ ( ) const

◆ getReferencingHits()

static std::vector<PeptideHit> getReferencingHits ( const std::vector< PeptideHit > &  ,
const std::set< String > &  accession 
)
static

returns all peptide hits which reference to a given protein accession (i.e. filter by protein accession)

◆ getRT()

double getRT ( ) const

◆ getScoreType()

const String& getScoreType ( ) const

returns the peptide score type

◆ getSignificanceThreshold()

double getSignificanceThreshold ( ) const

returns the peptide significance threshold value

◆ getSpectrumReference()

String getSpectrumReference ( ) const

returns the spectrum reference for this identification. Currently it should almost always be the full native vendor ID.

◆ hasMZ()

bool hasMZ ( ) const

shortcut for isnan(getRT())

Referenced by IdentificationDataConverter::PepIDCompare::operator()().

◆ hasRT()

bool hasRT ( ) const

shortcut for isnan(getRT())

Referenced by IdentificationDataConverter::PepIDCompare::operator()().

◆ insertHit() [1/2]

void insertHit ( const PeptideHit hit)

Appends a peptide hit.

◆ insertHit() [2/2]

void insertHit ( PeptideHit &&  hit)

Appends a peptide hit.

◆ isHigherScoreBetter()

bool isHigherScoreBetter ( ) const

returns the peptide score orientation

Referenced by IDFilter::annotateBestPerPeptideWithData().

◆ operator!=()

bool operator!= ( const PeptideIdentification rhs) const

Inequality operator.

◆ operator=() [1/2]

PeptideIdentification& operator= ( const PeptideIdentification )
default

Assignment operator.

◆ operator=() [2/2]

PeptideIdentification& operator= ( PeptideIdentification &&  )
default

Move assignment operator.

◆ operator==()

bool operator== ( const PeptideIdentification rhs) const

Equality operator.

◆ setBaseName()

void setBaseName ( const String base_name)

sets the base name which links to underlying peak map

◆ setExperimentLabel()

void setExperimentLabel ( const String type)

sets the experiment label for this identification

◆ setHigherScoreBetter()

void setHigherScoreBetter ( bool  value)

sets the peptide score orientation

◆ setHits() [1/2]

void setHits ( const std::vector< PeptideHit > &  hits)

Sets the peptide hits.

◆ setHits() [2/2]

void setHits ( std::vector< PeptideHit > &&  hits)

◆ setIdentifier()

void setIdentifier ( const String id)

sets the identifier which links this PI to its corresponding ProteinIdentification

◆ setMZ()

void setMZ ( double  mz)

sets the MZ of the MS2 spectrum

◆ setRT()

void setRT ( double  rt)

sets the RT of the MS2 spectrum where the identification occurred

◆ setScoreType()

void setScoreType ( const String type)

sets the peptide score type

◆ setSignificanceThreshold()

void setSignificanceThreshold ( double  value)

setting of the peptide significance threshold value

◆ setSpectrumReference()

void setSpectrumReference ( const String ref)

sets the spectrum reference for this identification. Currently it should almost always be the full native vendor ID.

◆ sort()

void sort ( )

Sorts the hits by score.

Sorting takes the score orientation (higher_score_better_) into account, i.e. after sorting, the best-scoring hit is the first.

Referenced by IDFilter::annotateBestPerPeptideWithData().

◆ sortByRank()

void sortByRank ( )

Sorts the hits by rank.

Sorting hits by rank attribute, i.e. after sorting, the hits will be in ascending order of rank.

Member Data Documentation

◆ base_name_

String base_name_
protected

◆ higher_score_better_

bool higher_score_better_
protected

The score orientation.

◆ hits_

std::vector<PeptideHit> hits_
protected

A list containing the peptide hits.

◆ id_

String id_
protected

Identifier by which ProteinIdentification and PeptideIdentification are matched.

◆ mz_

double mz_
protected

◆ rt_

double rt_
protected

◆ score_type_

String score_type_
protected

The score type (Mascot, Sequest, e-value, p-value)

◆ significance_threshold_

double significance_threshold_
protected

the peptide significance threshold