libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
jsoninput.h
Go to the documentation of this file.
1
2
/**
3
* \file pappsomspp/masschroq/input/jsoninput.h
4
* \date 02/01/2025
5
* \author Olivier Langella
6
* \brief process json document input
7
*/
8
9
/*******************************************************************************
10
* Copyright (c) 2025 Olivier Langella
11
*<Olivier.Langella@universite-paris-saclay.fr>.
12
*
13
* This file is part of MassChroQ.
14
*
15
* MassChroQ is free software: you can redistribute it and/or modify
16
* it under the terms of the GNU General Public License as published by
17
* the Free Software Foundation, either version 3 of the License, or
18
* (at your option) any later version.
19
*
20
* MassChroQ is distributed in the hope that it will be useful,
21
* but WITHOUT ANY WARRANTY; without even the implied warranty of
22
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23
* GNU General Public License for more details.
24
*
25
* You should have received a copy of the GNU General Public License
26
* along with MassChroQ. If not, see <http://www.gnu.org/licenses/>.
27
*
28
******************************************************************************/
29
30
#pragma once
31
32
33
#include "
pappsomspp/core/processing/uimonitor/uimonitorinterface.h
"
34
#include "
pappsomspp/core/processing/project/projectparameters.h
"
35
#include <QJsonDocument>
36
#include "
../output/cboroutputstream.h
"
37
#include "
../msrungroup.h
"
38
#include "
pappsomspp/export-import-config.h
"
39
40
namespace
pappso::masschroq
41
{
42
43
/**
44
* @todo write docs
45
*/
46
class
PMSPP_LIB_DECL
JsonInput
47
{
48
public
:
49
/**
50
* Default constructor
51
*/
52
JsonInput
(
pappso::UiMonitorInterface
&ui_monitor,
53
const
QString &tmp_dir_name,
54
const
QJsonDocument &json_doc);
55
56
/**
57
* Destructor
58
*/
59
~JsonInput
();
60
61
void
action
(
CborOutputStream
&cbor_output);
62
63
private
:
64
const
QJsonValue
documentFind
(
const
QString &key1,
const
QString &key2)
const
;
65
void
readMzDataFiles
();
66
void
readAlignmentMethodSp
();
67
void
readQuantificationMethodSp
();
68
void
readProjectParameters
();
69
void
read_protein_list
();
70
void
read_peptide_list
();
71
void
read_msrun_peptide_observations
();
72
void
readAction
(
CborOutputStream
&cbor_output);
73
74
void
computeIsotopologues
(
double
ni_ratio);
75
76
private
:
77
const
QJsonDocument &
m_jsonDocument
;
78
const
QString &
m_tmpDirName
;
79
pappso::UiMonitorInterface
&
m_uiMonitor
;
80
81
82
std::map<QString, MsRunPeptideListSp>
m_msfileList
;
83
AlignmentMethodSp
msp_alignmentMethod
;
84
QuantificationMethodSp
msp_quantificationMethod
;
85
std::map<QString, ProteinSp>
m_proteinMap
;
86
std::vector<PeptideSp>
m_peptideStore
;
87
std::map<QString, PeptideSp>
m_peptideMap
;
88
std::map<QString, MsRunGroupSp>
m_msRunGroupSpList
;
89
90
std::shared_ptr<pappso::IonMobilityGrid>
msp_ionMobilityGrid
;
91
92
pappso::ProjectParameters
m_projectParameters
;
93
94
bool
m_isMatchBetweenRun
=
true
;
95
};
96
}
// namespace pappso::masschroq
cboroutputstream.h
pappso::ProjectParameters
Definition
projectparameters.h:66
pappso::UiMonitorInterface
Definition
uimonitorinterface.h:50
pappso::masschroq::CborOutputStream
Definition
cboroutputstream.h:51
pappso::masschroq::JsonInput::m_jsonDocument
const QJsonDocument & m_jsonDocument
Definition
jsoninput.h:77
pappso::masschroq::JsonInput::readProjectParameters
void readProjectParameters()
Definition
jsoninput.cpp:593
pappso::masschroq::JsonInput::m_peptideStore
std::vector< PeptideSp > m_peptideStore
Definition
jsoninput.h:86
pappso::masschroq::JsonInput::m_msRunGroupSpList
std::map< QString, MsRunGroupSp > m_msRunGroupSpList
Definition
jsoninput.h:88
pappso::masschroq::JsonInput::m_tmpDirName
const QString & m_tmpDirName
Definition
jsoninput.h:78
pappso::masschroq::JsonInput::read_peptide_list
void read_peptide_list()
Definition
jsoninput.cpp:304
pappso::masschroq::JsonInput::m_uiMonitor
pappso::UiMonitorInterface & m_uiMonitor
Definition
jsoninput.h:79
pappso::masschroq::JsonInput::computeIsotopologues
void computeIsotopologues(double ni_ratio)
Definition
jsoninput.cpp:468
pappso::masschroq::JsonInput::readQuantificationMethodSp
void readQuantificationMethodSp()
Definition
jsoninput.cpp:247
pappso::masschroq::JsonInput::read_protein_list
void read_protein_list()
Definition
jsoninput.cpp:271
pappso::masschroq::JsonInput::m_peptideMap
std::map< QString, PeptideSp > m_peptideMap
Definition
jsoninput.h:87
pappso::masschroq::JsonInput::readAlignmentMethodSp
void readAlignmentMethodSp()
Definition
jsoninput.cpp:238
pappso::masschroq::JsonInput::readAction
void readAction(CborOutputStream &cbor_output)
Definition
jsoninput.cpp:493
pappso::masschroq::JsonInput::m_proteinMap
std::map< QString, ProteinSp > m_proteinMap
Definition
jsoninput.h:85
pappso::masschroq::JsonInput::m_projectParameters
pappso::ProjectParameters m_projectParameters
Definition
jsoninput.h:92
pappso::masschroq::JsonInput::JsonInput
JsonInput(pappso::UiMonitorInterface &ui_monitor, const QString &tmp_dir_name, const QJsonDocument &json_doc)
Definition
jsoninput.cpp:40
pappso::masschroq::JsonInput::msp_alignmentMethod
AlignmentMethodSp msp_alignmentMethod
Definition
jsoninput.h:83
pappso::masschroq::JsonInput::m_isMatchBetweenRun
bool m_isMatchBetweenRun
Definition
jsoninput.h:94
pappso::masschroq::JsonInput::msp_quantificationMethod
QuantificationMethodSp msp_quantificationMethod
Definition
jsoninput.h:84
pappso::masschroq::JsonInput::action
void action(CborOutputStream &cbor_output)
Definition
jsoninput.cpp:52
pappso::masschroq::JsonInput::m_msfileList
std::map< QString, MsRunPeptideListSp > m_msfileList
Definition
jsoninput.h:82
pappso::masschroq::JsonInput::documentFind
const QJsonValue documentFind(const QString &key1, const QString &key2) const
Definition
jsoninput.cpp:109
pappso::masschroq::JsonInput::readMzDataFiles
void readMzDataFiles()
Definition
jsoninput.cpp:135
pappso::masschroq::JsonInput::msp_ionMobilityGrid
std::shared_ptr< pappso::IonMobilityGrid > msp_ionMobilityGrid
Definition
jsoninput.h:90
pappso::masschroq::JsonInput::read_msrun_peptide_observations
void read_msrun_peptide_observations()
Definition
jsoninput.cpp:371
export-import-config.h
PMSPP_LIB_DECL
#define PMSPP_LIB_DECL
Definition
export-import-config.h:14
msrungroup.h
pappso::masschroq
Definition
alignmentmethod.h:38
pappso::masschroq::QuantificationMethodSp
std::shared_ptr< QuantificationMethod > QuantificationMethodSp
Definition
quantificationmethod.h:46
pappso::masschroq::AlignmentMethodSp
std::shared_ptr< AlignmentMethod > AlignmentMethodSp
Definition
alignmentmethod.h:42
projectparameters.h
uimonitorinterface.h
pappsomspp
core
masschroq
input
jsoninput.h
Generated on
for libpappsomspp by
1.17.0