OpenMS
Loading...
Searching...
No Matches
ExternalProcessMBox.h
Go to the documentation of this file.
1// Copyright (c) 2002-present, OpenMS Inc. -- EKU Tuebingen, ETH Zurich, and FU Berlin
2// SPDX-License-Identifier: BSD-3-Clause
3//
4// --------------------------------------------------------------------------
5// $Maintainer: Chris Bielow $
6// $Authors: Chris Bielow $
7// --------------------------------------------------------------------------
8
9#pragma once
10
11// OpenMS_GUI config
12#include <OpenMS/VISUAL/OpenMS_GUIConfig.h>
13
15
16#include <vector>
17
18class QWidget;
19
20namespace OpenMS
21{
22
32 class OPENMS_GUI_DLLAPI ExternalProcessMBox
33 {
34 public:
37
39 ExternalProcessMBox(std::function<void(const std::string&)> callbackStdOut, std::function<void(const std::string&)> callbackStdErr);
40
43
45 void setCallbacks(std::function<void(const std::string&)> callbackStdOut, std::function<void(const std::string&)> callbackStdErr);
46
58 ExternalProcess::RETURNSTATE run(QWidget* parent, const std::string& exe, const std::vector<std::string>& args, const std::string& working_dir, const bool verbose, std::string& error_msg);
59
63 ExternalProcess::RETURNSTATE run(QWidget* parent, const std::string& exe, const std::vector<std::string>& args, const std::string& working_dir, const bool verbose);
64
65
66 private:
68 };
69} // ns OpenMS
A wrapper around ExternalProcess to conveniently show a MessageBox when an error occurs.
Definition ExternalProcessMBox.h:33
void setCallbacks(std::function< void(const std::string &)> callbackStdOut, std::function< void(const std::string &)> callbackStdErr)
re-wire the callbacks used using run()
ExternalProcessMBox(std::function< void(const std::string &)> callbackStdOut, std::function< void(const std::string &)> callbackStdErr)
set the callback functions to process stdout and stderr output when the external process generates it
ExternalProcess::RETURNSTATE run(QWidget *parent, const std::string &exe, const std::vector< std::string > &args, const std::string &working_dir, const bool verbose, std::string &error_msg)
Runs a program by calling ExternalProcess::run and shows any error reported in error_msg as a Message...
ExternalProcess::RETURNSTATE run(QWidget *parent, const std::string &exe, const std::vector< std::string > &args, const std::string &working_dir, const bool verbose)
Same as other overload, just without a returned error message.
ExternalProcess ep_
Definition ExternalProcessMBox.h:67
ExternalProcessMBox()
default Ctor; callbacks for stdout/stderr are empty
A wrapper around boost::process to conveniently start an external program and forward its outputs.
Definition ExternalProcess.h:33
RETURNSTATE
result of calling an external executable
Definition ExternalProcess.h:37
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19