libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
psmfilescanprocess.h
Go to the documentation of this file.
1
/**
2
* \file pappsomspp/processing/cbor/psm/psmfilescanprocess.h
3
* \date 12/07/2025
4
* \author Olivier Langella
5
* \brief PSM file reader designed to parallelize scan process
6
*/
7
8
/*******************************************************************************
9
* Copyright (c) 2025 Olivier Langella <Olivier.Langella@universite-paris-saclay.fr>.
10
*
11
* This file is part of PAPPSOms-tools.
12
*
13
* PAPPSOms-tools is free software: you can redistribute it and/or modify
14
* it under the terms of the GNU General Public License as published by
15
* the Free Software Foundation, either version 3 of the License, or
16
* (at your option) any later version.
17
*
18
* PAPPSOms-tools is distributed in the hope that it will be useful,
19
* but WITHOUT ANY WARRANTY; without even the implied warranty of
20
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21
* GNU General Public License for more details.
22
*
23
* You should have received a copy of the GNU General Public License
24
* along with PAPPSOms-tools. If not, see <http://www.gnu.org/licenses/>.
25
*
26
******************************************************************************/
27
#pragma once
28
29
#include "
psmfilereaderbase.h
"
30
#include <QTemporaryDir>
31
#include <QCborMap>
32
#include "
cborscanmapbase.h
"
33
#include "
pappsomspp/export-import-config.h
"
34
35
namespace
pappso
36
{
37
namespace
cbor
38
{
39
namespace
psm
40
{
41
42
43
/**
44
* @brief Basic PSM file reader to process scan (parallelized scan processing)
45
*/
46
class
PMSPP_LIB_DECL
PsmFileScanProcess
:
public
PsmFileReaderBase
47
48
{
49
friend
CborScanMapBase
;
50
51
public
:
52
/**
53
* Default constructor
54
*/
55
PsmFileScanProcess
(std::size_t buffer_scan_size);
56
57
/**
58
* Destructor
59
*/
60
virtual
~PsmFileScanProcess
();
61
62
protected
:
63
void
readScan(
pappso::UiMonitorInterface
&monitor)
override
;
64
void
scanFinished(
pappso::UiMonitorInterface
&monitor)
override
;
65
void
sampleFinished(
pappso::UiMonitorInterface
&monitor)
override
;
66
virtual
void
processBufferScan(
pappso::UiMonitorInterface
&monitor);
67
virtual
void
processBufferScanDone(
pappso::UiMonitorInterface
&monitor);
68
virtual
CborScanMapBase
*
newCborScanMap
() = 0;
69
void
clearScanBuffer();
70
71
72
protected
:
73
std::size_t m_bufferScanSize = 1000;
74
std::vector<CborScanMapBase *>
m_cborScanList
;
75
};
76
77
}
// namespace psm
78
}
// namespace cbor
79
}
// namespace pappso
cborscanmapbase.h
pappso::UiMonitorInterface
Definition
uimonitorinterface.h:50
pappso::cbor::psm::CborScanMapBase
Definition
cborscanmapbase.h:48
pappso::cbor::psm::PsmFileReaderBase
Definition
psmfilereaderbase.h:56
pappso::cbor::psm::PsmFileScanProcess
Basic PSM file reader to process scan (parallelized scan processing)
Definition
psmfilescanprocess.h:48
pappso::cbor::psm::PsmFileScanProcess::m_cborScanList
std::vector< CborScanMapBase * > m_cborScanList
Definition
psmfilescanprocess.h:74
pappso::cbor::psm::PsmFileScanProcess::CborScanMapBase
friend CborScanMapBase
Definition
psmfilescanprocess.h:49
pappso::cbor::psm::PsmFileScanProcess::newCborScanMap
virtual CborScanMapBase * newCborScanMap()=0
export-import-config.h
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
export-import-config.h:14
pappso
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition
aa.cpp:39
psmfilereaderbase.h
pappsomspp
core
processing
cbor
psm
psmfilescanprocess.h
Generated on Tue May 19 2026 12:52:14 for libpappsomspp by
1.9.8