libpappsomspp
Library for mass spectrometry
Loading...
Searching...
No Matches
uimonitortext.cpp
Go to the documentation of this file.
1/**
2 * \file pappsomspp/processing/uimonitor/uimonitortext.cpp
3 * \date 14/5/2021
4 * \author Olivier Langella
5 * \brief simle text monitor implementation of the User Interface Monitor
6 **/
7
8/*******************************************************************************
9 * Copyright (c) 2021 Olivier Langella
10 *<Olivier.Langella@universite-paris-saclay.fr>.
11 *
12 * This file is part of the PAPPSOms++ library.
13 *
14 * PAPPSOms++ 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 * PAPPSOms++ 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 PAPPSOms++. If not, see <http://www.gnu.org/licenses/>.
26 *
27 ******************************************************************************/
28
29#include <QObject>
30
31#include "uimonitortext.h"
32
33using namespace pappso;
34
35UiMonitorText::UiMonitorText(QTextStream &output_stream) : m_outputStream(output_stream)
36{
37}
38
42
43bool
45{
46 // by defaut not interruptible
47 return false;
48}
49
50void
52{
53 m_outputStream << title << Qt::endl;
54 m_outputStream.flush();
55}
56
57void
59{
60 m_outputStream << status << Qt::endl;
61 m_outputStream.flush();
62}
63
64void
66{
67 m_count++;
69 {
70 m_outputStream << m_count << " ";
71 }
72 else
73 {
74 m_outputStream << QObject::tr("%1 on %2").arg(m_count).arg(m_totalSteps) << " ";
75 }
76 m_outputStream.flush();
77}
78
79void
81{
82 m_outputStream << text << Qt::endl;
83 m_outputStream.flush();
84}
85
86void
87pappso::UiMonitorText::setTotalSteps(std::size_t total_number_of_steps)
88{
89 UiMonitorInterface::setTotalSteps(total_number_of_steps);
90 m_count = 0;
91}
virtual void setTotalSteps(std::size_t total_number_of_steps)
use it if the number of steps is known in an algorithm the total number of steps is usefull to report...
QTextStream & m_outputStream
virtual void count() override
count steps report when a step is computed in an algorithm
virtual void setStatus(const QString &status) override
current status of the process
virtual void setTitle(const QString &title) override
current kind of process running
virtual bool shouldIstop() override
should the procces be stopped ? If true, then cancel process Use this function at strategic point of ...
virtual void setTotalSteps(std::size_t total_number_of_steps)
use it if the number of steps is known in an algorithm the total number of steps is usefull to report...
virtual void appendText(const QString &text) override
append a text to a long report
UiMonitorText(QTextStream &output_stream)
tries to keep as much as possible monoisotopes, removing any possible C13 peaks and changes multichar...
Definition aa.cpp:39