![]() |
Sunshine v2025.118.151840
Self-hosted game stream host for Moonlight.
|
Definitions for the startup and shutdown of the apps started by a streaming Session. More...
#include "process.h"#include <filesystem>#include <string>#include <thread>#include <vector>#include <boost/algorithm/string.hpp>#include <boost/crc.hpp>#include <boost/filesystem.hpp>#include <boost/program_options/parsers.hpp>#include <boost/property_tree/json_parser.hpp>#include <boost/property_tree/ptree.hpp>#include <openssl/evp.h>#include <openssl/sha.h>#include "config.h"#include "crypto.h"#include "display_device.h"#include "logging.h"#include "platform/common.h"#include "system_tray.h"#include "utility.h"#include "platform/windows/misc.h"#include <share.h>Classes | |
| class | proc::deinit_t |
Macros | |
| #define | BOOST_BIND_GLOBAL_PLACEHOLDERS |
| #define | DEFAULT_APP_IMAGE_PATH SUNSHINE_ASSETS_DIR "/box.png" |
Functions | |
| std::tuple< std::string, std::string > | proc::calculate_app_id (const std::string &app_name, std::string app_image_path, int index) |
| Calculate a stable id based on name and image data. | |
| uint32_t | proc::calculate_crc32 (const std::string &input) |
| std::optional< std::string > | proc::calculate_sha256 (const std::string &filename) |
| std::string_view::iterator | proc::find_match (std::string_view::iterator begin, std::string_view::iterator end) |
| boost::filesystem::path | proc::find_working_directory (const std::string &cmd, boost::process::v1::environment &env) |
| std::unique_ptr< platf::deinit_t > | proc::init () |
| Initialize proc functions. | |
| std::optional< proc::proc_t > | proc::parse (const std::string &file_name) |
| std::string | proc::parse_env_val (boost::process::v1::native_environment &env, const std::string_view &val_raw) |
| void | proc::refresh (const std::string &file_name) |
| void | proc::terminate_process_group (boost::process::v1::child &proc, boost::process::v1::group &group, std::chrono::seconds exit_timeout) |
| Terminates all child processes in a process group. | |
| std::string | proc::validate_app_image_path (std::string app_image_path) |
Variables | |
| proc_t | proc::proc |
Definitions for the startup and shutdown of the apps started by a streaming Session.
| std::tuple< std::string, std::string > proc::calculate_app_id | ( | const std::string & | app_name, |
| std::string | app_image_path, | ||
| int | index ) |
Calculate a stable id based on name and image data.
| std::unique_ptr< platf::deinit_t > proc::init | ( | ) |
Initialize proc functions.
deinit_t to manage cleanup | void proc::terminate_process_group | ( | boost::process::v1::child & | proc, |
| boost::process::v1::group & | group, | ||
| std::chrono::seconds | exit_timeout ) |
Terminates all child processes in a process group.
| proc | The child process itself. |
| group | The group of all children in the process tree. |
| exit_timeout | The timeout to wait for the process group to gracefully exit. |