libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
pappso::cbor::psm::PsmSpecGlob Class Reference

#include <psmspecglob.h>

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

Public Member Functions

 PsmSpecGlob (std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QJsonObject &parameters)
virtual ~PsmSpecGlob ()
void filterMassSpectrum (pappso::MassSpectrum &mass_spectrum) const
Public Member Functions inherited from pappso::cbor::psm::PsmFileScanProcessAndCopy
 PsmFileScanProcessAndCopy (std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QString &operation)
virtual ~PsmFileScanProcessAndCopy ()
void close () override
 convenient function to clean pointer before leaving
Public Member Functions inherited from pappso::cbor::psm::PsmFileScanProcess
 PsmFileScanProcess (std::size_t buffer_scan_size)
virtual ~PsmFileScanProcess ()
Public Member Functions inherited from pappso::cbor::psm::PsmFileReaderBase
 PsmFileReaderBase ()
virtual ~PsmFileReaderBase () override
void readCbor (QFile *cborp, pappso::UiMonitorInterface &monitor)
void readCbor (QIODevice *cborp, pappso::UiMonitorInterface &monitor)
Public Member Functions inherited from pappso::cbor::CborStreamReaderInterface
 CborStreamReaderInterface ()
virtual ~CborStreamReaderInterface ()

Protected Member Functions

pappso::cbor::psm::CborScanMapBasenewCborScanMap () override
void parameterMapReady (pappso::UiMonitorInterface &monitor) override
virtual void processBufferScanDone (pappso::UiMonitorInterface &monitor) override
Protected Member Functions inherited from pappso::cbor::psm::PsmFileScanProcessAndCopy
void delayProteinMapInMemory ()
void informationsReady (pappso::UiMonitorInterface &monitor) override
void logReady (pappso::UiMonitorInterface &monitor) override
void fastaFilesReady (pappso::UiMonitorInterface &monitor) override
virtual void proteinMapReady (pappso::UiMonitorInterface &monitor) override
void sampleStarted (pappso::UiMonitorInterface &monitor) override
void sampleFinished (pappso::UiMonitorInterface &monitor) override
void sampleListStarted (pappso::UiMonitorInterface &monitor) override
void sampleListFinished (pappso::UiMonitorInterface &monitor) override
Protected Member Functions inherited from pappso::cbor::psm::PsmFileScanProcess
void readScan (pappso::UiMonitorInterface &monitor) override
void scanFinished (pappso::UiMonitorInterface &monitor) override
virtual void processBufferScan (pappso::UiMonitorInterface &monitor)
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 readPsm (pappso::UiMonitorInterface &monitor)
virtual void psmReady (pappso::UiMonitorInterface &monitor)
virtual void scanStarted (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
 get the qualified Spectrum for the current PSM
bool currentProteinRefListContainsDecoy () const
 tells if the current PSM has a decoy accession
bool currentProteinRefListContainsTarget () const
 tells if the current PSM has a target accession
double getPrecursorMass (double mz_prec, uint charge) const
 convenient function do compute precusor ion mass
Protected Member Functions inherited from pappso::cbor::CborStreamReaderInterface
bool getExpectedString ()
void initCborReader (QFile *pcborfile)
void initCborReader (QIODevice *pcborfile)

Protected Attributes

QJsonObject m_specglobParameters
pappso::PrecisionPtr m_fragmentTolerance
double m_minimumMz
std::size_t m_nMostIntense
bool m_deisotope = true
bool m_isProteinMatcherResult = false
std::size_t m_countScanProcessed = 0
Protected Attributes inherited from pappso::cbor::psm::PsmFileScanProcessAndCopy
CborStreamWritermp_cborOutput
CborStreamWritermp_copyCborOutput = nullptr
QString m_operation
pappso::cbor::psm::PsmProteinMap m_psmNewProteinMap
QBuffer * mpa_bufferAfterProteinMap = nullptr
pappso::cbor::CborStreamWritermpa_bufferWriterAfterProteinMap = nullptr
Protected Attributes inherited from pappso::cbor::psm::PsmFileScanProcess
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_cborScanProps
QCborMap m_cborScanPsmEval
QCborMap m_cborScanPsmProps
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 PsmSpecGlobScan

Detailed Description

Todo
write docs

Definition at line 40 of file psmspecglob.h.

Constructor & Destructor Documentation

◆ PsmSpecGlob()

pappso::cbor::psm::PsmSpecGlob::PsmSpecGlob ( std::size_t buffer_scan_size,
CborStreamWriter * cbor_output_p,
const QJsonObject & parameters )

Default constructor

Definition at line 35 of file psmspecglob.cpp.

38 : PsmFileScanProcessAndCopy(buffer_scan_size, cbor_output_p, "SpecGlob")
39{
40 qDebug();
41 m_specglobParameters = parameters;
42
43 if(parameters.value("fragment_tolerance_unit").toString() == "dalton")
44 {
46 parameters.value("fragment_tolerance").toDouble());
47 }
48 else if(parameters.value("fragment_tolerance_unit").toString() == "ppm")
49 {
51 pappso::PrecisionFactory::getPpmInstance(parameters.value("fragment_tolerance").toDouble());
52 }
53
54 QJsonObject spectrum_param = parameters.value("spectrum").toObject();
55
56 m_minimumMz = spectrum_param.value("minimum_mz").toDouble();
57 m_nMostIntense = spectrum_param.value("n_most_intense").toInt();
58 m_deisotope = spectrum_param.value("deisotope").toBool();
59 qDebug();
60}
static PrecisionPtr getPpmInstance(pappso_double value)
get a ppm precision pointer
static PrecisionPtr getDaltonInstance(pappso_double value)
get a Dalton precision pointer
PsmFileScanProcessAndCopy(std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QString &operation)
pappso::PrecisionPtr m_fragmentTolerance
Definition psmspecglob.h:69

References pappso::cbor::psm::PsmFileScanProcessAndCopy::PsmFileScanProcessAndCopy(), pappso::PrecisionFactory::getDaltonInstance(), pappso::PrecisionFactory::getPpmInstance(), m_deisotope, m_fragmentTolerance, m_minimumMz, m_nMostIntense, and m_specglobParameters.

◆ ~PsmSpecGlob()

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

Destructor

Definition at line 62 of file psmspecglob.cpp.

63{
64}

Member Function Documentation

◆ filterMassSpectrum()

void pappso::cbor::psm::PsmSpecGlob::filterMassSpectrum ( pappso::MassSpectrum & mass_spectrum) const

Definition at line 89 of file psmspecglob.cpp.

90{
91 if(m_deisotope)
92 pappso::FilterChargeDeconvolution(m_fragmentTolerance).filter(mass_spectrum);
93 pappso::FilterResampleKeepGreater(m_minimumMz).filter(mass_spectrum);
94 pappso::FilterGreatestY(m_nMostIntense).filter(mass_spectrum);
95}

References pappso::FilterChargeDeconvolution::filter(), pappso::FilterGreatestY::filter(), pappso::FilterResampleKeepGreater::filter(), m_deisotope, m_fragmentTolerance, m_minimumMz, and m_nMostIntense.

◆ newCborScanMap()

pappso::cbor::psm::CborScanMapBase * pappso::cbor::psm::PsmSpecGlob::newCborScanMap ( )
overrideprotectedvirtual

Implements pappso::cbor::psm::PsmFileScanProcess.

Definition at line 99 of file psmspecglob.cpp.

100{
101
102 return new PsmSpecGlobScan(*this, m_fragmentTolerance);
103}

References m_fragmentTolerance, and PsmSpecGlobScan.

◆ parameterMapReady()

void pappso::cbor::psm::PsmSpecGlob::parameterMapReady ( pappso::UiMonitorInterface & monitor)
overrideprotectedvirtual

Reimplemented from pappso::cbor::psm::PsmFileScanProcessAndCopy.

Definition at line 67 of file psmspecglob.cpp.

69{
70 qDebug();
71 QCborMap cbor_specglob_parameters = QCborValue::fromJsonValue(m_specglobParameters).toMap();
72
73
74 if(m_cborParameterMap.contains(QString("matcher")))
75 {
77 }
78
79 m_cborParameterMap.insert(QString("specglob"), cbor_specglob_parameters);
80
81
82 mp_cborOutput->append("parameter_map");
83 mp_cborOutput->writeCborMap(m_cborParameterMap);
84 qDebug();
85}

References pappso::cbor::psm::PsmFileReaderBase::m_cborParameterMap, m_isProteinMatcherResult, m_specglobParameters, and pappso::cbor::psm::PsmFileScanProcessAndCopy::mp_cborOutput.

◆ processBufferScanDone()

void pappso::cbor::psm::PsmSpecGlob::processBufferScanDone ( pappso::UiMonitorInterface & monitor)
overrideprotectedvirtual

Reimplemented from pappso::cbor::psm::PsmFileScanProcessAndCopy.

Definition at line 107 of file psmspecglob.cpp.

108{
109
110
113
114 monitor.setStatus(QObject::tr("%1 scan processed").arg(m_countScanProcessed));
115}
virtual void setStatus(const QString &status)=0
current status of the process
virtual void processBufferScanDone(pappso::UiMonitorInterface &monitor) override

References pappso::cbor::psm::PsmFileScanProcess::m_bufferScanSize, m_countScanProcessed, pappso::cbor::psm::PsmFileScanProcessAndCopy::processBufferScanDone(), and pappso::UiMonitorInterface::setStatus().

Member Data Documentation

◆ m_countScanProcessed

std::size_t pappso::cbor::psm::PsmSpecGlob::m_countScanProcessed = 0
protected

Definition at line 74 of file psmspecglob.h.

Referenced by processBufferScanDone().

◆ m_deisotope

bool pappso::cbor::psm::PsmSpecGlob::m_deisotope = true
protected

Definition at line 72 of file psmspecglob.h.

Referenced by PsmSpecGlob(), and filterMassSpectrum().

◆ m_fragmentTolerance

pappso::PrecisionPtr pappso::cbor::psm::PsmSpecGlob::m_fragmentTolerance
protected

Definition at line 69 of file psmspecglob.h.

Referenced by PsmSpecGlob(), filterMassSpectrum(), and newCborScanMap().

◆ m_isProteinMatcherResult

bool pappso::cbor::psm::PsmSpecGlob::m_isProteinMatcherResult = false
protected

Definition at line 73 of file psmspecglob.h.

Referenced by parameterMapReady().

◆ m_minimumMz

double pappso::cbor::psm::PsmSpecGlob::m_minimumMz
protected

Definition at line 70 of file psmspecglob.h.

Referenced by PsmSpecGlob(), and filterMassSpectrum().

◆ m_nMostIntense

std::size_t pappso::cbor::psm::PsmSpecGlob::m_nMostIntense
protected

Definition at line 71 of file psmspecglob.h.

Referenced by PsmSpecGlob(), and filterMassSpectrum().

◆ m_specglobParameters

QJsonObject pappso::cbor::psm::PsmSpecGlob::m_specglobParameters
protected

Definition at line 68 of file psmspecglob.h.

Referenced by PsmSpecGlob(), and parameterMapReady().

◆ PsmSpecGlobScan

friend pappso::cbor::psm::PsmSpecGlob::PsmSpecGlobScan
private

Definition at line 42 of file psmspecglob.h.

Referenced by newCborScanMap().


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