libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
pappso::cbor::mzcbor::MzcborReaderBase Class Reference

base class to initialize mzCBOR file parsing More...

#include <mzcborreaderbase.h>

Inheritance diagram for pappso::cbor::mzcbor::MzcborReaderBase:
pappso::cbor::CborStreamReaderInterface pappso::cbor::mzcbor::MzcborBuildIndexReader pappso::cbor::mzcbor::MzcborSpectrumCollectionReader

Public Member Functions

 MzcborReaderBase ()
virtual ~MzcborReaderBase ()
virtual void readCbor (QFile *cborp, pappso::UiMonitorInterface &monitor)
 read mzCBOR file
virtual void readCbor (QIODevice *cborp, pappso::UiMonitorInterface &monitor)
 read mzCBOR from any device (memory buffer or else)
virtual void close ()
 convenient function to clean pointer before leaving
bool isMzcbor () const
const QStringList & getMsrunIdList () const
Public Member Functions inherited from pappso::cbor::CborStreamReaderInterface
 CborStreamReaderInterface ()
virtual ~CborStreamReaderInterface ()

Protected Member Functions

void readRoot (pappso::UiMonitorInterface &monitor)
virtual void readMsrun ()
virtual void readReferenceableParamGroupList ()
std::map< QString, CvParamgetCvParamsMap ()
 read the array containing cvParams to give accessions and values
Protected Member Functions inherited from pappso::cbor::CborStreamReaderInterface
bool getExpectedString ()
void initCborReader (QFile *pcborfile)
void initCborReader (QIODevice *pcborfile)

Protected Attributes

bool m_stopParsing = false
Protected Attributes inherited from pappso::cbor::CborStreamReaderInterface
CborStreamReadermpa_cborReader = nullptr
QString m_expectedString
QByteArray m_data

Private Attributes

bool m_isMzcbor = false
QStringList m_msrunIdList

Detailed Description

base class to initialize mzCBOR file parsing

ensures stream read on regular file or any readable device

Definition at line 44 of file mzcborreaderbase.h.

Constructor & Destructor Documentation

◆ MzcborReaderBase()

pappso::cbor::mzcbor::MzcborReaderBase::MzcborReaderBase ( )

Default constructor

Definition at line 31 of file mzcborreaderbase.cpp.

32{
33}

◆ ~MzcborReaderBase()

pappso::cbor::mzcbor::MzcborReaderBase::~MzcborReaderBase ( )
virtual

Destructor

Definition at line 35 of file mzcborreaderbase.cpp.

36{
37}

Member Function Documentation

◆ close()

void pappso::cbor::mzcbor::MzcborReaderBase::close ( )
virtual

convenient function to clean pointer before leaving

Reimplemented from pappso::cbor::CborStreamReaderInterface.

Definition at line 40 of file mzcborreaderbase.cpp.

41{
42}

Referenced by pappso::MzcborMsRunReader::initialize(), and pappso::MzcborMsRunReader::readSpectrumCollectionWithMsrunReadConfig().

◆ getCvParamsMap()

std::map< QString, pappso::cbor::mzcbor::CvParam > pappso::cbor::mzcbor::MzcborReaderBase::getCvParamsMap ( )
protected

read the array containing cvParams to give accessions and values

Definition at line 190 of file mzcborreaderbase.cpp.

191{
192 qDebug();
193 std::map<QString, CvParam> accession_values;
194 mpa_cborReader->enterContainer(); // start array
195
196 while(mpa_cborReader->hasNext())
197 {
198
199 CvParam cv_param;
200 cv_param.fromCbor(*mpa_cborReader);
201 accession_values.insert({cv_param.accession, cv_param});
202 }
203
204 mpa_cborReader->leaveContainer(); // end array
205 return accession_values;
206}

References pappso::cbor::mzcbor::CvParam::accession, pappso::cbor::mzcbor::CvParam::fromCbor(), and pappso::cbor::CborStreamReaderInterface::mpa_cborReader.

Referenced by pappso::cbor::mzcbor::MzcborSpectrumCollectionReader::readScan().

◆ getMsrunIdList()

const QStringList & pappso::cbor::mzcbor::MzcborReaderBase::getMsrunIdList ( ) const

Definition at line 126 of file mzcborreaderbase.cpp.

127{
128 return m_msrunIdList;
129}

References m_msrunIdList.

◆ isMzcbor()

bool pappso::cbor::mzcbor::MzcborReaderBase::isMzcbor ( ) const

Definition at line 120 of file mzcborreaderbase.cpp.

References m_isMzcbor.

◆ readCbor() [1/2]

void pappso::cbor::mzcbor::MzcborReaderBase::readCbor ( QFile * cborp,
pappso::UiMonitorInterface & monitor )
virtual

read mzCBOR file

Parameters
cborpfile pointer
monitormonitor read progress and messages

Reimplemented in pappso::cbor::mzcbor::MzcborBuildIndexReader.

Definition at line 45 of file mzcborreaderbase.cpp.

46{
47 qDebug();
48 initCborReader(cborp);
49
50 qDebug();
51 if(mpa_cborReader->isMap())
52 {
53 readRoot(monitor);
54 }
55 qDebug();
56}
void readRoot(pappso::UiMonitorInterface &monitor)

References pappso::cbor::CborStreamReaderInterface::initCborReader(), pappso::cbor::CborStreamReaderInterface::mpa_cborReader, and readRoot().

Referenced by pappso::MzcborMsRunReader::readSpectrumCollectionWithMsrunReadConfig().

◆ readCbor() [2/2]

void pappso::cbor::mzcbor::MzcborReaderBase::readCbor ( QIODevice * cborp,
pappso::UiMonitorInterface & monitor )
virtual

read mzCBOR from any device (memory buffer or else)

Parameters
cborpdevice pointer
monitormonitor read progress and messages

Definition at line 59 of file mzcborreaderbase.cpp.

61{
62 qDebug();
63 initCborReader(cborp);
64
65 qDebug();
66 if(mpa_cborReader->isMap())
67 {
68 readRoot(monitor);
69 }
70 qDebug();
71}

References pappso::cbor::CborStreamReaderInterface::initCborReader(), pappso::cbor::CborStreamReaderInterface::mpa_cborReader, and readRoot().

◆ readMsrun()

void pappso::cbor::mzcbor::MzcborReaderBase::readMsrun ( )
protectedvirtual

◆ readReferenceableParamGroupList()

void pappso::cbor::mzcbor::MzcborReaderBase::readReferenceableParamGroupList ( )
protectedvirtual

Definition at line 133 of file mzcborreaderbase.cpp.

134{
135 mpa_cborReader->enterContainer();
136
137 while(getExpectedString())
138 {
139 if(m_expectedString == "referenceableParamGroup")
140 {
141 mpa_cborReader->next();
142 /*
143 mpa_cborReader->enterContainer();
144
145 while(getExpectedString())
146 {
147 if(m_expectedString == "cvParam")
148 {
149 std::map<QString, pappso::cbor::mzcbor::CvParam> cvParamMap =
150 CvParam::getCvParamsMapFromCbor(*mpa_cborReader);
151 }
152 else
153 {
154 mpa_cborReader->next();
155 }
156 }
157
158 mpa_cborReader->leaveContainer();*/
159 }
160 else
161 {
162 mpa_cborReader->next();
163 }
164 }
165
166 mpa_cborReader->leaveContainer();
167}

References pappso::cbor::CborStreamReaderInterface::getExpectedString(), pappso::cbor::CborStreamReaderInterface::m_expectedString, and pappso::cbor::CborStreamReaderInterface::mpa_cborReader.

Referenced by readRoot().

◆ readRoot()

void pappso::cbor::mzcbor::MzcborReaderBase::readRoot ( pappso::UiMonitorInterface & monitor)
protected

Definition at line 75 of file mzcborreaderbase.cpp.

77{
78 qDebug();
79 mpa_cborReader->enterContainer();
80
81 while(getExpectedString())
82 {
83
84 if(m_expectedString == "mzCBOR")
85 {
86 m_isMzcbor = true;
87 mpa_cborReader->next();
88 }
89 else if(m_expectedString == "mzML")
90 {
91 m_isMzcbor = true;
92 qDebug() << m_expectedString;
93 mpa_cborReader->next();
94
95 while(getExpectedString())
96 {
97 qDebug() << m_expectedString;
98 if(m_expectedString == "run")
99 {
100 readMsrun();
101 }
102 else if(m_expectedString == "referenceableParamGroupList")
103 {
105 }
106 else
107 {
108 mpa_cborReader->next();
109 }
110 if(m_stopParsing)
111 break;
112 }
113 }
114 }
115 mpa_cborReader->leaveContainer();
116}

References pappso::cbor::CborStreamReaderInterface::getExpectedString(), pappso::cbor::CborStreamReaderInterface::m_expectedString, m_isMzcbor, m_stopParsing, pappso::cbor::CborStreamReaderInterface::mpa_cborReader, readMsrun(), and readReferenceableParamGroupList().

Referenced by pappso::cbor::mzcbor::MzcborBuildIndexReader::readCbor(), readCbor(), and readCbor().

Member Data Documentation

◆ m_isMzcbor

bool pappso::cbor::mzcbor::MzcborReaderBase::m_isMzcbor = false
private

Definition at line 93 of file mzcborreaderbase.h.

Referenced by isMzcbor(), and readRoot().

◆ m_msrunIdList

QStringList pappso::cbor::mzcbor::MzcborReaderBase::m_msrunIdList
private

Definition at line 94 of file mzcborreaderbase.h.

Referenced by getMsrunIdList(), and readMsrun().

◆ m_stopParsing

bool pappso::cbor::mzcbor::MzcborReaderBase::m_stopParsing = false
protected

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