libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
sagereader.h
Go to the documentation of this file.
1/**
2 * \file input/sage/sagereader.h
3 * \date 21/08/2024
4 * \author Olivier Langella
5 * \brief read data files from Sage output
6 */
7
8/*******************************************************************************
9 * Copyright (c) 2024 Olivier Langella
10 *<Olivier.Langella@universite-paris-saclay.fr>.
11 *
12 * This file is part of i2MassChroQ.
13 *
14 * i2MassChroQ 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 * i2MassChroQ 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 i2MassChroQ. If not, see <http://www.gnu.org/licenses/>.
26 *
27 ******************************************************************************/
28
29#pragma once
32#include "sagefilereader.h"
33#include "../psmproteinmap.h"
34
35
36namespace pappso::cbor::psm
37{
38/**
39 * @todo write docs
40 */
42{
43 public:
44 /**
45 * Default constructor
46 */
49 const SageFileReader &sage_file_reader,
50 const QString &sage_json_file);
51
52 void read();
53 /**
54 * Destructor
55 */
56 virtual ~SageReader();
57
58
65
66 std::vector<SageModification> getStaticModificationList() const;
67 std::vector<SageModification> getVariableModificationList() const;
68 QString getDecoyTag() const;
69
70 const SageFileReader &getSageFileReader() const;
71
73
74 const QString &getmJsonAbsoluteFilePath() const;
75
76 private:
77 void readTsvFile();
78 QString getTsvFilePath(const QJsonDocument &json_doc);
79 QString getFastaFilePath(const QJsonDocument &json_doc);
80
81
83 {
84 public:
85 FastaSeq(SageReader *self);
86 void setSequence(const QString &description_in, const QString &sequence_in) override;
87
88 private:
90 QString m_decoyTag;
91 };
92
93 private:
99};
100} // namespace pappso::cbor::psm
void setSequence(const QString &description_in, const QString &sequence_in) override
SageReader(pappso::UiMonitorInterface *p_monitor, pappso::cbor::CborStreamWriter *p_output, const SageFileReader &sage_file_reader, const QString &sage_json_file)
std::vector< SageModification > getStaticModificationList() const
pappso::cbor::CborStreamWriter * mp_cborWriter
Definition sagereader.h:96
const QString & getmJsonAbsoluteFilePath() const
pappso::cbor::CborStreamWriter & getCborStreamWriter() const
const SageFileReader & m_sageFileReader
Definition sagereader.h:94
std::vector< SageModification > getVariableModificationList() const
QString getFastaFilePath(const QJsonDocument &json_doc)
const SageFileReader & getSageFileReader() const
QString getTsvFilePath(const QJsonDocument &json_doc)
pappso::UiMonitorInterface * mp_monitor
Definition sagereader.h:95
const AaModification * AaModificationP