vdr  2.2.0
Public Member Functions | Static Public Member Functions | Private Attributes | Static Private Attributes | List of all members
cCharSetConv Class Reference

#include <tools.h>

Public Member Functions

 cCharSetConv (const char *FromCode=NULL, const char *ToCode=NULL)
 
 ~cCharSetConv ()
 
const char * Convert (const char *From, char *To=NULL, size_t ToLength=0)
 

Static Public Member Functions

static const char * SystemCharacterTable (void)
 
static void SetSystemCharacterTable (const char *CharacterTable)
 

Private Attributes

iconv_t cd
 
char * result
 
size_t length
 

Static Private Attributes

static char * systemCharacterTable = NULL
 

Detailed Description

Definition at line 141 of file tools.h.

Constructor & Destructor Documentation

cCharSetConv::cCharSetConv ( const char *  FromCode = NULL,
const char *  ToCode = NULL 
)

Sets up a character set converter to convert from FromCode to ToCode.

If FromCode is NULL, the previously set systemCharacterTable is used (or "UTF-8" if no systemCharacterTable has been set). If ToCode is NULL, "UTF-8" is used.

Definition at line 914 of file tools.c.

cCharSetConv::~cCharSetConv ( )

Definition at line 925 of file tools.c.

Member Function Documentation

const char * cCharSetConv::Convert ( const char *  From,
char *  To = NULL,
size_t  ToLength = 0 
)

Converts the given Text from FromCode to ToCode (as set in the constructor).

If To is given, it is used to copy at most ToLength bytes of the result (including the terminating 0) into that buffer. If To is not given, the result is copied into a dynamically allocated buffer and is valid as long as this object lives, or until the next call to Convert(). The return value always points to the result if the conversion was successful (even if a fixed size To buffer was given and the result didn't fit into it). If the string could not be converted, the result points to the original From string.

Definition at line 955 of file tools.c.

References esyslog, and max().

Referenced by cSubtitleObject::DecodeCharacterString(), cMenuTimerItem::Set(), and SetSystemCharacterTable().

void cCharSetConv::SetSystemCharacterTable ( const char *  CharacterTable)
static

Definition at line 932 of file tools.c.

References Convert(), SystemToUtf8, Utf8CharGet(), and Utf8CharLen().

Referenced by main().

static const char* cCharSetConv::SystemCharacterTable ( void  )
inlinestatic

Member Data Documentation

iconv_t cCharSetConv::cd
private

Definition at line 143 of file tools.h.

size_t cCharSetConv::length
private

Definition at line 145 of file tools.h.

char* cCharSetConv::result
private

Definition at line 144 of file tools.h.

char * cCharSetConv::systemCharacterTable = NULL
staticprivate

Definition at line 146 of file tools.h.

Referenced by Utf8FromArray().


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