43 #include <boost/bind.hpp> 44 #include <boost/lexical_cast.hpp> 45 #include <boost/random/mersenne_twister.hpp> 46 #include <boost/random/uniform_int.hpp> 47 #include <boost/random/variate_generator.hpp> 90 typedef boost::unordered_map<size_t, ModifiedSequenceMap>
SequenceMapT;
93 typedef boost::unordered_map<size_t, boost::unordered_map<String, FragmentSeqMap > >
IonMapT;
95 typedef std::vector<std::pair<std::string, double> >
IonSeries;
98 typedef boost::unordered_map<String, TargetedExperiment::Peptide>
TargetDecoyMapT;
114 double precursor_mz_threshold,
115 double product_mz_threshold,
116 const std::vector<String>& fragment_types,
117 const std::vector<size_t>& fragment_charges,
118 bool enable_specific_losses,
119 bool enable_unspecific_losses,
120 int round_decPow = -4);
133 double lower_mz_limit,
double upper_mz_limit,
134 const std::vector<std::pair<double, double> >& swathes);
190 const std::vector<String>& fragment_types,
191 const std::vector<size_t>& fragment_charges,
192 bool enable_specific_losses,
193 bool enable_unspecific_losses,
194 bool enable_ms2_precursors,
196 const std::vector<std::pair<double, double> >& swathes,
197 int round_decPow = -4,
198 size_t max_num_alternative_localizations = 20,
199 int shuffle_seed = -1,
200 bool disable_decoy_transitions =
false);
213 std::vector<std::string> getMatchingPeptidoforms_(
const double fragment_ion,
214 const FragmentSeqMap& ions,
215 const double mz_threshold);
225 int getSwath_(
const std::vector<std::pair<double, double> >& swathes,
const double precursor_mz);
236 bool isInSwath_(
const std::vector<std::pair<double, double> >& swathes,
const double precursor_mz,
const double product_mz);
246 std::string getRandomSequence_(
size_t sequence_size, boost::variate_generator<boost::mt19937&, boost::uniform_int<> > pseudoRNG);
256 std::vector<std::vector<size_t> > nchoosekcombinations_(
const std::vector<size_t>& n,
size_t k);
267 std::vector<OpenMS::AASequence> addModificationsSequences_(
const std::vector<OpenMS::AASequence>& sequences,
268 const std::vector<std::vector<size_t> >& mods_combs,
282 std::vector<OpenMS::AASequence> generateTheoreticalPeptidoforms_(
const OpenMS::AASequence& sequence);
317 const std::vector<String>& fragment_types,
318 const std::vector<size_t>& fragment_charges,
319 bool enable_specific_losses,
320 bool enable_unspecific_losses,
321 bool enable_ms2_precursors,
322 const std::vector<std::pair<double, double> >& swathes,
324 size_t max_num_alternative_localizations,
325 SequenceMapT& TargetSequenceMap,
326 IonMapT& TargetIonMap,
327 PeptideMapT& TargetPeptideMap);
338 void generateDecoySequences_(
const SequenceMapT& TargetSequenceMap,
339 boost::unordered_map<String, String>& DecoySequenceMap,
354 const std::vector<String>& fragment_types,
355 const std::vector<size_t>& fragment_charges,
356 bool enable_specific_losses,
357 bool enable_unspecific_losses,
358 bool enable_ms2_precursors,
359 const std::vector<std::pair<double, double> >& swathes,
361 TargetDecoyMapT& TargetDecoyMap,
362 PeptideMapT& TargetPeptideMap,
363 boost::unordered_map<String, String>& DecoySequenceMap,
364 IonMapT& DecoyIonMap,
365 PeptideMapT& DecoyPeptideMap);
386 TransitionVectorType& transitions,
388 const std::vector<std::pair<double, double> >& swathes,
390 const PeptideMapT& TargetPeptideMap,
391 const IonMapT& TargetIonMap);
400 TransitionVectorType& transitions,
402 const std::vector<std::pair<double, double> >& swathes,
404 const PeptideMapT& DecoyPeptideMap,
405 TargetDecoyMapT& TargetDecoyMap,
406 const IonMapT& DecoyIonMap,
407 const IonMapT& TargetIonMap);
std::map< String, std::vector< const ReactionMonitoringTransition * > > CompoundTransitionMapType
Definition: MRMAssay.h:87
std::vector< OpenMS::TargetedExperiment::Peptide > PeptideVectorType
Definition: MRMAssay.h:82
std::vector< std::pair< std::string, double > > IonSeries
Describes an ion series: "ion_type" -> "fragment m/z".
Definition: MRMAssay.h:95
std::vector< OpenMS::TargetedExperiment::Compound > CompoundVectorType
Definition: MRMAssay.h:83
std::map< String, IonSeries > PeptideMapT
Maps a peptide sequence to an ion series: "ion_type" -> "fragment m/z".
Definition: MRMAssay.h:96
std::vector< OpenMS::TargetedExperiment::Protein > ProteinVectorType
Definition: MRMAssay.h:81
boost::unordered_map< size_t, ModifiedSequenceMap > SequenceMapT
Stores the ModifiedSequenceMap for all SWATH windows.
Definition: MRMAssay.h:90
boost::unordered_map< String, TargetedExperiment::Peptide > TargetDecoyMapT
Maps the peptide id (same for target and decoy) to the decoy peptide object.
Definition: MRMAssay.h:98
std::vector< OpenMS::ReactionMonitoringTransition > TransitionVectorType
Definition: MRMAssay.h:84
boost::unordered_map< size_t, boost::unordered_map< String, FragmentSeqMap > > IonMapT
Stores a mapping : "unmodified sequence" -> FragmentSeqMap for all SWATH windows. ...
Definition: MRMAssay.h:93
boost::unordered_map< String, std::set< std::string > > ModifiedSequenceMap
Maps an unmodified sequence to all its modified sequences.
Definition: MRMAssay.h:89
Representation of a peptide/protein sequence.
Definition: AASequence.h:113
A description of a targeted experiment containing precursor and production ions.
Definition: TargetedExperiment.h:64
Base class for all classes that want to report their progress.
Definition: ProgressLogger.h:54
A more convenient string class.
Definition: String.h:58
std::vector< std::pair< double, std::string > > FragmentSeqMap
Describes a fragment sequence map of : "fragment m/z" -> "modified sequence".
Definition: MRMAssay.h:92
Generate assays from a TargetedExperiment.
Definition: MRMAssay.h:68
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
std::map< String, std::vector< const ReactionMonitoringTransition * > > PeptideTransitionMapType
Definition: MRMAssay.h:86