<?xml version="1.0"?>
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" 
               "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd">
<refentry id="EDataCalFactory">
<refmeta>
<refentrytitle role="top_of_page">EDataCalFactory</refentrytitle>
<manvolnum>3</manvolnum>
<refmiscinfo>LIBEDATA-CAL Library</refmiscinfo>
</refmeta>

<refnamediv>
<refname>EDataCalFactory</refname>
<refpurpose>Implementation of the calendar CORBA factory.</refpurpose>
<!--[<xref linkend="desc" endterm="desc.title"/>]-->
</refnamediv>

<refsynopsisdiv role="synopsis">
<title role="synopsis.title">Synopsis</title>

<synopsis>



            <link linkend="EDataCalFactory-struct">EDataCalFactory</link>;
<link linkend="EDataCalFactory">EDataCalFactory</link>* <link linkend="e-data-cal-factory-new">e_data_cal_factory_new</link>     (void);
<link linkend="gboolean">gboolean</link>    <link linkend="e-data-cal-factory-register-storage">e_data_cal_factory_register_storage</link>
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory,
                                             const <link linkend="char">char</link> *iid);
<link linkend="void">void</link>        <link linkend="e-data-cal-factory-register-backend">e_data_cal_factory_register_backend</link>
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory,
                                             <link linkend="ECalBackendFactory">ECalBackendFactory</link> *backend_factory);
<link linkend="void">void</link>        <link linkend="e-data-cal-factory-register-backends">e_data_cal_factory_register_backends</link>
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory);
<link linkend="int">int</link>         <link linkend="e-data-cal-factory-get-n-backends">e_data_cal_factory_get_n_backends</link>
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory);
<link linkend="void">void</link>        <link linkend="e-data-cal-factory-dump-active-backends">e_data_cal_factory_dump_active_backends</link>
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory);
<link linkend="void">void</link>        <link linkend="e-data-cal-factory-set-backend-mode">e_data_cal_factory_set_backend_mode</link>
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory,
                                             <link linkend="int">int</link> mode);


</synopsis>
</refsynopsisdiv>

<refsect1 role="object_hierarchy">
<title role="object_hierarchy.title">Object Hierarchy</title>
<synopsis>

  <link linkend="GObject">GObject</link>
   +----<link linkend="BonoboObject">BonoboObject</link>
         +----EDataCalFactory
</synopsis>

</refsect1>






<refsect1 role="signal_proto">
<title role="signal_proto.title">Signals</title>
<synopsis>

&quot;<link linkend="EDataCalFactory-last-calendar-gone">last-calendar-gone</link>&quot;
            <link linkend="void">void</link>        user_function      (<link linkend="EDataCalFactory">EDataCalFactory</link> *edatacalfactory,
                                            <link linkend="gpointer">gpointer</link>         user_data)            : Run first
</synopsis>
</refsect1>


<refsect1 role="desc">
<title role="desc.title">Description</title>
<para>

</para>
</refsect1>

<refsect1 role="details">
<title role="details.title">Details</title>
<refsect2>
<title><anchor id="EDataCalFactory-struct" role="struct"/>EDataCalFactory</title>
<indexterm><primary>EDataCalFactory</primary></indexterm><programlisting>typedef struct _EDataCalFactory EDataCalFactory;</programlisting>
<para>

</para></refsect2>
<refsect2>
<title><anchor id="e-data-cal-factory-new" role="function"/>e_data_cal_factory_new ()</title>
<indexterm><primary>e_data_cal_factory_new</primary></indexterm><programlisting><link linkend="EDataCalFactory">EDataCalFactory</link>* e_data_cal_factory_new     (void);</programlisting>
<para>
Creates a new <link linkend="EDataCalFactory"><type>EDataCalFactory</type></link> object.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> A newly-created <link linkend="EDataCalFactory"><type>EDataCalFactory</type></link>, or NULL if its corresponding CORBA
object could not be created.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="e-data-cal-factory-register-storage" role="function"/>e_data_cal_factory_register_storage ()</title>
<indexterm><primary>e_data_cal_factory_register_storage</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>    e_data_cal_factory_register_storage
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory,
                                             const <link linkend="char">char</link> *iid);</programlisting>
<para>
Registers a calendar factory with the OAF object activation daemon.  This
function must be called before any clients can activate the factory.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>factory</parameter>&nbsp;:</term>
<listitem><simpara> A calendar factory.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>iid</parameter>&nbsp;:</term>
<listitem><simpara> OAFIID for the factory to be registered.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> TRUE on success, FALSE otherwise.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="e-data-cal-factory-register-backend" role="function"/>e_data_cal_factory_register_backend ()</title>
<indexterm><primary>e_data_cal_factory_register_backend</primary></indexterm><programlisting><link linkend="void">void</link>        e_data_cal_factory_register_backend
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory,
                                             <link linkend="ECalBackendFactory">ECalBackendFactory</link> *backend_factory);</programlisting>
<para>
Registers an <link linkend="ECalBackend"><type>ECalBackend</type></link> subclass that will be used to handle URIs
with a particular method.  When the factory is asked to open a
particular URI, it will look in its list of registered methods and
create a backend of the appropriate type.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>factory</parameter>&nbsp;:</term>
<listitem><simpara> A calendar factory.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>backend_factory</parameter>&nbsp;:</term>
<listitem><simpara> The object responsible for creating backends.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="e-data-cal-factory-register-backends" role="function"/>e_data_cal_factory_register_backends ()</title>
<indexterm><primary>e_data_cal_factory_register_backends</primary></indexterm><programlisting><link linkend="void">void</link>        e_data_cal_factory_register_backends
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory);</programlisting>
<para>
Register all backends for the given factory.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>factory</parameter>&nbsp;:</term>
<listitem><simpara>


</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="e-data-cal-factory-get-n-backends" role="function"/>e_data_cal_factory_get_n_backends ()</title>
<indexterm><primary>e_data_cal_factory_get_n_backends</primary></indexterm><programlisting><link linkend="int">int</link>         e_data_cal_factory_get_n_backends
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory);</programlisting>
<para>
Get the number of backends currently active in the given factory.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>factory</parameter>&nbsp;:</term>
<listitem><simpara> A calendar factory.
</simpara></listitem></varlistentry>
<varlistentry><term><emphasis>Returns</emphasis>&nbsp;:</term><listitem><simpara> the number of backends.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="e-data-cal-factory-dump-active-backends" role="function"/>e_data_cal_factory_dump_active_backends ()</title>
<indexterm><primary>e_data_cal_factory_dump_active_backends</primary></indexterm><programlisting><link linkend="void">void</link>        e_data_cal_factory_dump_active_backends
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory);</programlisting>
<para>
Dumps to standard output a list of all active backends for the given
factory.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>factory</parameter>&nbsp;:</term>
<listitem><simpara> A calendar factory.
</simpara></listitem></varlistentry>
</variablelist></refsect2>
<refsect2>
<title><anchor id="e-data-cal-factory-set-backend-mode" role="function"/>e_data_cal_factory_set_backend_mode ()</title>
<indexterm><primary>e_data_cal_factory_set_backend_mode</primary></indexterm><programlisting><link linkend="void">void</link>        e_data_cal_factory_set_backend_mode
                                            (<link linkend="EDataCalFactory">EDataCalFactory</link> *factory,
                                             <link linkend="int">int</link> mode);</programlisting>
<para>
Sets the online mode for all backends created by the given factory.</para>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>factory</parameter>&nbsp;:</term>
<listitem><simpara> A calendar factory.
</simpara></listitem></varlistentry>
<varlistentry><term><parameter>mode</parameter>&nbsp;:</term>
<listitem><simpara> Online mode to set.
</simpara></listitem></varlistentry>
</variablelist></refsect2>

</refsect1>

<refsect1 role="signals">
<title role="signals.title">Signal Details</title>
<refsect2><title><anchor id="EDataCalFactory-last-calendar-gone"/>The &quot;last-calendar-gone&quot; signal</title>
<indexterm><primary>EDataCalFactory::last-calendar-gone</primary></indexterm><programlisting><link linkend="void">void</link>        user_function                  (<link linkend="EDataCalFactory">EDataCalFactory</link> *edatacalfactory,
                                            <link linkend="gpointer">gpointer</link>         user_data)            : Run first</programlisting>
<para>

</para><variablelist role="params">
<varlistentry><term><parameter>edatacalfactory</parameter>&nbsp;:</term>
<listitem><simpara>the object which received the signal.

</simpara></listitem></varlistentry>
<varlistentry><term><parameter>user_data</parameter>&nbsp;:</term>
<listitem><simpara>user data set when the signal handler was connected.</simpara></listitem></varlistentry>
</variablelist></refsect2>
</refsect1>



</refentry>
