Codeset_IBM1047.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file    Codeset_IBM1047.h
00006  *
00007  *  Codeset_IBM1047.h,v 4.12 2005/10/28 16:14:51 ossama Exp
00008  *
00009  *  Declares the arrays required to convert between ISO8859 (aka
00010  *  Latin/1) and IBM1047 (aka EBCDIC).
00011  *
00012  *
00013  *  @author Jim Rogers (jrogers@viasoft.com)
00014  */
00015 //=============================================================================
00016 
00017 
00018 #ifndef ACE_CODESET_IMB1047_H
00019 #define ACE_CODESET_IMB1047_H
00020 #include /**/ "ace/pre.h"
00021 
00022 #include "ace/config-all.h"
00023 
00024 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00025 # pragma once
00026 #endif /* ACE_LACKS_PRAGMA_ONCE */
00027 
00028 #if defined(ACE_MVS)
00029 
00030 #include "ace/CDR_Stream.h"
00031 
00032 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
00033 
00034 // ****************************************************************
00035 
00036 /**
00037  * @class ACE_IBM1047_ISO8859
00038  *
00039  * @brief Codeset translation specialization.
00040  *
00041  * This class performs the codeset translation:
00042  *   - Native:        IBM_1047 (i.e. EBCDIC)
00043  *   - Stream:        ISO-8859 (i.e. Latin/1)
00044  */
00045 class ACE_Export ACE_IBM1047_ISO8859 : public ACE_Char_Codeset_Translator
00046 {
00047 public:
00048   /// A do nothing constructor.
00049   ACE_IBM1047_ISO8859 (void);
00050 
00051   /// Virtual destruction
00052   virtual ~ACE_IBM1047_ISO8859 (void);
00053 
00054   // = Documented in $ACE_ROOT/ace/CDR_Stream.h
00055   virtual ACE_CDR::Boolean read_char (ACE_InputCDR &,
00056                                       ACE_CDR::Char &);
00057   virtual ACE_CDR::Boolean read_string (ACE_InputCDR &,
00058                                         ACE_CDR::Char *&);
00059   virtual ACE_CDR::Boolean read_char_array (ACE_InputCDR &,
00060                                             ACE_CDR::Char *,
00061                                             ACE_CDR::ULong);
00062   virtual ACE_CDR::Boolean write_char (ACE_OutputCDR &,
00063                                        ACE_CDR::Char);
00064   virtual ACE_CDR::Boolean write_string (ACE_OutputCDR &,
00065                                          ACE_CDR::ULong,
00066                                          const ACE_CDR::Char *);
00067   virtual ACE_CDR::Boolean write_char_array (ACE_OutputCDR &,
00068                                              const ACE_CDR::Char *,
00069                                              ACE_CDR::ULong);
00070 
00071   /// return the native codeset ID as defined in the OSF code and character
00072   /// set registry, 0x10020417
00073   virtual ACE_CDR::ULong ncs ();
00074   /// return the translated codeset ID as defined in the OSF code and character
00075   /// set registry, 0x00010001
00076   virtual ACE_CDR::ULong tcs ();
00077 };
00078 
00079 /**
00080  * @class ACE_ISO8859_IBM1047
00081  *
00082  * @brief Codeset translation specialization.
00083  *
00084  * This class performs the codeset translation:
00085  *   - Native:        ISO-8859 (i.e. Latin/1)
00086  *   - Stream:        IBM-1047 (i.e. EBCDIC)
00087  */
00088 class ACE_Export ACE_ISO8859_IBM1047 : public ACE_Char_Codeset_Translator
00089 {
00090 public:
00091   /// A do nothing constructor.
00092   ACE_ISO8859_IBM1047 (void);
00093 
00094   /// Virtual destruction
00095   virtual ~ACE_ISO8859_IBM1047 (void);
00096 
00097   // = Documented in $ACE_ROOT/ace/CDR_Stream.h
00098   virtual ACE_CDR::Boolean read_char (ACE_InputCDR &,
00099                                       ACE_CDR::Char &);
00100   virtual ACE_CDR::Boolean read_string (ACE_InputCDR &,
00101                                         ACE_CDR::Char *&);
00102   virtual ACE_CDR::Boolean read_char_array (ACE_InputCDR &,
00103                                             ACE_CDR::Char *,
00104                                             ACE_CDR::ULong);
00105   virtual ACE_CDR::Boolean write_char (ACE_OutputCDR &,
00106                                        ACE_CDR::Char);
00107   virtual ACE_CDR::Boolean write_string (ACE_OutputCDR &,
00108                                          ACE_CDR::ULong,
00109                                          const ACE_CDR::Char *);
00110   virtual ACE_CDR::Boolean write_char_array (ACE_OutputCDR &,
00111                                              const ACE_CDR::Char *,
00112                                              ACE_CDR::ULong);
00113 
00114   /// return the native codeset ID as defined in the OSF code and character
00115   /// set registry, 0x00010001
00116   virtual ACE_CDR::ULong ncs ();
00117   /// return the translated codeset ID as defined in the OSF code and character
00118   /// set registry, 0x10020417
00119   virtual ACE_CDR::ULong tcs ();
00120 };
00121 
00122 ACE_END_VERSIONED_NAMESPACE_DECL
00123 
00124 #endif /* ACE_MVS */
00125 
00126 #include /**/ "ace/post.h"
00127 
00128 #endif /* ACE_CODESET_IMB1047_H */

Generated on Thu Nov 9 09:41:48 2006 for ACE by doxygen 1.3.6