libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
obopsimodterm.h
Go to the documentation of this file.
1/*******************************************************************************
2 * Copyright (c) 2015 Olivier Langella <Olivier.Langella@moulon.inra.fr>.
3 *
4 * This file is part of the PAPPSOms++ library.
5 *
6 * PAPPSOms++ is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * PAPPSOms++ is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with PAPPSOms++. If not, see <http://www.gnu.org/licenses/>.
18 *
19 ******************************************************************************/
20
21#pragma once
22
23#include <QRegularExpression>
25
26namespace pappso
27{
28
29class OboPsiMod;
30class OboPsiMs;
31class OboUnimod;
32
34{
35 friend OboPsiMod;
36 friend OboPsiMs;
37 friend OboUnimod;
38
39 public:
44
45 bool isValid() const;
46 /** @brief tells if this term "is_a" another accession
47 * @return bool if true
48 */
49 bool isA(const QString &accession) const;
50
51
52 void setAccession(const QString &accession);
53 const QString &getAccession() const;
54
55 bool isUnimod() const;
56
57 public:
58 QString m_name;
59 QString m_definition;
61 QString m_psiMsLabel;
63 QString m_formula;
64 QString m_origin;
65
66 double m_diffMono;
67 double m_massMono;
68
69 QStringList m_isA;
70
71 private:
72 void parseLine(const QString &line);
73 void clearTerm();
74
75 static QRegularExpression m_firstParse;
76 static QRegularExpression m_findExactPsiModLabel;
77 static QRegularExpression m_findRelatedPsiMsLabel;
78 static QRegularExpression m_firstParseUnimod;
79 static QRegularExpression m_parseDefinition;
80
81 private:
82 QString m_accession;
83 bool m_isUnimod = false;
84};
85
86} // namespace pappso
87
88
static QRegularExpression m_firstParseUnimod
void setAccession(const QString &accession)
OboPsiModTerm & operator=(const OboPsiModTerm &)
bool isA(const QString &accession) const
tells if this term "is_a" another accession
static QRegularExpression m_firstParse
void parseLine(const QString &line)
const QString & getAccession() const
static QRegularExpression m_findRelatedPsiMsLabel
static QRegularExpression m_findExactPsiModLabel
static QRegularExpression m_parseDefinition
#define PMSPP_LIB_DECL
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39
int oboPsiModTermMetaTypeId