1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- /* Copyright (C) 2016 RDA Technologies Limited and/or its affiliates("RDA").
- * All rights reserved.
- *
- * This software is supplied "AS IS" without any warranties.
- * RDA assumes no responsibility or liability for the use of the software,
- * conveys no license or title under any patent, copyright, or mask work
- * right to the product. RDA reserves the right to make changes in the
- * software without notification. RDA also make no representation or
- * warranty that such application will be suitable for the specified use
- * without further testing or modification.
- */
- #ifndef __ML_H__
- #define __ML_H__
- #include "osi_api.h"
- #ifdef __cplusplus
- extern "C" {
- #endif
- enum
- {
- ML_ISO8859_1,
- ML_UTF8,
- ML_UTF16BE,
- ML_UTF16LE,
- ML_GSM,
- ML_CP936,
- ML_IRA
- };
- void mlInit(void);
- /**
- * convert a string charset
- *
- * When \a from_charset or \a to_charset is unknown or unsupported,
- * return NULL.
- *
- * The returned pointer is allocated inside, caller should free it.
- *
- * At most \a from_size byte count will be processed. When \a from_size
- * is -1, process till null chracter.
- *
- * null character will always be inserted into the output string.
- * Invalid characters are replaced silently.
- *
- * \a to_size can be NULL in case that the output byte count is not needed.
- *
- * @param from input string
- * @param from_size input string byte count
- * @param from_chset input string charset
- * @param to_chset output string charset
- * @param to_size output string byte count
- * @return
- * - NULL: invalid parameters
- * - output string
- */
- void *mlConvertStr(const void *from, int from_size, unsigned from_chset, unsigned to_chset, int *to_size);
- int mlCharCount(const void *s, unsigned chset);
- int mlStrBytes(const void *s, unsigned chset);
- uint16_t mlGetUnicode(uint16_t from, uint32_t from_chset);
- uint16_t mlGetOEM(uint32_t unicd, uint32_t to_chset);
- uint32_t mlSetLocalChset(uint32_t nChset);
- uint32_t mlGetLocalChset(void);
- #ifdef __cplusplus
- }
- #endif
- #endif
|