1 #ifndef EXTERNALTASK_H_
2 #define EXTERNALTASK_H_
6 #include <msp/fs/path.h>
7 #include <msp/io/pipe.h>
10 class ExternalTask: public Task
20 typedef std::vector<std::string> Arguments;
24 Msp::FS::Path work_dir;
27 Destination stdout_dest;
28 Destination stderr_dest;
29 Msp::IO::Pipe *capture_pipe;
33 ExternalTask(const Arguments &, const Msp::FS::Path & = Msp::FS::Path());
34 virtual ~ExternalTask();
36 virtual std::string get_command() const;
38 virtual Status check();
40 void set_stdout(Destination);
41 void set_stderr(Destination);
42 const std::string &get_output() const { return output; }