libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
pappso::MzcborMsFileReader Class Reference

#include <mzcbormsfilereader.h>

Inheritance diagram for pappso::MzcborMsFileReader:
pappso::MsFileReader

Public Member Functions

 MzcborMsFileReader (const QString &file_name)
virtual ~MzcborMsFileReader ()
virtual Enums::MsDataFormat getFileFormat () override
virtual std::vector< MsRunIdCstSPtrgetMsRunIds (const QString &run_prefix) override

Private Member Functions

virtual std::size_t initialize ()
Private Member Functions inherited from pappso::MsFileReader
 MsFileReader (const QString &file_name)
virtual ~MsFileReader ()

Private Attributes

std::vector< pwiz::msdata::MSDataPtr > m_msDataPtrVector
pappso::cbor::mzcbor::MzcborReaderBase m_mzcborReaderBase
pappso::cbor::mzcbor::MzcborIndexReader m_mzcborIndexReader
Private Attributes inherited from pappso::MsFileReader
QString m_fileName
Enums::MsDataFormat m_fileFormat = Enums::MsDataFormat::unknown

Detailed Description

Todo
write docs

Definition at line 21 of file mzcbormsfilereader.h.

Constructor & Destructor Documentation

◆ MzcborMsFileReader()

pappso::MzcborMsFileReader::MzcborMsFileReader ( const QString & file_name)

◆ ~MzcborMsFileReader()

pappso::MzcborMsFileReader::~MzcborMsFileReader ( )
virtual

Definition at line 19 of file mzcbormsfilereader.cpp.

20{
21}

Member Function Documentation

◆ getFileFormat()

Enums::MsDataFormat pappso::MzcborMsFileReader::getFileFormat ( )
overridevirtual

Implements pappso::MsFileReader.

Definition at line 25 of file mzcbormsfilereader.cpp.

26{
27 // std::cout << __FILE__ << " @ " << __LINE__ << " " << __FUNCTION__ << " () "
28 // << std::setprecision(15) << "m_fileFormat: " << (int)m_fileFormat
29 // << std::endl;
30
31 return m_fileFormat;
32}

References pappso::MsFileReader::m_fileFormat.

Referenced by pappso::MsFileAccessor::getMsRunIds().

◆ getMsRunIds()

std::vector< MsRunIdCstSPtr > pappso::MzcborMsFileReader::getMsRunIds ( const QString & run_prefix)
overridevirtual

Implements pappso::MsFileReader.

Definition at line 81 of file mzcbormsfilereader.cpp.

82{
83 std::vector<MsRunIdCstSPtr> ms_run_ids;
84
85
87 {
88
89 if(m_mzcborIndexReader.getRunIdList().size() > 0)
90 {
91 qDebug();
92 std::size_t iter = 0;
93 for(auto &msrun_id_str : m_mzcborIndexReader.getRunIdList())
94 {
95 MsRunId ms_run_id(m_fileName, msrun_id_str);
96
97
98 // Set the MS data format as determined in initialize().
99 ms_run_id.setMsDataFormat(m_fileFormat);
100
101 // We need to set the unambiguous xmlId string.
102 ms_run_id.setXmlId(
103 QString("%1%2").arg(run_prefix).arg(Utils::getLexicalOrderedString(iter)));
104
105 // Now set the sample name to the run id : we can not do that, this is not the use
106 // sample name ms_run_id.setSampleName(QString::fromStdString(ms_data_ptr->run.id));
107
108 // And if it is possible, the real sample name because this one is for the
109 // end user to recognize his sample:
110 ms_run_id.setSampleName(msrun_id_str);
111
112
113 ms_run_ids.push_back(std::make_shared<MsRunId>(ms_run_id));
114 iter++;
115 }
116 }
117 else
118 {
119
120 std::size_t iter = 0;
121 for(auto &msrun_id_str : m_mzcborReaderBase.getMsrunIdList())
122 {
123 MsRunId ms_run_id(m_fileName, msrun_id_str);
124
125
126 // Set the MS data format as determined in initialize().
127 ms_run_id.setMsDataFormat(m_fileFormat);
128
129 // We need to set the unambiguous xmlId string.
130 ms_run_id.setXmlId(
131 QString("%1%2").arg(run_prefix).arg(Utils::getLexicalOrderedString(iter)));
132
133 // Now set the sample name to the run id : we can not do that, this is not the use
134 // sample name ms_run_id.setSampleName(QString::fromStdString(ms_data_ptr->run.id));
135
136 // And if it is possible, the real sample name because this one is for the
137 // end user to recognize his sample:
138 ms_run_id.setSampleName(msrun_id_str);
139
140
141 ms_run_ids.push_back(std::make_shared<MsRunId>(ms_run_id));
142 iter++;
143 }
144 }
145 }
146
147 return ms_run_ids;
148}
pappso::cbor::mzcbor::MzcborIndexReader m_mzcborIndexReader
pappso::cbor::mzcbor::MzcborReaderBase m_mzcborReaderBase
static const QString getLexicalOrderedString(unsigned int num)
Definition utils.cpp:72

References pappso::Utils::getLexicalOrderedString(), pappso::MsFileReader::m_fileFormat, pappso::MsFileReader::m_fileName, m_mzcborIndexReader, m_mzcborReaderBase, pappso::Enums::mzcbor, pappso::MsRunId::setMsDataFormat(), pappso::MsRunId::setSampleName(), and pappso::MsRunId::setXmlId().

Referenced by pappso::MsFileAccessor::getMsRunIds().

◆ initialize()

std::size_t pappso::MzcborMsFileReader::initialize ( )
privatevirtual

Definition at line 35 of file mzcbormsfilereader.cpp.

36{
37
38 pappso::UiMonitorVoid monitor;
39 QString str_index_file = m_fileName;
40 QFileInfo mzcbor_index_fileinfo(str_index_file.append(".idx"));
41 if(mzcbor_index_fileinfo.exists())
42 {
43 qDebug() << "mzcbor_index_fileinfo.exists()";
44 QFile mzcbor_index_file(mzcbor_index_fileinfo.absoluteFilePath());
45 mzcbor_index_file.open(QIODevice::ReadOnly);
46
47 m_mzcborIndexReader.readCbor(&mzcbor_index_file);
48 if(m_mzcborIndexReader.isMzcborIndex())
49 {
51 }
52 m_mzcborIndexReader.close();
53 mzcbor_index_file.close();
54
55 qDebug() << m_mzcborIndexReader.getRunIdList().size();
56
57 return m_mzcborIndexReader.getRunIdList().size();
58 }
59 else
60 {
61 qDebug();
62 QFile mzcbor_file(m_fileName);
63 mzcbor_file.open(QIODevice::ReadOnly);
64
65 m_mzcborReaderBase.readCbor(&mzcbor_file, monitor);
66 if(m_mzcborReaderBase.isMzcbor())
67 {
69 }
70 m_mzcborReaderBase.close();
71 mzcbor_file.close();
72
73 qDebug() << m_mzcborReaderBase.getMsrunIdList().join(" ");
74
75 return m_mzcborReaderBase.getMsrunIdList().size();
76 }
77}

References pappso::MsFileReader::m_fileFormat, pappso::MsFileReader::m_fileName, m_mzcborIndexReader, m_mzcborReaderBase, and pappso::Enums::mzcbor.

Referenced by MzcborMsFileReader().

Member Data Documentation

◆ m_msDataPtrVector

std::vector<pwiz::msdata::MSDataPtr> pappso::MzcborMsFileReader::m_msDataPtrVector
private

Definition at line 36 of file mzcbormsfilereader.h.

◆ m_mzcborIndexReader

pappso::cbor::mzcbor::MzcborIndexReader pappso::MzcborMsFileReader::m_mzcborIndexReader
private

Definition at line 39 of file mzcbormsfilereader.h.

Referenced by getMsRunIds(), and initialize().

◆ m_mzcborReaderBase

pappso::cbor::mzcbor::MzcborReaderBase pappso::MzcborMsFileReader::m_mzcborReaderBase
private

Definition at line 38 of file mzcbormsfilereader.h.

Referenced by getMsRunIds(), and initialize().


The documentation for this class was generated from the following files: