diff options
Diffstat (limited to 'TAO/tests/CodeSets/libs/IBM1047_ISO8859/Wchar_IBM1047_ISO8859_Translator.h')
-rw-r--r-- | TAO/tests/CodeSets/libs/IBM1047_ISO8859/Wchar_IBM1047_ISO8859_Translator.h | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/TAO/tests/CodeSets/libs/IBM1047_ISO8859/Wchar_IBM1047_ISO8859_Translator.h b/TAO/tests/CodeSets/libs/IBM1047_ISO8859/Wchar_IBM1047_ISO8859_Translator.h new file mode 100644 index 00000000000..49184d3cdb0 --- /dev/null +++ b/TAO/tests/CodeSets/libs/IBM1047_ISO8859/Wchar_IBM1047_ISO8859_Translator.h @@ -0,0 +1,75 @@ +// -*- C++ -*- + +//============================================================================= +/** + * @file Wchar_IBM1047_ISO8859_Translator.h + * + * $Id$ + * + * Declares the arrays required to convert between IBM1047 (aka EBCDIC) and ISO8859 (aka + * Latin/1). + * + * + * @author Jim Rogers (jrogers@viasoft.com) + */ +//============================================================================= + +#ifndef WCHAR_IBM1047_ISO8859_TRANSLATOR_H +#define WCHAR_IBM1047_ISO8859_TRANSLATOR_H +#include /**/ "ace/pre.h" + +#include "ace/config-all.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +#include "ace/CDR_Stream.h" +#include "IBM1047_ISO8859_export.h" + +extern IBM1047_ISO8859_Export ACE_CDR::WChar Wchar_to_IBM1047[257]; +extern IBM1047_ISO8859_Export ACE_CDR::WChar Wchar_from_IBM1047[257]; + +// **************************************************************** + +/** + * @class ACE_Char_IBM1047_ISO8859 + * + * @brief Codeset translation specialization. + * + * This class performs the codeset translation: + * - Native: IBM_1047 (i.e. EBCDIC) + * - Stream: ISO-8859 (i.e. Latin/1) + */ +class IBM1047_ISO8859_Export WIBM1047_ISO8859 : public ACE_WChar_Codeset_Translator +{ +public: + /// A do nothing constructor. + WIBM1047_ISO8859 (void); + + /// Virtual destruction + virtual ~WIBM1047_ISO8859 (void); + + // = Documented in $ACE_ROOT/ace/CDR_Stream.h + virtual ACE_CDR::Boolean read_wchar (ACE_InputCDR &, + ACE_CDR::WChar &); + virtual ACE_CDR::Boolean read_wstring (ACE_InputCDR &, + ACE_CDR::WChar *&); + virtual ACE_CDR::Boolean read_wchar_array (ACE_InputCDR &, + ACE_CDR::WChar *, + ACE_CDR::ULong); + virtual ACE_CDR::Boolean write_wchar (ACE_OutputCDR &, + ACE_CDR::WChar); + virtual ACE_CDR::Boolean write_wstring (ACE_OutputCDR &, + ACE_CDR::ULong, + const ACE_CDR::WChar *); + virtual ACE_CDR::Boolean write_wchar_array (ACE_OutputCDR &, + const ACE_CDR::WChar *, + ACE_CDR::ULong); + virtual ACE_CDR::ULong ncs () {return 0x10020417;} + virtual ACE_CDR::ULong tcs () {return 0x00010001;} +}; + +#include /**/ "ace/post.h" +#endif /* WCHAR_IBM1047_ISO8859_TRANSLATOR */ + |