124 void endElement(
const XMLCh*
const ,
const XMLCh*
const ,
const XMLCh*
const qname)
override;
127 void startElement(
const XMLCh*
const ,
const XMLCh*
const ,
const XMLCh*
const qname,
const xercesc::Attributes& attributes)
override;
130 void characters(
const XMLCh*
const chars,
const XMLSize_t length)
override;
133 void writeTo(std::ostream& os)
override;
157 void getCounts(
Size& spectra_counts,
Size& chromatogram_counts);
163 virtual LOADDETAIL getLoadDetail()
const override;
166 virtual void setLoadDetail(
const LOADDETAIL d)
override;
185 std::vector<std::vector< ConstDataProcessingPtr > >& dps);
189 template <
typename ContainerT>
190 void writeContainerData_(std::ostream& os,
const PeakFileOptions& pf_options_,
const ContainerT& container,
String array_type);
198 void populateSpectraWithData_();
206 void populateChromatogramsWithData_();
208 void addSpectrumMetaData_(
const std::vector<MzMLHandlerHelper::BinaryData>& input_data,
221 void populateSpectraWithData_(std::vector<MzMLHandlerHelper::BinaryData>& input_data,
232 void populateChromatogramsWithData_(std::vector<MzMLHandlerHelper::BinaryData>& input_data,
236 template <
typename DataType>
237 void writeBinaryDataArray_(std::ostream& os,
const PeakFileOptions& pf_options_, std::vector<DataType> data_to_encode,
bool is32bit,
String array_type);
239 void writeHeader_(std::ostream& os,
const MapType& exp, std::vector<std::vector< ConstDataProcessingPtr > >& dps,
Internal::MzMLValidator& validator);
242 void fillChromatogramData_();
245 void handleCVParam_(
const String& parent_parent_tag,
const String& parent_tag,
const String& accession,
const String& name,
const String& value,
const String& unit_accession =
"");
263 void writeDataProcessing_(std::ostream& os,
const String&
id,
const std::vector< ConstDataProcessingPtr >& dps,
Internal::MzMLValidator& validator);
299 bool in_spectrum_list_{
false };
301 bool skip_spectrum_{
false };
303 bool skip_chromatogram_{
false };
305 bool rt_set_{
false };
374 Int scan_count_total_{ -1 };
375 Int chrom_count_total_{ -1 };
PeakFileOptions options_
Options that can be set for loading/storing.
Definition: MzMLHandler.h:286
Representation of a CV term.
Definition: ControlledVocabulary.h:60
std::vector< SpectrumData > spectrum_data_
Vector of spectrum data stored for later parallel processing.
Definition: MzMLHandler.h:339
A more convenient string class.
Definition: String.h:57
Precursor meta information.
Definition: Precursor.h:57
ControlledVocabulary cv_
Controlled vocabulary (psi-ms from OpenMS/share/OpenMS/CV/psi-ms.obo)
Definition: MzMLHandler.h:378
Product meta information.
Definition: Product.h:48
The representation of a chromatogram.
Definition: MSChromatogram.h:54
Data necessary to generate a single spectrum.
Definition: MzMLHandler.h:330
Semantically validates MzXML files.
Definition: MzMLValidator.h:48
unsigned int UInt
Unsigned integer type.
Definition: Types.h:94
Map< String, std::vector< DataProcessingPtr > > processing_
The data processing list: id => Instrument.
Definition: MzMLHandler.h:319
std::vector< std::pair< std::string, long > > spectra_offsets_
Definition: MzMLHandler.h:361
std::vector< BinaryData > data
Definition: MzMLHandler.h:350
std::vector< std::pair< std::string, long > > chromatograms_offsets_
Definition: MzMLHandler.h:362
Base class for XML handlers.
Definition: XMLHandler.h:148
Description of a file location, used to store the origin of (meta) data.
Definition: SourceFile.h:46
Binary data representation.
Definition: MzMLHandlerHelper.h:57
Description of the software used for processing.
Definition: Software.h:48
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:46
MSChromatogram ChromatogramType
Definition: MzDataHandler.h:61
ChromatogramType chromatogram_
The current chromatogram.
Definition: MzMLHandler.h:293
Map< String, SourceFile > source_files_
The source files: id => SourceFile.
Definition: MzMLHandler.h:311
const ProgressLogger & logger_
Progress logger.
Definition: MzMLHandler.h:366
Map< String, Software > software_
The software list: id => Software.
Definition: MzMLHandler.h:315
Class to hold strings, numeric values, lists of strings and lists of numeric values.
Definition: DataValue.h:56
Representation of a controlled vocabulary.
Definition: ControlledVocabulary.h:54
Size default_array_length
Definition: MzMLHandler.h:333
Size default_array_length_
The default number of peaks in the current spectrum.
Definition: MzMLHandler.h:297
Data necessary to generate a single chromatogram.
Definition: MzMLHandler.h:348
SpectrumType spectrum
Definition: MzMLHandler.h:334
Definition: MzMLHandler.h:103
The representation of a 1D spectrum.
Definition: MSSpectrum.h:66
Map< String, Sample > samples_
The sample list: id => Sample.
Definition: MzMLHandler.h:313
MapType::ChromatogramPeakType ChromatogramPeakType
Chromatogram peak type.
Definition: MzMLHandler.h:175
String default_processing_
id of the default data processing (used when no processing is defined)
Definition: MzMLHandler.h:321
CVMappings mapping_
Definition: MzMLHandler.h:379
A 1-dimensional raw data point or peak.
Definition: Peak1D.h:54
In-Memory representation of a mass spectrometry experiment.
Definition: MSExperiment.h:77
std::vector< ChromatogramData > chromatogram_data_
Vector of chromatogram data stored for later parallel processing.
Definition: MzMLHandler.h:356
PeakMap MapType
XML handler for MzDataFile.
Definition: MzDataHandler.h:59
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:127
The interface of a consumer of spectra and chromatograms.
Definition: IMSDataConsumer.h:67
Base class for all classes that want to report their progress.
Definition: ProgressLogger.h:54
MapType::PeakType PeakType
Peak type.
Definition: MzMLHandler.h:173
A 1-dimensional raw data point or peak for chromatograms.
Definition: ChromatogramPeak.h:54
MzMLHandlerHelper::BinaryData BinaryData
Definition: MzMLHandler.h:181
Map< String, Instrument > instruments_
The data processing list: id => Instrument.
Definition: MzMLHandler.h:317
String current_id_
Id of the current list. Used for referencing param group, source file, sample, software, ...
Definition: MzMLHandler.h:307
std::vector< BinaryData > data
Definition: MzMLHandler.h:332
Representation of controlled vocabulary mapping rules (for PSI formats)
Definition: CVMappings.h:56
std::vector< BinaryData > bin_data_
The spectrum data (or chromatogram data)
Definition: MzMLHandler.h:295
Options for loading files containing peak data.
Definition: PeakFileOptions.h:47
Map< String, std::vector< SemanticValidator::CVTerm > > ref_param_
The referencing param groups: id => array (accession, value)
Definition: MzMLHandler.h:309
MSSpectrum SpectrumType
Spectrum type.
Definition: MzMLHandler.h:177
bool skip_data
Definition: MzMLHandler.h:335
LOADDETAIL
Definition: XMLHandler.h:172
int Int
Signed integer type.
Definition: Types.h:102
Map class based on the STL map (containing several convenience functions)
Definition: Map.h:50
MSChromatogram ChromatogramType
Spectrum type.
Definition: MzMLHandler.h:179
ChromatogramType chromatogram
Definition: MzMLHandler.h:352
Size default_array_length
Definition: MzMLHandler.h:351
MSSpectrum SpectrumType
Definition: MzDataHandler.h:60