ObjFW
src/OFProcess.h
00001 /*
00002  * Copyright (c) 2008, 2009, 2010, 2011, 2012
00003  *   Jonathan Schleifer <js@webkeks.org>
00004  *
00005  * All rights reserved.
00006  *
00007  * This file is part of ObjFW. It may be distributed under the terms of the
00008  * Q Public License 1.0, which can be found in the file LICENSE.QPL included in
00009  * the packaging of this file.
00010  *
00011  * Alternatively, it may be distributed under the terms of the GNU General
00012  * Public License, either version 2 or 3, which can be found in the file
00013  * LICENSE.GPLv2 or LICENSE.GPLv3 respectively included in the packaging of this
00014  * file.
00015  */
00016 
00017 #ifndef __STDC_LIMIT_MACROS
00018 # define __STDC_LIMIT_MACROS
00019 #endif
00020 #ifndef __STDC_CONSTANT_MACROS
00021 # define __STDC_CONSTANT_MACROS
00022 #endif
00023 
00024 #include <sys/types.h>
00025 
00026 #import "OFStream.h"
00027 
00028 #ifdef _WIN32
00029 # include <windows.h>
00030 #endif
00031 
00035 @interface OFProcess: OFStream
00036 {
00037 #ifndef _WIN32
00038         pid_t pid;
00039         int readPipe[2], writePipe[2];
00040 #else
00041         HANDLE readPipe[2], writePipe[2];
00042 #endif
00043         int status;
00044         BOOL atEndOfStream;
00045 }
00046 
00055 + processWithProgram: (OFString*)program;
00056 
00066 + processWithProgram: (OFString*)program
00067            arguments: (OFArray*)arguments;
00068 
00080 + processWithProgram: (OFString*)program
00081          programName: (OFString*)programName
00082            arguments: (OFArray*)arguments;
00083 
00092 - initWithProgram: (OFString*)program;
00093 
00103 - initWithProgram: (OFString*)program
00104         arguments: (OFArray*)arguments;
00105 
00117 - initWithProgram: (OFString*)program
00118       programName: (OFString*)programName
00119         arguments: (OFArray*)arguments;
00120 
00128 - (void)closeForWriting;
00129 @end
 All Classes Functions Variables Properties