summaryrefslogtreecommitdiff
path: root/ACE/TAO/docs/libraries.html
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/TAO/docs/libraries.html')
-rw-r--r--ACE/TAO/docs/libraries.html321
1 files changed, 321 insertions, 0 deletions
diff --git a/ACE/TAO/docs/libraries.html b/ACE/TAO/docs/libraries.html
new file mode 100644
index 00000000000..7c03e93e967
--- /dev/null
+++ b/ACE/TAO/docs/libraries.html
@@ -0,0 +1,321 @@
+<!-- $Id$ -->
+<HTML>
+
+<HEAD>
+ <TITLE>TAO libraries.</TITLE>
+</HEAD>
+
+<BODY text = "#000000"
+link="#000fff"
+vlink="#ff0f0f"
+bgcolor="#ffffff">
+
+<HR><P><H3 ALIGN=CENTER>Libraries in TAO</H3></P>
+
+<H3>Overview</H3>
+
+As part of the <a href="minimumTAO.html">subsetting effort</a> to
+reduce footprint of applications using TAO, we have created different
+libraries that house various CORBA features, such the POA and
+DynamicAny. This design helps minimize application footprint, only
+linking in features that are required. However, applications must
+link in the libraries they need. It is possible to load most of these
+libraries dynamically using the ACE Service Configurator framework,
+though this will not work for statically linked executables. Linking
+the necessary libraries with your application is therefore the most
+straightforward way to get the features you need.
+
+<H3> List of Libraries </H3>
+
+Here we outline the list of libraries in TAO core with the list of <a
+href="../../MPC/docs/README"> MPC </a> projects that can be used by the
+application to get all the required libraries linked into the
+application. The library names in table below are the ones created on
+UNIX based systems. Windows systems have a slightly different naming
+convention, e.g., the PortableServer library is named as
+PortableServerd.lib and PortableServerd.dll. But for the naming
+conventions used on different platforms, the contents of the libraries
+and the dependencies outlined below are the same. <P>
+
+<table width="75%" border=1>
+ <caption><b>List of CORE Libraries in TAO<P></B></caption>
+ <thead>
+ <tr valign=top >
+ <th>Name of the Library
+ <th>Feature
+ <th> MPC project to use
+ </tr>
+ </thead>
+ <tbody>
+ <tr align=left>
+ <th>libTAO.so</th>
+ <td> All the core features for a client and server side ORB. The
+ list includes support for IIOP, invocation framework,
+ wait strategies for transports, leader-follower framework,
+ thread pools and thread-per-connection framework,
+ portable interceptors, CORBA Any's, CORBA Policy framework,
+ CDR framework etc. </td>
+ <td>taoclient.mpb for simple clients or tao_lib_with_idl.mpb to
+ create an application library.</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_AnyTypeCode.so</th>
+ <td>Library with all the TypeCode and Any support. If you use
+ the anytypecode base project the IDL compiler flags -Sa and
+ -St are removed from the default idl flags.
+ <td>anytypecode.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_BiDirGIOP.so</th>
+ <td>Support for BiDirectional GIOP as outlined by the CORBA
+ spec. Please see $TAO_ROOT/tests/BiDirectional for a simple
+ test case of this feature. Applications need to <code>
+ #include "tao/BiDir_GIOP/BiDirGIOP.h" </code> within their
+ code to get this feature. </td>
+ <td>bidir_giop.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_CodecFactory.so</th>
+ <td>Support for CodecFactory as outlined by the CORBA
+ spec. Please see $TAO_ROOT/tests/Codec for a simple
+ test case of this feature. Applications need to <code>
+ #include "tao/CodecFactory/CodecFactory.h" </code> within their
+ code to get this feature. </td>
+ <td>codecfactory.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_Domain.so</th>
+ <td>Support for server side skeletons for the DomainManager
+ interface. </td>
+ <td>No base projects available</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_DynamicAny.so</th>
+ <td>Support for DynamicAny. Please see
+ $TAO_ROOT/tests/DynAny_Test for an example of how to access
+ and use this library. Applications have to <code> #include
+ "tao/DynamicAny/DynamicAny.h" </code> to get the right
+ symbols.</td>
+ <td>dynamicany.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_EndpointPolicy.so</th>
+ <td>Support for the TAO-specific Endpoint Policy. This is used
+ to set up constraints on endpoints placed in IORs. The endpoint
+ policy is applied to a POAManager via the POAManagerFactory and
+ affects all POAs associated with that manager. Examples of use
+ are in $TAO_ROOT/tests/POA/EndpointPolicy. Applications have to
+ <code> #include "tao/EndpointPolicy/EndpointPolicy.h" </code> to
+ get the right symbols.</td>
+ <td>endpointpolicy.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_DynamicInterface.so</th>
+ <td>Support for DII and DSI invocations. Applications have to
+ <code> #include "tao/DynamicInterface/Dynamic_Adapter_Impl.h"
+ </code> to get the right symbols.</td>
+ <td>dynamicinterface.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_IFR_Client.so</th>
+ <td>Support for client/stub side interfaces for
+ InterfaceRepository applications. Applications have to <code>
+ #include "tao/IFR_Client/IFR_Client_Adapter_Impl.h" </code> to
+ get the right symbols.</td>
+ <td>ifr_client.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_ImR_Client.so</th>
+ <td>Support for applications that want to register itself to
+ the Implementation Repository. Applications have to <code>
+ #include "tao/ImR_Client/ImR_Client.h" </code> to
+ get the right symbols.</td>
+ <td>imr_client.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_IORInterceptor.so</th>
+ <td>Support for IORInterceptor. The portable server library
+ depends on the IORInterceptor library. Applications have to
+ <code> #include
+ "tao/IORInterceptor/IORInterceptor_Adapter_Factory_Impl.h"
+ </code> to get the right symbols.</td>
+ <td>iorinterceptor.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_IORManipulation.so</th>
+ <td>Support for IOR manipulation. The interfaces offered
+ provide operations to create and multi-profile IOR's and
+ other related utilities. Applications have to <code> #include
+ "tao/IORManipulation/IORManip_Loader.h" </code> to get the
+ right symbols.</td>
+ <td>iormanip.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_IORTable.so</th>
+ <td> Any TAO server can be configured as an corbaloc
+ agent. Such agents forward requests generated using a simple
+ ObjectKey in a corbaloc specification to the real location of
+ the object. In TAO we implement this feature by dynamically
+ (or statically) adding a new Object Adapter to the ORB, that
+ handles any sort of request. This feature is placed in this
+ library. Applications have to <code> #include
+ "tao/IORTable/IORTable.h" </code> to get the right
+ symbols.</td>
+ <td>iortable.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_Messaging.so</th>
+ <td>Support for AMI and CORBA policies such as
+ RoundtripTimeout and ConnectionTimeout are placed in this
+ library. Applications have to <code> #include
+ "tao/Messaging/Messaging.h" </code> to get the
+ rightsymbols.</td>
+ <td>messaging.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_ObjRefTemplate.so</th>
+ <td>Support for Object Reference Template
+ specification. The portable server library depends on this
+ library. </td>
+ <td>objreftemplate.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_PI.so</th>
+ <td>Support for Portable Interceptors. This library is automagically
+ loaded by
+ the ORB when the application uses the PolicyFactory or ORBInitializer
+ . Just linking this library should be sufficient to
+ get all the features that are required to write applications
+ using portable interceptors. </td>
+ <td>pi.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_PortableServer.so</th>
+ <td>Support for POA. This library is automagically loaded by
+ the ORB when the application calls resolve_initial_references
+ ("RootPOA"); Just linking this library should be sufficient to
+ get all the features that are required to write powerful
+ servers. </td>
+ <td>taoserver.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_RTCORBA.so</th>
+ <td>Support for RTCORBA client side features. Applications are
+ required to <code> #include "tao/RTCORBA/RTCORBA.h" </code> to
+ get the required symbols for linking. Support in this library
+ is complaint with RTCORBA 1.0 spec.</td>
+ <td>rt_client.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_RTPortableServer.so</th>
+ <td>Support for RTCORBA server side features. Applications are
+ required to <code> #include
+ "tao/RTPortableServer/RTPortableServer.h" </code> to
+ get the required symbols for linking. Support in this library
+ is complaint with RTCORBA 1.0 spec.</td>
+ <td>rt_server.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_RTScheduling.so</th>
+ <td>Support for RTCORBA 2.0 features. Applications are
+ required to <code> #include
+ "tao/RTScheduling/RTScheulding.h" </code> to
+ get the required symbols for linking. Support in this library
+ is complaint with RTCORBA 2.0 spec.</td>
+ <td>rtscheduling.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_SmartProxies.so</th>
+ <td>Support for <a href
+ ="Smart_Proxies.html">Smartproxies</a>.</td>
+ <td>smart_proxies.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_Strategies.so</th>
+ <td>Support for advanced resource options for the ORB that have
+ been strategized into this library. Advanced resource
+ categories include new transport protocols, additional
+ reactors, connection purging strategies etc. Applications
+ should <code> #include "tao/Strategies/advanced_resources.h"
+ </code>.</td>
+ <td>strategies.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_TypeCodeFactory.so</th>
+ <td>Support for TypeCodeFactory interface.</td>
+ <td>typecodefactory.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_Utils.so</th>
+ <td>Helper methods for that are useful for writing portable,
+ exception safe application code.</td>
+ <td>utils.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_Valuetype.so</th>
+ <td>Support for object by value (OBV). Portable server and messaging depends on
+ this library </td>
+ <td>valuetype.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_CSD_Framework.so</th>
+ <td>Support framework for Custom Servant Dispatching (CSD) feature. The CSD_ThreadPool
+ depends on this library</td>
+ <td>csd_framework.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_CSD_ThreadPool.so</th>
+ <td>Support for ThreadPool Custom Servant Dispatching (CSD) Strategy. This library can
+ be loaded statically or dynamically. Applications are required to
+ <code> #include "tao/CSD_ThreadPool/CSD_ThreadPool.h"
+ </code> for static loading and provide service configuration file for dynamic loading.
+ </td>
+ <td>csd_threadpool.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_TC.so</th>
+ <td>Support for TAO::Transport::Current - a generic fremework for aplications that
+ need access to statistical information about the currently used Transport. See <a
+ href="transport_current/index.html"> Transport::Current</a>.
+ This library can be loaded statically or dynamically. Applications are required to
+ <code> #include "tao/TransportCurrent/Transport_Current.h"
+ </code> for static loading.
+ </td>
+ <td>tc.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_TC_IIOP.so</th>
+ <td>Support for TAO::Transport::IIOP::Current - an IIOP-specific plug-in for
+ Transport::Current. See <a href="transport_current/index.html"> Transport::Current</a>.
+ This library can be loaded statically or dynamically.
+ Applications are required to <code> #include "tao/TransportCurrent/IIOP_Transport_Current.h"
+ </code> for static loading. Depends on libTAO_TC.so.
+ </td>
+ <td>tc_iiop.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_Compression.so</th>
+ <td>Support for Compression. This library can
+ be loaded statically or dynamically. Applications are required to
+ <code> #include "tao/Compression/Compression.h"
+ </code> for static loading.
+ </td>
+ <td>compression.mpb</td>
+ </tr>
+ <tr align=left>
+ <th>libTAO_ZlibCompressor.so</th>
+ <td>Support for Zlib Compression. This library can
+ be loaded statically or dynamically. Applications are required to
+ <code> #include "tao/Compression/zlib/ZlibCompressor.h"
+ </code> for static loading.
+ </td>
+ <td>zlibcompressor.mpb</td>
+ </tr>
+</tr>
+</table>
+
+<hr>
+<p>Back to the TAO <a href="index.html">TAO documentation page</a>.<!--#include virtual="/~schmidt/cgi-sig.html" -->
+</body>
+
+</HTML>