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

#include <psmfeatures.h>

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

Public Member Functions

 PsmFeatures (std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p)
 PsmFeatures (std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QJsonObject &parameters)
virtual ~PsmFeatures ()
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

CborScanMapBasenewCborScanMap () override
void parameterMapReady (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 parameterMapReady (pappso::UiMonitorInterface &monitor) override
void fastaFilesReady (pappso::UiMonitorInterface &monitor) override
virtual void proteinMapReady (pappso::UiMonitorInterface &monitor) override
virtual void processBufferScanDone (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)

Private Attributes

pappso::XtandemSpectrumProcess m_tandemSpectrumProcess
double m_minimumMz = 150
std::list< pappso::Enums::PeptideIonm_ionList
pappso::PrecisionPtr m_fragmentTolerance
pappso::PsmFeaturesmpa_psmFeatures

Additional Inherited Members

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

Detailed Description

Todo
write docs

Definition at line 45 of file psmfeatures.h.

Constructor & Destructor Documentation

◆ PsmFeatures() [1/2]

pappso::cbor::psm::PsmFeatures::PsmFeatures ( std::size_t buffer_scan_size,
CborStreamWriter * cbor_output_p )

Default constructor

Definition at line 39 of file psmfeatures.cpp.

40 : PsmFileScanProcessAndCopy(buffer_scan_size, cbor_output_p, "psm features")
41{
42 m_minimumMz = 150;
44 m_tandemSpectrumProcess.setNmostIntense(100);
45 m_tandemSpectrumProcess.setDynamicRange(100);
46
47
48 m_ionList.clear();
51
53
54 mpa_psmFeatures = new pappso::PsmFeatures(m_fragmentTolerance, m_minimumMz);
55}
static PrecisionPtr getDaltonInstance(pappso_double value)
get a Dalton precision pointer
pappso::XtandemSpectrumProcess m_tandemSpectrumProcess
Definition psmfeatures.h:69
pappso::PsmFeatures * mpa_psmFeatures
Definition psmfeatures.h:73
pappso::PrecisionPtr m_fragmentTolerance
Definition psmfeatures.h:72
std::list< pappso::Enums::PeptideIon > m_ionList
Definition psmfeatures.h:71
PsmFileScanProcessAndCopy(std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QString &operation)
@ y
Cter amino ions.
Definition types.h:295
@ b
Nter acylium ions.
Definition types.h:287

References pappso::cbor::psm::PsmFileScanProcessAndCopy::PsmFileScanProcessAndCopy(), pappso::Enums::b, pappso::PrecisionFactory::getDaltonInstance(), m_fragmentTolerance, m_ionList, m_minimumMz, m_tandemSpectrumProcess, mpa_psmFeatures, and pappso::Enums::y.

◆ PsmFeatures() [2/2]

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

Definition at line 57 of file psmfeatures.cpp.

60 : PsmFileScanProcessAndCopy(buffer_scan_size, cbor_output_p, "psm features")
61{
62
63 m_ionList.clear();
66
67 if(parameters.empty())
68 {
69 m_minimumMz = 150;
71 m_tandemSpectrumProcess.setNmostIntense(100);
72 m_tandemSpectrumProcess.setDynamicRange(100);
74 }
75 else
76 {
77
78 m_minimumMz = parameters.value("minimum_mz").toDouble();
80 m_tandemSpectrumProcess.setNmostIntense(
81 parameters.value("hyperscore").toObject().value("n_most_intense").toInt());
82 m_tandemSpectrumProcess.setDynamicRange(
83 parameters.value("hyperscore").toObject().value("dynamic_range").toInt());
84
85
86 if(parameters.value("fragment_tolerance_unit").toString() == "dalton")
87 {
89 parameters.value("fragment_tolerance").toDouble());
90 }
91 else if(parameters.value("fragment_tolerance_unit").toString() == "ppm")
92 {
94 parameters.value("fragment_tolerance").toDouble());
95 }
96 }
97
98 mpa_psmFeatures = new pappso::PsmFeatures(m_fragmentTolerance, m_minimumMz);
99}
static PrecisionPtr getPpmInstance(pappso_double value)
get a ppm precision pointer

References pappso::cbor::psm::PsmFileScanProcessAndCopy::PsmFileScanProcessAndCopy(), pappso::Enums::b, m_ionList, and pappso::Enums::y.

◆ ~PsmFeatures()

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

Destructor

Definition at line 102 of file psmfeatures.cpp.

103{
104 delete mpa_psmFeatures;
105}

References mpa_psmFeatures.

Member Function Documentation

◆ newCborScanMap()

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

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

Definition at line 134 of file psmfeatures.cpp.

135{
136 return new PsmFeaturesScan(
138}

References m_fragmentTolerance, m_ionList, m_tandemSpectrumProcess, mpa_psmFeatures, and newCborScanMap().

Referenced by newCborScanMap().

◆ parameterMapReady()

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

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

Definition at line 109 of file psmfeatures.cpp.

110{
111 QCborMap cbor_features_parameters;
112
113 cbor_features_parameters.insert(QString("minimum_mz"), m_minimumMz);
114 cbor_features_parameters.insert(QString("fragment_tolerance_unit"),
116 cbor_features_parameters.insert(QString("fragment_tolerance"), m_fragmentTolerance->getNominal());
117 cbor_features_parameters.insert(QString("ion_list"), "y b");
118
119 QCborMap cbor_hyperscore;
120 cbor_hyperscore.insert(QString("minimum_mz"), m_minimumMz);
121 cbor_hyperscore.insert(QString("n_most_intense"), m_tandemSpectrumProcess.getNmostIntense());
122 cbor_hyperscore.insert(QString("dynamic_range"), m_tandemSpectrumProcess.getDynamicRange());
123
124 cbor_features_parameters.insert(QString("hyperscore"), cbor_hyperscore);
125
126 m_cborParameterMap.insert(QString("features"), cbor_features_parameters);
127
128 mp_cborOutput->append("parameter_map");
129 mp_cborOutput->writeCborMap(m_cborParameterMap);
130}
static QString toString(specglob::SpectralAlignmentType type)
Convenience function to return a string describing the specglob alingment type.
Definition utils.cpp:544

References pappso::cbor::psm::PsmFileReaderBase::m_cborParameterMap, m_fragmentTolerance, m_minimumMz, m_tandemSpectrumProcess, pappso::cbor::psm::PsmFileScanProcessAndCopy::mp_cborOutput, parameterMapReady(), and pappso::Utils::toString().

Referenced by parameterMapReady().

Member Data Documentation

◆ m_fragmentTolerance

pappso::PrecisionPtr pappso::cbor::psm::PsmFeatures::m_fragmentTolerance
private

Definition at line 72 of file psmfeatures.h.

Referenced by PsmFeatures(), newCborScanMap(), and parameterMapReady().

◆ m_ionList

std::list<pappso::Enums::PeptideIon> pappso::cbor::psm::PsmFeatures::m_ionList
private

Definition at line 71 of file psmfeatures.h.

Referenced by PsmFeatures(), PsmFeatures(), and newCborScanMap().

◆ m_minimumMz

double pappso::cbor::psm::PsmFeatures::m_minimumMz = 150
private

Definition at line 70 of file psmfeatures.h.

Referenced by PsmFeatures(), and parameterMapReady().

◆ m_tandemSpectrumProcess

pappso::XtandemSpectrumProcess pappso::cbor::psm::PsmFeatures::m_tandemSpectrumProcess
private

Definition at line 69 of file psmfeatures.h.

Referenced by PsmFeatures(), newCborScanMap(), and parameterMapReady().

◆ mpa_psmFeatures

pappso::PsmFeatures* pappso::cbor::psm::PsmFeatures::mpa_psmFeatures
private

Definition at line 73 of file psmfeatures.h.

Referenced by PsmFeatures(), ~PsmFeatures(), and newCborScanMap().


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