libpappsomspp
Library for mass spectrometry
Toggle main menu visibility
Loading...
Searching...
No Matches
peptideobservation.h
Go to the documentation of this file.
1
/**
2
* \file pappsomspp/masschroq/peptideobservation.h
3
* \date 24/09/2024
4
* \author Olivier Langella
5
* \brief peptide model 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
32
#include "
precursor.h
"
33
#include "
peptide.h
"
34
#include <cstdint>
35
36
37
namespace
pappso::masschroq
38
{
39
40
class
PeptideObservation
;
41
42
typedef
std::shared_ptr<PeptideObservation>
PeptideObservationSp
;
43
44
/**
45
* @todo group together one Peptide and observations on this peptide
46
*/
47
class
PeptideObservation
48
{
49
public
:
50
/**
51
* Default constructor
52
*/
53
PeptideObservation
(
PeptideSp
peptide);
54
55
/**
56
* Copy constructor
57
*
58
* @param other TODO
59
*/
60
PeptideObservation
(
const
PeptideObservation
&other);
61
62
/**
63
* Destructor
64
*/
65
virtual
~PeptideObservation
();
66
67
const
PeptideSp
&
getPeptideSp
()
const
;
68
69
struct
Observation
70
{
71
/// The MS scan_number(mzxml) it has been observed in
72
std::size_t
m_scanNumber
= 0;
73
/// The charge it has been observed in
74
std::uint8_t
m_charge
= 0;
75
76
PrecursorSp
msp_precursor
=
nullptr
;
77
78
bool
m_isSpectrumIndex
=
true
;
79
80
PeptideLabel
*
p_label
=
nullptr
;
81
};
82
83
void
addObservation
(
const
PeptideObservation::Observation
&observation);
84
85
std::vector<std::uint8_t>
getObservedChargeStates
()
const
;
86
87
double
getBestRtOverallChargeStates
()
const
;
88
89
std::vector<double>
getObservedRetentionTimesOverallChargeStates
()
const
;
90
91
pappso::XicCoordSPtr
getBestXicCoordSPtrForCharge
(std::uint8_t charge)
const
;
92
93
pappso::XicCoordSPtr
getBestXicCoord
()
const
;
94
95
const
std::vector<Observation> &
getObservationList
()
const
;
96
97
private
:
98
PeptideSp
msp_peptide
;
99
std::vector<Observation>
m_observationList
;
100
};
101
}
// namespace pappso::masschroq
pappso::masschroq::PeptideLabel
Definition
peptidelabel.h:40
pappso::masschroq::PeptideObservation
Definition
peptideobservation.h:48
pappso::masschroq::PeptideObservation::getObservationList
const std::vector< Observation > & getObservationList() const
Definition
peptideobservation.cpp:150
pappso::masschroq::PeptideObservation::getBestXicCoord
pappso::XicCoordSPtr getBestXicCoord() const
Definition
peptideobservation.cpp:117
pappso::masschroq::PeptideObservation::~PeptideObservation
virtual ~PeptideObservation()
Definition
peptideobservation.cpp:46
pappso::masschroq::PeptideObservation::getObservedRetentionTimesOverallChargeStates
std::vector< double > getObservedRetentionTimesOverallChargeStates() const
Definition
peptideobservation.cpp:138
pappso::masschroq::PeptideObservation::addObservation
void addObservation(const PeptideObservation::Observation &observation)
Definition
peptideobservation.cpp:51
pappso::masschroq::PeptideObservation::getObservedChargeStates
std::vector< std::uint8_t > getObservedChargeStates() const
Definition
peptideobservation.cpp:57
pappso::masschroq::PeptideObservation::m_observationList
std::vector< Observation > m_observationList
Definition
peptideobservation.h:99
pappso::masschroq::PeptideObservation::getBestRtOverallChargeStates
double getBestRtOverallChargeStates() const
Definition
peptideobservation.cpp:77
pappso::masschroq::PeptideObservation::getPeptideSp
const PeptideSp & getPeptideSp() const
Definition
peptideobservation.cpp:71
pappso::masschroq::PeptideObservation::getBestXicCoordSPtrForCharge
pappso::XicCoordSPtr getBestXicCoordSPtrForCharge(std::uint8_t charge) const
Definition
peptideobservation.cpp:94
pappso::masschroq::PeptideObservation::PeptideObservation
PeptideObservation(PeptideSp peptide)
Definition
peptideobservation.cpp:34
pappso::masschroq::PeptideObservation::msp_peptide
PeptideSp msp_peptide
Definition
peptideobservation.h:98
peptide.h
precursor.h
pappso::masschroq
Definition
alignmentmethod.h:38
pappso::masschroq::PeptideSp
std::shared_ptr< Peptide > PeptideSp
Definition
peptide.h:46
pappso::masschroq::PrecursorSp
std::shared_ptr< Precursor > PrecursorSp
Definition
precursor.h:39
pappso::masschroq::PeptideObservationSp
std::shared_ptr< PeptideObservation > PeptideObservationSp
Definition
peptidemeasurements.h:45
pappso::XicCoordSPtr
std::shared_ptr< XicCoord > XicCoordSPtr
Definition
xiccoord.h:44
pappso::masschroq::PeptideObservation::Observation
Definition
peptideobservation.h:70
pappso::masschroq::PeptideObservation::Observation::m_charge
std::uint8_t m_charge
The charge it has been observed in.
Definition
peptideobservation.h:74
pappso::masschroq::PeptideObservation::Observation::m_scanNumber
std::size_t m_scanNumber
The MS scan_number(mzxml) it has been observed in.
Definition
peptideobservation.h:72
pappso::masschroq::PeptideObservation::Observation::msp_precursor
PrecursorSp msp_precursor
Definition
peptideobservation.h:76
pappso::masschroq::PeptideObservation::Observation::m_isSpectrumIndex
bool m_isSpectrumIndex
Definition
peptideobservation.h:78
pappso::masschroq::PeptideObservation::Observation::p_label
PeptideLabel * p_label
Definition
peptideobservation.h:80
pappsomspp
core
masschroq
peptideobservation.h
Generated on
for libpappsomspp by
1.17.0