OpenMS
Loading...
Searching...
No Matches
MascotXMLHandler Class Reference

Handler that is used for parsing MascotXML data. More...

#include <OpenMS/FORMAT/HANDLERS/MascotXMLHandler.h>

Inheritance diagram for MascotXMLHandler:
[legend]
Collaboration diagram for MascotXMLHandler:
[legend]

Public Member Functions

 MascotXMLHandler (ProteinIdentification &protein_identification, PeptideIdentificationList &identifications, const std::string &filename, std::map< std::string, std::vector< AASequence > > &peptides, const SpectrumMetaDataLookup &lookup)
 Constructor.
 
 ~MascotXMLHandler () override
 Destructor.
 
void onEndElement (const char16_t *qname) override
 Parsing method for closing tags.
 
void onStartElement (const char16_t *qname, const XMLAttributes &attributes) override
 Parsing method for opening tags.
 
void onCharacters (const char16_t *chars, Size) override
 Parsing method for character data.
 
- Public Member Functions inherited from XMLHandler
 XMLHandler (const std::string &filename, const std::string &version)
 Default constructor.
 
virtual ~XMLHandler ()
 Destructor.
 
void reset ()
 Release internal memory used for parsing (call.
 
void fatalError (ActionMode mode, const std::string &msg, UInt line=0, UInt column=0) const
 Fatal error handler. Throws a ParseError exception.
 
void error (ActionMode mode, const std::string &msg, UInt line=0, UInt column=0) const
 Error handler for recoverable errors.
 
void warning (ActionMode mode, const std::string &msg, UInt line=0, UInt column=0) const
 Warning handler.
 
virtual void writeTo (std::ostream &)
 Writes the contents to a stream.
 
virtual LOADDETAIL getLoadDetail () const
 handler which support partial loading, implement this method
 
virtual void setLoadDetail (const LOADDETAIL d)
 handler which support partial loading, implement this method
 
DataValue cvParamToValue (const ControlledVocabulary &cv, const std::string &parent_tag, const std::string &accession, const std::string &name, const std::string &value, const std::string &unit_accession) const
 Convert the value of a <cvParam value=.> (as commonly found in PSI schemata) to the DataValue with the correct type (e.g. int) according to the type stored in the CV (usually PSI-MS CV), as well as set its unit.
 
DataValue cvParamToValue (const ControlledVocabulary &cv, const CVTerm &raw_term) const
 Convert the value of a <cvParam value=.> (as commonly found in PSI schemata) to the DataValue with the correct type (e.g. int) according to the type stored in the CV (usually PSI-MS CV), as well as set its unit.
 
void checkUniqueIdentifiers_ (const std::vector< ProteinIdentification > &prot_ids) const
 

Static Public Member Functions

static std::vector< std::string > splitModificationBySpecifiedAA (const std::string &mod)
 Split modification search parameter if for more than one amino acid specified e.g. Phospho (ST)
 
- Static Public Member Functions inherited from XMLHandler
static std::string writeXMLEscape (const std::string &to_escape)
 Escapes a string and returns the escaped string.
 
static DataValue fromXSDString (const std::string &type, const std::string &value)
 Convert an XSD type (e.g. 'xsd:double') to a DataValue.
 

Private Attributes

ProteinIdentificationprotein_identification_
 the protein identifications
 
PeptideIdentificationListid_data_
 the identifications (storing the peptide hits)
 
ProteinHit actual_protein_hit_
 
PeptideHit actual_peptide_hit_
 
PeptideEvidence actual_peptide_evidence_
 
UInt peptide_identification_index_
 
std::string tag_
 
DateTime date_
 
std::string date_time_string_
 
UInt actual_query_
 
ProteinIdentification::SearchParameters search_parameters_
 
std::string identifier_
 
std::string actual_title_
 
std::map< std::string, std::vector< AASequence > > & modified_peptides_
 
StringList tags_open_
 tracking the current XML tree
 
std::string character_buffer_
 filled by MascotXMLHandler::characters
 
std::string major_version_
 
std::string minor_version_
 
std::vector< std::string > remove_fixed_mods_
 
const SpectrumMetaDataLookuplookup_
 Helper object for looking up RT information.
 
bool no_rt_error_
 Error for missing RT information already reported?
 

Additional Inherited Members

- Public Types inherited from XMLHandler
enum  ActionMode { LOAD , STORE }
 Action to set the current mode (for error messages) More...
 
enum  LOADDETAIL { LD_ALLDATA , LD_RAWCOUNTS , LD_COUNTS_WITHOPTIONS }
 
- Protected Member Functions inherited from XMLHandler
void writeUserParam_ (const std::string &tag_name, std::ostream &os, const MetaInfoInterface &meta, UInt indent) const
 Writes the content of MetaInfoInterface to the file.
 
Int asInt_ (const std::string &in) const
 Conversion of a std::string to an integer value.
 
Int asInt_ (const char16_t *in) const
 Conversion of a Xerces string to an integer value.
 
UInt asUInt_ (const std::string &in) const
 Conversion of a std::string to an unsigned integer value.
 
double asDouble_ (const std::string &in) const
 Conversion of a std::string to a double value.
 
float asFloat_ (const std::string &in) const
 Conversion of a std::string to a float value.
 
bool asBool_ (const std::string &in) const
 Conversion of a string to a boolean value.
 
DateTime asDateTime_ (std::string date_string) const
 Conversion of a xs:datetime string to a DateTime value.
 
bool equal_ (const char16_t *a, const char16_t *b) const
 Returns if two Xerces strings are equal.
 
SignedSize cvStringToEnum_ (const Size section, const std::string &term, const char *message, const SignedSize result_on_error=0)
 
std::string attributeAsString_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to a String.
 
Int attributeAsInt_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to a Int.
 
double attributeAsDouble_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to a double.
 
DoubleList attributeAsDoubleList_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to a DoubleList.
 
IntList attributeAsIntList_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to an IntList.
 
StringList attributeAsStringList_ (const XMLAttributes &a, const char *name) const
 Converts an attribute to an StringList.
 
bool optionalAttributeAsString_ (std::string &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the String value if the attribute is present.
 
bool optionalAttributeAsInt_ (Int &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the Int value if the attribute is present.
 
bool optionalAttributeAsUInt_ (UInt &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the UInt value if the attribute is present.
 
bool optionalAttributeAsDouble_ (double &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the double value if the attribute is present.
 
bool optionalAttributeAsDoubleList_ (DoubleList &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the DoubleList value if the attribute is present.
 
bool optionalAttributeAsStringList_ (StringList &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the StringList value if the attribute is present.
 
bool optionalAttributeAsIntList_ (IntList &value, const XMLAttributes &a, const char *name) const
 Assigns the attribute content to the IntList value if the attribute is present.
 
std::string attributeAsString_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a String.
 
Int attributeAsInt_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a Int.
 
double attributeAsDouble_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a double.
 
DoubleList attributeAsDoubleList_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a DoubleList.
 
IntList attributeAsIntList_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a IntList.
 
StringList attributeAsStringList_ (const XMLAttributes &a, const char16_t *name) const
 Converts an attribute to a StringList.
 
bool optionalAttributeAsString_ (std::string &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the String value if the attribute is present.
 
bool optionalAttributeAsInt_ (Int &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the Int value if the attribute is present.
 
bool optionalAttributeAsUInt_ (UInt &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the UInt value if the attribute is present.
 
bool optionalAttributeAsDouble_ (double &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the double value if the attribute is present.
 
bool optionalAttributeAsDoubleList_ (DoubleList &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the DoubleList value if the attribute is present.
 
bool optionalAttributeAsIntList_ (IntList &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the IntList value if the attribute is present.
 
bool optionalAttributeAsStringList_ (StringList &value, const XMLAttributes &a, const char16_t *name) const
 Assigns the attribute content to the StringList value if the attribute is present.
 
- Protected Attributes inherited from XMLHandler
std::string file_
 File name.
 
std::string version_
 Schema version.
 
StringManager sm_
 Helper class for string conversion.
 
std::vector< std::string > open_tags_
 Stack of open XML tags.
 
LOADDETAIL load_detail_
 parse only until total number of scans and chroms have been determined from attributes
 
std::vector< std::vector< std::string > > cv_terms_
 Array of CV term lists (one sublist denotes one term and it's children)
 

Detailed Description

Handler that is used for parsing MascotXML data.

Constructor & Destructor Documentation

◆ MascotXMLHandler()

MascotXMLHandler ( ProteinIdentification protein_identification,
PeptideIdentificationList identifications,
const std::string &  filename,
std::map< std::string, std::vector< AASequence > > &  peptides,
const SpectrumMetaDataLookup lookup 
)

Constructor.

◆ ~MascotXMLHandler()

~MascotXMLHandler ( )
override

Destructor.

Member Function Documentation

◆ onCharacters()

void onCharacters ( const char16_t *  chars,
Size  length 
)
overridevirtual

Parsing method for character data.

Reimplemented from XMLHandler.

◆ onEndElement()

void onEndElement ( const char16_t *  qname)
overridevirtual

Parsing method for closing tags.

Reimplemented from XMLHandler.

◆ onStartElement()

void onStartElement ( const char16_t *  qname,
const XMLAttributes attributes 
)
overridevirtual

Parsing method for opening tags.

Reimplemented from XMLHandler.

◆ splitModificationBySpecifiedAA()

static std::vector< std::string > splitModificationBySpecifiedAA ( const std::string &  mod)
static

Split modification search parameter if for more than one amino acid specified e.g. Phospho (ST)

Member Data Documentation

◆ actual_peptide_evidence_

PeptideEvidence actual_peptide_evidence_
private

◆ actual_peptide_hit_

PeptideHit actual_peptide_hit_
private

◆ actual_protein_hit_

ProteinHit actual_protein_hit_
private

◆ actual_query_

UInt actual_query_
private

◆ actual_title_

std::string actual_title_
private

◆ character_buffer_

std::string character_buffer_
private

filled by MascotXMLHandler::characters

◆ date_

DateTime date_
private

◆ date_time_string_

std::string date_time_string_
private

◆ id_data_

PeptideIdentificationList& id_data_
private

the identifications (storing the peptide hits)

◆ identifier_

std::string identifier_
private

◆ lookup_

const SpectrumMetaDataLookup& lookup_
private

Helper object for looking up RT information.

◆ major_version_

std::string major_version_
private

◆ minor_version_

std::string minor_version_
private

◆ modified_peptides_

std::map<std::string, std::vector<AASequence> >& modified_peptides_
private

◆ no_rt_error_

bool no_rt_error_
private

Error for missing RT information already reported?

◆ peptide_identification_index_

UInt peptide_identification_index_
private

◆ protein_identification_

ProteinIdentification& protein_identification_
private

the protein identifications

◆ remove_fixed_mods_

std::vector<std::string> remove_fixed_mods_
private

◆ search_parameters_

ProteinIdentification::SearchParameters search_parameters_
private

◆ tag_

std::string tag_
private

◆ tags_open_

StringList tags_open_
private

tracking the current XML tree