|
These functions convert the relevant data from a TSVTransition to the datastructures used by the TraML handler, namely ReactionMonitoringTransition, TargetedExperiment::Protein and TargetedExperiment::Peptide.
|
typedef std::vector< OpenMS::TargetedExperiment::Protein > | ProteinVectorType |
| Typedefs. More...
|
|
typedef std::vector< OpenMS::TargetedExperiment::Peptide > | PeptideVectorType |
|
typedef std::vector< OpenMS::ReactionMonitoringTransition > | TransitionVectorType |
|
String | retentionTimeInterpretation_ |
| Members. More...
|
|
bool | override_group_label_check_ |
|
bool | force_invalid_mods_ |
|
static const char * | strarray_ [] |
|
static const std::vector< std::string > | header_names_ |
|
TransitionTSVFile::TSVTransition | convertTransition_ (const ReactionMonitoringTransition *it, OpenMS::TargetedExperiment &targeted_exp) |
|
void | updateMembers_ () override |
| Synchronize members with param class. More...
|
|
void | getTSVHeader_ (const std::string &line, char &delimiter, std::vector< std::string > header, std::map< std::string, int > &header_dict) |
| Determine separator in a CSV file and check for correct headers. More...
|
|
void | readUnstructuredTSVInput_ (const char *filename, FileTypes::Type filetype, std::vector< TSVTransition > &transition_list) |
| Read tab or comma separated input with columns defined by their column headers only. More...
|
|
void | spectrastRTExtract (const String str_inp, double &value, bool &spectrast_legacy) |
|
bool | spectrastAnnotationExtract (const String str_inp, TSVTransition &mytransition) |
|
void | cleanupTransitions_ (TSVTransition &mytransition) |
| Cleanup of the read fields (removing quotes etc.) More...
|
|
void | resolveMixedSequenceGroups_ (std::vector< TSVTransition > &transition_list) |
|
void | createTransition_ (std::vector< TSVTransition >::iterator &tr_it, OpenMS::ReactionMonitoringTransition &rm_trans) |
| Populate a new ReactionMonitoringTransition object from a row in the csv. More...
|
|
void | createProtein_ (std::vector< TSVTransition >::iterator &tr_it, OpenMS::TargetedExperiment::Protein &protein) |
| Populate a new TargetedExperiment::Protein object from a row in the csv. More...
|
|
void | interpretRetentionTime_ (std::vector< TargetedExperiment::RetentionTime > &retention_times, const OpenMS::DataValue rt_value) |
| Helper function to assign retention times to compounds and peptides. More...
|
|
void | createPeptide_ (std::vector< TSVTransition >::iterator &tr_it, OpenMS::TargetedExperiment::Peptide &peptide) |
| Populate a new TargetedExperiment::Peptide object from a row in the csv. More...
|
|
void | createCompound_ (std::vector< TSVTransition >::iterator &tr_it, OpenMS::TargetedExperiment::Compound &compound) |
| Populate a new TargetedExperiment::Compound object (a metabolite) from a row in the csv. More...
|
|
void | addModification_ (std::vector< TargetedExperiment::Peptide::Modification > &mods, int location, const ResidueModification &rmod) |
|
void | writeTSVOutput_ (const char *filename, OpenMS::TargetedExperiment &targeted_exp) |
| Write a TargetedExperiment to a file. More...
|
|
| TransitionTSVFile () |
| Constructor. More...
|
|
| ~TransitionTSVFile () override |
| Destructor. More...
|
|
void | convertTargetedExperimentToTSV (const char *filename, OpenMS::TargetedExperiment &targeted_exp) |
| Write out a targeted experiment (TraML structure) into a tsv file. More...
|
|
void | convertTSVToTargetedExperiment (const char *filename, FileTypes::Type filetype, OpenMS::TargetedExperiment &targeted_exp) |
| Read in a tsv/mrm file and construct a targeted experiment (TraML structure) More...
|
|
void | convertTSVToTargetedExperiment (const char *filename, FileTypes::Type filetype, OpenSwath::LightTargetedExperiment &targeted_exp) |
| Read in a tsv file and construct a targeted experiment (Light transition structure) More...
|
|
void | validateTargetedExperiment (const OpenMS::TargetedExperiment &targeted_exp) |
| Validate a TargetedExperiment (check that all ids are unique) More...
|
|
This class supports reading and writing of OpenSWATH transition lists.
The transition lists can be either comma- or tab-separated plain text files (CSV or TSV format). Modifications should be provided in UniMod format1, but can also be provided in TPP format.
The following columns are required:
PrecursorMz* | float | This describes the precursor ion m/z |
ProductMz* | float; synonyms: FragmentMz | This specifies the product ion m/z |
LibraryIntensity* | float; synonyms: RelativeFragmentIntensity | This specifies the relative intensity of the fragment ion |
NormalizedRetentionTime* | float; synonyms: RetentionTime, Tr_recalibrated, iRT, RetentionTimeCalculatorScore | This specifies the expected retention time (normalized retention time) |
For targeted proteomics files, the following additional columns should be provided:
ProteinId** | free text; synonyms: ProteinName | Protein identifier |
PeptideSequence** | free text | sequence only (no modifications); synonyms: Sequence, StrippedSequence |
ModifiedPeptideSequence** | free text | should contain modifications1; synonyms: FullUniModPeptideName, FullPeptideName, ModifiedSequence |
PrecursorCharge** | integer; synonyms: Charge | contains the charge of the precursor ion |
ProductCharge** | integer; synonyms: FragmentCharge | contains the fragment charge |
FragmentType | free text | contains the type of the fragment, e.g. "b" or "y" |
FragmentSeriesNumber | integer; synonyms: FragmentNumber | e.g. for y7 use "7" here |
OpenSWATH uses grouped transitions to detect candidate analyte signals. These groups are by default generated based on the input, but can also be manually specified:
TransitionGroupId** | free text; synomys: TransitionGroupName, transition_group_id | designates the transition group [e.g. peptide] to which this transition belongs |
TransitionId** | free text; synonyms: TransitionName, transition_name | needs to be unique for each transition [in this file] |
Decoy | 1: decoy, 0: target; synomys: decoy, isDecoy | determines whether the transition is a decoy transition or not |
PeptideGroupLabel | free text | designates to which peptide label group (as defined in MS:1000893) the peptide belongs to2 |
DetectingTransition | 0 or 1; synonyms: detecting_transition | 1: use transition to detect peak group, 0: don't use transition for detection |
IdentifyingTransition | 0 or 1; synonyms: identifying_transition | 1: use transition for peptidoform inference using IPF, 0: don't use transition for identification |
QuantifyingTransition | 0 or 1; synonyms: quantifying_transition | 1: use transition to quantify peak group, 0: don't use transition for quantification |
Optionally, the following columns can be specified but they are not actively used by OpenSWATH:
CollisionEnergy | float; synonyms: CE | Collision energy |
Annotation | free text | Transition-level annotation, e.g. y7 |
UniprotId | free text; synonyms: UniprotID | A Uniprot identifier |
LabelType | free text | optional description of which label was used, e.g. heavy or light |
For targeted metabolomics files, the following fields are also supported:
CompoundName** | free text; synonyms: CompoundId | Should be unique for the analyte, if present the file will be interpreted as a metabolomics file |
SMILES | free text | SMILES identifier |
SumFormula | free text | molecular formula |
Fields indicated with * are strictly required to create a TraML file. Fields indicated with ** are recommended, but only required for a specific application (such as using the transition list for an analysis tool such as OpenSwath) or in a specific context (proteomics or metabolomics).
Remarks:
-
1. modifications should be supplied inside the sequence using UniMod identifiers or freetext identifiers that are understood by OpenMS. See also OpenMS::AASequence for more information. For example:
-
PEPT(Phosphorylation)IDE(UniMod:27)A )
-
2. peptide label groups designate groups of peptides that are isotopically modified forms of the same peptide species. For example, the heavy and light forms of the same peptide will both be assigned the same peptide group label. For example:
-
PEPTIDEAK -> gets label "PEPTIDEAK_gr1"
-
PEPTIDEAK[+8] -> gets label "PEPTIDEAK_gr1"
-
PEPT(Phosphorylation)IDEAK -> gets label "PEPTIDEAK_gr2"
-
PEPT(Phosphorylation)IDEAK[+8] -> gets label "PEPTIDEAK_gr2"