// Copyright (C) 2024 Jérôme "SirLynix" Leclercq (lynix680@gmail.com) // This file is part of the "Nazara Engine - Core module" // For conditions of distribution and use, see copyright notice in Config.hpp #pragma once #ifndef NAZARA_CORE_PROCESS_HPP #define NAZARA_CORE_PROCESS_HPP #include #include #include #include #include #include namespace Nz { using Pid = UInt32; class NAZARA_CORE_API Process { public: Process() = default; Process(const Process&) = delete; Process(Process&&) = delete; ~Process() = default; Process& operator=(const Process&) = delete; Process& operator=(Process&&) = delete; static Result Exists(Pid pid); static Pid GetCurrentPid(); static Result SpawnDetached(const std::filesystem::path& program, std::span arguments = {}, const std::filesystem::path& workingDirectory = {}); }; } #include #endif // NAZARA_CORE_PROCESS_HPP