Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
QcMLFile Class Reference

File adapter for QcML files. More...

#include <OpenMS/FORMAT/QcMLFile.h>

Inheritance diagram for QcMLFile:
XMLHandler XMLFile ProgressLogger

Classes

struct  Attachment
 Representation of an attachment. More...
 
struct  QualityParameter
 Representation of a quality parameter. More...
 

Public Member Functions

 QcMLFile ()
 Default constructor. More...
 
 ~QcMLFile ()
 Destructor. More...
 
String map2csv (const std::map< String, std::map< String, String > > &cvs_table, const String &separator) const
 
String exportIDstats (const String &filename) const
 
void registerRun (const String id, const String name)
 Registers a run in the qcml file with the respective mappings. More...
 
void registerSet (const String id, const String name, const std::set< String > &names)
 Registers a set in the qcml file with the respective mappings. More...
 
void addRunQualityParameter (String r, QualityParameter qp)
 Just adds a qualityparameter to run by the name r. More...
 
void addRunAttachment (String r, Attachment at)
 Just adds a attachment to run by the name r. More...
 
void addSetQualityParameter (String r, QualityParameter qp)
 Just adds a qualityparameter to set by the name r. More...
 
void addSetAttachment (String r, Attachment at)
 Just adds a attachment to set by the name r. More...
 
void removeAttachment (String r, std::vector< String > &ids, String at="")
 Removes attachments referencing a id given in ids, from run/set r. All attachments if no attachment name is given with at. More...
 
void removeAttachment (String r, String at)
 Removes attachment with cv accession at from run/set r. More...
 
void removeAllAttachments (String at)
 Removes attachment with cv accession at from all runs/sets. More...
 
void removeQualityParameter (String r, std::vector< String > &ids)
 Just removes qualityparameter going by one of the ID attributes given in ids. More...
 
void merge (const QcMLFile &addendum, String setname="")
 merges the given QCFile into this one More...
 
void collectSetParameter (const String setname, const String qp, std::vector< String > &ret)
 collects the values of given QPs (as CVid) of the given set More...
 
String exportAttachment (const String filename, const String qpname) const
 Returns a String of a tab separated rows if found empty string else from run/set by the name filename of the qualityparameter by the name qpname. More...
 
String exportQP (const String filename, const String qpname) const
 Returns a String value in quotation of a qualityparameter by the name qpname in run/set by the name filename. More...
 
String exportQPs (const String filename, const StringList qpnames) const
 Returns a String of a tab separated qualityparameter by the name qpname in run/set by the name filename. More...
 
void getRunIDs (std::vector< String > &ids) const
 Gives the ids of the registered runs in the vector ids. More...
 
void getRunNames (std::vector< String > &ids) const
 Gives the names of the registered runs in the vector ids. More...
 
bool existsRun (const String filename, bool checkname=false) const
 Returns true if the given run id is present in this file, if checkname is true it also checks the names. More...
 
bool existsSet (const String filename, bool checkname=false) const
 Returns true if the given set id is present in this file, if checkname is true it also checks the names. More...
 
void existsRunQualityParameter (const String filename, const String qpname, std::vector< String > &ids) const
 Returns the ids of the parameter name given if found in given run empty else. More...
 
void existsSetQualityParameter (const String filename, const String qpname, std::vector< String > &ids) const
 Returns the ids of the parameter name given if found in given set, empty else. More...
 
void store (const String &filename) const
 Store the QCFile. More...
 
void load (const String &filename)
 Load a QCFile. More...
 
- Public Member Functions inherited from XMLHandler
 XMLHandler (const String &filename, const String &version)
 Default constructor. More...
 
virtual ~XMLHandler ()
 Destructor. More...
 
void reset ()
 Release internal memory used for parsing (call. More...
 
void fatalError (ActionMode mode, const String &msg, UInt line=0, UInt column=0) const
 Fatal error handler. Throws a ParseError exception. More...
 
void error (ActionMode mode, const String &msg, UInt line=0, UInt column=0) const
 Error handler for recoverable errors. More...
 
void warning (ActionMode mode, const String &msg, UInt line=0, UInt column=0) const
 Warning handler. More...
 
virtual void writeTo (std::ostream &)
 Writes the contents to a stream. More...
 
String errorString ()
 Returns the last error description. More...
 
void fatalError (const xercesc::SAXParseException &exception)
 
void error (const xercesc::SAXParseException &exception)
 
void warning (const xercesc::SAXParseException &exception)
 
- Public Member Functions inherited from XMLFile
 XMLFile ()
 Default constructor. More...
 
 XMLFile (const String &schema_location, const String &version)
 Constructor that sets the schema location. More...
 
virtual ~XMLFile ()
 Destructor. More...
 
bool isValid (const String &filename, std::ostream &os)
 Checks if a file validates against the XML schema. More...
 
const StringgetVersion () const
 return the version of the schema More...
 
- Public Member Functions inherited from ProgressLogger
 ProgressLogger ()
 Constructor. More...
 
 ~ProgressLogger ()
 Destructor. More...
 
 ProgressLogger (const ProgressLogger &other)
 Copy constructor. More...
 
ProgressLoggeroperator= (const ProgressLogger &other)
 Assignment Operator. More...
 
void setLogType (LogType type) const
 Sets the progress log that should be used. The default type is NONE! More...
 
LogType getLogType () const
 Returns the type of progress log being used. More...
 
void startProgress (SignedSize begin, SignedSize end, const String &label) const
 Initializes the progress display. More...
 
void setProgress (SignedSize value) const
 Sets the current progress. More...
 
void endProgress () const
 Ends the progress display. More...
 

Protected Member Functions

virtual void endElement (const XMLCh *const, const XMLCh *const, const XMLCh *const qname)
 Parsing method for closing tags. More...
 
virtual void startElement (const XMLCh *const, const XMLCh *const, const XMLCh *const qname, const xercesc::Attributes &attributes)
 Parsing method for opening tags. More...
 
virtual void characters (const XMLCh *const chars, const XMLSize_t length)
 Parsing method for character data. More...
 
- Protected Member Functions inherited from XMLHandler
bool equal_ (const XMLCh *a, const XMLCh *b) const
 Returns if two Xerces strings are equal. More...
 
void writeUserParam_ (const String &tag_name, std::ostream &os, const MetaInfoInterface &meta, UInt indent) const
 Writes the content of MetaInfoInterface to the file. More...
 
Int asInt_ (const String &in)
 Conversion of a String to an integer value. More...
 
Int asInt_ (const XMLCh *in)
 Conversion of a Xerces string to an integer value. More...
 
UInt asUInt_ (const String &in)
 Conversion of a String to an unsigned integer value. More...
 
double asDouble_ (const String &in)
 Conversion of a String to a double value. More...
 
float asFloat_ (const String &in)
 Conversion of a String to a float value. More...
 
bool asBool_ (const String &in)
 Conversion of a string to a boolean value. More...
 
DateTime asDateTime_ (String date_string)
 Conversion of a xs:datetime string to a DateTime value. More...
 
char * attributeAsString_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to a String. More...
 
Int attributeAsInt_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to a Int. More...
 
double attributeAsDouble_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to a double. More...
 
DoubleList attributeAsDoubleList_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to a DoubleList. More...
 
IntList attributeAsIntList_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to an IntList. More...
 
StringList attributeAsStringList_ (const xercesc::Attributes &a, const char *name) const
 Converts an attribute to an StringList. More...
 
bool optionalAttributeAsString_ (String &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the String value if the attribute is present. More...
 
bool optionalAttributeAsInt_ (Int &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the Int value if the attribute is present. More...
 
bool optionalAttributeAsUInt_ (UInt &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the UInt value if the attribute is present. More...
 
bool optionalAttributeAsDouble_ (double &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the double value if the attribute is present. More...
 
bool optionalAttributeAsDoubleList_ (DoubleList &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the DoubleList value if the attribute is present. More...
 
bool optionalAttributeAsStringList_ (StringList &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the StringList value if the attribute is present. More...
 
bool optionalAttributeAsIntList_ (IntList &value, const xercesc::Attributes &a, const char *name) const
 Assigns the attribute content to the IntList value if the attribute is present. More...
 
char * attributeAsString_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a String. More...
 
Int attributeAsInt_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a Int. More...
 
double attributeAsDouble_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a double. More...
 
DoubleList attributeAsDoubleList_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a DoubleList. More...
 
IntList attributeAsIntList_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a IntList. More...
 
StringList attributeAsStringList_ (const xercesc::Attributes &a, const XMLCh *name) const
 Converts an attribute to a StringList. More...
 
bool optionalAttributeAsString_ (String &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the String value if the attribute is present. More...
 
bool optionalAttributeAsInt_ (Int &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the Int value if the attribute is present. More...
 
bool optionalAttributeAsUInt_ (UInt &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the UInt value if the attribute is present. More...
 
bool optionalAttributeAsDouble_ (double &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the double value if the attribute is present. More...
 
bool optionalAttributeAsDoubleList_ (DoubleList &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the DoubleList value if the attribute is present. More...
 
bool optionalAttributeAsIntList_ (IntList &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the IntList value if the attribute is present. More...
 
bool optionalAttributeAsStringList_ (StringList &value, const xercesc::Attributes &a, const XMLCh *name) const
 Assigns the attribute content to the StringList value if the attribute is present. More...
 
SignedSize cvStringToEnum_ (const Size section, const String &term, const char *message, const SignedSize result_on_error=0)
 
- Protected Member Functions inherited from XMLFile
void parse_ (const String &filename, XMLHandler *handler)
 Parses the XML file given by filename using the handler given by handler. More...
 
void save_ (const String &filename, XMLHandler *handler) const
 Stores the contents of the XML handler given by handler in the file given by filename. More...
 
void enforceEncoding_ (const String &encoding)
 

Protected Attributes

std::map< String, std::vector< QualityParameter > > runQualityQPs_
 
std::map< String, std::vector< Attachment > > runQualityAts_
 
std::map< String, std::vector< QualityParameter > > setQualityQPs_
 
std::map< String, std::vector< Attachment > > setQualityAts_
 
std::map< String, std::set< String > > setQualityQPs_members_
 
std::map< String, Stringrun_Name_ID_map_
 
std::map< String, Stringset_Name_ID_map_
 
String tag_
 
UInt progress_
 
QualityParameter qp_
 
Attachment at_
 
std::vector< Stringrow_
 
std::vector< Stringheader_
 
String name_
 
String run_id_
 
std::set< Stringnames_
 
std::vector< QualityParameterqps_
 
std::vector< Attachmentats_
 
- Protected Attributes inherited from XMLHandler
String error_message_
 Error message of the last error. More...
 
String file_
 File name. More...
 
String version_
 Schema version. More...
 
StringManager sm_
 Helper class for string conversion. More...
 
std::vector< Stringopen_tags_
 Stack of open XML tags. More...
 
std::vector< std::vector< String > > cv_terms_
 Array of CV term lists (one sublist denotes one term and it's children) More...
 
- Protected Attributes inherited from XMLFile
String schema_location_
 XML schema file location. More...
 
String schema_version_
 Version string. More...
 
String enforced_encoding_
 Encoding string that replaces the encoding (system dependent or specified in the XML). Disabled if empty. Used as a workaround for XTandem output xml. More...
 
- Protected Attributes inherited from ProgressLogger
LogType type_
 
time_t last_invoke_
 
ProgressLoggerImplcurrent_logger_
 

Additional Inherited Members

- Public Types inherited from XMLHandler
enum  ActionMode { LOAD, STORE }
 Action to set the current mode (for error messages) More...
 
- Public Types inherited from ProgressLogger
enum  LogType { CMD, GUI, NONE }
 Possible log types. More...
 
- Static Public Member Functions inherited from XMLHandler
static String writeXMLEscape (const String &to_escape)
 Escapes a string and returns the escaped string. More...
 
- Static Protected Member Functions inherited from ProgressLogger
static String logTypeToFactoryName_ (LogType type)
 Return the name of the factory product used for this log type. More...
 
- Static Protected Attributes inherited from ProgressLogger
static int recursion_depth_
 

Detailed Description

File adapter for QcML files.

This Class is supposed to internally collect the data for the qcML File

Constructor & Destructor Documentation

◆ QcMLFile()

QcMLFile ( )

Default constructor.

◆ ~QcMLFile()

~QcMLFile ( )

Destructor.

Member Function Documentation

◆ addRunAttachment()

void addRunAttachment ( String  r,
Attachment  at 
)

Just adds a attachment to run by the name r.

◆ addRunQualityParameter()

void addRunQualityParameter ( String  r,
QualityParameter  qp 
)

Just adds a qualityparameter to run by the name r.

◆ addSetAttachment()

void addSetAttachment ( String  r,
Attachment  at 
)

Just adds a attachment to set by the name r.

◆ addSetQualityParameter()

void addSetQualityParameter ( String  r,
QualityParameter  qp 
)

Just adds a qualityparameter to set by the name r.

◆ characters()

virtual void characters ( const XMLCh *const  chars,
const XMLSize_t  length 
)
protectedvirtual

Parsing method for character data.

Reimplemented from XMLHandler.

◆ collectSetParameter()

void collectSetParameter ( const String  setname,
const String  qp,
std::vector< String > &  ret 
)

collects the values of given QPs (as CVid) of the given set

◆ endElement()

virtual void endElement ( const XMLCh *  uri,
const XMLCh *  localname,
const XMLCh *const  qname 
)
protectedvirtual

Parsing method for closing tags.

Reimplemented from XMLHandler.

◆ existsRun()

bool existsRun ( const String  filename,
bool  checkname = false 
) const

Returns true if the given run id is present in this file, if checkname is true it also checks the names.

◆ existsRunQualityParameter()

void existsRunQualityParameter ( const String  filename,
const String  qpname,
std::vector< String > &  ids 
) const

Returns the ids of the parameter name given if found in given run empty else.

◆ existsSet()

bool existsSet ( const String  filename,
bool  checkname = false 
) const

Returns true if the given set id is present in this file, if checkname is true it also checks the names.

◆ existsSetQualityParameter()

void existsSetQualityParameter ( const String  filename,
const String  qpname,
std::vector< String > &  ids 
) const

Returns the ids of the parameter name given if found in given set, empty else.

◆ exportAttachment()

String exportAttachment ( const String  filename,
const String  qpname 
) const

Returns a String of a tab separated rows if found empty string else from run/set by the name filename of the qualityparameter by the name qpname.

◆ exportIDstats()

String exportIDstats ( const String filename) const

◆ exportQP()

String exportQP ( const String  filename,
const String  qpname 
) const

Returns a String value in quotation of a qualityparameter by the name qpname in run/set by the name filename.

◆ exportQPs()

String exportQPs ( const String  filename,
const StringList  qpnames 
) const

Returns a String of a tab separated qualityparameter by the name qpname in run/set by the name filename.

◆ getRunIDs()

void getRunIDs ( std::vector< String > &  ids) const

Gives the ids of the registered runs in the vector ids.

◆ getRunNames()

void getRunNames ( std::vector< String > &  ids) const

Gives the names of the registered runs in the vector ids.

◆ load()

void load ( const String filename)

Load a QCFile.

◆ map2csv()

String map2csv ( const std::map< String, std::map< String, String > > &  cvs_table,
const String separator 
) const

◆ merge()

void merge ( const QcMLFile addendum,
String  setname = "" 
)

merges the given QCFile into this one

◆ registerRun()

void registerRun ( const String  id,
const String  name 
)

Registers a run in the qcml file with the respective mappings.

◆ registerSet()

void registerSet ( const String  id,
const String  name,
const std::set< String > &  names 
)

Registers a set in the qcml file with the respective mappings.

◆ removeAllAttachments()

void removeAllAttachments ( String  at)

Removes attachment with cv accession at from all runs/sets.

◆ removeAttachment() [1/2]

void removeAttachment ( String  r,
std::vector< String > &  ids,
String  at = "" 
)

Removes attachments referencing a id given in ids, from run/set r. All attachments if no attachment name is given with at.

◆ removeAttachment() [2/2]

void removeAttachment ( String  r,
String  at 
)

Removes attachment with cv accession at from run/set r.

◆ removeQualityParameter()

void removeQualityParameter ( String  r,
std::vector< String > &  ids 
)

Just removes qualityparameter going by one of the ID attributes given in ids.

◆ startElement()

virtual void startElement ( const XMLCh *  uri,
const XMLCh *  localname,
const XMLCh *const  qname,
const xercesc::Attributes &  attrs 
)
protectedvirtual

Parsing method for opening tags.

Reimplemented from XMLHandler.

◆ store()

void store ( const String filename) const

Store the QCFile.

Member Data Documentation

◆ at_

Attachment at_
protected

◆ ats_

std::vector<Attachment> ats_
protected

◆ header_

std::vector<String> header_
protected

◆ name_

String name_
protected

◆ names_

std::set<String> names_
protected

◆ progress_

UInt progress_
protected

◆ qp_

QualityParameter qp_
protected

◆ qps_

std::vector<QualityParameter> qps_
protected

◆ row_

std::vector<String> row_
protected

◆ run_id_

String run_id_
protected

◆ run_Name_ID_map_

std::map<String, String > run_Name_ID_map_
protected

◆ runQualityAts_

std::map<String, std::vector< Attachment > > runQualityAts_
protected

◆ runQualityQPs_

std::map<String, std::vector< QualityParameter > > runQualityQPs_
protected

◆ set_Name_ID_map_

std::map<String, String > set_Name_ID_map_
protected

◆ setQualityAts_

std::map<String, std::vector< Attachment > > setQualityAts_
protected

◆ setQualityQPs_

std::map<String, std::vector< QualityParameter > > setQualityQPs_
protected

◆ setQualityQPs_members_

std::map<String, std::set< String > > setQualityQPs_members_
protected

◆ tag_

String tag_
protected

OpenMS / TOPP release 2.3.0 Documentation generated on Tue Jan 9 2018 18:22:12 using doxygen 1.8.13