/// Opaque handle for target specific data.
void *Data_;
+ // Noncopyable.
+ Program(const Program& other);
+ Program& operator=(const Program& other);
+
/// @name Methods
/// @{
public:
~Program();
/// Return process ID of this program.
- unsigned GetPid();
+ unsigned GetPid() const;
/// This function executes the program using the \p arguments provided. The
/// invoked program will inherit the stdin, stdout, and stderr file
///< it doesn't.
std::string* ErrMsg = 0 ///< If non-zero, provides a pointer to a string
///< instance in which error messages will be returned. If the string
- ///< is non-empty upon return an error occurred while invoking the
- ///< program.
+ ///< is non-empty upon return an error occurred while waiting.
);
/// This function terminates the program.
bool Kill
( std::string* ErrMsg = 0 ///< If non-zero, provides a pointer to a string
///< instance in which error messages will be returned. If the string
- ///< is non-empty upon return an error occurred while invoking the
+ ///< is non-empty upon return an error occurred while killing the
///< program.
);