Guitar
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
ProcessWinConPtyWithWorker Class Reference

#include <ProcessWinConPtyWithWorker.h>

Inheritance diagram for ProcessWinConPtyWithWorker:
Inheritance graph
[legend]
Collaboration diagram for ProcessWinConPtyWithWorker:
Collaboration graph
[legend]

Classes

struct  Private
 

Public Member Functions

bool wait_for_output (std::string const &text)
 
 ProcessWinConPtyWithWorker ()
 
 ~ProcessWinConPtyWithWorker () override
 
void set_options (BasicProcessWin::Options const &options)
 
void start (std::string const &command, std::string const &env, bool use_input) override
 
ProcessResult wait (int time=INT_MAX) override
 
void stop () override
 
bool is_running () const override
 
int get_exit_code () const override
 
void write_input (char const *ptr, int len) override
 
int read_output (char *ptr, int len)
 
void close_input () override
 
- Public Member Functions inherited from AbstractPtyProcess
virtual ~AbstractPtyProcess ()
 
void set_change_dir (process::helper::dir_string_t const &dir)
 
void set_max_output_queue_size (size_t n)
 
void set_completion_callback (std::function< void(bool, std::shared_ptr< void >)> fn, std::shared_ptr< void > userdata)
 
void notify_completed ()
 
std::string get_message () const
 
void clear_message ()
 
std::vector< char > const & stdout_bytes () const
 
std::vector< char > const & stderr_bytes () const
 

Static Public Member Functions

static int run_worker (int argc, char **argv)
 

Private Member Functions

int _wait ()
 

Private Attributes

Privatem
 

Static Private Attributes

constexpr static std::string_view subprocess_tag = "--conpty-worker--"
 

Additional Inherited Members

- Protected Member Functions inherited from AbstractPtyProcess
void write_output (char const *buf, size_t len)
 
int pop_output (char *ptr, int len)
 
- Protected Attributes inherited from AbstractPtyProcess
std::mutex mutex_
 
std::condition_variable cond_
 
process::helper::dir_string_t change_dir_
 
std::shared_ptr< void > user_data_
 
std::function< void(bool, std::shared_ptr< void >)> completed_fn_
 
std::deque< char > output_queue_
 
std::vector< char > output_vector_
 
std::vector< char > stderr_bytes_
 
size_t max_output_queue_size_ = 0
 

Constructor & Destructor Documentation

◆ ProcessWinConPtyWithWorker()

ProcessWinConPtyWithWorker::ProcessWinConPtyWithWorker ( )
Here is the call graph for this function:

◆ ~ProcessWinConPtyWithWorker()

ProcessWinConPtyWithWorker::~ProcessWinConPtyWithWorker ( )
override
Here is the call graph for this function:

Member Function Documentation

◆ _wait()

int ProcessWinConPtyWithWorker::_wait ( )
private
Here is the call graph for this function:

◆ close_input()

void ProcessWinConPtyWithWorker::close_input ( )
overridevirtual

Implements AbstractPtyProcess.

Here is the call graph for this function:

◆ get_exit_code()

int ProcessWinConPtyWithWorker::get_exit_code ( ) const
overridevirtual

Implements AbstractPtyProcess.

◆ is_running()

bool ProcessWinConPtyWithWorker::is_running ( ) const
overridevirtual

Implements AbstractPtyProcess.

◆ read_output()

int ProcessWinConPtyWithWorker::read_output ( char *  ptr,
int  len 
)
virtual

Implements AbstractPtyProcess.

Here is the call graph for this function:

◆ run_worker()

int ProcessWinConPtyWithWorker::run_worker ( int  argc,
char **  argv 
)
static
Here is the call graph for this function:

◆ set_options()

void ProcessWinConPtyWithWorker::set_options ( BasicProcessWin::Options const &  options)
Here is the call graph for this function:

◆ start()

void ProcessWinConPtyWithWorker::start ( std::string const &  command,
std::string const &  env,
bool  use_input 
)
overridevirtual

Implements AbstractPtyProcess.

Here is the call graph for this function:

◆ stop()

void ProcessWinConPtyWithWorker::stop ( )
overridevirtual

Implements AbstractPtyProcess.

Here is the call graph for this function:

◆ wait()

ProcessResult ProcessWinConPtyWithWorker::wait ( int  time = INT_MAX)
overridevirtual

Implements AbstractPtyProcess.

Here is the call graph for this function:

◆ wait_for_output()

bool ProcessWinConPtyWithWorker::wait_for_output ( std::string const &  text)
Here is the call graph for this function:

◆ write_input()

void ProcessWinConPtyWithWorker::write_input ( char const *  ptr,
int  len 
)
overridevirtual

Implements AbstractPtyProcess.

Here is the call graph for this function:

Member Data Documentation

◆ m

Private* ProcessWinConPtyWithWorker::m
private

◆ subprocess_tag

constexpr static std::string_view ProcessWinConPtyWithWorker::subprocess_tag = "--conpty-worker--"
staticconstexprprivate

The documentation for this class was generated from the following files: