35 #ifndef OPENMS_ANALYSIS_MAPMATCHING_MAPALIGNMENTALGORITHMIDENTIFICATION_H 36 #define OPENMS_ANALYSIS_MAPMATCHING_MAPALIGNMENTALGORITHMIDENTIFICATION_H 79 std::vector<TransformationDescription> &);
82 virtual void alignFeatureMaps(std::vector<FeatureMap > &,
83 std::vector<TransformationDescription> &);
86 virtual void alignConsensusMaps(std::vector<ConsensusMap> &,
87 std::vector<TransformationDescription> &);
90 virtual void alignPeptideIdentifications(
91 std::vector<std::vector<PeptideIdentification> > &,
92 std::vector<TransformationDescription> &);
95 virtual void setReference(
Size reference_index = 0,
96 const String & reference_file =
"");
108 template <
typename MapType>
110 std::vector<TransformationDescription> & transformations)
112 checkParameters_(maps.size());
113 startProgress(0, 3,
"aligning maps");
115 if (reference_index_)
118 getRetentionTimes_(maps[reference_index_ - 1], rt_data);
119 computeMedians_(rt_data, reference_,
true);
123 std::vector<SeqToList> rt_data(maps.size() -
bool(reference_index_));
124 for (
Size i = 0, j = 0; i < maps.size(); ++i)
126 if (i == reference_index_ - 1)
continue;
128 getRetentionTimes_(maps[i], rt_data[j++]);
132 computeTransformations_(rt_data, transformations,
true);
147 return "identification";
179 void computeMedians_(SeqToList & rt_data, SeqToValue & medians,
180 bool sorted =
false);
191 void getRetentionTimes_(std::vector<PeptideIdentification> & peptides,
192 SeqToList & rt_data);
200 void getRetentionTimes_(
MSExperiment<> & experiment, SeqToList & rt_data);
212 template <
typename MapType>
213 void getRetentionTimes_(
MapType & features, SeqToList & rt_data);
222 void computeTransformations_(std::vector<SeqToList> & rt_data,
223 std::vector<TransformationDescription> &
224 transforms,
bool sorted =
false);
233 void checkParameters_(
const Size runs);
241 void getReference_();
255 #endif // OPENMS_ANALYSIS_MAPMATCHING_MAPALIGNMENTALGORITHMIDENTIFICATION_H
void alignMaps(std::vector< MapType > &maps, std::vector< TransformationDescription > &transformations)
Align feature maps or consensus maps.
Definition: MapAlignmentAlgorithmIdentification.h:109
A more convenient string class.
Definition: String.h:57
Base class for all map-alignment algorithms.
Definition: MapAlignmentAlgorithm.h:58
Size reference_index_
Index of input file to use as reference (1-based!)
Definition: MapAlignmentAlgorithmIdentification.h:159
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
double score_threshold_
Score threshold for peptide hits.
Definition: MapAlignmentAlgorithmIdentification.h:165
static MapAlignmentAlgorithm * create()
Creates a new instance of this class (for Factory)
Definition: MapAlignmentAlgorithmIdentification.h:139
A map alignment algorithm based on peptide identifications from MS2 spectra.
Definition: MapAlignmentAlgorithmIdentification.h:67
std::map< String, DoubleList > SeqToList
Type to store retention times given for individual peptide sequences.
Definition: MapAlignmentAlgorithmIdentification.h:153
static String getProductName()
Returns the product name (for the Factory)
Definition: MapAlignmentAlgorithmIdentification.h:145
Size min_run_occur_
Minimum number of runs a peptide must occur in.
Definition: MapAlignmentAlgorithmIdentification.h:168
SeqToValue reference_
Reference retention times (per peptide sequence)
Definition: MapAlignmentAlgorithmIdentification.h:162
std::map< String, double > SeqToValue
Type to store one representative retention time per peptide sequence.
Definition: MapAlignmentAlgorithmIdentification.h:156
Represents the peptide hits for a spectrum.
Definition: PeptideIdentification.h:63