Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_Codeset_Translator_Factory Class Reference

Abstract base class for factories providing codeset translators. More...

#include <Codeset_Translator_Factory.h>

Inheritance diagram for TAO_Codeset_Translator_Factory:

Inheritance graph
[legend]
Collaboration diagram for TAO_Codeset_Translator_Factory:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_Codeset_Translator_Factory ()
virtual ~TAO_Codeset_Translator_Factory ()
virtual int init (int argc, ACE_TCHAR *argv[])
virtual CONV_FRAME::CodeSetId ncs () const=0
 Get the native codeset ID from the factory. There is no reasonable default for this method, so it is left abstract. More...

virtual CONV_FRAME::CodeSetId tcs () const=0
 Get the translated codeset ID from the factory. There is no reasonable default for this method, so it is left abstract. More...

virtual void assign (TAO_InputCDR *) const=0
 Assign the translator to the supplied input CDR. This is left abstract since the factory base does not have a reference to the actual translator instance. The template instance provides this implementation. More...

virtual void assign (TAO_OutputCDR *) const=0
 Assign the translator to the supplied output CDR. This is left abstract since the factory base does not have a reference to the actual translator instance. The template instance provides this implementation. More...


Protected Methods

void assign_i (TAO_InputCDR *, ACE_Char_Codeset_Translator *) const
 Assign the translator to the supplied input CDR. The template instance will have a translator that is based on either the Char or Wchar translator, so the compiler will select the appropriate call from assign(). More...

void assign_i (TAO_InputCDR *, ACE_WChar_Codeset_Translator *) const
 Assign the translator to the supplied input CDR. The template instance will have a translator that is based on either the Char or Wchar translator, so the compiler will select the appropriate call from assign(). More...

void assign_i (TAO_OutputCDR *, ACE_Char_Codeset_Translator *) const
 Assign the translator to the supplied output CDR. The template instance will have a translator that is based on either the Char or Wchar translator, so the compiler will select the appropriate call from assign(). More...

void assign_i (TAO_OutputCDR *, ACE_WChar_Codeset_Translator *) const
 Assign the translator to the supplied output CDR. The template instance will have a translator that is based on either the Char or Wchar translator, so the compiler will select the appropriate call from assign(). More...


Detailed Description

Abstract base class for factories providing codeset translators.

The codeset translator factory is a loadable service object. It is used to supply the actual translator used in converting between two codesets. The intent of using a factory is to avoid requiring codeset translators to be multiply inherited both from the translator base class and the service object base. The translator factory is also responsible for assigning translators to CDR streams. Since there is no common base class between input and output CDRs, the assingment code must be duplicated.

Definition at line 47 of file Codeset_Translator_Factory.h.


Constructor & Destructor Documentation

TAO_Codeset_Translator_Factory::TAO_Codeset_Translator_Factory  
 

Definition at line 26 of file Codeset_Translator_Factory.cpp.

00027 {
00028 
00029 }

TAO_Codeset_Translator_Factory::~TAO_Codeset_Translator_Factory   [virtual]
 

Definition at line 31 of file Codeset_Translator_Factory.cpp.

00032 {
00033 
00034 }


Member Function Documentation

virtual void TAO_Codeset_Translator_Factory::assign TAO_OutputCDR   const [pure virtual]
 

Assign the translator to the supplied output CDR. This is left abstract since the factory base does not have a reference to the actual translator instance. The template instance provides this implementation.

Implemented in TAO_Codeset_Translator_Factory_T.

virtual void TAO_Codeset_Translator_Factory::assign TAO_InputCDR   const [pure virtual]
 

Assign the translator to the supplied input CDR. This is left abstract since the factory base does not have a reference to the actual translator instance. The template instance provides this implementation.

Implemented in TAO_Codeset_Translator_Factory_T.

Referenced by TAO_Transport::assign_translators.

void TAO_Codeset_Translator_Factory::assign_i TAO_OutputCDR  ,
ACE_WChar_Codeset_Translator  
const [protected]
 

Assign the translator to the supplied output CDR. The template instance will have a translator that is based on either the Char or Wchar translator, so the compiler will select the appropriate call from assign().

Definition at line 61 of file Codeset_Translator_Factory.cpp.

References ACE_OutputCDR::wchar_translator.

00062 {
00063   cdr->wchar_translator(trans);
00064 }

void TAO_Codeset_Translator_Factory::assign_i TAO_OutputCDR  ,
ACE_Char_Codeset_Translator  
const [protected]
 

Assign the translator to the supplied output CDR. The template instance will have a translator that is based on either the Char or Wchar translator, so the compiler will select the appropriate call from assign().

Definition at line 49 of file Codeset_Translator_Factory.cpp.

References ACE_OutputCDR::char_translator.

00050 {
00051   cdr->char_translator(trans);
00052 }

void TAO_Codeset_Translator_Factory::assign_i TAO_InputCDR  ,
ACE_WChar_Codeset_Translator  
const [protected]
 

Assign the translator to the supplied input CDR. The template instance will have a translator that is based on either the Char or Wchar translator, so the compiler will select the appropriate call from assign().

Definition at line 55 of file Codeset_Translator_Factory.cpp.

References ACE_InputCDR::wchar_translator.

00056 {
00057   cdr->wchar_translator(trans);
00058 }

void TAO_Codeset_Translator_Factory::assign_i TAO_InputCDR  ,
ACE_Char_Codeset_Translator  
const [protected]
 

Assign the translator to the supplied input CDR. The template instance will have a translator that is based on either the Char or Wchar translator, so the compiler will select the appropriate call from assign().

Definition at line 43 of file Codeset_Translator_Factory.cpp.

References ACE_InputCDR::char_translator.

Referenced by TAO_Codeset_Translator_Factory_T::assign.

00044 {
00045   cdr->char_translator(trans);
00046 }

virtual int TAO_Codeset_Translator_Factory::init int    argc,
ACE_TCHAR   argv[]
[virtual]
 

Reimplemented from ACE_Shared_Object.

Reimplemented in TAO_Codeset_Translator_Factory_T.

Referenced by TAO_Codeset_Translator_Factory_T::init.

virtual CONV_FRAME::CodeSetId TAO_Codeset_Translator_Factory::ncs   const [pure virtual]
 

Get the native codeset ID from the factory. There is no reasonable default for this method, so it is left abstract.

Implemented in TAO_Codeset_Translator_Factory_T.

Referenced by TAO_Codeset_Manager::init_codeset_factories_i.

virtual CONV_FRAME::CodeSetId TAO_Codeset_Translator_Factory::tcs   const [pure virtual]
 

Get the translated codeset ID from the factory. There is no reasonable default for this method, so it is left abstract.

Implemented in TAO_Codeset_Translator_Factory_T.

Referenced by TAO_Codeset_Manager::generate_service_context, TAO_Codeset_Manager::get_translator_i, and TAO_Codeset_Manager::init_codeset_factories_i.


The documentation for this class was generated from the following files:
Generated on Mon Jun 16 15:09:17 2003 for TAO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002