aboutsummaryrefslogtreecommitdiff
path: root/include/cru/common/platform/unix/PosixSpawnSubProcess.h
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2024-02-12 15:47:31 +0800
committercrupest <crupest@outlook.com>2024-02-12 15:47:31 +0800
commit96ed44c31b92f1492be68c084e8b18972d549743 (patch)
tree62c56538c150ef29ddf31de417b640d210f001fe /include/cru/common/platform/unix/PosixSpawnSubProcess.h
parentf3af6c7e5b46f4209a4981e5d7be217368f40b15 (diff)
downloadcru-96ed44c31b92f1492be68c084e8b18972d549743.tar.gz
cru-96ed44c31b92f1492be68c084e8b18972d549743.tar.bz2
cru-96ed44c31b92f1492be68c084e8b18972d549743.zip
WORKING: add unix pipe.
Diffstat (limited to 'include/cru/common/platform/unix/PosixSpawnSubProcess.h')
-rw-r--r--include/cru/common/platform/unix/PosixSpawnSubProcess.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/cru/common/platform/unix/PosixSpawnSubProcess.h b/include/cru/common/platform/unix/PosixSpawnSubProcess.h
index 02b9e7e2..a55c2c1c 100644
--- a/include/cru/common/platform/unix/PosixSpawnSubProcess.h
+++ b/include/cru/common/platform/unix/PosixSpawnSubProcess.h
@@ -6,6 +6,9 @@
#include "../../SubProcess.h"
+#include "UnixFileStream.h"
+#include "UnixPipe.h"
+
#include <spawn.h>
namespace cru::platform::unix {
@@ -17,6 +20,14 @@ class PosixSpawnSubProcess : public PlatformSubProcessBase {
private:
pid_t pid_;
int exit_code_;
+
+ UnixPipe stdin_pipe_;
+ UnixPipe stdout_pipe_;
+ UnixPipe stderr_pipe_;
+
+ std::unique_ptr<UnixFileStream> stdin_stream_;
+ std::unique_ptr<UnixFileStream> stdout_stream_;
+ std::unique_ptr<UnixFileStream> stderr_stream_;
};
} // namespace cru::platform::unix