Bitcoin Core
27.99.0
P2P Digital Currency
|
#include <subprocess.h>
Public Member Functions | |
template<typename... Args> | |
Popen (const std::string &cmd_args, Args &&...args) | |
template<typename... Args> | |
Popen (std::initializer_list< const char * > cmd_args, Args &&...args) | |
template<typename... Args> | |
Popen (std::vector< std::string > vargs_, Args &&... args) | |
int | pid () const noexcept |
int | retcode () const noexcept |
int | wait () noexcept(false) |
int | poll () noexcept(false) |
void | kill (int sig_num=9) |
void | set_out_buf_cap (size_t cap) |
void | set_err_buf_cap (size_t cap) |
int | send (const char *msg, size_t length) |
int | send (const std::string &msg) |
int | send (const std::vector< char > &msg) |
std::pair< OutBuffer, ErrBuffer > | communicate (const char *msg, size_t length) |
std::pair< OutBuffer, ErrBuffer > | communicate (const std::string &msg) |
std::pair< OutBuffer, ErrBuffer > | communicate (const std::vector< char > &msg) |
std::pair< OutBuffer, ErrBuffer > | communicate () |
FILE * | input () |
FILE * | output () |
FILE * | error () |
void | close_input () |
Stream close APIs. More... | |
void | close_output () |
void | close_error () |
Private Member Functions | |
template<typename F , typename... Args> | |
void | init_args (F &&farg, Args &&... args) |
void | init_args () |
void | populate_c_argv () |
void | execute_process () noexcept(false) |
Private Attributes | |
detail::Streams | stream_ |
std::string | exe_name_ |
std::string | args_ |
std::vector< std::string > | vargs_ |
std::vector< char * > | cargv_ |
bool | child_created_ = false |
int | child_pid_ = -1 |
int | retcode_ = -1 |
Friends | |
struct | detail::ArgumentDeducer |
class | detail::Child |
class: Popen This is the single most important class in the whole library and glues together all the helper classes to provide a common interface to the client.
API's provided by the class:
input() - Get the input channel/File pointer. Can be used for customizing the way of sending input to child.
Definition at line 970 of file subprocess.h.
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 1077 of file subprocess.h.
|
inline |
Stream close APIs.
Definition at line 1075 of file subprocess.h.
|
inline |
Definition at line 1076 of file subprocess.h.
|
inline |
|
inlineprivatenoexcept |
Definition at line 1212 of file subprocess.h.
|
inlineprivate |
Definition at line 1109 of file subprocess.h.
|
inlineprivate |
|
inline |
|
inline |
Definition at line 1200 of file subprocess.h.
|
inline |
|
inlinenoexcept |
|
inlinenoexcept |
Definition at line 1150 of file subprocess.h.
|
inlineprivate |
|
inlinenoexcept |
|
inline |
Definition at line 1037 of file subprocess.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinenoexcept |
Definition at line 1129 of file subprocess.h.
|
friend |
Definition at line 973 of file subprocess.h.
|
friend |
Definition at line 974 of file subprocess.h.
|
private |
Definition at line 1097 of file subprocess.h.
|
private |
Definition at line 1100 of file subprocess.h.
|
private |
Definition at line 1102 of file subprocess.h.
|
private |
Definition at line 1104 of file subprocess.h.
|
private |
Definition at line 1094 of file subprocess.h.
|
private |
Definition at line 1106 of file subprocess.h.
|
private |
Definition at line 1087 of file subprocess.h.
|
private |
Definition at line 1099 of file subprocess.h.