ifw-daq  3.0.0-pre2
IFW Data Acquisition modules
Public Types | Public Member Functions | List of all members
daq::RsyncAsyncProcessIf Class Referenceabstract

More specialized version for rsync which also monitors transfer progress. More...

#include <rsyncAsyncProcess.hpp>

+ Inheritance diagram for daq::RsyncAsyncProcessIf:

Public Types

enum class  DryRun { Disabled = 0 , Enabled }
 
using SigProgress = boost::signals2::signal< void(pid_t, RsyncProgress const &)>
 Progress update signal. More...
 
- Public Types inherited from daq::AsyncProcessIf
using SigOutStream = boost::signals2::signal< void(pid_t, std::string const &)>
 Signal type for stdout/stderr signals. More...
 

Public Member Functions

virtual ~RsyncAsyncProcessIf ()
 
virtual boost::signals2::connection ConnectProgress (SigProgress::slot_type const &slot)=0
 Connect to progress signal. More...
 
- Public Member Functions inherited from daq::AsyncProcessIf
virtual ~AsyncProcessIf ()
 
virtual boost::future< int > Initiate ()=0
 Initiates async operation by executing the specified process. More...
 
virtual std::optional< pid_t > GetPid () const noexcept=0
 Get PID. More...
 
virtual std::error_code Abort () noexcept=0
 Aborts the operation by terminating process which completes the operation. More...
 
virtual std::error_code Signal (int sig) noexcept=0
 Send signal to process. More...
 
virtual std::vector< std::string > const & GetArguments () const noexcept=0
 
virtual bool IsRunning () const noexcept=0
 
virtual boost::signals2::connection ConnectStdout (SigOutStream::slot_type const &slot)=0
 Connect slot to line-buffered stdout signal. More...
 
virtual boost::signals2::connection ConnectStderr (SigOutStream::slot_type const &slot)=0
 Connect slot to line-buffered stderr signal. More...
 

Detailed Description

More specialized version for rsync which also monitors transfer progress.

Definition at line 77 of file rsyncAsyncProcess.hpp.

Member Typedef Documentation

◆ SigProgress

using daq::RsyncAsyncProcessIf::SigProgress = boost::signals2::signal<void(pid_t, RsyncProgress const&)>

Progress update signal.

Definition at line 86 of file rsyncAsyncProcess.hpp.

Member Enumeration Documentation

◆ DryRun

Enumerator
Disabled 
Enabled 

Definition at line 79 of file rsyncAsyncProcess.hpp.

Constructor & Destructor Documentation

◆ ~RsyncAsyncProcessIf()

virtual daq::RsyncAsyncProcessIf::~RsyncAsyncProcessIf ( )
inlinevirtual

Definition at line 80 of file rsyncAsyncProcess.hpp.

Member Function Documentation

◆ ConnectProgress()

virtual boost::signals2::connection daq::RsyncAsyncProcessIf::ConnectProgress ( SigProgress::slot_type const &  slot)
pure virtual

Connect to progress signal.

Implemented in daq::MockRsyncAsyncProcess, and daq::RsyncAsyncProcess.


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