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

#include <timsmsfilereader.h>

Inheritance diagram for pappso::TimsMsFileReader:
pappso::MsFileReader

Public Member Functions

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

Private Member Functions

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

Additional Inherited Members

Private Attributes inherited from pappso::MsFileReader
QString m_fileName
Enums::MsDataFormat m_fileFormat = Enums::MsDataFormat::unknown

Detailed Description

Todo
write docs

Definition at line 41 of file timsmsfilereader.h.

Constructor & Destructor Documentation

◆ TimsMsFileReader()

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

Definition at line 39 of file timsmsfilereader.cpp.

39 : MsFileReader(file_name)
40{
41 initialize();
42}
MsFileReader(const QString &file_name)
virtual std::size_t initialize()

References pappso::MsFileReader::MsFileReader(), and initialize().

◆ ~TimsMsFileReader()

pappso::TimsMsFileReader::~TimsMsFileReader ( )
virtual

Definition at line 45 of file timsmsfilereader.cpp.

46{
47}

Member Function Documentation

◆ getFileFormat()

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

◆ getMsRunIds()

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

Implements pappso::MsFileReader.

Definition at line 91 of file timsmsfilereader.cpp.

92{
93 std::vector<MsRunIdCstSPtr> ms_run_ids;
94
95 if(!initialize())
96 return ms_run_ids;
97
98 // Finally create the MsRunId with the file name.
99 MsRunId ms_run_id(m_fileName);
100 ms_run_id.setMsDataFormat(m_fileFormat);
101
102 // We need to set the unambiguous xmlId string.
103 ms_run_id.setXmlId(QString("%1a1").arg(run_prefix));
104
105 ms_run_id.setRunId("a1");
106
107 // Now set the sample name to the run id:
108
109 ms_run_id.setSampleName(QFileInfo(m_fileName).baseName());
110
111 qDebug() << "Current ms_run_id:" << ms_run_id.toString();
112
113 // Finally make a shared pointer out of it and append it to the vector.
114 ms_run_ids.push_back(std::make_shared<MsRunId>(ms_run_id));
115
116 return ms_run_ids;
117}

References initialize(), pappso::MsFileReader::m_fileFormat, pappso::MsFileReader::m_fileName, pappso::MsRunId::setMsDataFormat(), pappso::MsRunId::setRunId(), pappso::MsRunId::setSampleName(), pappso::MsRunId::setXmlId(), and pappso::MsRunId::toString().

Referenced by pappso::MsFileAccessor::buildTimsMsRunReaderMs2SPtr(), and pappso::MsFileAccessor::getMsRunIds().

◆ initialize()

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

Definition at line 51 of file timsmsfilereader.cpp.

52{
53
55 try
56 {
57 TimsData tims_data(m_fileName);
59 }
60
61 catch(ExceptionNotRecognized &error)
62 {
63 qWarning() << "tims data not recognized initializing TimsData object:\n" << error.qwhat();
64
65 throw pappso::ExceptionNotRecognized(
66 QObject::tr("Bruker tims data file not recognized in %1 :\n%2")
67 .arg(m_fileName)
68 .arg(error.qwhat()));
69 return 0;
70 }
71 catch(PappsoException &error)
72 {
74 throw pappso::PappsoException(QObject::tr("Error reading Bruker tims data in %1 :\n%2")
75 .arg(m_fileName)
76 .arg(error.qwhat()));
77 }
78
79 return 1;
80}
@ unknown
unknown format
Definition types.h:149

References pappso::Enums::brukerTims, pappso::MsFileReader::m_fileFormat, pappso::MsFileReader::m_fileName, pappso::PappsoException::qwhat(), and pappso::Enums::unknown.

Referenced by TimsMsFileReader(), and getMsRunIds().

◆ selectMsRunReader()

MsRunReader * pappso::TimsMsFileReader::selectMsRunReader ( const QString & file_name) const

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