libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
psmfilescanprocessandcopy.h
Go to the documentation of this file.
1
/**
2
* \file pappsomspp/processing/cbor/psm/psmfilescanprocessandcopy.h
3
* \date 15/07/2025
4
* \author Olivier Langella
5
* \brief PSM file reader designed to parallelize scan process and then copy the results in PSM cbor
6
* output stream
7
*/
8
9
/*******************************************************************************
10
* Copyright (c) 2025 Olivier Langella <Olivier.Langella@universite-paris-saclay.fr>.
11
*
12
* This file is part of PAPPSOms-tools.
13
*
14
* PAPPSOms-tools is free software: you can redistribute it and/or modify
15
* it under the terms of the GNU General Public License as published by
16
* the Free Software Foundation, either version 3 of the License, or
17
* (at your option) any later version.
18
*
19
* PAPPSOms-tools is distributed in the hope that it will be useful,
20
* but WITHOUT ANY WARRANTY; without even the implied warranty of
21
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22
* GNU General Public License for more details.
23
*
24
* You should have received a copy of the GNU General Public License
25
* along with PAPPSOms-tools. If not, see <http://www.gnu.org/licenses/>.
26
*
27
******************************************************************************/
28
#pragma once
29
30
#include <QBuffer>
31
32
#include "
psmfilescanprocess.h
"
33
#include "
pappsomspp/core/processing/cbor/cborstreamwriter.h
"
34
#include "
pappsomspp/export-import-config.h
"
35
36
37
namespace
pappso
38
{
39
namespace
cbor
40
{
41
namespace
psm
42
{
43
44
/**
45
* @brief Basic PSM file reader to process scan (parallelized scan processing) and write a new
46
* resulting PSM file
47
*/
48
class
PMSPP_LIB_DECL
PsmFileScanProcessAndCopy
:
public
PsmFileScanProcess
49
{
50
public
:
51
/**
52
* Default constructor
53
*/
54
PsmFileScanProcessAndCopy
(std::size_t buffer_scan_size,
55
CborStreamWriter
*cbor_output_p,
56
const
QString &operation);
57
58
/**
59
* Destructor
60
*/
61
virtual
~PsmFileScanProcessAndCopy
();
62
63
void
close
()
override
;
64
65
66
protected
:
67
/**
68
*/
69
void
delayProteinMapInMemory
();
70
void
informationsReady
(
pappso::UiMonitorInterface
&monitor)
override
;
71
void
logReady
(
pappso::UiMonitorInterface
&monitor)
override
;
72
void
parameterMapReady
(
pappso::UiMonitorInterface
&monitor)
override
;
73
void
fastaFilesReady
(
pappso::UiMonitorInterface
&monitor)
override
;
74
virtual
void
proteinMapReady
(
pappso::UiMonitorInterface
&monitor)
override
;
75
76
virtual
void
processBufferScanDone
(
pappso::UiMonitorInterface
&monitor)
override
;
77
78
void
sampleStarted
(
pappso::UiMonitorInterface
&monitor)
override
;
79
80
void
sampleFinished
(
pappso::UiMonitorInterface
&monitor)
override
;
81
82
83
void
sampleListStarted
(
pappso::UiMonitorInterface
&monitor)
override
;
84
void
sampleListFinished
(
pappso::UiMonitorInterface
&monitor)
override
;
85
86
protected
:
87
CborStreamWriter
*
mp_cborOutput
;
88
CborStreamWriter
*
mp_copyCborOutput
=
nullptr
;
89
QString
m_operation
;
90
91
92
pappso::cbor::psm::PsmProteinMap
m_psmNewProteinMap
;
93
QBuffer *
mpa_bufferAfterProteinMap
=
nullptr
;
94
pappso::cbor::CborStreamWriter
*
mpa_bufferWriterAfterProteinMap
=
nullptr
;
95
};
96
97
}
// namespace psm
98
}
// namespace cbor
99
}
// namespace pappso
cborstreamwriter.h
pappso::UiMonitorInterface
Definition
uimonitorinterface.h:50
pappso::cbor::CborStreamWriter
overrides QCborStreamWriter base class to provide convenient functions
Definition
cborstreamwriter.h:46
pappso::cbor::psm::PsmFileScanProcessAndCopy::delayProteinMapInMemory
void delayProteinMapInMemory()
Definition
psmfilescanprocessandcopy.cpp:69
pappso::cbor::psm::PsmFileScanProcessAndCopy::sampleStarted
void sampleStarted(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:201
pappso::cbor::psm::PsmFileScanProcessAndCopy::fastaFilesReady
void fastaFilesReady(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:135
pappso::cbor::psm::PsmFileScanProcessAndCopy::sampleFinished
void sampleFinished(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:219
pappso::cbor::psm::PsmFileScanProcessAndCopy::mp_cborOutput
CborStreamWriter * mp_cborOutput
Definition
psmfilescanprocessandcopy.h:87
pappso::cbor::psm::PsmFileScanProcessAndCopy::mp_copyCborOutput
CborStreamWriter * mp_copyCborOutput
Definition
psmfilescanprocessandcopy.h:88
pappso::cbor::psm::PsmFileScanProcessAndCopy::PsmFileScanProcessAndCopy
PsmFileScanProcessAndCopy(std::size_t buffer_scan_size, CborStreamWriter *cbor_output_p, const QString &operation)
Definition
psmfilescanprocessandcopy.cpp:41
pappso::cbor::psm::PsmFileScanProcessAndCopy::sampleListStarted
void sampleListStarted(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:230
pappso::cbor::psm::PsmFileScanProcessAndCopy::mpa_bufferWriterAfterProteinMap
pappso::cbor::CborStreamWriter * mpa_bufferWriterAfterProteinMap
Definition
psmfilescanprocessandcopy.h:94
pappso::cbor::psm::PsmFileScanProcessAndCopy::sampleListFinished
void sampleListFinished(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:240
pappso::cbor::psm::PsmFileScanProcessAndCopy::m_operation
QString m_operation
Definition
psmfilescanprocessandcopy.h:89
pappso::cbor::psm::PsmFileScanProcessAndCopy::proteinMapReady
virtual void proteinMapReady(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:153
pappso::cbor::psm::PsmFileScanProcessAndCopy::close
void close() override
convenient function to clean pointer before leaving
Definition
psmfilescanprocessandcopy.cpp:79
pappso::cbor::psm::PsmFileScanProcessAndCopy::informationsReady
void informationsReady(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:113
pappso::cbor::psm::PsmFileScanProcessAndCopy::mpa_bufferAfterProteinMap
QBuffer * mpa_bufferAfterProteinMap
Definition
psmfilescanprocessandcopy.h:93
pappso::cbor::psm::PsmFileScanProcessAndCopy::processBufferScanDone
virtual void processBufferScanDone(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:169
pappso::cbor::psm::PsmFileScanProcessAndCopy::parameterMapReady
void parameterMapReady(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:128
pappso::cbor::psm::PsmFileScanProcessAndCopy::logReady
void logReady(pappso::UiMonitorInterface &monitor) override
Definition
psmfilescanprocessandcopy.cpp:120
pappso::cbor::psm::PsmFileScanProcessAndCopy::m_psmNewProteinMap
pappso::cbor::psm::PsmProteinMap m_psmNewProteinMap
Definition
psmfilescanprocessandcopy.h:92
pappso::cbor::psm::PsmFileScanProcess::PsmFileScanProcess
PsmFileScanProcess(std::size_t buffer_scan_size)
Definition
psmfilescanprocess.cpp:41
pappso::cbor::psm::PsmProteinMap
store PsmProtein in a map with accession as key
Definition
psmproteinmap.h:56
export-import-config.h
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
export-import-config.h:14
pappso::cbor::psm
Definition
cborscanmapbase.h:40
pappso::cbor
Definition
cborstreamreader.cpp:35
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition
aa.cpp:39
psmfilescanprocess.h
pappsomspp
core
processing
cbor
psm
psmfilescanprocessandcopy.h
Generated on
for libpappsomspp by
1.17.0