3 //=============================================================================
5 * @file Codeset_IBM1047.h
7 * Declares the arrays required to convert between ISO8859 (aka
8 * Latin/1) and IBM1047 (aka EBCDIC).
10 * @author Jim Rogers (jrogers@viasoft.com)
12 //=============================================================================
15 #ifndef ACE_CODESET_IMB1047_H
16 #define ACE_CODESET_IMB1047_H
17 #include /**/ "ace/pre.h"
19 #include /**/ "ace/config-all.h"
21 #if !defined (ACE_LACKS_PRAGMA_ONCE)
23 #endif /* ACE_LACKS_PRAGMA_ONCE */
25 #if defined (ACE_HAS_EBCDIC)
27 #include "ace/CDR_Stream.h"
29 ACE_BEGIN_VERSIONED_NAMESPACE_DECL
31 // ****************************************************************
34 * @class ACE_IBM1047_ISO8859
36 * @brief Codeset translation specialization.
38 * This class performs the codeset translation:
39 * - Native: IBM_1047 (i.e. EBCDIC)
40 * - Stream: ISO-8859 (i.e. Latin/1)
42 class ACE_Export ACE_IBM1047_ISO8859
: public ACE_Char_Codeset_Translator
45 /// A do nothing constructor.
46 ACE_IBM1047_ISO8859 ();
48 /// Virtual destruction
49 virtual ~ACE_IBM1047_ISO8859 ();
51 // = Documented in $ACE_ROOT/ace/CDR_Stream.h
52 virtual ACE_CDR::Boolean
read_char (ACE_InputCDR
&,
54 virtual ACE_CDR::Boolean
read_string (ACE_InputCDR
&,
56 virtual ACE_CDR::Boolean
read_string (ACE_InputCDR
&,
58 virtual ACE_CDR::Boolean
read_char_array (ACE_InputCDR
&,
61 virtual ACE_CDR::Boolean
write_char (ACE_OutputCDR
&,
63 virtual ACE_CDR::Boolean
write_string (ACE_OutputCDR
&,
65 const ACE_CDR::Char
*);
66 virtual ACE_CDR::Boolean
write_char_array (ACE_OutputCDR
&,
67 const ACE_CDR::Char
*,
70 /// Return the native codeset ID as defined in the OSF code and character
71 /// set registry, 0x10020417
72 virtual ACE_CDR::ULong
ncs ();
73 /// Return the translated codeset ID as defined in the OSF code and character
74 /// set registry, 0x00010001
75 virtual ACE_CDR::ULong
tcs ();
79 * @class ACE_ISO8859_IBM1047
81 * @brief Codeset translation specialization.
83 * This class performs the codeset translation:
84 * - Native: ISO-8859 (i.e. Latin/1)
85 * - Stream: IBM-1047 (i.e. EBCDIC)
87 class ACE_Export ACE_ISO8859_IBM1047
: public ACE_Char_Codeset_Translator
90 /// A do nothing constructor.
91 ACE_ISO8859_IBM1047 ();
93 /// Virtual destruction
94 virtual ~ACE_ISO8859_IBM1047 ();
96 // = Documented in $ACE_ROOT/ace/CDR_Stream.h
97 virtual ACE_CDR::Boolean
read_char (ACE_InputCDR
&,
99 virtual ACE_CDR::Boolean
read_string (ACE_InputCDR
&,
101 virtual ACE_CDR::Boolean
read_string (ACE_InputCDR
&,
103 virtual ACE_CDR::Boolean
read_char_array (ACE_InputCDR
&,
106 virtual ACE_CDR::Boolean
write_char (ACE_OutputCDR
&,
108 virtual ACE_CDR::Boolean
write_string (ACE_OutputCDR
&,
110 const ACE_CDR::Char
*);
111 virtual ACE_CDR::Boolean
write_char_array (ACE_OutputCDR
&,
112 const ACE_CDR::Char
*,
115 /// Return the native codeset ID as defined in the OSF code and character
116 /// set registry, 0x00010001
117 virtual ACE_CDR::ULong
ncs ();
118 /// Return the translated codeset ID as defined in the OSF code and character
119 /// set registry, 0x10020417
120 virtual ACE_CDR::ULong
tcs ();
123 ACE_END_VERSIONED_NAMESPACE_DECL
125 #endif /* ACE_EBCDIC */
127 #include /**/ "ace/post.h"
129 #endif /* ACE_CODESET_IMB1047_H */