<!-- ##### SECTION ./tmpl/gconf-orbit.sgml:Long_Description ##### -->
<para>
GConf needs a connection to an ORB; it needs to be able to receive
CORBA requests and act on them; and it needs CORBA connection
authentication. There are two basic ways to do this; first, you 
can let GConf set things up by calling gconf_init_orb(); second, you
can set things up yourself (or let GNOME set things up), then call
gconf_set_orb() to tell the GConf library about it.
</para>

<para>
The problem right now is that <application>gconfd</application> only
speaks the authentication mechanism from gconf_init_orb(), since the 
GNOME authentication mechanism requires an X server connection. So 
right now if you use gnome_CORBA_init() then you can't talk to
<application>gconfd</application>. (If you use gconf_init_orb() in an
otherwise non-CORBA GNOME application then you can.) This will get
fixed by the time GNOME 2.0 is ready.
</para>


<!-- ##### SECTION ./tmpl/gconf-orbit.sgml:See_Also ##### -->
<para>

</para>


<!-- ##### SECTION ./tmpl/gconf-orbit.sgml:Short_Description ##### -->

Interface for setting up CORBA


<!-- ##### SECTION ./tmpl/gconf-orbit.sgml:Title ##### -->

GConf CORBA


<!-- ##### SECTION ./tmpl/gconf-unused.sgml:See_Also ##### -->
<para>

</para>


<!-- ##### MACRO GCONF_INTERNAL_VALUE_TYPE_VALID ##### -->
<para>

</para>

@x: 

<!-- ##### SIGNAL GConfClient::error ##### -->
<para>
Emitted whenever an error occurs inside a #GConfClient function. Depending on
the #GConfClientErrorHandlingMode, the default handler for this signal may or
may not display an error dialog.
</para>

@gconfclient: the object which received the signal.
@arg1: a #GError* (the error).

<!-- ##### SIGNAL GConfClient::unreturned-error ##### -->
<para>
Emitted when you pass <symbol>NULL</symbol> for the #GError** argument to
any #GConfClient function, and an error occurs. Depending on the
#GConfClientErrorHandlingMode, the default handler for this signal may or may
not display an error dialog.
</para>

@gconfclient: the object which received the signal.
@arg1: a #GError* (the unhandled error).

<!-- ##### SIGNAL GConfClient::value-changed ##### -->
<para>
Emitted when a key below one of the directories added with
gconf_client_add_dir() receives a new value or is unset. Because your signal
handler will have to use strcmp() to decide whether it cares about the
particular value that changed, it can be much more efficient to use
gconf_client_notify_add().
</para>

@gconfclient: the object which received the signal.
@arg1: a const #gchar* representing the changed key name
@arg2: a #GConfValue* representing the new value, or <symbol>NULL</symbol> for unset.

<!-- ##### USER_FUNCTION GConfClientParentWindowFunc ##### -->
<para>
If you're using the default #GConfClient error handlers, they can call this
function to set the parent of any dialogs they create. See
gnome_dialog_set_parent() in the GNOME documentation for details. The function
should return a pointer to a #GtkWindow.
</para>

@client: a #GConfClient.
@user_data: user data passed to gconf_client_set_error_handling().
@Returns: the parent window for #GConfClient's error dialogs.

<!-- ##### STRUCT GError ##### -->
<para>
This structure describes an error. The @str field gives a
human-readable description of the problem; the string is intended for
display to users. It will be internationalized and as informative as
possible. The @num field is intended for programs that want to
distinguish between different kinds of error. The @num and @str fields
are meant to be accessed directly, because it's convenient to write
err->code and err->message.
</para>

@domain: 
@code: 
@message: 

<!-- ##### FUNCTION corba_schema_from_gconf_schema ##### -->
<para>

</para>

@sc: 
@Returns: 

<!-- ##### FUNCTION corba_value_from_gconf_value ##### -->
<para>

</para>

@value: 
@Returns: 

<!-- ##### FUNCTION fill_corba_schema_from_gconf_schema ##### -->
<para>

</para>

@sc: 
@dest: 

<!-- ##### FUNCTION fill_corba_value_from_gconf_value ##### -->
<para>

</para>

@value: 
@dest: 

<!-- ##### FUNCTION g_clear_error ##### -->
<para>
Internal function.
</para>

@err: 

<!-- ##### FUNCTION g_error_copy ##### -->
<para>
Copies a #GError.
</para>

@error: 
@Returns: a new #GError.
@err: a #GError to copy.

<!-- ##### FUNCTION g_error_free ##### -->
<para>
Destroys a #GError. You must destroy any errors returned by GConf
functions.
</para>

@error: 
@err: a #GError to destroy.

<!-- ##### FUNCTION gconf_client_get_full ##### -->
<para>

</para>

@client: 
@key: 
@locale: 
@use_schema_default: 
@value_is_default: 
@err: 
@Returns: 

<!-- ##### FUNCTION gconf_get_orb ##### -->
<para>
Returns the ORB GConf is using.
</para>

@Returns: the ORB GConf is using.

<!-- ##### FUNCTION gconf_init_orb ##### -->
<para>
Initializes CORBA and a connection to the ORB, sets up authentication, 
and adds CORBA-related event handlers to your application's event
loop. Your application must be using the event loop from GLib; this is
the event loop all GTK+ applications use, but it also works in
non-GTK+ applications (such as <application>gconfd</application>, if
you're looking for some sample code).
</para>

<para>
gconf_init_orb() wants to see the command line arguments to check for
ORBit options. If it finds ORBit options it will remove them from @argc
and @argv. It returns an error if CORBA initialization failes.
</para>

@argc: address of argc.
@argv: argv.
@err: the return location for an allocated #GError, or <symbol>NULL</symbol> to ignore errors.
@Returns: the ORB object reference.

<!-- ##### FUNCTION gconf_quote_percents ##### -->
<para>

</para>

@src: 
@Returns: 

<!-- ##### FUNCTION gconf_read_server_ior ##### -->
<para>

</para>

@err: 
@Returns: 

<!-- ##### FUNCTION gconf_server_info_dir ##### -->
<para>

</para>

@Returns: 

<!-- ##### FUNCTION gconf_server_info_file ##### -->
<para>

</para>

@Returns: 

<!-- ##### FUNCTION gconf_set_orb ##### -->
<para>
gconf_set_orb() allows you to tell GConf about an ORB obtained by
means other than gconf_init_orb(). You should call gconf_init_orb()
<emphasis>or</emphasis> this function, never both.
</para>

@orb: the ORB GConf should use to communicate with <application>gconfd</application>.

<!-- ##### FUNCTION gconf_strerror ##### -->
<para>
Internal function.
</para>

@en: 
@Returns: 

<!-- ##### FUNCTION invalid_corba_value ##### -->
<para>

</para>

@Returns: 

