Commit 541c8b6f authored by Edlira Nano's avatar Edlira Nano
Browse files

added alignment results to masschroqML

git-svn-id: e4b6dbb4-9209-464b-83f7-6257456c460c
parent a674a79f
......@@ -121,7 +121,7 @@
\newcommand{\Mv}{MassChroQ v.1.0}
\newcommand{\Mv}{MassChroQ v.1.2}
\newcommand{\Xp}{\emph{X!Tandem pipeline}}
......@@ -183,7 +183,7 @@ along with this program. If not, see <>.
\title{\textbf{\Huge MassChroQ manual}\\
\textbf{First edition for Mass Chromatogram Quantification software v. 1.0}
\textbf{Second edition for Mass Chromatogram Quantification software v. 1.2}
\author{Edlira \textsc{Nano}\\
Contributors: Olivier \textsc{Langella}, Beno\^it \textsc{Valot},
......@@ -383,17 +383,18 @@ On the {\M} homepage (\href{\sitemasschroq}{\sitemasschroq}) you can find :
\item masschroq's \href{}{schema};
\item Dataset examples of masschroqML input files to {\M} for various
ordinary situations (fractionated sample, isotopic labeled ones, etc);
\item this user manual frequently updated;
\item the code documentation (generated by doxygen);
\item this user manual frequently updated;
\item the latest news and the upcoming features on this project;
\item BibTeX and text entries for MassChroQ citation.
On the {\M} project page hosted on
\href{}{SourceSup} you can find :
\item a \href{}{subversion repository};
\item a bug tracker;
\item several user and developer forums.
The source code of {\M} contains C++ \emph{Doxygen} documentation, which you can generate and use for development needs.
\chapter{Installing and running {\M}}\label{running-sec}
......@@ -403,8 +404,8 @@ On the {\M} project page hosted on
\subsection{Linux platforms (32 and 64 bytes)}
\item Debian and Ubuntu: Precompiled binary packages for {\M}
\emph{Hungry Crocklet} version 1.0 are available for
\item Debian and Ubuntu: Precompiled binary packages for all {\M}
versions are available for
}{32-bit} and
......@@ -527,7 +528,7 @@ To produce a masschroqML input file that also
includes all the identified peptides of your data, you can use the
\href{}{\Xp}. Given a set
of LC-MS runs, this pipeline performs in one shot peptide
of LC-MS runs, this pipeline performs, in one shot, peptide
identification using the \emph{X!Tandem} software, filtering of the
identification results and export to several formats,
one of them being a ready-to-use masschroqML input file.
......@@ -2,7 +2,8 @@
masschroqML version 1.1 schema (http://pappso/bioinfo/masschroq/).
Retro compatibility with older masschroq schemas and versions is assured.
In this version we have added the peak post_matching feature.
In this version we have added the peak post_matching feature and the alignment results
for the masschroqML result (output) files.
<xs:schema xmlns:xs="">
......@@ -59,6 +60,7 @@
<xs:element name="quanti_item" type="quanti_itemType"/>
<xs:element name="data" type="dataType"/>
<xs:element name="data_rt" type="data_rtType"/>
<xs:element name="alignment_result" type="alignment_resultType"/>
<xs:element name="rt" type="rtType"/>
<xs:element name="xic_traces" type="xic_tracesType"/>
<xs:element name="raw_xic" type="raw_xicType"/>
......@@ -71,7 +73,7 @@
<xs:element name="summary" type="summaryType"/>
<xs:element name="execution_time" type="execution_timeType"/>
<xs:complexType name="masschroqType">
......@@ -91,13 +93,27 @@
<xs:element ref="quantification" maxOccurs="1" minOccurs="0"/>
<xs:element ref="results" maxOccurs="1" minOccurs="0"/>
<xs:attribute name="version" type="xs:string">
<xs:attribute name="version">
Version of the current masschroqXML format.
<xs:attribute name="type">
Type of the masschroqML file : can be "input" for masschroqML input files
or "output" for output masschroqML result files.
<xs:restriction base="xs:string">
<xs:enumeration value="input"></xs:enumeration>
<xs:enumeration value="output"></xs:enumeration>
<xs:complexType name="rawdataType">
......@@ -1113,6 +1129,7 @@
<xs:element ref="alignment_result" maxOccurs="1" minOccurs="0"/>
<xs:element ref="data_rt" maxOccurs="1" minOccurs="0"/>
<xs:element ref="quanti_item" maxOccurs="unbounded" minOccurs="0"/>
......@@ -1174,7 +1191,22 @@
<xs:complexType name="alignment_resultType">
<xs:extension base="xs:base64Binary">
The base64 encoded aligned time values of the current msrun. These encoded time values
follow the same organisation as in the .time files : one original retention time followed
by the corresponding aligned one, and so on.
<xs:attributeGroup ref="base64enc_attr_group"/>
<xs:complexType name="quanti_itemType">
......@@ -1349,13 +1381,12 @@
<xs:attribute name="selected" type="xs:boolean">
<xs:attribute name="matched" type="xs:boolean">
Indicates whether this peak has been selected or not. Selected
means retained by the choosen detection method with the
choosen parameters (which are defined in the input file).
Indicates whether this peak has been matched to a quantification item (peptide)
or not (i.e. the item's rt is within the peak boundaries or not).
......@@ -33,6 +33,7 @@ QDir MassChroq::tmp_dir;
* it to the system's temporary directory
MassChroq::setTmpDir(QString dirName) {
......@@ -93,6 +93,8 @@ class MasschroqWriter : public MonitorBase {
void initialiseOutput();
void printQuantificationData(const std::vector<xicPeak *> * p_v_peak_list);
void printAlignmentResults(const Msrun * msrun);
/// counter for the search items, used to generate unique search xml ids
unsigned int _quanti_item_counter;
This diff is collapsed.
......@@ -176,6 +176,8 @@ class Msrun {
const std::vector<mcq_double> getAlignedRetentionTimes() const;
const std::vector<mcq_double> getVectorOfTimeValues() const;
/// begin iterator for _original_rt_set
std::set<mcq_double>::const_iterator begin_original_rt() const {
return (_original_rt_set.begin());
......@@ -35,7 +35,6 @@ MsrunSliced::deleteSlicer() {
MsrunSliced::setSpectrum(const mcq_double retention_time, spectrum * the_spectrum) {
_slicer->setSpectrumInSlices(retention_time, the_spectrum);
/// very important to delete the old spectrum here, we do not need it anymore
if (the_spectrum != 0) {
delete (the_spectrum);
......@@ -174,7 +174,7 @@ void
Slice::setXicVectors(xicBase * ptr_on_xic) {
/// the rt in xics have to be in ascending order, but as we have slept spectra
/// in the order of mzxml parsing into simple vectors, no ordering is guaranteed
/// in our _rt_v vector. Before setting teh xic vectors we sort if necessary,
/// in our _rt_v vector. Before setting the xic vectors we sort if necessary,
/// but we have to sort without loosing the matching rt-> spectra.
vector<mcq_double> * rt_vector = ptr_on_xic->getRetentionTimes();
vector<mcq_double> * intensity_vector = ptr_on_xic->getIntensities();
......@@ -969,7 +969,7 @@ MasschroqmlParser::startGnumericResult(const QString output_file) {
return true;
return true;
......@@ -991,7 +991,7 @@ bool
MasschroqmlParser::startXhtmltableResult(const QString output_file) {
XhtmltableQuantifResults * p_results;
try {
try {
p_results = new XhtmltableQuantifResults(output_file);
} catch (mcqError error) {
_errorStr = QObject::tr("problem creating xhtmltable output results :\n%1").arg(error.what());
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment