35 #ifndef OPENMS_ANALYSIS_MAPMATCHING_MAPALIGNMENTALGORITHMIDENTIFICATION_H
36 #define OPENMS_ANALYSIS_MAPMATCHING_MAPALIGNMENTALGORITHMIDENTIFICATION_H
78 std::vector<TransformationDescription> &);
81 virtual void alignFeatureMaps(std::vector<
FeatureMap<> > &,
82 std::vector<TransformationDescription> &);
85 virtual void alignConsensusMaps(std::vector<ConsensusMap> &,
86 std::vector<TransformationDescription> &);
89 virtual void alignPeptideIdentifications(
90 std::vector<std::vector<PeptideIdentification> > &,
91 std::vector<TransformationDescription> &);
94 virtual void setReference(
Size reference_index = 0,
95 const String & reference_file =
"");
107 template <
typename MapType>
109 std::vector<TransformationDescription> & transformations)
111 checkParameters_(maps.size());
112 startProgress(0, 3,
"aligning maps");
114 if (reference_index_)
117 getRetentionTimes_(maps[reference_index_ - 1], rt_data);
118 computeMedians_(rt_data, reference_,
true);
122 std::vector<SeqToList> rt_data(maps.size() - bool(reference_index_));
123 for (
Size i = 0, j = 0; i < maps.size(); ++i)
125 if (i == reference_index_ - 1)
continue;
127 getRetentionTimes_(maps[i], rt_data[j++]);
131 computeTransformations_(rt_data, transformations,
true);
146 return "identification";
179 bool sorted =
false);
190 void getRetentionTimes_(std::vector<PeptideIdentification> & peptides,
211 template <
typename MapType>
212 void getRetentionTimes_(MapType & features,
SeqToList & rt_data);
221 void computeTransformations_(std::vector<SeqToList> & rt_data,
222 std::vector<TransformationDescription> &
223 transforms,
bool sorted =
false);
232 void checkParameters_(
const Size runs);
240 void getReference_();
254 #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:108
DoubleReal score_threshold_
Score threshold for peptide hits.
Definition: MapAlignmentAlgorithmIdentification.h:164
A more convenient string class.
Definition: String.h:56
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:158
std::map< String, DoubleReal > SeqToValue
Type to store one representative retention time per peptide sequence.
Definition: MapAlignmentAlgorithmIdentification.h:155
static MapAlignmentAlgorithm * create()
Creates a new instance of this class (for Factory)
Definition: MapAlignmentAlgorithmIdentification.h:138
A map alignment algorithm based on peptide identifications from MS2 spectra.
Definition: MapAlignmentAlgorithmIdentification.h:66
std::map< String, DoubleList > SeqToList
Type to store retention times given for individual peptide sequences.
Definition: MapAlignmentAlgorithmIdentification.h:152
Representation of a mass spectrometry experiment.
Definition: MSExperiment.h:68
static String getProductName()
Returns the product name (for the Factory)
Definition: MapAlignmentAlgorithmIdentification.h:144
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:144
Size min_run_occur_
Minimum number of runs a peptide must occur in.
Definition: MapAlignmentAlgorithmIdentification.h:167
SeqToValue reference_
Reference retention times (per peptide sequence)
Definition: MapAlignmentAlgorithmIdentification.h:161
Represents the peptide hits for a spectrum.
Definition: PeptideIdentification.h:63