<HTML ><HEAD ><TITLE >gnorba</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.74b"><LINK REL="HOME" TITLE="GNOME CORBA Framework" HREF="book1.html"><LINK REL="UP" TITLE="libgnorba" HREF="index.html"><LINK REL="PREVIOUS" TITLE="libgnorba" HREF="index.html"><LINK REL="NEXT" TITLE="goad" HREF="gnorba-goad.html"></HEAD ><BODY CLASS="REFENTRY" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE WIDTH="100%" BORDER="0" BGCOLOR="#000000" CELLPADDING="1" CELLSPACING="0" ><TR ><TH COLSPAN="4" ALIGN="center" ><FONT COLOR="#FFFFFF" SIZE="5" >GNOME CORBA Framework</FONT ></TH ></TR ><TR ><TD WIDTH="25%" BGCOLOR="#C00000" ALIGN="left" ><A HREF="index.html" ><FONT COLOR="#FFFFFF" SIZE="3" ><B ><<< Previous Page</B ></FONT ></A ></TD ><TD WIDTH="25%" BGCOLOR="#0000C0" ALIGN="center" ><FONT COLOR="#FFFFFF" SIZE="3" ><B ><A HREF="book1.html" ><FONT COLOR="#FFFFFF" SIZE="3" ><B >Home</B ></FONT ></A ></B ></FONT ></TD ><TD WIDTH="25%" BGCOLOR="#00C000" ALIGN="center" ><FONT COLOR="#FFFFFF" SIZE="3" ><B ><A HREF="index.html" ><FONT COLOR="#FFFFFF" SIZE="3" ><B >Up</B ></FONT ></A ></B ></FONT ></TD ><TD WIDTH="25%" BGCOLOR="#C00000" ALIGN="right" ><A HREF="gnorba-goad.html" ><FONT COLOR="#FFFFFF" SIZE="3" ><B >Next Page >>></B ></FONT ></A ></TD ></TR ></TABLE ></DIV ><H1 ><A NAME="GNORBA-GNORBA" >gnorba</A ></H1 ><DIV CLASS="REFNAMEDIV" ><A NAME="AEN11" ></A ><H2 >Name</H2 >gnorba -- Utility routines for making CORBA use easy within GNOME applications.</DIV ><DIV CLASS="REFSYNOPSISDIV" ><A NAME="AEN14" ></A ><H2 >Synopsis</H2 ><TABLE BORDER="0" BGCOLOR="#D6E8FF" WIDTH="100%" CELLPADDING="6" ><TR ><TD ><PRE CLASS="SYNOPSIS" > enum <A HREF="gnorba-gnorba.html#GNORBAINITFLAGS" >GnorbaInitFlags</A >; <GTKDOCLINK HREF="CORBA-ORB-CAPS" >CORBA_ORB</GTKDOCLINK > <A HREF="gnorba-gnorba.html#GNOME-CORBA-INIT" >gnome_CORBA_init</A > (const char *app_id, const char *app_version, int *argc, char **argv, <A HREF="gnorba-gnorba.html#GNORBAINITFLAGS" >GnorbaInitFlags</A > gnorba_flags, <GTKDOCLINK HREF="CORBA-ENVIRONMENT" >CORBA_Environment</GTKDOCLINK > *ev); <GTKDOCLINK HREF="CORBA-ORB-CAPS" >CORBA_ORB</GTKDOCLINK > <A HREF="gnorba-gnorba.html#GNOME-CORBA-INIT-WITH-POPT-TABLE" >gnome_CORBA_init_with_popt_table</A > (const char *app_id, const char *app_version, int *argc, char **argv, const struct <GTKDOCLINK HREF="POPTOPTION" >poptOption</GTKDOCLINK > *options, int popt_flags, <GTKDOCLINK HREF="POPTCONTEXT" >poptContext</GTKDOCLINK > *return_ctx, <A HREF="gnorba-gnorba.html#GNORBAINITFLAGS" >GnorbaInitFlags</A > gnorba_flags, <GTKDOCLINK HREF="CORBA-ENVIRONMENT" >CORBA_Environment</GTKDOCLINK > *ev); <GTKDOCLINK HREF="CORBA-ORB-CAPS" >CORBA_ORB</GTKDOCLINK > <A HREF="gnorba-gnorba.html#GNOME-CORBA-ORB" >gnome_CORBA_ORB</A > (void); <GTKDOCLINK HREF="CORBA-ORB-CAPS" >CORBA_ORB</GTKDOCLINK > <A HREF="gnorba-gnorba.html#GNORBA-CORBA-INIT" >gnorba_CORBA_init</A > (int *argc, char **argv, <A HREF="gnorba-gnorba.html#GNORBAINITFLAGS" >GnorbaInitFlags</A > flags, <GTKDOCLINK HREF="CORBA-ENVIRONMENT" >CORBA_Environment</GTKDOCLINK > *ev); <GTKDOCLINK HREF="CORBA-OBJECT" >CORBA_Object</GTKDOCLINK > <A HREF="gnorba-gnorba.html#GNOME-NAME-SERVICE-GET" >gnome_name_service_get</A > (void);</PRE ></TD ></TR ></TABLE ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN36" ></A ><H2 >Description</H2 ><P >The gnorba routines relate to making basic use of CORBA in a GNOME application. This covers integrating the ORBit main loop with glib, adding basic security to CORBA connections, and accessing the CORBA name service for the session.</P ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN39" ></A ><H2 >Details</H2 ><DIV CLASS="REFSECT2" ><A NAME="AEN41" ></A ><H3 ><A NAME="GNORBAINITFLAGS" ></A >enum GnorbaInitFlags</H3 ><TABLE BORDER="0" BGCOLOR="#D6E8FF" WIDTH="100%" CELLPADDING="6" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" >typedef enum { GNORBA_INIT_SERVER_FUNC = 1 << 0, GNORBA_INIT_DISABLE_COOKIES = 1 << 1 } GnorbaInitFlags;</PRE ></TD ></TR ></TABLE ><P ><P ></P ><UL ><LI ><P >GNORBA_INIT_SERVER_FUNC specifies that this program intends to export implementations of CORBA objects to other programs</P ></LI ><LI ><P >GNORBA_INIT_DISABLE_COOKIES turns off the GNOME CORBA security mechanism</P ></LI ></UL ></P ></DIV ><HR><DIV CLASS="REFSECT2" ><A NAME="AEN51" ></A ><H3 ><A NAME="GNOME-CORBA-INIT" ></A >gnome_CORBA_init ()</H3 ><TABLE BORDER="0" BGCOLOR="#D6E8FF" WIDTH="100%" CELLPADDING="6" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" ><GTKDOCLINK HREF="CORBA-ORB-CAPS" >CORBA_ORB</GTKDOCLINK > gnome_CORBA_init (const char *app_id, const char *app_version, int *argc, char **argv, <A HREF="gnorba-gnorba.html#GNORBAINITFLAGS" >GnorbaInitFlags</A > gnorba_flags, <GTKDOCLINK HREF="CORBA-ENVIRONMENT" >CORBA_Environment</GTKDOCLINK > *ev);</PRE ></TD ></TR ></TABLE ><P >Wrapper around the GNORBA CORBA support routines for GNOME applications. This routine takes care of calling gnome_init after registering our command line arguments. After gnome_init is invoked, the GNORBA CORBA setup is bootstrapped by calling gnorba_CORBA_init for you.</P ><P ></P ><DIV CLASS="INFORMALTABLE" ><A NAME="AEN60" ></A ><P ></P ><TABLE BORDER="0" WIDTH="100%" BGCOLOR="#FFD0D0" CELLSPACING="0" CELLPADDING="4" CLASS="CALSTABLE" ><TBODY ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >app_id</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > Application id.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >app_version</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > Application version.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >argc</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > pointer to argc (for example, as received by main)</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >argv</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > pointer to argv (for example, as received by main)</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >gnorba_flags</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > GNORBA initialization flags.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >ev</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > CORBA Environment to return CORBA errors.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >Returns</I ></SPAN > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" >the CORBA_ORB for this application.</TD ></TR ></TBODY ></TABLE ><P ></P ></DIV ></DIV ><HR><DIV CLASS="REFSECT2" ><A NAME="AEN93" ></A ><H3 ><A NAME="GNOME-CORBA-INIT-WITH-POPT-TABLE" ></A >gnome_CORBA_init_with_popt_table ()</H3 ><TABLE BORDER="0" BGCOLOR="#D6E8FF" WIDTH="100%" CELLPADDING="6" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" ><GTKDOCLINK HREF="CORBA-ORB-CAPS" >CORBA_ORB</GTKDOCLINK > gnome_CORBA_init_with_popt_table (const char *app_id, const char *app_version, int *argc, char **argv, const struct <GTKDOCLINK HREF="POPTOPTION" >poptOption</GTKDOCLINK > *options, int popt_flags, <GTKDOCLINK HREF="POPTCONTEXT" >poptContext</GTKDOCLINK > *return_ctx, <A HREF="gnorba-gnorba.html#GNORBAINITFLAGS" >GnorbaInitFlags</A > gnorba_flags, <GTKDOCLINK HREF="CORBA-ENVIRONMENT" >CORBA_Environment</GTKDOCLINK > *ev);</PRE ></TD ></TR ></TABLE ><P >Wrapper around the GNORBA CORBA support routines for GNOME applications. This routine takes care of calling gnome_init after registering our command line arguments. After gnome_init is invoked, the GNORBA CORBA setup is bootstrapped by calling gnorba_CORBA_init for you.</P ><P >This differs from gnome_CORBA_init only in that it provides a way to pass a table of popt options for argument parsing.</P ><P >If you pass return_ctx, you need to release it with the proper popt routine where you are done.</P ><P ></P ><DIV CLASS="INFORMALTABLE" ><A NAME="AEN106" ></A ><P ></P ><TABLE BORDER="0" WIDTH="100%" BGCOLOR="#FFD0D0" CELLSPACING="0" CELLPADDING="4" CLASS="CALSTABLE" ><TBODY ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >app_id</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > Application id.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >app_version</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > Application version.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >argc</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > pointer to argc (for example, as received by main)</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >argv</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > argv (for example, as received by main)</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >options</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > an array of poptOptions.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >popt_flags</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > flags passes to popt.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >return_ctx</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > if non-NULL a popt context is returned here.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >gnorba_flags</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > GNORBA initialization flags.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >ev</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" >CORBA Environment to return CORBA errors.</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >Returns</I ></SPAN > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" >the CORBA_ORB for this application. </TD ></TR ></TBODY ></TABLE ><P ></P ></DIV ></DIV ><HR><DIV CLASS="REFSECT2" ><A NAME="AEN151" ></A ><H3 ><A NAME="GNOME-CORBA-ORB" ></A >gnome_CORBA_ORB ()</H3 ><TABLE BORDER="0" BGCOLOR="#D6E8FF" WIDTH="100%" CELLPADDING="6" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" ><GTKDOCLINK HREF="CORBA-ORB-CAPS" >CORBA_ORB</GTKDOCLINK > gnome_CORBA_ORB (void);</PRE ></TD ></TR ></TABLE ><P ></P ><P ></P ><DIV CLASS="INFORMALTABLE" ><A NAME="AEN158" ></A ><P ></P ><TABLE BORDER="0" WIDTH="100%" BGCOLOR="#FFD0D0" CELLSPACING="0" CELLPADDING="4" CLASS="CALSTABLE" ><TBODY ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >Returns</I ></SPAN > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" >the CORBA_ORB initialized by the GNORBA libraries.</TD ></TR ></TBODY ></TABLE ><P ></P ></DIV ></DIV ><HR><DIV CLASS="REFSECT2" ><A NAME="AEN167" ></A ><H3 ><A NAME="GNORBA-CORBA-INIT" ></A >gnorba_CORBA_init ()</H3 ><TABLE BORDER="0" BGCOLOR="#D6E8FF" WIDTH="100%" CELLPADDING="6" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" ><GTKDOCLINK HREF="CORBA-ORB-CAPS" >CORBA_ORB</GTKDOCLINK > gnorba_CORBA_init (int *argc, char **argv, <A HREF="gnorba-gnorba.html#GNORBAINITFLAGS" >GnorbaInitFlags</A > flags, <GTKDOCLINK HREF="CORBA-ENVIRONMENT" >CORBA_Environment</GTKDOCLINK > *ev);</PRE ></TD ></TR ></TABLE ><P >Sets up the ORBit connection add/remove function pointers to our routines, which inform the gtk main loop about the CORBA connection fd's.</P ><P >Calls gnome_init and CORBA_ORB_init with the specified params.</P ><P >Sets up a cookie for requests.</P ><P ></P ><DIV CLASS="INFORMALTABLE" ><A NAME="AEN178" ></A ><P ></P ><TABLE BORDER="0" WIDTH="100%" BGCOLOR="#FFD0D0" CELLSPACING="0" CELLPADDING="4" CLASS="CALSTABLE" ><TBODY ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >argc</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > argc pointer from the application</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >argv</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > argv from the application</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >flags</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > GnorbaInitFlags that control the way we startup</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><TT CLASS="PARAMETER" ><I >ev</I ></TT > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > A CORBA_Environment for catching CORBA errors</TD ></TR ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >Returns</I ></SPAN > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" >the CORBA_ORB initialized by the GNORBA libraries.</TD ></TR ></TBODY ></TABLE ><P ></P ></DIV ></DIV ><HR><DIV CLASS="REFSECT2" ><A NAME="AEN203" ></A ><H3 ><A NAME="GNOME-NAME-SERVICE-GET" ></A >gnome_name_service_get ()</H3 ><TABLE BORDER="0" BGCOLOR="#D6E8FF" WIDTH="100%" CELLPADDING="6" ><TR ><TD ><PRE CLASS="PROGRAMLISTING" ><GTKDOCLINK HREF="CORBA-OBJECT" >CORBA_Object</GTKDOCLINK > gnome_name_service_get (void);</PRE ></TD ></TR ></TABLE ><P >This routine returns an object reference to the name server for this user/session pair. This launches the name server if it is the first application running it.</P ><P ></P ><DIV CLASS="INFORMALTABLE" ><A NAME="AEN210" ></A ><P ></P ><TABLE BORDER="0" WIDTH="100%" BGCOLOR="#FFD0D0" CELLSPACING="0" CELLPADDING="4" CLASS="CALSTABLE" ><TBODY ><TR ><TD WIDTH="20%" ALIGN="RIGHT" VALIGN="TOP" ><SPAN CLASS="emphasis" ><I CLASS="EMPHASIS" >Returns</I ></SPAN > :</TD ><TD WIDTH="80%" ALIGN="LEFT" VALIGN="TOP" > an object reference to the name service. </TD ></TR ></TBODY ></TABLE ><P ></P ></DIV ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><BR CLEAR="all"><BR><TABLE WIDTH="100%" BORDER="0" BGCOLOR="#000000" CELLPADDING="1" CELLSPACING="0" ><TR ><TD WIDTH="25%" BGCOLOR="#C00000" ALIGN="left" ><A HREF="index.html" ><FONT COLOR="#FFFFFF" SIZE="3" ><B ><<< Previous Page</B ></FONT ></A ></TD ><TD WIDTH="25%" BGCOLOR="#0000C0" ALIGN="center" ><FONT COLOR="#FFFFFF" SIZE="3" ><B ><A HREF="book1.html" ><FONT COLOR="#FFFFFF" SIZE="3" ><B >Home</B ></FONT ></A ></B ></FONT ></TD ><TD WIDTH="25%" BGCOLOR="#00C000" ALIGN="center" ><FONT COLOR="#FFFFFF" SIZE="3" ><B ><A HREF="index.html" ><FONT COLOR="#FFFFFF" SIZE="3" ><B >Up</B ></FONT ></A ></B ></FONT ></TD ><TD WIDTH="25%" BGCOLOR="#C00000" ALIGN="right" ><A HREF="gnorba-goad.html" ><FONT COLOR="#FFFFFF" SIZE="3" ><B >Next Page >>></B ></FONT ></A ></TD ></TR ><TR ><TD COLSPAN="2" ALIGN="left" ><FONT COLOR="#FFFFFF" SIZE="3" ><B >libgnorba</B ></FONT ></TD ><TD COLSPAN="2" ALIGN="right" ><FONT COLOR="#FFFFFF" SIZE="3" ><B >goad</B ></FONT ></TD ></TR ></TABLE ></DIV ></BODY ></HTML >