Files
eepp/src/tools/ecode/plugins/debugger/busprocess.cpp
Martín Lucas Golini 8b2f178615 More DAP WIP.
2024-12-17 22:01:49 -03:00

36 lines
825 B
C++

#include "busprocess.hpp"
namespace ecode {
BusProcess::BusProcess( const Command& command ) : mCommand( command ), mProcess() {}
bool BusProcess::start() {
bool res = mProcess.create( mCommand.command, mCommand.arguments,
Process::getDefaultOptions() | Process::Options::EnableAsync |
Process::Options::CombinedStdoutStderr,
mCommand.environment );
if ( res )
setState( State::Running );
return res;
}
bool BusProcess::close() {
if ( mState == State::Running ) {
bool res = mProcess.kill();
if ( res )
setState( State::Closed );
}
return false;
}
void BusProcess::startAsyncRead( ReadFn readFn ) {
mProcess.startAsyncRead( readFn, readFn );
}
size_t BusProcess::write( const char* buffer, const size_t& size ) {
return mProcess.write( buffer, size );
}
} // namespace ecode