<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY version SYSTEM "version.xml">
]>
<refentry id="GCutEgg">
<refmeta>
<refentrytitle role="top_of_page" id="GCutEgg.top_of_page">External command (deprecated)</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>
  CUTTER Library
</refmiscinfo>
</refmeta>
<refnamediv>
<refname>External command (deprecated)</refname>
<refpurpose>Convenience API for using external
command. (deprecated)</refpurpose>
</refnamediv>

<refsect1 id="GCutEgg.functions" role="functions_proto">
<title role="functions_proto.title">Functions</title>
<informaltable pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="functions_return" colwidth="150px"/>
<colspec colname="functions_name"/>
<tbody>
<row><entry role="define_keyword">#define</entry><entry role="function_name"><link linkend="GCUT-EGG-ERROR:CAPS">GCUT_EGG_ERROR</link></entry></row>
<row><entry role="function_type"><link linkend="GQuark"><returnvalue>GQuark</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-error-quark">gcut_egg_error_quark</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gcut-egg-new">gcut_egg_new</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gcut-egg-new-va-list">gcut_egg_new_va_list</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gcut-egg-new-argv">gcut_egg_new_argv</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gcut-egg-new-strings">gcut_egg_new_strings</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gcut-egg-new-array">gcut_egg_new_array</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-set-flags">gcut_egg_set_flags</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GSpawnFlags"><returnvalue>GSpawnFlags</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-get-flags">gcut_egg_get_flags</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-set-env">gcut_egg_set_env</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;**
</entry><entry role="function_name"><link linkend="gcut-egg-get-env">gcut_egg_get_env</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-hatch">gcut_egg_hatch</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-close">gcut_egg_close</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-write">gcut_egg_write</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GPid"><returnvalue>GPid</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-get-pid">gcut_egg_get_pid</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="gint"><returnvalue>gint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-wait">gcut_egg_wait</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-kill">gcut_egg_kill</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GIOChannel"><returnvalue>GIOChannel</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gcut-egg-get-input">gcut_egg_get_input</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GIOChannel"><returnvalue>GIOChannel</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gcut-egg-get-output">gcut_egg_get_output</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="GIOChannel"><returnvalue>GIOChannel</returnvalue></link>&#160;*
</entry><entry role="function_name"><link linkend="gcut-egg-get-error">gcut_egg_get_error</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="guint"><returnvalue>guint</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-get-forced-termination-wait-time">gcut_egg_get_forced_termination_wait_time</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>
<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link>
</entry><entry role="function_name"><link linkend="gcut-egg-set-forced-termination-wait-time">gcut_egg_set_forced_termination_wait_time</link>&#160;<phrase role="c_punctuation">()</phrase></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GCutEgg.properties" role="properties">
<title role="properties.title">Properties</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="properties_type" colwidth="150px"/>
<colspec colname="properties_name" colwidth="300px"/>
<colspec colname="properties_flags" colwidth="200px"/>
<tbody>
<row><entry role="property_type"><link linkend="gpointer"><type>gpointer</type></link></entry><entry role="property_name"><link linkend="GCutEgg--command">command</link></entry><entry role="property_flags">Read / Write</entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GCutEgg.signals" role="signal_proto">
<title role="signal_proto.title">Signals</title>
<informaltable frame="none">
<tgroup cols="3">
<colspec colname="signals_return" colwidth="150px"/>
<colspec colname="signals_name" colwidth="300px"/>
<colspec colname="signals_flags" colwidth="200px"/>
<tbody>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GCutEgg-error">error</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GCutEgg-error-received">error-received</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GCutEgg-output-received">output-received</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>
<row><entry role="signal_type"><link linkend="void"><returnvalue>void</returnvalue></link></entry><entry role="signal_name"><link linkend="GCutEgg-reaped">reaped</link></entry><entry role="signal_flags"><link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GCutEgg.other" role="other_proto">
<title role="other_proto.title">Types and Values</title>
<informaltable role="enum_members_table" pgwide="1" frame="none">
<tgroup cols="2">
<colspec colname="name" colwidth="150px"/>
<colspec colname="description"/>
<tbody>
<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="GCutEggError">GCutEggError</link></entry></row>

</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 id="GCutEgg.object-hierarchy" role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<screen>    <link linkend="GObject">GObject</link>
    <phrase role="lineart">&#9584;&#9472;&#9472;</phrase> GCutEgg
</screen>
</refsect1>


<refsect1 id="GCutEgg.description" role="desc">
<title role="desc.title">Description</title>
<para><link linkend="GCutEgg"><type>GCutEgg</type></link> encapsulates external command execution,
communication and termination. <link linkend="GCutEgg"><type>GCutEgg</type></link> reports an error
as <link linkend="GError"><type>GError</type></link>. It can be asserted easily by
<link linkend="gcut-assert-error"><function>gcut_assert_error()</function></link>.</para>
<para>External command is specified to constructor like
<link linkend="gcut-egg-new"><function>gcut_egg_new()</function></link>, <link linkend="gcut-egg-new-strings"><function>gcut_egg_new_strings()</function></link> and so
on. External command isn't run at the
time. <link linkend="gcut-egg-hatch"><function>gcut_egg_hatch()</function></link> runs specified external command.</para>
<para>Standard/Error outputs of external command are passed by
<link linkend="GCutEgg-output-received"><type>“output-received”</type></link>/<link linkend="GCutEgg-error-received"><type>“error-received”</type></link> signals
or <link linkend="GIOChannel"><type>GIOChannel</type></link> returned by
<link linkend="gcut-egg-get-output"><function>gcut_egg_get_output()</function></link>/<link linkend="gcut-egg-get-error"><function>gcut_egg_get_error()</function></link>.
<link linkend="gcut-egg-write"><function>gcut_egg_write()</function></link> writes a chunk to standard input of
external command.</para>
<para>To wait external command finished, <link linkend="gcut-egg-wait"><function>gcut_egg_wait()</function></link> can be
used. It accepts timeout to avoid infinite waiting.</para>
<para>e.g.:</para>
<informalexample><programlisting><![CDATA[
static GString *output_string;
static GCutEgg *egg;

void
cut_setup (void)
{
    output_string = g_string_new(NULL);
    egg = NULL;
}

void
cut_teardown (void)
{
    if (output_string)
        g_string_free(output_string, TRUE);
    if (egg)
        g_object_unref(egg);
}

static void
cb_output_received (GCutEgg *egg, const gchar *chunk, gsize size,
                    gpointer user_data)
{
    g_string_append_len(output_string, chunk, size);
}

void
test_echo (void)
{
    GError *error = NULL;

    egg = gcut_egg_new("echo", "XXX", NULL);
    g_signal_connect(egg, "output-received",
                     G_CALLBACK(cb_output_received), NULL);

    gcut_egg_hatch(egg, &error);
    gcut_assert_error(error);

    gcut_egg_wait(egg, 1000, &error);
    gcut_assert_error(error);
    cut_assert_equal_string("XXX\n", output_string->str);
}
]]></programlisting></informalexample>
<para></para>

</refsect1>
<refsect1 id="GCutEgg.functions_details" role="details">
<title role="details.title">Functions</title>
<refsect2 id="GCUT-EGG-ERROR:CAPS" role="macro" condition="deprecated:">
<title>GCUT_EGG_ERROR</title>
<indexterm zone="GCUT-EGG-ERROR:CAPS" role="deprecated"><primary>GCUT_EGG_ERROR</primary></indexterm>
<programlisting language="C">#define GCUT_EGG_ERROR           (gcut_egg_error_quark())
</programlisting>
<warning><para><literal>GCUT_EGG_ERROR</literal> is deprecated and should not be used in newly-written code.</para></warning>
<para>
</para>
</refsect2>
<refsect2 id="gcut-egg-error-quark" role="function" condition="deprecated:">
<title>gcut_egg_error_quark&#160;()</title>
<indexterm zone="gcut-egg-error-quark" role="deprecated"><primary>gcut_egg_error_quark</primary></indexterm>
<programlisting language="C"><link linkend="GQuark"><returnvalue>GQuark</returnvalue></link>
gcut_egg_error_quark (<parameter><type>void</type></parameter>);</programlisting>
<warning><para><literal>gcut_egg_error_quark</literal> is deprecated and should not be used in newly-written code.</para></warning>
<para>
</para>
<refsect3 role="returns">
<title>Returns</title>

<para></para>
</refsect3></refsect2>
<refsect2 id="gcut-egg-new" role="function" condition="deprecated:1.1.5: Use gcut_process_new() instead.|since:1.0.6">
<title>gcut_egg_new&#160;()</title>
<indexterm zone="gcut-egg-new" role="deprecated"><primary>gcut_egg_new</primary></indexterm><indexterm zone="gcut-egg-new" role="1.0.6"><primary>gcut_egg_new</primary></indexterm>
<programlisting language="C"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
gcut_egg_new (<parameter>const <link linkend="gchar"><type>gchar</type></link> *command</parameter>,
              <parameter>...</parameter>);</programlisting>
<warning><para><literal>gcut_egg_new</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-new"><function>gcut_process_new()</function></link> instead.</para>
</warning>
<para>Creates a new <link linkend="GCutEgg"><type>GCutEgg</type></link> object that runs <parameter>command</parameter>
.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>command</para></entry>
<entry role="parameter_description"><para>the external command name to be ran</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>...</para></entry>
<entry role="parameter_description"><para>the arguments for <parameter>command</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a new <link linkend="GCutEgg"><type>GCutEgg</type></link>.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-new-va-list" role="function" condition="deprecated:1.1.5: Use gcut_process_new_va_list() instead.|since:1.0.6">
<title>gcut_egg_new_va_list&#160;()</title>
<indexterm zone="gcut-egg-new-va-list" role="deprecated"><primary>gcut_egg_new_va_list</primary></indexterm><indexterm zone="gcut-egg-new-va-list" role="1.0.6"><primary>gcut_egg_new_va_list</primary></indexterm>
<programlisting language="C"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
gcut_egg_new_va_list (<parameter>const <link linkend="gchar"><type>gchar</type></link> *command</parameter>,
                      <parameter><link linkend="va-list"><type>va_list</type></link> args</parameter>);</programlisting>
<warning><para><literal>gcut_egg_new_va_list</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-new-va-list"><function>gcut_process_new_va_list()</function></link> instead.</para>
</warning>
<para>Creates a new <link linkend="GCutEgg"><type>GCutEgg</type></link> object that runs <parameter>command</parameter>
.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>command</para></entry>
<entry role="parameter_description"><para>the external command name to be ran</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>args</para></entry>
<entry role="parameter_description"><para>arguments for <parameter>command</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a new <link linkend="GCutEgg"><type>GCutEgg</type></link>.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-new-argv" role="function" condition="deprecated:1.1.5: Use gcut_process_new_argv() instead.|since:1.0.6">
<title>gcut_egg_new_argv&#160;()</title>
<indexterm zone="gcut-egg-new-argv" role="deprecated"><primary>gcut_egg_new_argv</primary></indexterm><indexterm zone="gcut-egg-new-argv" role="1.0.6"><primary>gcut_egg_new_argv</primary></indexterm>
<programlisting language="C"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
gcut_egg_new_argv (<parameter><link linkend="gint"><type>gint</type></link> argc</parameter>,
                   <parameter><link linkend="gchar"><type>gchar</type></link> **argv</parameter>);</programlisting>
<warning><para><literal>gcut_egg_new_argv</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-new-argv"><function>gcut_process_new_argv()</function></link> instead.</para>
</warning>
<para>Creates a new <link linkend="GCutEgg"><type>GCutEgg</type></link> object that runs <parameter>command</parameter>
.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>argc</para></entry>
<entry role="parameter_description"><para>the number of elements of <parameter>argv</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>argv</para></entry>
<entry role="parameter_description"><para>the external command name to be ran and arguments
of it.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a new <link linkend="GCutEgg"><type>GCutEgg</type></link>.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-new-strings" role="function" condition="deprecated:1.1.5: Use gcut_process_new_strings() instead.|since:1.0.6">
<title>gcut_egg_new_strings&#160;()</title>
<indexterm zone="gcut-egg-new-strings" role="deprecated"><primary>gcut_egg_new_strings</primary></indexterm><indexterm zone="gcut-egg-new-strings" role="1.0.6"><primary>gcut_egg_new_strings</primary></indexterm>
<programlisting language="C"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
gcut_egg_new_strings (<parameter>const <link linkend="gchar"><type>gchar</type></link> **command</parameter>);</programlisting>
<warning><para><literal>gcut_egg_new_strings</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-new-strings"><function>gcut_process_new_strings()</function></link> instead.</para>
</warning>
<para>Creates a new <link linkend="GCutEgg"><type>GCutEgg</type></link> object that runs <parameter>command</parameter>
.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>command</para></entry>
<entry role="parameter_description"><para>the external command name to be ran and
arguments of it. <link linkend="NULL:CAPS"><literal>NULL</literal></link>-terminated.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a new <link linkend="GCutEgg"><type>GCutEgg</type></link>.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-new-array" role="function" condition="deprecated:1.1.5: Use gcut_process_new_array() instead.|since:1.0.6">
<title>gcut_egg_new_array&#160;()</title>
<indexterm zone="gcut-egg-new-array" role="deprecated"><primary>gcut_egg_new_array</primary></indexterm><indexterm zone="gcut-egg-new-array" role="1.0.6"><primary>gcut_egg_new_array</primary></indexterm>
<programlisting language="C"><link linkend="GCutEgg"><returnvalue>GCutEgg</returnvalue></link>&#160;*
gcut_egg_new_array (<parameter><link linkend="GArray"><type>GArray</type></link> *command</parameter>);</programlisting>
<warning><para><literal>gcut_egg_new_array</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-new-array"><function>gcut_process_new_array()</function></link> instead.</para>
</warning>
<para>Creates a new <link linkend="GCutEgg"><type>GCutEgg</type></link> object that runs <parameter>command</parameter>
.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>command</para></entry>
<entry role="parameter_description"><para>the external command name to be ran and
arguments of it. The <link linkend="GArray"><type>GArray</type></link> should be zero-terminated.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a new <link linkend="GCutEgg"><type>GCutEgg</type></link>.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-set-flags" role="function" condition="deprecated:1.1.5: Use gcut_process_set_flags() instead.|since:1.0.6">
<title>gcut_egg_set_flags&#160;()</title>
<indexterm zone="gcut-egg-set-flags" role="deprecated"><primary>gcut_egg_set_flags</primary></indexterm><indexterm zone="gcut-egg-set-flags" role="1.0.6"><primary>gcut_egg_set_flags</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gcut_egg_set_flags (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>,
                    <parameter><link linkend="GSpawnFlags"><type>GSpawnFlags</type></link> flags</parameter>);</programlisting>
<warning><para><literal>gcut_egg_set_flags</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-set-flags"><function>gcut_process_set_flags()</function></link> instead.</para>
</warning>
<para>Sets <parameter>flags</parameter>
 for spawning.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>flags</para></entry>
<entry role="parameter_description"><para>the flags to be passed to <link linkend="g-spawn-async-with-pipes"><function>g_spawn_async_with_pipes()</function></link>.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-get-flags" role="function" condition="deprecated:1.1.5: Use gcut_process_get_flags() instead.|since:1.0.6">
<title>gcut_egg_get_flags&#160;()</title>
<indexterm zone="gcut-egg-get-flags" role="deprecated"><primary>gcut_egg_get_flags</primary></indexterm><indexterm zone="gcut-egg-get-flags" role="1.0.6"><primary>gcut_egg_get_flags</primary></indexterm>
<programlisting language="C"><link linkend="GSpawnFlags"><returnvalue>GSpawnFlags</returnvalue></link>
gcut_egg_get_flags (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>);</programlisting>
<warning><para><literal>gcut_egg_get_flags</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-get-flags"><function>gcut_process_get_flags()</function></link> instead.</para>
</warning>
<para>Gets <parameter>flags</parameter>
 for spawning.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> the flags for spawning.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-set-env" role="function" condition="deprecated:1.1.5: Use gcut_process_set_env() instead.|since:1.0.6">
<title>gcut_egg_set_env&#160;()</title>
<indexterm zone="gcut-egg-set-env" role="deprecated"><primary>gcut_egg_set_env</primary></indexterm><indexterm zone="gcut-egg-set-env" role="1.0.6"><primary>gcut_egg_set_env</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gcut_egg_set_env (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>,
                  <parameter>const <link linkend="gchar"><type>gchar</type></link> *name</parameter>,
                  <parameter>...</parameter>);</programlisting>
<warning><para><literal>gcut_egg_set_env</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-set-env"><function>gcut_process_set_env()</function></link> instead.</para>
</warning>
<para>Sets environment variable for external command.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>name</para></entry>
<entry role="parameter_description"><para>the first environment name.</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>...</para></entry>
<entry role="parameter_description"><para>the value of <parameter>name</parameter>
, followed by name and value
pairs. <link linkend="NULL:CAPS"><literal>NULL</literal></link>-terminated.</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-get-env" role="function" condition="deprecated:1.1.5: Use gcut_process_get_env() instead.|since:1.0.6">
<title>gcut_egg_get_env&#160;()</title>
<indexterm zone="gcut-egg-get-env" role="deprecated"><primary>gcut_egg_get_env</primary></indexterm><indexterm zone="gcut-egg-get-env" role="1.0.6"><primary>gcut_egg_get_env</primary></indexterm>
<programlisting language="C"><link linkend="gchar"><returnvalue>gchar</returnvalue></link>&#160;**
gcut_egg_get_env (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>);</programlisting>
<warning><para><literal>gcut_egg_get_env</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-get-env"><function>gcut_process_get_env()</function></link> instead.</para>
</warning>
<para>Gets environment variable for external command.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a newly-allocated <link linkend="NULL:CAPS"><literal>NULL</literal></link>-terminated environment
variables. ("NAME1=VALUE1", "NAME2=VALUE2",
..., <link linkend="NULL:CAPS"><literal>NULL</literal></link>) It should be freed by <link linkend="g-strfreev"><function>g_strfreev()</function></link> when no longer
needed.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-hatch" role="function" condition="deprecated:1.1.5: Use gcut_process_run() instead.|since:1.0.6">
<title>gcut_egg_hatch&#160;()</title>
<indexterm zone="gcut-egg-hatch" role="deprecated"><primary>gcut_egg_hatch</primary></indexterm><indexterm zone="gcut-egg-hatch" role="1.0.6"><primary>gcut_egg_hatch</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gcut_egg_hatch (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>,
                <parameter><link linkend="GError"><type>GError</type></link> **error</parameter>);</programlisting>
<warning><para><literal>gcut_egg_hatch</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-run"><function>gcut_process_run()</function></link> instead.</para>
</warning>
<para>Hatches a new external process.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>error</para></entry>
<entry role="parameter_description"><para>return location for an error, or <link linkend="NULL:CAPS"><literal>NULL</literal></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> on success, otherwise <link linkend="FALSE:CAPS"><literal>FALSE</literal></link></para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-close" role="function" condition="deprecated:1.1.5: no need to close explicitly on #GCutProcess.|since:1.0.6">
<title>gcut_egg_close&#160;()</title>
<indexterm zone="gcut-egg-close" role="deprecated"><primary>gcut_egg_close</primary></indexterm><indexterm zone="gcut-egg-close" role="1.0.6"><primary>gcut_egg_close</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gcut_egg_close (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>);</programlisting>
<warning><para><literal>gcut_egg_close</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>no need to close explicitly on <link linkend="GCutProcess"><type>GCutProcess</type></link>.</para>
</warning>
<para>Closes a hatched external process. It is closed
implicitly on destroy.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-write" role="function" condition="deprecated:1.1.5: Use gcut_process_write() instead.|since:1.0.6">
<title>gcut_egg_write&#160;()</title>
<indexterm zone="gcut-egg-write" role="deprecated"><primary>gcut_egg_write</primary></indexterm><indexterm zone="gcut-egg-write" role="1.0.6"><primary>gcut_egg_write</primary></indexterm>
<programlisting language="C"><link linkend="gboolean"><returnvalue>gboolean</returnvalue></link>
gcut_egg_write (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>,
                <parameter>const <link linkend="gchar"><type>gchar</type></link> *chunk</parameter>,
                <parameter><link linkend="gsize"><type>gsize</type></link> size</parameter>,
                <parameter><link linkend="GError"><type>GError</type></link> **error</parameter>);</programlisting>
<warning><para><literal>gcut_egg_write</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-write"><function>gcut_process_write()</function></link> instead.</para>
</warning>
<para>Writes <parameter>chunk</parameter>
 to external process's standard input.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>chunk</para></entry>
<entry role="parameter_description"><para>the data to be wrote</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>size</para></entry>
<entry role="parameter_description"><para>the size of <parameter>chunk</parameter>
</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>error</para></entry>
<entry role="parameter_description"><para>return location for an error, or <link linkend="NULL:CAPS"><literal>NULL</literal></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> <link linkend="TRUE:CAPS"><literal>TRUE</literal></link> on success, otherwise <link linkend="FALSE:CAPS"><literal>FALSE</literal></link></para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-get-pid" role="function" condition="deprecated:1.1.5: Use gcut_process_get_pid() instead.|since:1.0.6">
<title>gcut_egg_get_pid&#160;()</title>
<indexterm zone="gcut-egg-get-pid" role="deprecated"><primary>gcut_egg_get_pid</primary></indexterm><indexterm zone="gcut-egg-get-pid" role="1.0.6"><primary>gcut_egg_get_pid</primary></indexterm>
<programlisting language="C"><link linkend="GPid"><returnvalue>GPid</returnvalue></link>
gcut_egg_get_pid (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>);</programlisting>
<warning><para><literal>gcut_egg_get_pid</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-get-pid"><function>gcut_process_get_pid()</function></link> instead.</para>
</warning>
<para>Gets the process ID of running external process. If
external process isn't running, 0 is returned.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> the process ID of running external process if
external process is running, otherwise 0.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-wait" role="function" condition="deprecated:1.1.5: Use gcut_process_wait() instead.|since:1.0.6">
<title>gcut_egg_wait&#160;()</title>
<indexterm zone="gcut-egg-wait" role="deprecated"><primary>gcut_egg_wait</primary></indexterm><indexterm zone="gcut-egg-wait" role="1.0.6"><primary>gcut_egg_wait</primary></indexterm>
<programlisting language="C"><link linkend="gint"><returnvalue>gint</returnvalue></link>
gcut_egg_wait (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>,
               <parameter><link linkend="guint"><type>guint</type></link> timeout</parameter>,
               <parameter><link linkend="GError"><type>GError</type></link> **error</parameter>);</programlisting>
<warning><para><literal>gcut_egg_wait</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-wait"><function>gcut_process_wait()</function></link> instead.</para>
</warning>
<para>Waits running external process is finished while <parameter>timeout</parameter>

milliseconds. If external process isn't finished while
<parameter>timeout</parameter>
 milliseconds, <link linkend="GCUT-EGG-ERROR-TIMEOUT:CAPS"><literal>GCUT_EGG_ERROR_TIMEOUT</literal></link> error is
set and -1 is returned. If external process isn't
running, <link linkend="GCUT-EGG-ERROR-NOT-RUNNING:CAPS"><literal>GCUT_EGG_ERROR_NOT_RUNNING</literal></link> error is set and -1
is returned.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>timeout</para></entry>
<entry role="parameter_description"><para>the timeout period in milliseconds</para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>error</para></entry>
<entry role="parameter_description"><para>return location for an error, or <link linkend="NULL:CAPS"><literal>NULL</literal></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> an exit status of external process on success,
otherwise -1.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-kill" role="function" condition="deprecated:1.1.5: Use gcut_process_kill() instead.|since:1.0.6">
<title>gcut_egg_kill&#160;()</title>
<indexterm zone="gcut-egg-kill" role="deprecated"><primary>gcut_egg_kill</primary></indexterm><indexterm zone="gcut-egg-kill" role="1.0.6"><primary>gcut_egg_kill</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gcut_egg_kill (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>,
               <parameter><link linkend="gint"><type>gint</type></link> signal_number</parameter>);</programlisting>
<warning><para><literal>gcut_egg_kill</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-kill"><function>gcut_process_kill()</function></link> instead.</para>
</warning>
<para>Sends <parameter>signal_number</parameter>
 signal to external process.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>signal_number</para></entry>
<entry role="parameter_description"><para>the signal number to be sent to external process</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-get-input" role="function" condition="deprecated:1.1.5: Use gcut_process_get_input_channel() instead.|since:1.0.6">
<title>gcut_egg_get_input&#160;()</title>
<indexterm zone="gcut-egg-get-input" role="deprecated"><primary>gcut_egg_get_input</primary></indexterm><indexterm zone="gcut-egg-get-input" role="1.0.6"><primary>gcut_egg_get_input</primary></indexterm>
<programlisting language="C"><link linkend="GIOChannel"><returnvalue>GIOChannel</returnvalue></link>&#160;*
gcut_egg_get_input (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>);</programlisting>
<warning><para><literal>gcut_egg_get_input</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-get-input-channel"><function>gcut_process_get_input_channel()</function></link> instead.</para>
</warning>
<para>Gets a <link linkend="GIOChannel"><type>GIOChannel</type></link> connected with standard input of
external process.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a <link linkend="GIOChannel"><type>GIOChannel</type></link> if external process is running,
otherwise <link linkend="NULL:CAPS"><literal>NULL</literal></link>.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-get-output" role="function" condition="deprecated:1.1.5: Use gcut_process_get_output_channel() instead.|since:1.0.6">
<title>gcut_egg_get_output&#160;()</title>
<indexterm zone="gcut-egg-get-output" role="deprecated"><primary>gcut_egg_get_output</primary></indexterm><indexterm zone="gcut-egg-get-output" role="1.0.6"><primary>gcut_egg_get_output</primary></indexterm>
<programlisting language="C"><link linkend="GIOChannel"><returnvalue>GIOChannel</returnvalue></link>&#160;*
gcut_egg_get_output (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>);</programlisting>
<warning><para><literal>gcut_egg_get_output</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-get-output-channel"><function>gcut_process_get_output_channel()</function></link> instead.</para>
</warning>
<para>Gets a <link linkend="GIOChannel"><type>GIOChannel</type></link> connected with standard output of
external process.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a <link linkend="GIOChannel"><type>GIOChannel</type></link> if external process is running,
otherwise <link linkend="NULL:CAPS"><literal>NULL</literal></link>.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-get-error" role="function" condition="deprecated:1.1.5: Use gcut_process_get_error_channel() instead.|since:1.0.6">
<title>gcut_egg_get_error&#160;()</title>
<indexterm zone="gcut-egg-get-error" role="deprecated"><primary>gcut_egg_get_error</primary></indexterm><indexterm zone="gcut-egg-get-error" role="1.0.6"><primary>gcut_egg_get_error</primary></indexterm>
<programlisting language="C"><link linkend="GIOChannel"><returnvalue>GIOChannel</returnvalue></link>&#160;*
gcut_egg_get_error (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>);</programlisting>
<warning><para><literal>gcut_egg_get_error</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-get-error-channel"><function>gcut_process_get_error_channel()</function></link> instead.</para>
</warning>
<para>Gets a <link linkend="GIOChannel"><type>GIOChannel</type></link> connected with standard error output
of external process.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a <link linkend="GIOChannel"><type>GIOChannel</type></link> if external process is running,
otherwise <link linkend="NULL:CAPS"><literal>NULL</literal></link>.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-get-forced-termination-wait-time" role="function" condition="deprecated:1.1.5: Use gcut_process_get_forced_termination_wait_time() instead.|since:1.0.6">
<title>gcut_egg_get_forced_termination_wait_time&#160;()</title>
<indexterm zone="gcut-egg-get-forced-termination-wait-time" role="deprecated"><primary>gcut_egg_get_forced_termination_wait_time</primary></indexterm><indexterm zone="gcut-egg-get-forced-termination-wait-time" role="1.0.6"><primary>gcut_egg_get_forced_termination_wait_time</primary></indexterm>
<programlisting language="C"><link linkend="guint"><returnvalue>guint</returnvalue></link>
gcut_egg_get_forced_termination_wait_time
                               (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>);</programlisting>
<warning><para><literal>gcut_egg_get_forced_termination_wait_time</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-get-forced-termination-wait-time"><function>gcut_process_get_forced_termination_wait_time()</function></link> instead.</para>
</warning>
<para>Gets a wait time in milliseconds for forced termination
on dispose.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><refsect3 role="returns">
<title>Returns</title>
<para> a timeout value for waiting forced terminated
external command on dispose.</para>
<para></para>
</refsect3><para role="since">Since 1.0.6</para></refsect2>
<refsect2 id="gcut-egg-set-forced-termination-wait-time" role="function" condition="deprecated:1.1.5: Use gcut_process_set_forced_termination_wait_time() instead.|since:1.0.6">
<title>gcut_egg_set_forced_termination_wait_time&#160;()</title>
<indexterm zone="gcut-egg-set-forced-termination-wait-time" role="deprecated"><primary>gcut_egg_set_forced_termination_wait_time</primary></indexterm><indexterm zone="gcut-egg-set-forced-termination-wait-time" role="1.0.6"><primary>gcut_egg_set_forced_termination_wait_time</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
gcut_egg_set_forced_termination_wait_time
                               (<parameter><link linkend="GCutEgg"><type>GCutEgg</type></link> *egg</parameter>,
                                <parameter><link linkend="guint"><type>guint</type></link> timeout</parameter>);</programlisting>
<warning><para><literal>gcut_egg_set_forced_termination_wait_time</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="gcut-process-set-forced-termination-wait-time"><function>gcut_process_set_forced_termination_wait_time()</function></link> instead.</para>
</warning>
<para>Sets a wait time in milliseconds for forced termination
on dispose. If <parameter>timeout</parameter>
 is 0, it doesn't wait
termination of external process. The default value is 10.</para>
<refsect3 role="parameters">
<title>Parameters</title>
<informaltable role="parameters_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="parameters_name" colwidth="150px"/>
<colspec colname="parameters_description"/>
<colspec colname="parameters_annotations" colwidth="200px"/>
<tbody>
<row><entry role="parameter_name"><para>egg</para></entry>
<entry role="parameter_description"><para>a <link linkend="GCutEgg"><type>GCutEgg</type></link></para></entry>
<entry role="parameter_annotations"></entry></row>
<row><entry role="parameter_name"><para>timeout</para></entry>
<entry role="parameter_description"><para>the timeout value in milliseconds</para></entry>
<entry role="parameter_annotations"></entry></row>
</tbody></tgroup></informaltable>
</refsect3><para role="since">Since 1.0.6</para></refsect2>

</refsect1>
<refsect1 id="GCutEgg.other_details" role="details">
<title role="details.title">Types and Values</title>
<refsect2 id="GCutEggError" role="enum" condition="deprecated:1.1.5: Use #GCutProcessError instead.|since:1.0.6">
<title>enum GCutEggError</title>
<indexterm zone="GCutEggError" role="deprecated"><primary>GCutEggError</primary></indexterm><indexterm zone="GCutEggError" role="1.0.6"><primary>GCutEggError</primary></indexterm>
<warning><para><literal>GCutEggError</literal> has been deprecated since version 1.1.5 and should not be used in newly-written code.</para> <para>Use <link linkend="GCutProcessError"><type>GCutProcessError</type></link> instead.</para>
</warning>
<para>Error codes returned by <link linkend="GCutEgg"><type>GCutEgg</type></link> related operations.</para>
<refsect3 role="enum_members">
<title>Members</title>
<informaltable role="enum_members_table" pgwide="1" frame="none">
<tgroup cols="3">
<colspec colname="enum_members_name" colwidth="300px"/>
<colspec colname="enum_members_description"/>
<colspec colname="enum_members_annotations" colwidth="200px"/>
<tbody>
<row role="constant"><entry role="enum_member_name"><para id="GCUT-EGG-ERROR-COMMAND-LINE:CAPS">GCUT_EGG_ERROR_COMMAND_LINE</para></entry>
<entry role="enum_member_description"><para>Command line related error.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GCUT-EGG-ERROR-IO-ERROR:CAPS">GCUT_EGG_ERROR_IO_ERROR</para></entry>
<entry role="enum_member_description"><para>IO error.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GCUT-EGG-ERROR-ALREADY-RUNNING:CAPS">GCUT_EGG_ERROR_ALREADY_RUNNING</para></entry>
<entry role="enum_member_description"><para>External command is already running.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GCUT-EGG-ERROR-NOT-RUNNING:CAPS">GCUT_EGG_ERROR_NOT_RUNNING</para></entry>
<entry role="enum_member_description"><para>External command isn't running.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GCUT-EGG-ERROR-INVALID-OBJECT:CAPS">GCUT_EGG_ERROR_INVALID_OBJECT</para></entry>
<entry role="enum_member_description"><para>Invalid <link linkend="GCutEgg"><type>GCutEgg</type></link> object is passed.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
<row role="constant"><entry role="enum_member_name"><para id="GCUT-EGG-ERROR-TIMEOUT:CAPS">GCUT_EGG_ERROR_TIMEOUT</para></entry>
<entry role="enum_member_description"><para>Timeout.</para>
</entry>
<entry role="enum_member_annotations"></entry>
</row>
</tbody></tgroup></informaltable>
</refsect3><para role="since">Since 1.0.6</para></refsect2>

</refsect1>
<refsect1 id="GCutEgg.property-details" role="property_details">
<title role="property_details.title">Property Details</title>
<refsect2 id="GCutEgg--command" role="property"><title>The <literal>“command”</literal> property</title>
<indexterm zone="GCutEgg--command"><primary>GCutEgg:command</primary></indexterm>
<programlisting>  “command”                  <link linkend="gpointer"><type>gpointer</type></link></programlisting>
<para>The command to be ran by the egg.</para><para>Flags: Read / Write</para>
</refsect2>

</refsect1>
<refsect1 id="GCutEgg.signal-details" role="signals">
<title role="signals.title">Signal Details</title>
<refsect2 id="GCutEgg-error" role="signal"><title>The <literal>“error”</literal> signal</title>
<indexterm zone="GCutEgg-error" role="1.0.6"><primary>GCutEgg::error</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GCutEgg"><type>GCutEgg</type></link> *egg,
               <link linkend="gpointer"><type>gpointer</type></link> error,
               <link linkend="gpointer"><type>gpointer</type></link> user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
<para role="since">Since 1.0.6</para></refsect2><refsect2 id="GCutEgg-error-received" role="signal"><title>The <literal>“error-received”</literal> signal</title>
<indexterm zone="GCutEgg-error-received" role="1.0.6"><primary>GCutEgg::error-received</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GCutEgg"><type>GCutEgg</type></link> *egg,
               <link linkend="gchar"><type>gchar</type></link>   *chunk,
               <link linkend="guint64"><type>guint64</type></link>  size,
               <link linkend="gpointer"><type>gpointer</type></link> user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
<para role="since">Since 1.0.6</para></refsect2><refsect2 id="GCutEgg-output-received" role="signal"><title>The <literal>“output-received”</literal> signal</title>
<indexterm zone="GCutEgg-output-received" role="1.0.6"><primary>GCutEgg::output-received</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GCutEgg"><type>GCutEgg</type></link> *egg,
               <link linkend="gchar"><type>gchar</type></link>   *chunk,
               <link linkend="guint64"><type>guint64</type></link>  size,
               <link linkend="gpointer"><type>gpointer</type></link> user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
<para role="since">Since 1.0.6</para></refsect2><refsect2 id="GCutEgg-reaped" role="signal"><title>The <literal>“reaped”</literal> signal</title>
<indexterm zone="GCutEgg-reaped" role="1.0.6"><primary>GCutEgg::reaped</primary></indexterm>
<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link>
user_function (<link linkend="GCutEgg"><type>GCutEgg</type></link> *egg,
               <link linkend="gint"><type>gint</type></link>     status,
               <link linkend="gpointer"><type>gpointer</type></link> user_data)</programlisting>
<para>Flags: <link linkend="G-SIGNAL-RUN-LAST:CAPS">Run Last</link></para>
<para role="since">Since 1.0.6</para></refsect2>
</refsect1>

</refentry>
