Guitar
BasicProcessWinConPty.h
Go to the documentation of this file.
1 #ifndef BasicProcessWinConPty_H
2 #define BasicProcessWinConPty_H
3 
4 #include "BasicProcessWin.h"
5 
7 private:
8  struct Private;
10 
11 public:
12  struct Options {
13  bool no_window = false;
14  bool output_stdout = false;
15  bool output_vector = false;
16  bool output_queue = false;
17  bool vt_stripped = true;
18  };
19 
20  BasicProcessWinConPty(Options const &options = Options());
23  void set_options(Options const &options);
24 
25  bool start(std::string const &cmd);
27  void terminate();
28  void close_input();
29  int write_input(char const *ptr, int n);
30  int read_output(char *ptr, int len);
31  bool is_running() const;
32  int get_exit_code() const;
33  std::vector<char> const &stdout_bytes() const;
34 
35  void set_no_window(bool no_window);
36 
37  static bool is_conpty_available();
38 };
39 
40 #endif // BasicProcessWinConPty_H
Definition: BasicProcessWinConPty.h:6
int read_output(char *ptr, int len)
Definition: BasicProcessWinConPty.cpp:335
ProcessResult wait()
Definition: BasicProcessWinConPty.cpp:261
static bool is_conpty_available()
Definition: BasicProcessWinConPty.cpp:371
int write_input(char const *ptr, int n)
Definition: BasicProcessWinConPty.cpp:320
void set_options(Options const &options)
Definition: BasicProcessWinConPty.cpp:51
bool start(std::string const &cmd)
Definition: BasicProcessWinConPty.cpp:56
void set_change_dir(process::helper::dir_string_t const &dir)
Definition: BasicProcessWinConPty.cpp:46
Private * m
Definition: BasicProcessWinConPty.h:8
BasicProcessWinConPty(Options const &options=Options())
Definition: BasicProcessWinConPty.cpp:33
void set_no_window(bool no_window)
Definition: BasicProcessWinConPty.cpp:361
void terminate()
Definition: BasicProcessWinConPty.cpp:304
~BasicProcessWinConPty()
Definition: BasicProcessWinConPty.cpp:39
bool is_running() const
Definition: BasicProcessWinConPty.cpp:351
void close_input()
Definition: BasicProcessWinConPty.cpp:312
std::vector< char > const & stdout_bytes() const
Definition: BasicProcessWinConPty.cpp:356
int get_exit_code() const
Definition: BasicProcessWinConPty.cpp:366
Definition: BasicProcessWin.h:23
std::string dir_string_t
Definition: ProcessHelper.h:12
Definition: BasicProcessWinConPty.h:12
bool vt_stripped
Definition: BasicProcessWinConPty.h:17
bool output_stdout
Definition: BasicProcessWinConPty.h:14
bool no_window
Definition: BasicProcessWinConPty.h:13
bool output_queue
Definition: BasicProcessWinConPty.h:16
bool output_vector
Definition: BasicProcessWinConPty.h:15
Definition: BasicProcessWinConPty.cpp:5
Definition: AbstractProcess.h:21