libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
msrungroup.h
Go to the documentation of this file.
1/**
2 * \file pappsomspp/masschroq/msrungroup.h
3 * \date 10/10/2024
4 * \author Olivier Langella
5 * \brief group msrun together in masschroqlite
6 */
7
8/*******************************************************************************
9 * Copyright (c) 2024 Olivier Langella
10 *<Olivier.Langella@universite-paris-saclay.fr>.
11 *
12 * This file is part of MassChroQ.
13 *
14 * MassChroQ 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 * MassChroQ 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 MassChroQ. If not, see <http://www.gnu.org/licenses/>.
26 *
27 ******************************************************************************/
28
29#pragma once
30
31#include "msrunpeptidelist.h"
33#include "alignmentmethod.h"
36
37namespace pappso::masschroq
38{
39
40class MsRunGroup;
41
42typedef std::shared_ptr<MsRunGroup> MsRunGroupSp;
43
44/**
45 * @todo write docs
46 */
48{
49 public:
50 /**
51 * Default constructor
52 */
53 MsRunGroup(const QString &id, const std::vector<MsRunPeptideListSp> &msrun_list);
54
55 /**
56 * Copy constructor
57 *
58 * @param other TODO
59 */
60 MsRunGroup(const MsRunGroup &other);
61
62 /**
63 * Destructor
64 */
65 virtual ~MsRunGroup();
66
67 void setIonMobilityGridSp(const std::shared_ptr<pappso::IonMobilityGrid> &ion_mobility_grid_sp);
68
69
70 void align(CborOutputStream &cbor_output,
71 const QString &align_id,
72 pappso::UiMonitorInterface &m_uiMonitor) const;
73
74 void quantify(CborOutputStream &cbor_output,
75 const QString &quantify_id,
76 const QString &tmp_dir,
77 pappso::UiMonitorInterface &m_uiMonitor,
78 const QuantificationMethodSp &quantification_method,
79 const std::vector<PeptideSp> &peptide_sp_list) const;
80
81 void setAlignmentMethodSp(const AlignmentMethodSp &alignment_method_sp,
82 const QString &msrun_ref_id);
83
84 bool contains(const MsRun *msrun_p) const;
85
86 bool hasTimsTofMobilityIndex() const;
87
88 const std::shared_ptr<pappso::IonMobilityGrid> &getIonMobilityGridSp() const;
89
90 const QString &getId() const;
91
92 private:
94 pappso::UiMonitorInterface &m_uiMonitor) const;
95
96
97 private:
98 const QString m_id;
99 const std::vector<MsRunPeptideListSp> m_msRunPeptideListSpList;
103 std::shared_ptr<pappso::IonMobilityGrid> msp_ionMobilityGrid;
104};
105} // namespace pappso::masschroq
MsRunGroup(const QString &id, const std::vector< MsRunPeptideListSp > &msrun_list)
std::shared_ptr< pappso::IonMobilityGrid > msp_ionMobilityGrid
Definition msrungroup.h:103
void quantify(CborOutputStream &cbor_output, const QString &quantify_id, const QString &tmp_dir, pappso::UiMonitorInterface &m_uiMonitor, const QuantificationMethodSp &quantification_method, const std::vector< PeptideSp > &peptide_sp_list) const
void setIonMobilityGridSp(const std::shared_ptr< pappso::IonMobilityGrid > &ion_mobility_grid_sp)
bool contains(const MsRun *msrun_p) const
const QString & getId() const
void align(CborOutputStream &cbor_output, const QString &align_id, pappso::UiMonitorInterface &m_uiMonitor) const
void setAlignmentMethodSp(const AlignmentMethodSp &alignment_method_sp, const QString &msrun_ref_id)
MsRunPeptideListSp msp_msRunPeptideListAlignmentReference
Definition msrungroup.h:101
const std::vector< MsRunPeptideListSp > m_msRunPeptideListSpList
Definition msrungroup.h:99
const std::shared_ptr< pappso::IonMobilityGrid > & getIonMobilityGridSp() const
AlignmentMethodSp msp_alignmentMethod
Definition msrungroup.h:100
void alignRetentionTimeBetweenMsRuns(CborOutputStream &cbor_output, pappso::UiMonitorInterface &m_uiMonitor) const
std::shared_ptr< QuantificationMethod > QuantificationMethodSp
std::shared_ptr< MsRunGroup > MsRunGroupSp
Definition msrungroup.h:42
std::shared_ptr< MsRunPeptideList > MsRunPeptideListSp
std::shared_ptr< AlignmentMethod > AlignmentMethodSp