35 #ifndef OPENMS_ANALYSIS_QUANTITATION_PEPTIDEANDPROTEINQUANT_H 
   36 #define OPENMS_ANALYSIS_QUANTITATION_PEPTIDEANDPROTEINQUANT_H 
  121         n_samples(0), quant_proteins(0), too_few_peptides(0),
 
  122         quant_peptides(0), total_peptides(0), quant_features(0),
 
  123         total_features(0), blank_features(0), ambig_features(0) {}
 
  151     void quantifyPeptides(std::vector<ProteinIdentification>& proteins,
 
  152                           std::vector<PeptideIdentification>& peptides);
 
  163     const Statistics & getStatistics();
 
  166     const PeptideQuant & getPeptideResults();
 
  169     const ProteinQuant & getProteinResults();
 
  189     PeptideHit getAnnotation_(std::vector<PeptideIdentification> & peptides);
 
  203     template <
typename T>
 
  204     void orderBest_(
const std::map<T, SampleAbundances> abundances,
 
  205                     std::vector<T> & result)
 
  207       typedef std::pair<Size, DoubleReal> PairType;
 
  208       std::multimap<PairType, T, std::greater<PairType> > order;
 
  209       for (
typename std::map<T, SampleAbundances>::const_iterator ab_it =
 
  210              abundances.begin(); ab_it != abundances.end(); ++ab_it)
 
  213         for (SampleAbundances::const_iterator samp_it = ab_it->second.begin();
 
  214              samp_it != ab_it->second.end(); ++samp_it)
 
  216           total += samp_it->second;
 
  218         if (total <= 0.0) 
continue;         
 
  219         PairType key = std::make_pair(ab_it->second.size(), total);
 
  220         order.insert(std::make_pair(key, ab_it->first));
 
  223       for (
typename std::multimap<PairType, T, std::greater<PairType> >::
 
  224            iterator ord_it = order.begin(); ord_it != order.end(); ++ord_it)
 
  226         result.push_back(ord_it->second);
 
  235     void quantifyPeptides_();
 
  240     void normalizePeptides_();
 
  254     String getAccession_(
const std::set<String> & pep_accessions,
 
  255                          std::map<String, String> & accession_to_leader);
 
  262     void countPeptides_(std::vector<PeptideIdentification> & peptides);
 
  265     void updateMembers_();
 
  271 #endif // OPENMS_ANALYSIS_QUANTITATION_PEPTIDEANDPROTEINQUANT_H 
Size too_few_peptides
Definition: PeptideAndProteinQuant.h:111
Representation of a protein identification run. 
Definition: ProteinIdentification.h:61
Statistics()
constructor 
Definition: PeptideAndProteinQuant.h:120
Size total_peptides
Definition: PeptideAndProteinQuant.h:114
A more convenient string class. 
Definition: String.h:56
Size n_samples
number of samples 
Definition: PeptideAndProteinQuant.h:108
ProteinData()
constructor 
Definition: PeptideAndProteinQuant.h:97
Size total_features
Definition: PeptideAndProteinQuant.h:117
A container for consensus elements. 
Definition: ConsensusMap.h:60
std::set< String > accessions
protein accessions for this peptide 
Definition: PeptideAndProteinQuant.h:71
PeptideQuant pep_quant_
Peptide quantification data. 
Definition: PeptideAndProteinQuant.h:177
~PeptideAndProteinQuant()
Destructor. 
Definition: PeptideAndProteinQuant.h:130
std::map< String, ProteinData > ProteinQuant
Mapping: protein accession -> protein data. 
Definition: PeptideAndProteinQuant.h:102
std::map< Int, SampleAbundances > abundances
mapping: charge -> sample -> abundance 
Definition: PeptideAndProteinQuant.h:65
std::map< AASequence, PeptideData > PeptideQuant
Mapping: peptide sequence (modified) -> peptide data. 
Definition: PeptideAndProteinQuant.h:82
PeptideData()
constructor 
Definition: PeptideAndProteinQuant.h:77
Helper class for peptide and protein quantification based on feature data annotated with IDs...
Definition: PeptideAndProteinQuant.h:53
Representation of a peptide hit. 
Definition: PeptideHit.h:54
Size id_count
number of identifications 
Definition: PeptideAndProteinQuant.h:74
Quantitative and associated data for a peptide. 
Definition: PeptideAndProteinQuant.h:62
Statistics stats_
Processing statistics for output in the end. 
Definition: PeptideAndProteinQuant.h:174
SampleAbundances total_abundances
mapping: sample -> total abundance 
Definition: PeptideAndProteinQuant.h:68
SampleAbundances total_abundances
mapping: sample -> total abundance 
Definition: PeptideAndProteinQuant.h:91
std::map< UInt64, DoubleReal > SampleAbundances
Mapping: sample ID -> abundance. 
Definition: PeptideAndProteinQuant.h:59
size_t Size
Size type e.g. used as variable which can hold result of size() 
Definition: Types.h:144
void orderBest_(const std::map< T, SampleAbundances > abundances, std::vector< T > &result)
Order keys (charges/peptides for peptide/protein quantification) according to how many samples they a...
Definition: PeptideAndProteinQuant.h:204
Representation of a Peak2D, RichPeak2D or Feature . 
Definition: FeatureHandle.h:54
Statistics for processing summary. 
Definition: PeptideAndProteinQuant.h:105
A base class for all classes handling default parameters. 
Definition: DefaultParamHandler.h:90
std::map< String, SampleAbundances > abundances
mapping: peptide (unmodified) -> sample -> abundance 
Definition: PeptideAndProteinQuant.h:88
Quantitative and associated data for a protein. 
Definition: PeptideAndProteinQuant.h:85
Size id_count
total number of identifications (of peptides mapping to this protein) 
Definition: PeptideAndProteinQuant.h:94
ProteinQuant prot_quant_
Protein quantification data. 
Definition: PeptideAndProteinQuant.h:180