libpappsomspp
Library for mass spectrometry
pappso::cbor::psm::PsmFileScanProcess Class Referenceabstract

Basic PSM file reader to process scan (parallelized scan processing) More...

#include <psmfilescanprocess.h>

Inheritance diagram for pappso::cbor::psm::PsmFileScanProcess:
pappso::cbor::psm::PsmFileReaderBase pappso::cbor::CborStreamReaderInterface pappso::cbor::psm::PsmFileScanProcessAndCopy pappso::cbor::psm::PsmFeatures pappso::cbor::psm::PsmNewEval pappso::cbor::psm::PsmSpecGlob pappso::cbor::psm::PsmSpecPeptidOms

Public Member Functions

 PsmFileScanProcess (std::size_t buffer_scan_size)
 
virtual ~PsmFileScanProcess ()
 
- Public Member Functions inherited from pappso::cbor::psm::PsmFileReaderBase
 PsmFileReaderBase ()
 
virtual ~PsmFileReaderBase ()
 
void readCbor (QFile *cborp, pappso::UiMonitorInterface &monitor)
 
virtual void close ()
 
- Public Member Functions inherited from pappso::cbor::CborStreamReaderInterface
 CborStreamReaderInterface ()
 
virtual ~CborStreamReaderInterface ()
 

Protected Member Functions

void readScan (pappso::UiMonitorInterface &monitor) override
 
void scanFinished (pappso::UiMonitorInterface &monitor) override
 
void sampleFinished (pappso::UiMonitorInterface &monitor) override
 
virtual void processBufferScan (pappso::UiMonitorInterface &monitor)
 
virtual void processBufferScanDone (pappso::UiMonitorInterface &monitor)
 
virtual CborScanMapBasenewCborScanMap ()=0
 
void clearScanBuffer ()
 
- Protected Member Functions inherited from pappso::cbor::psm::PsmFileReaderBase
void readRoot (pappso::UiMonitorInterface &monitor)
 
virtual void readInformations (pappso::UiMonitorInterface &monitor)
 
virtual void readLog (pappso::UiMonitorInterface &monitor)
 
virtual void readParameterMap (pappso::UiMonitorInterface &monitor)
 
virtual void readProteinMap (pappso::UiMonitorInterface &monitor)
 
virtual void readSample (pappso::UiMonitorInterface &monitor)
 
virtual void readScan (pappso::UiMonitorInterface &monitor)
 
virtual void readPsm (pappso::UiMonitorInterface &monitor)
 
virtual void psmReady (pappso::UiMonitorInterface &monitor)
 
virtual void logReady (pappso::UiMonitorInterface &monitor)
 
virtual void informationsReady (pappso::UiMonitorInterface &monitor)
 
virtual void parameterMapReady (pappso::UiMonitorInterface &monitor)
 
virtual void fastaFilesReady (pappso::UiMonitorInterface &monitor)
 
virtual void proteinMapReady (pappso::UiMonitorInterface &monitor)
 
virtual void sampleListStarted (pappso::UiMonitorInterface &monitor)
 
virtual void sampleStarted (pappso::UiMonitorInterface &monitor)
 
virtual void scanStarted (pappso::UiMonitorInterface &monitor)
 
virtual void scanFinished (pappso::UiMonitorInterface &monitor)
 
virtual void sampleFinished (pappso::UiMonitorInterface &monitor)
 
virtual void sampleListFinished (pappso::UiMonitorInterface &monitor)
 
PsmFile readPsmFile (bool &is_ok)
 
void writePsmFile (CborStreamWriter &writer, const PsmFile &psm_file)
 
void writePsmFileList (CborStreamWriter &writer, const std::vector< PsmFile > &file_list)
 
PsmProteinRef readPsmProteinRef (bool &is_ok)
 
pappso::PeptideSp getCurrentPsmPeptideSp () const
 
pappso::QualifiedMassSpectrumSPtr getCurrentQualifiedMassSpectrumSPtr () const
 
bool currentProteinRefListContainsDecoy () const
 
bool currentProteinRefListContainsTarget () const
 
double getPrecursorMass (double mz_prec, uint charge) const
 convenient function do compute precusor ion mass More...
 
- Protected Member Functions inherited from pappso::cbor::CborStreamReaderInterface
bool getExpectedString ()
 
void initCborReader (QFile *pcborfile)
 

Protected Attributes

std::size_t m_bufferScanSize = 1000
 
std::vector< CborScanMapBase * > m_cborScanList
 
- Protected Attributes inherited from pappso::cbor::psm::PsmFileReaderBase
QStringList m_targetFastaFiles
 
QStringList m_decoyFastaFiles
 
PsmProteinMap m_proteinMap
 
QString m_currentSampleName
 
PsmFile m_currentPeaklistFile
 
std::vector< PsmFilem_currentIdentificationFileList
 
QCborMap m_cborInformations
 
QCborArray m_cborLog
 
QCborMap m_cborParameterMap
 
QCborMap m_cborScanId
 
QCborMap m_cborScanPrecursor
 
QCborMap m_cborScanMs2
 
QCborMap m_cborScanPsmEval
 
QString m_currentPsmProforma
 
std::vector< PsmProteinRefm_currentPsmProteinRefList
 
- Protected Attributes inherited from pappso::cbor::CborStreamReaderInterface
CborStreamReadermpa_cborReader = nullptr
 
QString m_expectedString
 
QByteArray m_data
 

Private Attributes

friend CborScanMapBase
 

Detailed Description

Basic PSM file reader to process scan (parallelized scan processing)

Definition at line 39 of file psmfilescanprocess.h.

Constructor & Destructor Documentation

◆ PsmFileScanProcess()

pappso::cbor::psm::PsmFileScanProcess::PsmFileScanProcess ( std::size_t  buffer_scan_size)

Default constructor

Definition at line 34 of file psmfilescanprocess.cpp.

35{
36 m_bufferScanSize = buffer_scan_size;
37}

References m_bufferScanSize.

◆ ~PsmFileScanProcess()

pappso::cbor::psm::PsmFileScanProcess::~PsmFileScanProcess ( )
virtual

Destructor

Definition at line 39 of file psmfilescanprocess.cpp.

40{
41}

Member Function Documentation

◆ clearScanBuffer()

void pappso::cbor::psm::PsmFileScanProcess::clearScanBuffer ( )
protected

Definition at line 44 of file psmfilescanprocess.cpp.

45{
46 for(CborScanMapBase *cbor_scan_p : m_cborScanList)
47 {
48 delete cbor_scan_p;
49 }
50 m_cborScanList.clear();
51}
std::vector< CborScanMapBase * > m_cborScanList

◆ newCborScanMap()

virtual CborScanMapBase * pappso::cbor::psm::PsmFileScanProcess::newCborScanMap ( )
protectedpure virtual

◆ processBufferScan()

void pappso::cbor::psm::PsmFileScanProcess::processBufferScan ( pappso::UiMonitorInterface monitor)
protectedvirtual

Definition at line 91 of file psmfilescanprocess.cpp.

92{
93 // you decide how to process the list of scans
94
95 std::function<void(pappso::cbor::psm::CborScanMapBase *)> mapProcessCborScan =
96 [](pappso::cbor::psm::CborScanMapBase *cbor_scan_p) { cbor_scan_p->process(); };
97
98
99 QFuture<void> res = QtConcurrent::map<std::vector<CborScanMapBase *>::iterator>(
100 m_cborScanList.begin(), m_cborScanList.end(), mapProcessCborScan);
101 res.waitForFinished();
102 processBufferScanDone(monitor);
103}
virtual void processBufferScanDone(pappso::UiMonitorInterface &monitor)

References pappso::res.

◆ processBufferScanDone()

void pappso::cbor::psm::PsmFileScanProcess::processBufferScanDone ( pappso::UiMonitorInterface monitor)
protectedvirtual

Reimplemented in pappso::cbor::psm::PsmFileScanProcessAndCopy.

Definition at line 106 of file psmfilescanprocess.cpp.

107{
108 // you decide what to do with processed scans
109}

◆ readScan()

void pappso::cbor::psm::PsmFileScanProcess::readScan ( pappso::UiMonitorInterface monitor)
overrideprotectedvirtual

Reimplemented from pappso::cbor::psm::PsmFileReaderBase.

Definition at line 55 of file psmfilescanprocess.cpp.

56{
57 qDebug();
58 // auto& ref = elections.emplace_back("Nelson Mandela", "South Africa", 1994);
59 CborScanMapBase *scan_map_p = newCborScanMap();
60 m_cborScanList.push_back(scan_map_p);
61
62 if(!mpa_cborReader->readCborMap(*scan_map_p))
63 {
64 throw pappso::PappsoException(QObject::tr("readCborMap scan failed"));
65 }
66 // m_cborScanList.push_back(scan_map);
67 qDebug() << "scan end";
68 scanFinished(monitor);
69 qDebug();
70}
bool readCborMap(QCborMap &cbor_map)
void scanFinished(pappso::UiMonitorInterface &monitor) override
virtual CborScanMapBase * newCborScanMap()=0

◆ sampleFinished()

void pappso::cbor::psm::PsmFileScanProcess::sampleFinished ( pappso::UiMonitorInterface monitor)
overrideprotectedvirtual

Reimplemented from pappso::cbor::psm::PsmFileReaderBase.

Reimplemented in pappso::cbor::psm::PsmFileScanProcessAndCopy.

Definition at line 83 of file psmfilescanprocess.cpp.

84{
85 processBufferScan(monitor);
87}
virtual void processBufferScan(pappso::UiMonitorInterface &monitor)

◆ scanFinished()

void pappso::cbor::psm::PsmFileScanProcess::scanFinished ( pappso::UiMonitorInterface monitor)
overrideprotectedvirtual

Reimplemented from pappso::cbor::psm::PsmFileReaderBase.

Definition at line 73 of file psmfilescanprocess.cpp.

74{
76 {
77 processBufferScan(monitor);
79 }
80}

Member Data Documentation

◆ CborScanMapBase

friend pappso::cbor::psm::PsmFileScanProcess::CborScanMapBase
private

Definition at line 42 of file psmfilescanprocess.h.

◆ m_bufferScanSize

std::size_t pappso::cbor::psm::PsmFileScanProcess::m_bufferScanSize = 1000
protected

Definition at line 66 of file psmfilescanprocess.h.

Referenced by PsmFileScanProcess().

◆ m_cborScanList

std::vector<CborScanMapBase *> pappso::cbor::psm::PsmFileScanProcess::m_cborScanList
protected

Definition at line 67 of file psmfilescanprocess.h.


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