[Home]BoostProcess/Classes

BOOST WIKI | BoostProcess | RecentChanges | Preferences | Page List | Links List

Difference (from prior major revision) (no other diffs)

Added: 11a12,38




Consider Kevlin Henney's Boost.Threads critique (http://lists.boost.org/boost/2005/05/25846.php). I think it can also apply to the
Process library. At the moment I have a very basic toy design/implementation with the following classes (and typedef):

namespace process
{
// process attributes (priority, etc.) - passed to launcher's constructor.
class attributes;

// can wait on a process, retrieve its exit code, id, etc.
class waiter_;

// return type of launcher::operator() member functions.
typedef boost::shared_ptr<waiter_> waiter;

// builds a command line. example usage:
// command_builder myprog("myprog");
// myprog.arg("abc").arg("bcd").arg("c d e");
class command_builder;

// handles launching of the processes. in my implementation has two
// operator() member functions: one that takes an std::string (i.e.,
// what one passes to std::system()) and one that takes a command_builder.
class launcher;
}

Boost.Process class overview

The following classes are public and are located in the boost::process namespace:

The following classes are private and are located in the boost::process::detail namespace (I hope this is a correct rationale for the detail namespace):


Consider Kevlin Henney's Boost.Threads critique (http://lists.boost.org/boost/2005/05/25846.php). I think it can also apply to the Process library. At the moment I have a very basic toy design/implementation with the following classes (and typedef):

 namespace process
 {
     // process attributes (priority, etc.) - passed to launcher's constructor.
     class attributes; 

     // can wait on a process, retrieve its exit code, id, etc.
     class waiter_;

     // return type of launcher::operator() member functions.
     typedef boost::shared_ptr<waiter_> waiter;

     // builds a command line. example usage:
     // command_builder myprog("myprog");
     // myprog.arg("abc").arg("bcd").arg("c d e");
     class command_builder;

     // handles launching of the processes. in my implementation has two
     // operator() member functions: one that takes an std::string (i.e.,
     // what one passes to std::system()) and one that takes a command_builder.
     class launcher; 
 }

BOOST WIKI | BoostProcess | RecentChanges | Preferences | Page List | Links List
Edit text of this page | View other revisions
Last edited May 11, 2005 12:23 pm (diff)
Search:
Disclaimer: This site not officially maintained by Boost Developers