Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::platform::ProcessOptions Struct Reference

Options for child process execution. More...

#include <child_process.hpp>

Public Attributes

std::string working_directory
int working_directory_descriptor = -1
 POSIX directory descriptor consumed atomically by spawn instead of resolving working_directory.
std::function< bool(int process_id)> suspended_process_validator
 macOS-only validation hook.
int timeout_ms = 0
 0 = no timeout
size_t max_output_bytes = 1 << 20
 1 MB default cap
bool capture_stdout = true
bool capture_stderr = true
std::function< void(std::string_view line)> on_stdout_line
 Called for each complete captured line on stdout while output is drained.
std::function< void(std::string_view line)> on_stderr_line
 Called for each complete captured line on stderr while output is drained.
int standard_input_timeout_ms = 3000
 Bound inherited-input delivery.
size_t max_standard_input_provider_bytes = 1 << 20
 Cap provider-returned bytes.

Detailed Description

Options for child process execution.

Member Data Documentation

◆ capture_stderr

bool pulp::platform::ProcessOptions::capture_stderr = true

◆ capture_stdout

bool pulp::platform::ProcessOptions::capture_stdout = true

◆ max_output_bytes

size_t pulp::platform::ProcessOptions::max_output_bytes = 1 << 20

1 MB default cap

◆ max_standard_input_provider_bytes

size_t pulp::platform::ProcessOptions::max_standard_input_provider_bytes = 1 << 20

Cap provider-returned bytes.

◆ on_stderr_line

std::function<void(std::string_view line)> pulp::platform::ProcessOptions::on_stderr_line

Called for each complete captured line on stderr while output is drained.

An exception is treated as cancellation and never escapes ChildProcess.

◆ on_stdout_line

std::function<void(std::string_view line)> pulp::platform::ProcessOptions::on_stdout_line

Called for each complete captured line on stdout while output is drained.

An exception is treated as cancellation and never escapes ChildProcess.

◆ standard_input_timeout_ms

int pulp::platform::ProcessOptions::standard_input_timeout_ms = 3000

Bound inherited-input delivery.

◆ suspended_process_validator

std::function<bool(int process_id)> pulp::platform::ProcessOptions::suspended_process_validator

macOS-only validation hook.

When set, the process is born suspended; returning true resumes that exact process, while false terminates it.

◆ timeout_ms

int pulp::platform::ProcessOptions::timeout_ms = 0

0 = no timeout

◆ working_directory

std::string pulp::platform::ProcessOptions::working_directory

◆ working_directory_descriptor

int pulp::platform::ProcessOptions::working_directory_descriptor = -1

POSIX directory descriptor consumed atomically by spawn instead of resolving working_directory.

The caller retains ownership through start().


The documentation for this struct was generated from the following file: