This repository has been archived on 2025-02-26. You can view files and clone it, but cannot push or open issues or pull requests.
hilbert-os/euler/include/euler/start_process.hpp

30 lines
688 B
C++

#pragma once
#include <euler/syscall.hpp>
#include <vector>
namespace euler {
struct start_process {
private:
const char *path;
uint64_t path_len;
std::vector<__euler_env_var_spec> env_var_specs;
std::vector<__euler_gift_stream_spec> gift_stream_specs;
public:
//path needs to stay valid through any call to start
start_process(const char *path);
//name and value need to stay valid through any call to start
void add_env_variable(const char *name, const char *value);
void gift_stream(
__euler_stream_handle to_gifter, __euler_stream_handle to_giftee);
__euler_stream_result start(__euler_process_handle &handle_out);
};
}