summaryrefslogtreecommitdiffstats
path: root/src/libs/xpcom18a4/xpcom/threads/nsIProcess.idl
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/libs/xpcom18a4/xpcom/threads/nsIProcess.idl32
1 files changed, 32 insertions, 0 deletions
diff --git a/src/libs/xpcom18a4/xpcom/threads/nsIProcess.idl b/src/libs/xpcom18a4/xpcom/threads/nsIProcess.idl
new file mode 100644
index 00000000..07769cb7
--- /dev/null
+++ b/src/libs/xpcom18a4/xpcom/threads/nsIProcess.idl
@@ -0,0 +1,32 @@
+#include "nsIFile.idl"
+#include "nsISupports.idl"
+
+[scriptable, uuid(9da0b650-d07e-4617-a18a-250035572ac8)]
+
+interface nsIProcess : nsISupports
+{
+ void init(in nsIFile executable);
+ void initWithPid(in unsigned long pid);
+
+ void kill();
+
+ /** XXX what charset? **/
+ /** Executes the file this object was initialized with
+ * @param blocking Whether to wait until the process terminates before returning or not
+ * @param args An array of arguments to pass to the process
+ * @param count The length of the args array
+ * @return the PID of the newly spawned process */
+ unsigned long run(in boolean blocking, [array, size_is(count)] in string args, in unsigned long count);
+
+ readonly attribute nsIFile location;
+ readonly attribute unsigned long pid;
+ readonly attribute string processName;
+ readonly attribute unsigned long processSignature;
+ readonly attribute long exitValue;
+};
+
+%{C++
+
+#define NS_PROCESS_CONTRACTID "@mozilla.org/process/util;1"
+#define NS_PROCESS_CLASSNAME "Process Specification"
+%}