Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

# ACE_Char_Codeset_Translator Class Reference

Codeset translation routines common to both Output and Input CDR streams. More...

`#include <CDR_Stream.h>`

List of all members.

## Public Member Functions
virtual | ~ACE_Char_Codeset_Translator ()
virtual ACE_CDR::Boolean | read_char (ACE_InputCDR &, ACE_CDR::Char &)=0
virtual ACE_CDR::Boolean | read_string (ACE_InputCDR &, ACE_CDR::Char *&)=0
virtual ACE_CDR::Boolean | read_char_array (ACE_InputCDR &, ACE_CDR::Char *, ACE_CDR::ULong)=0
virtual ACE_CDR::Boolean | write_char (ACE_OutputCDR &, ACE_CDR::Char)=0
virtual ACE_CDR::Boolean | write_string (ACE_OutputCDR &, ACE_CDR::ULong, const ACE_CDR::Char *)=0
virtual ACE_CDR::Boolean | write_char_array (ACE_OutputCDR &, const ACE_CDR::Char *, ACE_CDR::ULong)=0
virtual ACE_CDR::ULong | ncs ()=0
virtual ACE_CDR::ULong | tcs ()=0
## Protected Member Functions
ACE_CDR::Boolean | read_1 (ACE_InputCDR &input, ACE_CDR::Octet *x)
ACE_CDR::Boolean | write_1 (ACE_OutputCDR &output, const ACE_CDR::Octet *x)
ACE_CDR::Boolean | read_array (ACE_InputCDR &input, void *x, size_t size, size_t align, ACE_CDR::ULong length)
ACE_CDR::Boolean | write_array (ACE_OutputCDR &output, const void *x, size_t size, size_t align, ACE_CDR::ULong length)
int | adjust (ACE_OutputCDR &out, size_t size, size_t align, char *&buf)
void | good_bit (ACE_OutputCDR &out, bool bit)
| Used by derived classes to set errors in the CDR stream.
ACE_CDR::Octet | major_version (ACE_InputCDR &input)
| Obtain the CDR Stream's major & minor version values.
ACE_CDR::Octet | minor_version (ACE_InputCDR &input)
ACE_CDR::Octet | major_version (ACE_OutputCDR &output)
ACE_CDR::Octet | minor_version (ACE_OutputCDR &output)

## Detailed Description

Codeset translation routines common to both Output and Input CDR streams.

This class is a base class for defining codeset translation routines to handle the character set translations required by both CDR Input streams and CDR Output streams.

Translators are reference counted. This allows for stateful as well as stateless translators. Stateless translators will be allocated once whereas CDR Streams own their own copy of a stateful translator.

## Constructor & Destructor Documentation

ACE_Char_Codeset_Translator::~ACE_Char_Codeset_Translator | ( |  | ) | `[virtual]`

## Member Function Documentation

ACE_INLINE int ACE_Char_Codeset_Translator::adjust | ( | ACE_OutputCDR & | out,
|  | size_t | size,
|  | size_t | align,
|  | char *& | buf
| ) | `[protected]`

| Exposes the stream implementation of <adjust>, this is useful in many cases to minimize memory allocations during marshaling. On success <buf> will contain a contiguous area in the CDR stream that can hold <size> bytes aligned to <align>. Results

ACE_INLINE void ACE_Char_Codeset_Translator::good_bit | ( | ACE_OutputCDR & | out,
|  | bool | bit
| ) | `[protected]`

| Used by derived classes to set errors in the CDR stream.

ACE_INLINE ACE_CDR::Octet ACE_Char_Codeset_Translator::major_version | ( | ACE_OutputCDR & | output | ) | `[protected]`

ACE_INLINE ACE_CDR::Octet ACE_Char_Codeset_Translator::major_version | ( | ACE_InputCDR & | input | ) | `[protected]`

| Obtain the CDR Stream's major & minor version values.

ACE_INLINE ACE_CDR::Octet ACE_Char_Codeset_Translator::minor_version | ( | ACE_OutputCDR & | output | ) | `[protected]`

ACE_INLINE ACE_CDR::Octet ACE_Char_Codeset_Translator::minor_version | ( | ACE_InputCDR & | input | ) | `[protected]`

virtual ACE_CDR::ULong ACE_Char_Codeset_Translator::ncs | ( |  | ) | `[pure virtual]`

ACE_INLINE ACE_CDR::Boolean ACE_Char_Codeset_Translator::read_1 | ( | ACE_InputCDR & | input,
|  | ACE_CDR::Octet * | x
| ) | `[protected]`

| Children have access to low-level routines because they cannot use read_char or something similar (it would recurse).

ACE_INLINE ACE_CDR::Boolean ACE_Char_Codeset_Translator::read_array | ( | ACE_InputCDR & | input,
|  | void * | x,
|  | size_t | size,
|  | size_t | align,
|  | ACE_CDR::ULong | length
| ) | `[protected]`

| Efficiently read <length> elements of size <size> each from <input> into <x>; the data must be aligned to <align>.

virtual ACE_CDR::Boolean ACE_Char_Codeset_Translator::read_char | ( | ACE_InputCDR & | ,
|  | ACE_CDR::Char & |
| ) | `[pure virtual]`

| Read a single character from the stream, converting from the stream codeset to the native codeset

virtual ACE_CDR::Boolean ACE_Char_Codeset_Translator::read_char_array | ( | ACE_InputCDR & | ,
|  | ACE_CDR::Char * | ,
|  | ACE_CDR::ULong |
| ) | `[pure virtual]`

| Read an array of characters from the stream, converting the characters from the stream codeset to the native codeset.

virtual ACE_CDR::Boolean ACE_Char_Codeset_Translator::read_string | ( | ACE_InputCDR & | ,
|  | ACE_CDR::Char *& |
| ) | `[pure virtual]`

| Read a string from the stream, including the length, converting the characters from the stream codeset to the native codeset

virtual ACE_CDR::ULong ACE_Char_Codeset_Translator::tcs | ( |  | ) | `[pure virtual]`

ACE_INLINE ACE_CDR::Boolean ACE_Char_Codeset_Translator::write_1 | ( | ACE_OutputCDR & | output,
|  | const ACE_CDR::Octet * | x
| ) | `[protected]`

ACE_INLINE ACE_CDR::Boolean ACE_Char_Codeset_Translator::write_array | ( | ACE_OutputCDR & | output,
|  | const void * | x,
|  | size_t | size,
|  | size_t | align,
|  | ACE_CDR::ULong | length
| ) | `[protected]`

| Efficiently write <length> elements of size <size> from <x> into <output>. Before inserting the elements enough padding is added to ensure that the elements will be aligned to <align> in the stream.

virtual ACE_CDR::Boolean ACE_Char_Codeset_Translator::write_char | ( | ACE_OutputCDR & | ,
|  | ACE_CDR::Char |
| ) | `[pure virtual]`

| Write a single character to the stream, converting from the native codeset to the stream codeset

virtual ACE_CDR::Boolean ACE_Char_Codeset_Translator::write_char_array | ( | ACE_OutputCDR & | ,
|  | const ACE_CDR::Char * | ,
|  | ACE_CDR::ULong |
| ) | `[pure virtual]`

| Write an array of characters to the stream, converting from the native codeset to the stream codeset

virtual ACE_CDR::Boolean ACE_Char_Codeset_Translator::write_string | ( | ACE_OutputCDR & | ,
|  | ACE_CDR::ULong | ,
|  | const ACE_CDR::Char * |
| ) | `[pure virtual]`

| Write a string to the stream, including the length, converting from the native codeset to the stream codeset

The documentation for this class was generated from the following files:

- CDR_Stream.h
- CDR_Stream.cpp
- CDR_Stream.inl