Add Run action/condition temp vars

This commit is contained in:
Przemek Pawlas
2024-03-23 02:51:51 +01:00
committed by WarmUpTill
parent c8545dea4d
commit 74dc0c871b
7 changed files with 175 additions and 9 deletions

View File

@@ -5,8 +5,9 @@
#include <obs-data.h>
#include <obs-module-helper.hpp>
#include <QPushButton>
#include <QListWidget>
#include <QProcess>
#include <QPushButton>
#include <QStringList>
#include <QVBoxLayout>
#include <variant>
@@ -23,6 +24,20 @@ public:
std::string WorkingDir() const { return _workingDirectory; }
QStringList Args() const; // Resolves variables
void SetProcessId(std::string processId) { _processId = processId; }
std::string GetProcessId() const { return _processId; }
void SetFinishedProcessData(QProcess &process);
void ResetFinishedProcessData();
std::string GetProcessExitCode() const { return _processExitCode; }
std::string GetProcessOutputStream() const
{
return _processOutputStream;
}
std::string GetProcessErrorStream() const
{
return _processErrorStream;
}
enum class ProcStartError {
NONE,
FAILED_TO_START,
@@ -30,8 +45,7 @@ public:
CRASH,
};
std::variant<int, ProcStartError>
StartProcessAndWait(int timeoutInMs) const;
std::variant<int, ProcStartError> StartProcessAndWait(int timeoutInMs);
bool StartProcessDetached() const;
void ResolveVariables();
@@ -41,6 +55,11 @@ private:
StringVariable _workingDirectory = "";
StringList _args;
std::string _processId;
std::string _processExitCode;
std::string _processOutputStream;
std::string _processErrorStream;
friend class ProcessConfigEdit;
};