Cadabra
Computer algebra system for field theory problems
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
exec_stream_t Class Reference

#include <exec-stream.h>

Classes

class  error_t
 
class  next_arg_impl_t
 
class  next_arg_t
 

Public Types

enum  stream_kind_t {
  s_in =1, s_out =2, s_err =4, s_all =s_in|s_out|s_err,
  s_child =8
}
 
typedef unsigned long timeout_t
 
typedef unsigned long error_code_t
 

Public Member Functions

 exec_stream_t ()
 
 exec_stream_t (std::string const &program, std::string const &arguments)
 
template<class iterator >
 exec_stream_t (std::string const &program, iterator args_begin, iterator args_end)
 
 ~exec_stream_t ()
 
void set_buffer_limit (int stream_kind, std::size_t size)
 
void set_wait_timeout (int stream_kind, timeout_t milliseconds)
 
void set_binary_mode (int stream_kind)
 
void set_text_mode (int stream_kind)
 
void start (std::string const &program, std::string const &arguments)
 
template<class iterator >
void start (std::string const &program, iterator args_begin, iterator args_end)
 
void start (std::string const &program, char const *arg1, char const *arg2)
 
void start (std::string const &program, char *arg1, char *arg2)
 
bool close_in ()
 
bool close ()
 
void kill ()
 
int exit_code ()
 
std::ostream & in ()
 
std::istream & out ()
 
std::istream & err ()
 

Private Member Functions

 exec_stream_t (exec_stream_t const &)
 
exec_stream_toperator= (exec_stream_t const &)
 
void exceptions (bool enable)
 
void new_impl ()
 
void start (std::string const &program, next_arg_t &next_arg)
 

Private Attributes

impl_tm_impl
 

Friends

struct impl_t
 

Member Typedef Documentation

typedef unsigned long exec_stream_t::error_code_t
typedef unsigned long exec_stream_t::timeout_t

Member Enumeration Documentation

Enumerator
s_in 
s_out 
s_err 
s_all 
s_child 

Constructor & Destructor Documentation

exec_stream_t::exec_stream_t ( )
exec_stream_t::exec_stream_t ( std::string const &  program,
std::string const &  arguments 
)
template<class iterator >
exec_stream_t::exec_stream_t ( std::string const &  program,
iterator  args_begin,
iterator  args_end 
)
inline
exec_stream_t::~exec_stream_t ( )
exec_stream_t::exec_stream_t ( exec_stream_t const &  )
private

Member Function Documentation

bool exec_stream_t::close ( )
bool exec_stream_t::close_in ( )
std::istream & exec_stream_t::err ( )
void exec_stream_t::exceptions ( bool  enable)
private
int exec_stream_t::exit_code ( )
std::ostream & exec_stream_t::in ( )
void exec_stream_t::kill ( )
void exec_stream_t::new_impl ( )
private
exec_stream_t& exec_stream_t::operator= ( exec_stream_t const &  )
private
std::istream & exec_stream_t::out ( )
void exec_stream_t::set_binary_mode ( int  stream_kind)
void exec_stream_t::set_buffer_limit ( int  stream_kind,
std::size_t  size 
)
void exec_stream_t::set_text_mode ( int  stream_kind)
void exec_stream_t::set_wait_timeout ( int  stream_kind,
timeout_t  milliseconds 
)
void exec_stream_t::start ( std::string const &  program,
std::string const &  arguments 
)
template<class iterator >
void exec_stream_t::start ( std::string const &  program,
iterator  args_begin,
iterator  args_end 
)
inline
void exec_stream_t::start ( std::string const &  program,
char const *  arg1,
char const *  arg2 
)
inline
void exec_stream_t::start ( std::string const &  program,
char *  arg1,
char *  arg2 
)
inline
void exec_stream_t::start ( std::string const &  program,
next_arg_t next_arg 
)
private

Friends And Related Function Documentation

friend struct impl_t
friend

Member Data Documentation

impl_t* exec_stream_t::m_impl
private

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