ACE_UTF16_Encoding_Converter Class Reference

#include <UTF16_Encoding_Converter.h>

Inheritance diagram for ACE_UTF16_Encoding_Converter:
Inheritance graph
[legend]
Collaboration diagram for ACE_UTF16_Encoding_Converter:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ACE_UTF16_Encoding_Converter (bool swap=false)
virtual ~ACE_UTF16_Encoding_Converter (void)
 This is a do nothing destructor.
virtual Result to_utf8 (const void *source, size_t source_size, ACE_Byte *target, size_t target_size, bool strict=true)
virtual Result from_utf8 (const ACE_Byte *source, size_t source_size, void *target, size_t target_size, bool strict=true)

Static Public Member Functions

static
ACE_UTF16_Encoding_Converter
encoded (const ACE_Byte *source, size_t source_size)

Protected Member Functions

bool is_legal_utf8 (const ACE_Byte *source, size_t length) const
 Determines if the source buffer is legal UTF-8.

Static Protected Member Functions

static ACE_UINT32 get_UNI_SUR_HIGH_START (void)
static ACE_UINT32 get_UNI_SUR_LOW_END (void)
static ACE_UINT32 get_UNI_REPLACEMENT_CHAR (void)
static const ACE_Byteget_first_byte_mark (void)
static const ACE_Byteget_trailing_bytes_for_utf8 (void)
static const ACE_UINT32 * get_offsets_from_utf8 (void)

Protected Attributes

bool swap_

Detailed Description

Convert from UTF-16 to UTF-8 and from UTF-8 to UTF-16. This class implements the ACE_Encoding_Converter interface.


Constructor & Destructor Documentation

ACE_UTF16_Encoding_Converter::ACE_UTF16_Encoding_Converter ( bool  swap = false  ) 

The swap parameter determines whether we need to swap byte order on the stream as each word is pulled off when converting to UTF-8.

virtual ACE_UTF16_Encoding_Converter::~ACE_UTF16_Encoding_Converter ( void   )  [virtual]

This is a do nothing destructor.


Member Function Documentation

static ACE_UTF16_Encoding_Converter* ACE_UTF16_Encoding_Converter::encoded ( const ACE_Byte source,
size_t  source_size 
) [static]

This factory helper method determines if the source stream is UTF-16 encoded. If it is, allocate an ACE_UTF16_Encoding_Converter and return it. The caller then owns the allocated object.

Reimplemented in ACE_UTF32_Encoding_Converter.

virtual Result ACE_UTF16_Encoding_Converter::from_utf8 ( const ACE_Byte source,
size_t  source_size,
void *  target,
size_t  target_size,
bool  strict = true 
) [virtual]

Convert the UTF-8 source into a UTF-16 encoding and store it in the provided target buffer.

Implements ACE_Encoding_Converter.

Reimplemented in ACE_UTF32_Encoding_Converter.

static const ACE_Byte* ACE_UTF16_Encoding_Converter::get_first_byte_mark ( void   )  [static, protected]
static const ACE_UINT32* ACE_UTF16_Encoding_Converter::get_offsets_from_utf8 ( void   )  [static, protected]
static const ACE_Byte* ACE_UTF16_Encoding_Converter::get_trailing_bytes_for_utf8 ( void   )  [static, protected]
static ACE_UINT32 ACE_UTF16_Encoding_Converter::get_UNI_REPLACEMENT_CHAR ( void   )  [static, protected]
static ACE_UINT32 ACE_UTF16_Encoding_Converter::get_UNI_SUR_HIGH_START ( void   )  [static, protected]
static ACE_UINT32 ACE_UTF16_Encoding_Converter::get_UNI_SUR_LOW_END ( void   )  [static, protected]
bool ACE_UTF16_Encoding_Converter::is_legal_utf8 ( const ACE_Byte source,
size_t  length 
) const [protected]

Determines if the source buffer is legal UTF-8.

virtual Result ACE_UTF16_Encoding_Converter::to_utf8 ( const void *  source,
size_t  source_size,
ACE_Byte target,
size_t  target_size,
bool  strict = true 
) [virtual]

Convert the source from UTF-16 to UTF-8 and store it in the provided target buffer.

Implements ACE_Encoding_Converter.

Reimplemented in ACE_UTF32_Encoding_Converter.


Member Data Documentation


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Fri Sep 11 03:58:59 2009 for ACE by  doxygen 1.6.1