|
OpenMS
2.5.0
|
Go to the documentation of this file.
74 void updateMembers_()
override;
78 bool compact =
false);
81 void store(std::ostream& os,
const String& filename,
82 const PeakMap& experiment,
bool compact =
false);
91 template <
typename MapType>
101 std::ifstream is(filename.c_str());
103 is.seekg(0, std::ios::end);
104 startProgress(0, is.tellg(),
"loading MGF");
105 is.seekg(0, std::ios::beg);
107 UInt spectrum_number(0);
113 while (getNextSpectrum_(is, spectrum, line_number, spectrum_number))
116 setProgress(is.tellg());
131 std::pair<String, String> getHTTPPeakListEnclosure(
const String& filename)
const;
142 void writeParameterHeader_(
const String& name, std::ostream& os);
145 void writeModifications_(
const std::vector<String>& mods, std::ostream& os,
146 bool variable_mods =
false);
149 void writeHeader_(std::ostream& os);
152 void writeSpectrum_(std::ostream& os,
const PeakSpectrum& spec,
const String& filename,
const String& native_id_type_accession);
155 void writeMSExperiment_(std::ostream& os,
const String& filename,
const PeakMap& experiment);
158 template <
typename SpectrumType>
172 while (getline(is, line,
'\n'))
179 if (line ==
"BEGIN IONS")
181 while (getline(is, line,
'\n'))
186 if (line.empty())
continue;
188 if (isdigit(line[0]))
190 std::vector<String> split;
200 if (line.
split(
' ', split,
false))
209 throw Exception::ParseError(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION,
"The content '" + line +
"' at line #" +
String(line_number) +
" could not be converted to a number! Expected two (m/z int) or three (m/z int charge) numbers separated by whitespace (space or tab).",
"");
211 spectrum.push_back(p);
215 throw Exception::ParseError(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION,
"The content '" + line +
"' at line #" +
String(line_number) +
" does not contain m/z and intensity values separated by whitespace (space or tab)!",
"");
218 while (getline(is, line,
'\n') && ++line_number && line.
trim() !=
"END IONS");
220 if (line ==
"END IONS")
226 throw Exception::ParseError(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION,
"Reached end of file. Found \"BEGIN IONS\" but not the corresponding \"END IONS\"!",
"");
233 std::vector<String> split;
234 tmp.
split(
' ', split);
235 if (split.size() == 1)
237 spectrum.
getPrecursors()[0].setMZ(split[0].trim().toDouble());
239 else if (split.size() == 2)
241 spectrum.
getPrecursors()[0].setMZ(split[0].trim().toDouble());
242 spectrum.
getPrecursors()[0].setIntensity(split[1].trim().toDouble());
246 throw Exception::ParseError(__FILE__, __LINE__, OPENMS_PRETTY_FUNCTION,
"Cannot parse PEPMASS in '" + line +
"' at line #" +
String(line_number) +
" (expected 1 or 2 entries, but " +
String(split.size()) +
" were present)!",
"");
267 std::vector<String> split;
268 line.
split(
',', split);
271 for (
Size i = 0; i != split.size(); ++i)
273 if (split[i].hasSubstring(
"min"))
275 std::vector<String> split2;
276 split[i].trim().split(
' ', split2);
279 spectrum.
setRT(split2[0].trim().toDouble() * 60.0);
288 std::vector<String> split;
289 if (line.
split(
'=', split))
291 if (split[1] !=
"") spectrum.
setMetaValue(
"TITLE", split[1]);
297 Size firstEqual = line.find(
'=', 4);
298 if (firstEqual != std::string::npos)
Class which handles the communication between OpenMS and the Mascot server.
Definition: MascotRemoteQuery.h:56
Base class for TOPP applications.
Definition: TOPPBase.h:144
Param copy(const String &prefix, bool remove_prefix=false) const
Returns a new Param object containing all entries that start with prefix.
Used to load Mascot XML files.
Definition: MascotXMLFile.h:57
File adapter for MzData files.
Definition: MzDataFile.h:53
void setQuerySpectra(const String &exp)
sets the query spectra, given in MGF file format
A method or algorithm argument contains illegal values.
Definition: Exception.h:648
void store(const String &filename, const std::vector< ProteinIdentification > &protein_ids, const std::vector< PeptideIdentification > &peptide_ids, const String &document_id="")
Stores the data in an idXML file.
void reset()
Resets all internal values.
void store(const String &filename, const PeakMap &experiment, bool compact=false)
stores the experiment data in a MascotGenericFile that can be used as input for MASCOT shell executio...
static String basename(const String &file)
Returns the basename of the file (without the path).
String & substitute(char from, char to)
Replaces all occurrences of the character from by the character to.
double toDouble() const
Conversion to double.
void load(const String &filename, std::map< String, std::vector< AASequence > > &peptides)
Loads peptide sequences with modifications out of a PepXML file.
void setValue(const String &key, const DataValue &value, const String &description="", const StringList &tags=StringList())
Sets a value.
Mascot input file adapter.
Definition: MascotInfile.h:58
A more convenient string class.
Definition: String.h:58
File not found exception.
Definition: Exception.h:523
String & trim()
removes whitespaces (space, tab, line feed, carriage return) at the beginning and the end of the stri...
In-Memory representation of a mass spectrometry experiment.
Definition: MSExperiment.h:77
const std::vector< Precursor > & getPrecursors() const
returns a const reference to the precursors
Invalid conversion exception.
Definition: Exception.h:362
void setInstrument(const String &instrument)
sets the instrument type (Default: Default). Possible instruments: ESI-QUAD-TOF, MALDI-TOF-PSD,...
void addMSLevel(int level)
adds a desired MS level for peaks to load
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:127
static String removeExtension(const String &file)
void setTaxonomy(const String &taxonomy)
sets the taxonomy (default: All entries). See <mascot path>/config/taxonomy for possible settings.
Used to load Mascot PepXML files.
Definition: PepXMLFileMascot.h:54
void load(const String &filename, MapType &map)
Loads a map from a MzData file.
void setIntensity(IntensityType intensity)
Mutable access to the data point intensity (height)
Definition: Peak1D.h:112
const DataValue & getValue(const String &key) const
Returns a value of a parameter.
std::vector< Int > IntList
Vector of signed integers.
Definition: ListUtils.h:55
static String getUniqueName(bool include_hostname=true)
Returns a string, consisting of date, time, hostname, process id, and a incrementing number....
PeakFileOptions & getOptions()
Mutable access to the options for loading/storing.
std::map< String, String > mod_group_map_
mapping of modifications with specificity groups, that have to be treated specially (e....
Definition: MascotGenericFile.h:139
void setModifications(const std::vector< String > &mods)
sets the fixed modifications (default: none). See <mascot path>/config/mod_file for possible setting...
Representation of a protein identification run.
Definition: ProteinIdentification.h:71
profile data
Definition: SpectrumSettings.h:74
bool hasPrefix(const String &string) const
true if String begins with string, false otherwise
bool hasSubstring(const String &string) const
true if String contains the string, false otherwise
Size size() const
Definition: MSExperiment.h:127
String getSearchIdentifier() const
returns the search number
A base class for all classes handling default parameters.
Definition: DefaultParamHandler.h:91
String & simplify()
merges subsequent whitespaces to one blank character
static DateTime now()
Returns the current date and time.
static bool writable(const String &file)
Return true if the file is writable.
void setMassType(const String &mass_type)
sets the used mass type "Monoisotopic" or "Average" (default: Monoisotopic)
static bool exists(const String &file)
Method used to test if a file exists.
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
void get(UInt &month, UInt &day, UInt &year, UInt &hour, UInt &minute, UInt &second) const
Fills the arguments with the date and the time.
bool toBool() const
Conversion to bool.
void addSpectrum(const MSSpectrum &spectrum)
adds a spectrum to the list
Base class for all classes that want to report their progress.
Definition: ProgressLogger.h:54
void load(const String &filename, ProteinIdentification &protein_identification, std::vector< PeptideIdentification > &id_data, const SpectrumMetaDataLookup &lookup)
Loads data from a Mascot XML file.
void setPrimaryMSRunPath(const StringList &s, bool raw=false)
bool exists(const String &key) const
Tests if a parameter is set (expecting its fully qualified name, e.g., TextExporter:1:proteins_only)
SpectrumType
Spectrum peak type.
Definition: SpectrumSettings.h:70
const std::vector< ProteinHit > & getHits() const
Returns the protein hits.
Facilitates file handling by file type recognition.
Definition: FileHandler.h:62
void setVariableModifications(const std::vector< String > &mods)
sets the fixed modifications (default: none). See <mascot path>/config/mod_file for possible setting...
void setDB(const String &db)
sets the DB to use (default: MSDB). See <mascot path>/config/mascot.dat in "Databases" section for po...
bool loadExperiment(const String &filename, MSExperiment &exp, FileTypes::Type force_type=FileTypes::UNKNOWN, ProgressLogger::LogType log=ProgressLogger::NONE, const bool rewrite_source_file=true, const bool compute_hash=true)
Loads a file into an MSExperiment.
const String & getErrorMessage() const
returns the error message, if hasError can be used to check whether an error has occurred
Type
Actual file types enum.
Definition: FileTypes.h:58
static FileTypes::Type getType(const String &filename)
Tries to determine the file type (by name or content)
void setCharges(std::vector< Int > &charges)
sets the charges (default: 1+, 2+ and 3+)
bool hasError() const
predicate which returns true if an error occurred during the query
void setHits(const String &hits)
sets the number of hits to report back (default: 20)
void setPeakMassTolerance(float ion_mass_tolerance)
sets the peak mass tolerance in Da (default: 1.0)
void setPosition(PositionType const &position)
Mutable access to the position.
Definition: Peak1D.h:151
Exception base class.
Definition: Exception.h:89
bool split(const char splitter, std::vector< String > &substrings, bool quote_protect=false) const
Splits a string into substrings using splitter as delimiter.
void setParameters(const Param ¶m)
Sets the parameters.
void setMSLevel(UInt ms_level)
Sets the MS level.
QString toQString() const
Conversion to Qt QString.
const Param & getParameters() const
Non-mutable access to the parameters.
Read/write Mascot generic files (MGF).
Definition: MascotGenericFile.h:61
void setCleavage(const String &cleavage)
sets the enzyme used for cleavage (default: Trypsin). See <mascot path>/config/enzymes for possible ...
A 1-dimensional raw data point or peak.
Definition: Peak1D.h:54
std::vector< String > StringList
Vector of String.
Definition: ListUtils.h:70
unsigned int UInt
Unsigned integer type.
Definition: Types.h:94
void setMissedCleavages(UInt missed_cleavages)
sets the number of allowed missed cleavages (default: 1)
const String & getNativeID() const
returns the native identifier for the spectrum, used by the acquisition software.
int main(int argc, const char **argv)
Definition: INIFileEditor.cpp:73
static void initializeLookup(SpectrumMetaDataLookup &lookup, const PeakMap &experiment, const String &scan_regex="")
Initializes a helper object for looking up spectrum meta data (RT, m/z)
void setPrecursorMassTolerance(float precursor_mass_tolerance)
sets the precursor mass tolerance in Da (default: 2.0)
static String absolutePath(const String &file)
Replaces the relative path in the argument with the absolute path.
Parse Error exception.
Definition: Exception.h:622
void remove(const String &key)
Remove the entry key or a section key (when suffix is ':')
String substr(size_t pos=0, size_t n=npos) const
Wrapper for the STL substr() method. Returns a String object with its contents initialized to a subst...
bool getNextSpectrum_(std::ifstream &is, SpectrumType &spectrum, Size &line_number, const Size &spectrum_number)
reads a spectrum block, the section between 'BEGIN IONS' and 'END IONS' of a MGF file
Definition: MascotGenericFile.h:159
const std::vector< MSSpectrum > & getSpectra() const
returns the spectrum list
const QByteArray & getMascotXMLResponse() const
returns the Mascot XML response which contains the identifications
Management and storage of parameters / INI files.
Definition: Param.h:73
static String getTempDirectory()
The current OpenMS temporary data path (for temporary files)
String & remove(char what)
Remove all occurrences of the character what.
void store(const String &filename, const PeakSpectrum &spec, double mz, double retention_time, String search_title)
stores the peak list in a MascotInfile that can be used as input for MASCOT shell execution
bool store_compact_
use a compact format for storing (no zero-intensity peaks, limited number of decimal places)?
Definition: MascotGenericFile.h:136
File is empty.
Definition: Exception.h:594
The representation of a 1D spectrum.
Definition: MSSpectrum.h:67
void setRT(double rt)
Sets the absolute retention time (in seconds)
Int toInt() const
Conversion to int.
DateTime Class.
Definition: DateTime.h:54
void setBoundary(const String &boundary)
sets the boundary used for the MIME format. By default a 22 character random string is used
void setLogType(LogType type) const
Sets the progress log that should be used. The default type is NONE!
void load(const String &filename, MapType &exp)
loads a Mascot Generic File into a PeakMap
Definition: MascotGenericFile.h:92
Used to load and store idXML files.
Definition: IdXMLFile.h:63
void setNativeID(const String &native_id)
sets the native identifier for the spectrum, used by the acquisition software.