libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
cborscanmapbase.h
Go to the documentation of this file.
1/**
2 * \file pappsomspp/processing/cbor/psm/cborscanmapbase.h
3 * \date 13/07/2025
4 * \author Olivier Langella
5 * \brief Base class to handle scan cbor map
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 <QCborMap>
31
32namespace pappso
33{
34namespace cbor
35{
36namespace psm
37{
38
39
41/**
42 * @todo write docs
43 */
44class CborScanMapBase : public QCborMap
45{
46 public:
47 /**
48 * Default constructor
49 */
50 CborScanMapBase(const PsmFileScanProcess &psm_file_scan_process);
51
52 /**
53 * Destructor
54 */
55 virtual ~CborScanMapBase();
56
57 virtual void process();
58
59 /** @brief add a new eval key and double values (from a vector) to each PSM
60 */
61
62 std::vector<double>::iterator addPsmEvalVectorDouble(const QString &eval_name,
63 const QString &eval_value_key,
64 std::vector<double>::iterator begin,
65 std::vector<double>::const_iterator end);
66 QCborMap getCborScanId() const;
67 QCborMap getCborScanPrecursor() const;
68 QCborArray getCborPsmList() const;
69
70 protected:
72
73 protected:
75};
76
77} // namespace psm
78} // namespace cbor
79} // namespace pappso
std::vector< double >::iterator addPsmEvalVectorDouble(const QString &eval_name, const QString &eval_value_key, std::vector< double >::iterator begin, std::vector< double >::const_iterator end)
add a new eval key and double values (from a vector) to each PSM
const PsmFileScanProcess & m_PsmFileScanProcess
CborScanMapBase(const PsmFileScanProcess &psm_file_scan_process)
pappso::QualifiedMassSpectrumSPtr getCurrentQualifiedMassSpectrumSPtr() const
Basic PSM file reader to process scan (parallelized scan processing)
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39
std::shared_ptr< QualifiedMassSpectrum > QualifiedMassSpectrumSPtr